.auth-screen{position:fixed;inset:0;z-index:100;background:#f3f1e9;display:none;overflow-y:auto;overflow-x:hidden;color:#18332b;scroll-behavior:smooth}
.auth-screen.visible{display:block}
.auth-screen::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;top:-310px;left:41%;border:1px solid rgba(24,59,50,.1);box-shadow:0 0 0 70px rgba(24,59,50,.025),0 0 0 140px rgba(24,59,50,.02);pointer-events:none}
.landing-header{position:relative;z-index:2;width:min(1240px,calc(100% - 64px));height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(24,59,50,.13)}
.landing-brand{display:flex;align-items:center;gap:11px;color:#18332b;text-decoration:none;font:700 18px Manrope}
.landing-brand .brand-mark{background:#183b32;color:#f3f1e9}
.landing-header nav{display:flex;align-items:center;gap:32px}
.landing-header nav a{color:#596a63;text-decoration:none;font-size:12px;font-weight:600;transition:.2s}
.landing-header nav a:hover{color:#183b32}
.landing-header .landing-login-link{padding:11px 17px;border:1px solid rgba(24,59,50,.22);border-radius:99px;color:#183b32}
.landing-login-link span{margin-left:8px}
.landing-hero{position:relative;width:min(1240px,calc(100% - 64px));min-height:680px;margin:auto;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);align-items:center;gap:clamp(55px,8vw,130px);padding:72px 0 92px}
.landing-copy{padding-bottom:14px}
.landing-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 24px;color:#607169;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.landing-eyebrow span{width:26px;height:1px;background:#d0a85e}
.landing-copy h1{max-width:720px;margin:0;font:600 clamp(48px,5.6vw,78px)/.98 Manrope;letter-spacing:-.055em;color:#17362f}
.landing-copy h1 em{font-family:Georgia,serif;font-weight:400;color:#b07b38}
.landing-lead{max-width:595px;margin:29px 0 22px;color:#65756e;font-size:17px;line-height:1.7}
.landing-benefits{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:33px;color:#4c6057;font-size:12px;font-weight:600}
.landing-benefits span{display:flex;align-items:center;gap:7px}
.landing-benefits i{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#dfe9df;color:#277256;font-size:10px;font-style:normal}
.landing-cta{display:inline-flex;align-items:center;gap:28px;padding:15px 20px 15px 22px;border-radius:4px;background:#183b32;color:#fff;text-decoration:none;font-size:13px;font-weight:700;box-shadow:0 12px 30px rgba(24,59,50,.16);transition:.2s}
.landing-cta:hover{transform:translateY(-2px);background:#214b40}
.landing-cta span{font-size:17px}
.landing-reassurance{margin:15px 0 0;color:#8a9690;font-size:10px}
.auth-card{position:relative;width:100%;background:rgba(255,255,255,.92);border:1px solid rgba(24,59,50,.12);border-radius:3px;padding:37px 39px 33px;box-shadow:0 30px 75px rgba(38,57,49,.13);backdrop-filter:blur(12px)}
.auth-card::before{content:"";position:absolute;inset:9px;border:1px solid rgba(24,59,50,.055);pointer-events:none}
.auth-card-topline{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-bottom:29px;color:#87938e;font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.auth-card-topline i{width:6px;height:6px;border-radius:50%;background:#4ea27c;box-shadow:0 0 0 3px #e2f0e9}
.auth-copy{position:relative}
.auth-copy h2{font:700 29px Manrope;margin:0 0 8px;letter-spacing:-.03em}
.auth-copy>p:last-child{color:var(--muted);margin:0 0 25px;line-height:1.55}
.registration-closed-notice{
position:relative;
margin:-7px 0 20px;
padding:13px 15px;
border:1px solid #ead7ad;
border-radius:11px;
background:#fffaf0;
color:#725825;
font-size:12px;
line-height:1.5}
.registration-closed-notice strong{
display:block;
color:#5f4719}
.auth-card form{
position:relative;
display:grid;
gap:15px}
.auth-card label{
font-size:11px;
font-weight:600;
color:#52615b}
.auth-card label input{margin-top:7px;padding:12px 13px;border-radius:4px;background:#fbfcfa}
.auth-card .remember-login{
display:flex;
align-items:center;
gap:9px;
width:max-content;
cursor:pointer}
.auth-card .remember-login input{
width:auto;
margin:0;
accent-color:var(--green)}
.auth-card .terms-acceptance{display:flex;align-items:flex-start;gap:9px;color:#64736d;font-size:11px;font-weight:500;line-height:1.45;cursor:pointer}
.auth-card .terms-acceptance input{flex:0 0 auto;width:auto;margin:2px 0 0;accent-color:var(--green)}
.auth-card .terms-acceptance a{color:var(--green);font-weight:700;text-underline-offset:2px}
.auth-submit{
width:100%;
padding:13px 16px;
margin-top:4px;
border-radius:4px;
display:flex;
align-items:center;
justify-content:center;
gap:12px}
.auth-switch{
width:100%;
border:0;
background:transparent;
color:var(--muted);
margin-top:20px;
cursor:pointer}
.auth-switch strong{
color:var(--green)}
.form-error{
color:var(--red);
font-size:12px;
margin:0;
min-height:16px}
.logout-btn{
width:100%;
margin-top:16px;
padding:9px;
border:1px solid rgba(255,255,255,.15);
border-radius:9px;
background:transparent;
color:#aebdb8;
cursor:pointer;
font:500 11px "DM Sans"}
.logout-btn:hover{
color:white;
background:rgba(255,255,255,.08)}
.mini-empty{
color:var(--muted);
font-size:12px;
padding:25px 5px;
text-align:center}
#toast.error{
background:#8f3438}
.btn:disabled{
opacity:.55;
cursor:wait}
.landing-preview{width:min(1240px,calc(100% - 64px));margin:auto;padding:112px 0 125px;border-top:1px solid rgba(24,59,50,.13);display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(50px,7vw,105px);align-items:center}
.landing-section-kicker{margin:0 0 15px;color:#a47032;font-size:10px;font-weight:800;letter-spacing:.16em}
.preview-copy h2,.landing-section-heading h2{margin:0;color:#17362f;font:600 clamp(34px,3.5vw,50px)/1.08 Manrope;letter-spacing:-.045em}
.preview-copy>p:not(.landing-section-kicker){margin:23px 0 30px;color:#687871;line-height:1.75}
.preview-copy ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(24,59,50,.12)}
.preview-copy li{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:18px 0;border-bottom:1px solid rgba(24,59,50,.12)}
.preview-copy li>span{color:#b07b38;font:500 11px Manrope;padding-top:2px}
.preview-copy li strong,.preview-copy li small{display:block}
.preview-copy li strong{font-size:12px;margin-bottom:4px}
.preview-copy li small{color:#78867f;font-size:11px;line-height:1.45}
.dashboard-preview{min-width:0;display:grid;grid-template-columns:62px 1fr;min-height:430px;background:#f9faf7;border:1px solid rgba(24,59,50,.14);border-radius:5px;box-shadow:0 28px 70px rgba(38,57,49,.12);overflow:hidden;transform:rotate(1deg)}
.preview-sidebar{background:#183b32;display:flex;align-items:center;flex-direction:column;gap:25px;padding:20px 0}
.preview-logo{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#dbe7da;color:#183b32;font:800 12px Manrope;margin-bottom:24px}
.preview-sidebar i{width:20px;height:3px;background:rgba(255,255,255,.25);border-radius:2px}
.preview-sidebar i.active{background:#dbe7da}
.preview-main{min-width:0;padding:27px 29px;background:linear-gradient(145deg,#f8faf7,#eef2ed)}
.preview-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}
.preview-heading small,.preview-heading strong{display:block}
.preview-heading small{color:#829087;font-size:7px;letter-spacing:.13em;margin-bottom:5px}
.preview-heading strong{font:700 16px Manrope}
.preview-heading>span{padding:8px 11px;background:#183b32;color:white;border-radius:5px;font-size:8px;font-weight:700}
.preview-value-card{position:relative;overflow:hidden;height:240px;padding:24px 26px;background:linear-gradient(130deg,#21493e,#112c24);color:#fff;border-radius:10px}
.preview-value-card small,.preview-value-card strong,.preview-value-card em{position:relative;z-index:1;display:block}
.preview-value-card small{color:#b4c8c0;font-size:9px}.preview-value-card strong{font:700 27px Manrope;margin-top:7px}.preview-value-card em{color:#7dd0a9;font-size:9px;font-style:normal;margin-top:6px}
.preview-value-card svg{position:absolute;left:20px;right:20px;bottom:13px;width:calc(100% - 40px);height:118px}.preview-value-card .line{fill:none;stroke:#8ed0b1;stroke-width:2}.preview-value-card .area{fill:url(#preview-area)}
.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}
.preview-stats div{padding:14px;background:#fff;border:1px solid #e4e9e5;border-radius:7px}.preview-stats small,.preview-stats strong{display:block}.preview-stats small{color:#8a9690;font-size:7px}.preview-stats strong{font:700 13px Manrope;margin-top:5px}
.landing-features{padding:112px max(32px,calc((100% - 1240px)/2));background:#17362f;color:#fff}
.landing-section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:62px}.landing-section-heading .landing-section-kicker{align-self:flex-start;color:#d0a85e}.landing-section-heading h2{color:#fff;text-align:right}
.landing-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.17)}
.landing-feature-grid article{position:relative;min-height:285px;padding:30px 34px 25px 0;border-right:1px solid rgba(255,255,255,.17)}
.landing-feature-grid article+article{padding-left:34px}.landing-feature-grid article:last-child{border-right:0}
.landing-feature-grid article>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.2);border-radius:50%;font-size:17px}
.landing-feature-grid article p{margin:65px 0 13px;color:#8fa9a0;font-size:9px;font-weight:800;letter-spacing:.14em}
.landing-feature-grid h3{max-width:320px;margin:0 0 12px;font:600 20px/1.35 Manrope}.landing-feature-grid small{color:#9fb1aa;line-height:1.6}
.landing-disclaimer{padding:27px max(32px,calc((100% - 1240px)/2));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;background:#e8e3d6;color:#53645d;border-top:1px solid rgba(24,59,50,.12)}
.landing-disclaimer strong{color:#17362f;font:700 13px Manrope}.landing-disclaimer p{margin:0;font-size:11px;line-height:1.55}.landing-disclaimer a{color:#24775a;font-size:11px;font-weight:700;text-decoration:none;white-space:nowrap}
.landing-footer{min-height:135px;padding:34px max(32px,calc((100% - 1240px)/2));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#102a23;color:#91a69d;border-top:1px solid rgba(255,255,255,.1)}
.landing-footer .landing-brand{color:#fff}.landing-footer .brand-mark{background:#dbe7da;color:#183b32}.landing-footer>div{text-align:center}.landing-footer p{font-family:Georgia,serif;font-style:italic;margin:0 0 7px}.landing-footer small{text-align:right;font-size:10px}.landing-footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 12px}.landing-footer-nav a{color:#b9cbc4;font-size:9px;text-underline-offset:3px}.landing-footer-nav a:hover{color:#fff}
@media(max-width:980px){.landing-hero{grid-template-columns:1fr;gap:55px;padding-top:65px}.landing-copy{max-width:760px}.auth-card{width:min(510px,100%)}.landing-preview{grid-template-columns:1fr}.preview-copy{max-width:650px}.dashboard-preview{width:min(760px,100%)}.landing-section-heading{display:block}.landing-section-heading h2{text-align:left;margin-top:18px}}
@media(max-width:700px){.landing-header{width:calc(100% - 36px);height:76px}.landing-header nav a:not(.landing-login-link){display:none}.landing-header nav{gap:0}.landing-hero,.landing-preview{width:calc(100% - 36px)}.landing-hero{padding:55px 0 72px;grid-template-columns:minmax(0,1fr)}.landing-copy h1{font-size:clamp(43px,13vw,60px)}.landing-lead{font-size:15px}.landing-benefits{gap:11px 16px}.auth-card{padding:32px 25px 28px}.landing-preview{padding:78px 0 85px}.dashboard-preview{grid-template-columns:45px 1fr;min-height:355px}.preview-sidebar{gap:20px}.preview-main{padding:18px 16px}.preview-heading>span{display:none}.preview-value-card{height:200px;padding:19px}.preview-stats div{padding:10px}.preview-stats strong{font-size:10px}.landing-features{padding:80px 18px}.landing-feature-grid{grid-template-columns:1fr}.landing-feature-grid article,.landing-feature-grid article+article{min-height:auto;padding:27px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}.landing-feature-grid article p{margin-top:30px}.landing-disclaimer{grid-template-columns:1fr;gap:8px;padding:25px 18px}.landing-footer{grid-template-columns:1fr;gap:14px;text-align:center}.landing-footer .landing-brand{justify-content:center}.landing-footer p{margin:0}.landing-footer small{text-align:center}}
@media(max-width:390px){.landing-header .landing-login-link{padding:9px 12px}.landing-copy h1{font-size:40px}.landing-benefits{display:grid}.auth-card{padding-inline:20px}.preview-sidebar{display:none}.dashboard-preview{grid-template-columns:1fr}.preview-value-card strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){.landing-cta{transition:none}}
