:root{--ink:#17212d;--muted:#687384;--line:#dce2e8;--paper:#fff;--canvas:#f4f7f9;--nav:#172230;--nav-soft:#223142;--blue:#3a83c5;--blue-dark:#27689f;--mint:#8dc8b3;--shadow:0 20px 55px rgba(24,37,52,.12)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.auth-page{height:100svh;overflow:hidden;background:var(--paper)}.auth-shell{height:100svh;display:grid;grid-template-columns:minmax(380px,560px) 1fr;overflow:hidden;background:var(--paper)}.auth-panel{height:100svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(22px,5vh,58px) clamp(28px,5vw,72px);max-width:560px;overflow-y:auto;scrollbar-width:none}.auth-panel::-webkit-scrollbar{display:none}.auth-logo{display:block;width:clamp(58px,8vh,78px);height:auto;margin:0 0 clamp(18px,3.5vh,32px)}.auth-panel h1{font-size:clamp(2.25rem,4.4vw,3.55rem);line-height:1;margin:.14em 0}.lede{color:var(--muted);line-height:1.55;margin:10px 0 clamp(17px,3vh,26px)}.brand-mark.compact{width:42px;height:42px;border-radius:12px;font-size:1.1rem;margin:0}.auth-form{display:grid;gap:clamp(11px,2vh,17px)}.auth-form label{display:grid;gap:7px;font-size:.82rem;font-weight:750}.auth-form input[type=email],.auth-form input[type=password]{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 15px;outline:none;background:#fbfcfd}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(58,131,197,.12)}.auth-form .check{display:flex;align-items:center;gap:9px;font-weight:550;color:var(--muted)}.auth-form button,.create-button{border:0;border-radius:10px;padding:13px 20px;background:var(--blue);color:white;font-weight:800;cursor:pointer}.auth-form button:hover,.create-button:hover{background:var(--blue-dark)}.auth-visual{height:100svh;padding:clamp(40px,8vw,120px);display:flex;align-items:flex-end;overflow:hidden;color:white;background:linear-gradient(145deg,rgba(18,34,48,.55),rgba(18,34,48,.93)),linear-gradient(135deg,#78b8d7,#172230)}.auth-visual div{max-width:690px}.auth-visual .eyebrow{color:#bfe0f1}.auth-visual h2{font-size:clamp(2.5rem,5.8vw,6.5rem);line-height:.98;letter-spacing:-.055em;margin:0}.security-note{margin:clamp(14px,2.6vh,24px) 0 0;color:#8a94a2;font-size:.78rem}.alert{background:#fff3f2;color:#8e3028;border:1px solid #efd0cc;padding:11px 14px;border-radius:9px;margin:0 0 16px;font-size:.88rem}
.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:#d9e2eb;padding:26px 18px;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#415368 transparent}.app-brand{display:flex;align-items:center;gap:12px;padding:0 8px 30px}.app-brand strong,.app-brand small{display:block}.app-brand strong{font-size:.9rem;letter-spacing:.16em}.app-brand small{font-size:.72rem;color:#8fa0b1;margin-top:3px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{display:flex;align-items:center;justify-content:space-between;color:#aebdca;text-decoration:none;padding:10px 12px;border-radius:8px;font-size:.84rem;font-weight:650}.sidebar nav a:hover,.sidebar nav a.active{color:white;background:var(--nav-soft)}.sidebar nav b{font-size:.68rem;background:var(--blue);color:white;padding:2px 7px;border-radius:99px}.nav-group{margin:24px 12px 6px;color:#667c90;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em}.logout-form{margin-top:auto;padding-top:28px}.logout-form button{width:100%;border:1px solid #35485b;border-radius:8px;background:transparent;color:#9eafbd;padding:10px;cursor:pointer}.workspace{padding:clamp(24px,4vw,58px);min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px}.topbar h1{margin:0;font-size:clamp(1.8rem,3vw,3.2rem);letter-spacing:-.04em}.create-button{padding:11px 18px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-grid article,.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 28px rgba(25,37,50,.05)}.metric-grid article{padding:22px}.metric-grid span{display:block;color:var(--muted);font-size:.78rem;font-weight:700}.metric-grid strong{display:block;font-size:clamp(1.65rem,3vw,2.6rem);letter-spacing:-.045em;margin:11px 0 5px}.metric-grid small{color:#8a94a0}.dashboard-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:18px;margin-top:18px}.panel{padding:28px}.panel h2{margin:0;font-size:1.4rem}.panel-heading{display:flex;justify-content:space-between;gap:20px}.panel-heading a{color:var(--blue-dark);font-size:.82rem;font-weight:750;text-decoration:none}.financial-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:28px;border-top:1px solid var(--line)}.financial-row div{padding:24px 20px 0 0}.financial-row span{display:block;color:var(--muted);font-size:.78rem}.financial-row strong{display:block;margin-top:8px;font-size:1.45rem}.foundation-panel{background:linear-gradient(155deg,#203244,#15212d);color:#e9f0f5;border:0}.foundation-panel h2{font-size:1.8rem}.foundation-panel p:not(.eyebrow){color:#aebdca;line-height:1.65}.foundation-panel ul{margin:22px 0 0;padding:0;list-style:none}.foundation-panel li{border-top:1px solid #34475a;padding:10px 0;color:#dbe5ec;font-size:.86rem}.simple-page{padding:10vw}.simple-page a{color:var(--blue-dark)}
@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.auth-visual{display:none}.auth-shell{grid-template-columns:1fr}.auth-panel{margin:auto;width:100%;max-width:580px}}
@media(max-width:720px){.app-shell{display:block}.sidebar{position:relative;height:auto}.sidebar nav,.logout-form{display:none}.workspace{padding:24px 16px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-grid article{padding:17px}.topbar{align-items:flex-end}.financial-row{grid-template-columns:1fr}.financial-row div{padding-bottom:18px;border-bottom:1px solid var(--line)}}
@media(max-width:460px){.metric-grid{grid-template-columns:1fr}.auth-panel{padding:20px 22px}.auth-logo{width:58px;margin-bottom:18px}}
@media(max-height:700px){.auth-logo{width:52px;margin-bottom:14px}.auth-panel h1{font-size:2.2rem}.lede{line-height:1.4;margin:7px 0 14px}.auth-form{gap:9px}.auth-form input[type=email],.auth-form input[type=password]{padding:10px 12px}.auth-form button{padding:11px 18px}.security-note{margin-top:12px}}
/* Shared button geometry for authentication and foundation pages. */
button,.button,[role="button"],input[type="button"],input[type="submit"],input[type="reset"],.create-button{border-radius:0!important}
input::file-selector-button{border-radius:0!important}
