:root{--yellow:#ffcc00;--yellow-dark:#efb900;--red:#d40511;--ink:#242222;--muted:#6b6864;--line:#e7e4df;--surface:#fff;--page:#f4f2ed}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--page);display:grid;grid-template-rows:auto 1fr auto;line-height:1.55}a{color:var(--red);text-decoration:none;font-weight:700}a:hover{text-decoration:underline}.topbar{min-height:8px;background:var(--yellow);border-bottom:3px solid var(--red)}main{display:grid;place-items:center;padding:42px 20px}.login-layout{width:min(100%,960px);min-height:540px;display:grid;grid-template-columns:1fr .92fr;background:var(--surface);box-shadow:0 20px 60px rgba(36,34,34,.12);border:1px solid rgba(36,34,34,.07)}.welcome-panel{position:relative;overflow:hidden;background:var(--yellow);padding:clamp(30px,5vw,58px);display:flex;flex-direction:column;justify-content:space-between}.welcome-panel:after{content:"";position:absolute;width:320px;height:320px;right:-135px;bottom:-145px;border:42px solid rgba(255,255,255,.25);border-radius:50%;pointer-events:none}.brand{display:inline-flex;align-items:center;gap:12px;position:relative;z-index:1}.brand-mark{color:var(--red);font-size:2rem;font-weight:1000;font-style:italic;letter-spacing:-.1em;line-height:1;position:relative}.brand-mark:after{content:"";position:absolute;left:0;right:-5px;top:50%;height:3px;background:var(--red);transform:skewX(-28deg)}.brand-name{font-size:.84rem;line-height:1.2;font-weight:800;text-transform:uppercase}.brand-name span{display:block;font-size:.68rem;font-weight:600;margin-top:4px}.welcome-copy{position:relative;z-index:1;max-width:350px;margin:54px 0}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.welcome-copy h1{margin:13px 0 16px;font-size:clamp(2rem,4vw,3rem);line-height:1.04;letter-spacing:-.045em}.welcome-copy p{margin:0;max-width:320px;line-height:1.7;color:#39342a;font-size:.95rem}.security-note{position:relative;z-index:1;display:flex;gap:10px;align-items:flex-start;max-width:330px;font-size:.78rem;line-height:1.5}.security-icon{flex:0 0 28px;height:28px;display:grid;place-items:center;background:rgba(255,255,255,.55);border-radius:50%;font-weight:800}.form-panel{display:flex;align-items:center;justify-content:center;padding:clamp(28px,4vw,48px)}.form-inner{width:100%;max-width:340px}.form-label{display:inline-block;color:var(--red);text-transform:uppercase;font-size:.7rem;font-weight:800;letter-spacing:.13em}h2{margin:9px 0 8px;font-size:1.8rem;letter-spacing:-.035em}.form-intro{margin:0 0 28px;color:var(--muted);font-size:.9rem;line-height:1.55}.field{margin-bottom:18px}label{display:block;margin-bottom:8px;font-size:.82rem;font-weight:700}input[type=text],input[type=password]{width:100%;height:48px;border:1px solid #d9d5cf;border-radius:2px;padding:0 13px;font:inherit;font-size:.9rem;color:var(--ink);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,204,0,.3)}.input-wrap{position:relative}.password-input{padding-right:72px!important}.toggle-password{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;padding:6px;cursor:pointer;font-size:.75rem;font-weight:800;color:#55514c}.form-options{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:3px 0 23px;font-size:.78rem}.small-muted{color:var(--muted);font-size:.78rem}.submit-btn{width:100%;min-height:49px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--red);border-radius:2px;background:var(--red);color:#fff;font:inherit;font-weight:800;cursor:pointer;transition:background .18s,transform .18s}.submit-btn:hover{background:#aa0009;transform:translateY(-1px)}.divider{height:1px;background:var(--line);margin:26px 0 18px}.help{color:var(--muted);font-size:.8rem;text-align:center;line-height:1.6}footer{padding:18px 20px 24px;text-align:center;color:#77716b;font-size:.72rem}footer span{color:var(--red);font-weight:800}.alert{padding:12px 14px;margin:0 0 18px;border-left:4px solid;font-size:.85rem;line-height:1.5}.alert.error{background:#fff0f0;border-color:var(--red);color:#761018}.alert.warning{background:#fff8d9;border-color:var(--yellow-dark);color:#514313}.alert.success{background:#edf8ef;border-color:#278346;color:#205d34}.settings-main,.dashboard-main{width:100%;max-width:880px;margin:0 auto;display:block;padding:38px 20px}.settings-card,.dashboard-card{background:#fff;border:1px solid rgba(36,34,34,.08);box-shadow:0 14px 45px rgba(36,34,34,.08);padding:clamp(24px,5vw,48px);width:100%}.settings-card{max-width:620px;margin:0 auto}.settings-header{display:flex;gap:18px;align-items:center;margin-bottom:24px}.settings-header h1,.dashboard-card h1{font-size:clamp(1.7rem,4vw,2.25rem);line-height:1.15;margin:7px 0 0;letter-spacing:-.04em}.field-help{font-size:.76rem;color:var(--muted);margin:6px 0 0}.back-link{margin:22px 0 0;text-align:center;font-size:.85rem}.button-link{display:flex;align-items:center;justify-content:center;text-decoration:none}.dashboard-top{background:var(--yellow);padding:18px max(20px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.dashboard-top nav{display:flex;align-items:center;gap:18px}.logout-form{margin:0}.logout-btn{background:var(--red);color:#fff;border:0;padding:10px 14px;font-weight:800;cursor:pointer}.dashboard-card>p{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.dashboard-grid article{border:1px solid var(--line);padding:20px}.dashboard-grid h2{font-size:1.1rem;margin:0 0 8px}.dashboard-grid p{color:var(--muted);font-size:.88rem}.status-pill{display:inline-block;background:#fff3c0;padding:4px 9px;font-size:.73rem;font-weight:800}.btn-link{font-size:.85rem}
@media(max-width:720px){main{padding:22px 14px}.login-layout{max-width:440px;grid-template-columns:1fr;min-height:0}.welcome-panel{padding:25px;min-height:215px}.welcome-copy{margin:28px 0 20px}.welcome-copy h1{font-size:2rem}.welcome-copy p{font-size:.86rem}.security-note{display:none}.form-panel{padding:30px 25px 34px}.form-intro{margin-bottom:23px}.dashboard-top{align-items:flex-start;flex-direction:column;padding:18px 20px}.dashboard-top nav{width:100%;justify-content:space-between;flex-wrap:wrap}.dashboard-grid{grid-template-columns:1fr}.settings-main,.dashboard-main{padding:22px 14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
