:root{color:#252925;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f1eb;font-family:Inter,Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}#root{min-height:100vh}.login-page{grid-template-columns:minmax(320px,520px) 1fr;min-height:100vh;display:grid}.login-panel{background:#fff;flex-direction:column;justify-content:center;padding:64px;display:flex}.brand-mark{color:#fff;letter-spacing:.12em;background:#754b3f;border-radius:4px;width:fit-content;margin-bottom:48px;padding:12px 15px;font-size:.82rem;font-weight:800}.brand-mark.small{margin:0}.eyebrow{color:#866256;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.75rem;font-weight:800}.eyebrow.light{color:#dfcfc3}.login-panel h1,.welcome-copy h1{max-width:620px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,4.4rem);font-weight:500;line-height:1.04}.intro{color:#60645f;max-width:470px;margin:24px 0 36px;font-size:1rem;line-height:1.65}.login-form{gap:12px;max-width:430px;display:grid}.login-form label{font-size:.85rem;font-weight:700}.login-form input{border:1px solid #cbc9c1;border-radius:6px;outline:none;width:100%;padding:15px 16px}.login-form input:focus{border-color:#754b3f;box-shadow:0 0 0 3px #754b3f1f}.login-form button{color:#fff;background:#754b3f;border:0;border-radius:6px;padding:15px 18px;font-weight:700}.login-form button:hover{background:#603c32}.sign-in-help{color:#777a75;max-width:430px;margin-top:18px;font-size:.76rem;line-height:1.5}.microsoft-button{color:#fff;background:#754b3f;border-radius:6px;justify-content:center;align-items:center;gap:12px;padding:16px 18px;font-weight:700;text-decoration:none;display:flex}.microsoft-button:hover{background:#603c32}.microsoft-button:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #29453e}.microsoft-mark{grid-template-columns:repeat(2,8px);gap:2px;display:grid}.microsoft-mark i{background:currentColor;width:8px;height:8px}.auth-error{color:#8a352c;margin:0 0 16px;line-height:1.5}.logout-button:disabled{cursor:wait;opacity:.65}.welcome-panel{color:#fff;background:linear-gradient(#1f342fe0,#1f342ff5),#29453e;flex-direction:column;justify-content:space-between;padding:64px;display:flex}.welcome-panel h2{max-width:680px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,5.5rem);font-weight:400;line-height:1.02}.welcome-footer{color:#d7dfda;max-width:480px;line-height:1.6}.dashboard{background:#f3f1eb;min-height:100vh}.dashboard-header{background:#fff;border-bottom:1px solid #dedbd2;justify-content:space-between;align-items:center;padding:22px 5vw;display:flex}.header-brand{align-items:center;gap:16px;display:flex}.header-brand p{margin:0}.header-subtitle{color:#6d716c;font-size:.82rem}.logout-button{color:#343834;background:0 0;border:1px solid #c8c5bc;border-radius:5px;padding:10px 15px}.dashboard-content{width:min(1180px,90%);margin:0 auto;padding:72px 0}.welcome-copy{padding-bottom:60px}.welcome-copy h1{font-size:clamp(2.5rem,6vw,5rem)}.welcome-copy>p:last-child{color:#646963;max-width:650px;line-height:1.65}.section-heading{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:20px;display:flex}.section-heading h2{margin:0;font-size:1.35rem}.section-heading span{color:#747871;font-size:.82rem}.module-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.module-card{background:#fff;border:1px solid #dfdcd3;border-radius:9px;flex-direction:column;min-height:260px;padding:24px;display:flex}.module-card-top{justify-content:space-between;align-items:center;display:flex}.module-icon{color:#fff;background:#29453e;border-radius:5px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.status{color:#866256;text-transform:uppercase;font-size:.72rem;font-weight:800}.module-card h3{margin:28px 0 8px}.module-card p{color:#686c67;flex:1;margin:0 0 24px;font-size:.9rem;line-height:1.55}.module-card button{color:#777a75;background:0 0;border:0;width:fit-content;padding:0;font-weight:700}.module-card button:disabled{cursor:default}@media (width<=900px){.login-page{grid-template-columns:1fr}.welcome-panel{min-height:440px}.module-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.login-panel,.welcome-panel{padding:36px 24px}.dashboard-header{padding:18px 5%}.header-subtitle{display:none}.dashboard-content{padding:48px 0}.module-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start}}
