:root{color-scheme:light;--background:#f8fafc;--surface:#ffffff;--surface-soft:#f1f5f9;--surface-blue:#eff6ff;--text:#0f172a;--muted:#64748b;--subtle:#94a3b8;--line:#e2e8f0;--blue:#2563eb;--blue-strong:#1d4ed8;--blue-dark:#1e3a5f;--cyan:#0891b2;--success:#16a34a;--error:#dc2626;--shadow:0 24px 70px rgba(15,23,42,0.1),0 6px 18px rgba(15,23,42,0.06);--shadow-soft:0 12px 34px rgba(37,99,235,0.14)}*{box-sizing:border-box}html{background:var(--background)}body,html{min-height:100%}body{margin:0;color:var(--text);background:radial-gradient(circle at 16% 12%,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at 86% 16%,rgba(8,145,178,.1),transparent 28%),linear-gradient(135deg,#ffffff,#f8fafc 48%,#eef4ff);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.dashboard-page,.login-page{min-height:100vh;padding:32px}.login-page{display:grid;place-items:center}.login-shell{display:grid;width:min(1040px,100%);grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);overflow:hidden;border:1px solid rgba(226,232,240,.96);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-brand-panel{display:grid;align-content:space-between;min-height:620px;padding:42px;color:#ffffff;background:linear-gradient(140deg,rgba(30,58,95,.98),rgba(37,99,235,.94)),radial-gradient(circle at 20% 20%,rgba(255,255,255,.18),transparent 34%)}.dashboard-user,.login-brand-lockup{display:flex;align-items:center}.login-brand-lockup{gap:12px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:10px;color:var(--blue-dark);background:#ffffff;font-weight:900;letter-spacing:0;box-shadow:0 10px 24px rgba(15,23,42,.12)}.brand-title{margin:0;font-size:1.04rem;font-weight:800}.brand-subtitle{margin:2px 0 0;color:rgba(255,255,255,.74);font-size:.86rem}.login-copy{max-width:600px;margin:92px 0}.dashboard-card span,.dashboard-kicker,.eyebrow,.login-kicker{margin:0 0 12px;color:#ffffff;font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.dashboard-card span,.dashboard-kicker,.login-kicker{color:var(--blue)}.dashboard-header h1,.login-copy h1{margin-bottom:18px;letter-spacing:0}.login-copy h1{max-width:660px;font-size:clamp(2.6rem,6vw,5.3rem);line-height:.96}.login-copy p:last-child{max-width:530px;margin-bottom:0;color:rgba(255,255,255,.76);font-size:1.04rem;line-height:1.7}.login-bullets{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.login-bullets li{position:relative;padding-left:24px;color:rgba(255,255,255,.84);font-size:.94rem}.login-bullets li:before{position:absolute;left:0;width:10px;height:10px;margin-top:5px;border-radius:999px;background:#ffffff;content:""}.login-card{display:grid;align-content:center;grid-gap:18px;gap:18px;padding:46px;background:rgba(255,255,255,.98)}.login-card h2{margin-bottom:8px;font-size:2rem;letter-spacing:0}.dashboard-card p,.dashboard-subtitle,.login-footnote,.login-note{color:var(--muted);line-height:1.55}.login-note{margin-bottom:10px;font-size:.92rem}.login-footnote{margin:0;text-align:center;font-size:.88rem}.login-card label{display:grid;grid-gap:8px;gap:8px;color:var(--text);font-size:.84rem;font-weight:800}.login-card input{width:100%;border:1px solid var(--line);border-radius:12px;outline:none;background:#ffffff;color:var(--text);padding:14px 15px;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.login-card input:focus{border-color:rgba(37,99,235,.72);background:#ffffff;box-shadow:0 0 0 4px rgba(37,99,235,.14)}.login-card button,.secondary-button{border:0;border-radius:12px;padding:15px 16px;font-weight:900}.login-card button{color:#ffffff;background:linear-gradient(135deg,var(--blue),var(--blue-strong));box-shadow:var(--shadow-soft)}.login-card button:hover{background:linear-gradient(135deg,var(--blue-strong),#1e40af)}.login-card button:disabled,.login-card input:disabled{cursor:not-allowed;opacity:.72}.login-actions{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:10px;gap:10px}.login-card .secondary-button{border:1px solid var(--line);color:var(--blue-dark);background:var(--surface);box-shadow:none}.login-card .secondary-button:hover{background:var(--surface-soft)}.login-error{margin:-4px 0 0;border:1px solid #fecaca;border-radius:12px;color:var(--error);background:#fef2f2;padding:10px 12px;font-size:.88rem;line-height:1.45}.dashboard-page{background:linear-gradient(180deg,rgba(239,246,255,.9),rgba(255,255,255,.96) 44%),var(--background)}.dashboard-shell{width:min(1160px,100%);margin:0 auto}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:28px 0 30px}.dashboard-header h1{font-size:clamp(2.1rem,4vw,4rem);line-height:1}.dashboard-subtitle{max-width:650px;margin-bottom:0;font-size:1rem}.dashboard-user{flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:3px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.84);padding:12px 14px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.dashboard-user span{color:var(--success);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.dashboard-user strong{color:var(--text);font-size:.92rem}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.dashboard-card{min-height:210px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.92);padding:22px;box-shadow:0 12px 36px rgba(15,23,42,.07)}.dashboard-card h2{margin-bottom:10px;color:var(--text);font-size:1.28rem;letter-spacing:0}.dashboard-card p{margin-bottom:0;font-size:.94rem}@media (max-width:900px){.dashboard-page,.login-page{padding:16px}.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:28px}.login-copy{margin:54px 0}.login-card{padding:28px}.dashboard-header{flex-direction:column}.dashboard-user{align-items:flex-start}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:520px){.login-copy h1{font-size:2.55rem}.login-actions{grid-template-columns:1fr}}