@font-face{font-family:Montserrat;src:url('/assets/montserrat-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
.login-divider{display:flex;align-items:center;gap:14px;color:#6b7582;font-size:9px;margin-top:25px}.login-divider:before,.login-divider:after{content:'';flex:1;height:1px;background:#e2e6e9}.google-login{display:block;width:100%;margin-top:17px;background:#fff;border:1px solid #cdd4da;border-radius:3px;padding:14px;color:#273c57;font-size:12px;font-weight:600}.google-login:hover{border-color:#273c57;background:#f9fafb}.admin-badge{margin-top:-18px;margin-bottom:24px;font-size:9px;color:#ffa8a3;line-height:1.6}
:root{--coral:#f04942;--navy:#273c57;--ink:#192638;--muted:#6b7582;--line:#e2e6e9;--paper:#f5f6f7}*{box-sizing:border-box}body{margin:0;font:14px/1.65 Montserrat,Arial,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--coral);outline-offset:4px}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,p{margin-top:0}h1,h2{line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(28px,3vw,44px);font-weight:600;margin-bottom:15px}h2{font-size:25px;font-weight:600;margin-bottom:12px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--coral);margin-bottom:17px}.muted{color:var(--muted)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;white-space:nowrap;background:var(--coral);color:#fff;border:0;border-radius:3px;padding:14px 20px;font-size:12px;font-weight:700}.button:hover{background:#d63b35}.owner-top{background:white;min-height:90px;display:flex;justify-content:space-between;align-items:center;padding:20px 4%;border-bottom:1px solid var(--line);gap:25px}.owner-top img{width:170px}.owner-top>div{display:flex;gap:30px;align-items:center;font-size:11px;font-weight:600}.language{text-decoration:underline;text-underline-offset:4px}.back-site{color:var(--muted)}.owner-footer{padding:22px 4%;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);border-top:1px solid var(--line);background:white;gap:20px}
.login-layout{min-height:calc(100vh - 157px);display:grid;grid-template-columns:1.15fr 1fr;max-width:1440px;margin:auto}.login-intro{background:var(--navy);color:white;padding:75px 12%}.login-intro h1{font-size:clamp(36px,4vw,58px);line-height:1.12}.login-intro .eyebrow{color:#ffa8a3}.login-intro>p:not(.eyebrow){font-size:15px;max-width:430px;color:#d9e2ed;margin-bottom:40px}.intro-detail{display:flex;gap:20px;align-items:center;border-top:1px solid #ffffff26;padding:17px 0;font-size:12px}.intro-detail span{color:#ffa8a3;font-size:10px}.login-card{margin:auto;padding:55px 10%;width:100%;max-width:560px}.login-card h2{font-size:31px}.login-card label{display:block;font-size:11px;font-weight:600;margin-top:22px}.login-card input{width:100%;border:1px solid #cdd4da;border-radius:3px;background:white;padding:14px;margin-top:7px;color:var(--ink)}.login-card .button{width:100%;margin-top:28px}.access-help{font-size:11px;line-height:1.9;margin-top:28px}.access-help a{font-weight:600;text-decoration:underline;text-underline-offset:4px}.secure-note{font-size:10px;color:var(--muted);margin-top:28px}.error{padding:15px;border:1px solid #e7a5a1;border-radius:4px;background:#fff0ee;font-size:12px;color:#852d27}
.portal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);max-width:1700px;margin:auto;min-height:calc(100vh - 157px)}.owner-side{padding:36px 25px;background:var(--navy);color:white;display:flex;flex-direction:column}.owner-side .eyebrow{color:#ffa8a3;font-size:9px}.owner-name{font-weight:600;font-size:16px;margin-bottom:30px;overflow-wrap:anywhere}.owner-side nav{display:grid;gap:6px}.owner-side nav a{padding:12px 14px;border-radius:4px;font-size:12px;color:#dfe7ef}.owner-side nav a:hover,.owner-side nav .selected{background:#ffffff16;color:#fff}.owner-side nav .selected{border-left:3px solid var(--coral)}.logout{background:none;border:1px solid #ffffff4d;border-radius:3px;color:white;margin-top:35px;padding:9px 14px;font-size:11px}.sidebar-note{font-size:12px;color:#bac9d9;margin-top:auto;padding-top:65px}.owner-content{padding:42px 4%;min-width:0}.page-title{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:22px}.page-title h1{font-size:clamp(28px,3vw,40px)}.page-title p:last-child{margin-bottom:0}.year-strip{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:25px}.year-strip strong{margin-left:10px;color:var(--ink);font-size:12px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:30px}.metric-card{background:white;padding:22px;border:1px solid var(--line);border-radius:7px}.metric-card p{font-size:10px;font-weight:600;color:var(--muted);min-height:32px;margin-bottom:7px}.metric-card strong{display:block;font-size:38px;font-weight:600;letter-spacing:-.04em;color:var(--navy);line-height:1.3}.metric-card span{display:block;font-size:9px;color:var(--muted);margin-top:8px}.panel{background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden;margin-bottom:27px;scroll-margin-top:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px}.panel-head .eyebrow{font-size:9px;margin-bottom:8px}.panel-head h2{font-size:22px;margin-bottom:0}.pill{font-size:10px;padding:6px 12px;border-radius:25px;background:#f1f3f5;color:var(--muted);white-space:nowrap}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}thead{background:#f7f8f9;color:var(--muted)}th{font-size:9px;font-weight:600;padding:15px 20px;white-space:nowrap}td{padding:19px 20px;border-top:1px solid var(--line)}td:first-child{min-width:185px}td strong{display:block;font-weight:600}td small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.status{display:inline-block;padding:4px 9px;border-radius:20px;background:#f0f1f3;color:var(--muted);font-size:9px}.status.active{background:#e9f4ed;color:#35714d}.report-link{color:var(--coral);white-space:nowrap;font-size:10px;font-weight:600}.text-link{font-size:10px;font-weight:600;color:var(--coral)}tfoot{background:#f7f8f9;font-weight:600}.empty{padding:35px!important;color:var(--muted);text-align:center}.method-note{padding:0 4px;color:var(--muted)}.method-note h2{font-size:12px;letter-spacing:0;font-weight:600;margin-bottom:8px}.method-note p{font-size:10px;max-width:970px;line-height:1.8}
@media(max-width:1100px){.portal-layout{grid-template-columns:205px minmax(0,1fr)}.owner-side{padding:30px 20px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-title{align-items:flex-start;flex-direction:column;gap:18px}.owner-content{padding:30px 4%}.login-intro{padding:60px 10%}}
@media(max-width:700px){.owner-top{min-height:75px;padding:17px 20px;gap:15px}.owner-top img{width:130px}.owner-top>div{gap:18px;font-size:10px}.back-site{display:none}.login-layout{display:flex;flex-direction:column}.login-intro{padding:38px 25px}.login-intro h1{font-size:35px}.login-intro>p:not(.eyebrow){font-size:12px;margin-bottom:0}.intro-detail{display:none}.login-card{padding:35px 25px}.login-card h2{font-size:28px}.portal-layout{display:block}.owner-side{padding:22px 20px}.owner-name{margin-bottom:17px;font-size:14px}.owner-side .eyebrow{margin-bottom:8px}.owner-side nav{display:flex;gap:4px;flex-wrap:wrap}.owner-side nav a{font-size:10px;padding:8px}.owner-side nav .selected{border-left:0;border-bottom:2px solid var(--coral)}.owner-side form{margin:0}.logout{margin-top:15px;font-size:9px;padding:6px 10px}.sidebar-note{display:none}.owner-content{padding:27px 18px}.page-title h1{font-size:30px}.page-title .muted{font-size:11px}.year-strip{align-items:flex-start;flex-direction:column;font-size:9px}.metric-grid{gap:10px}.metric-card{padding:16px}.metric-card p{font-size:9px;min-height:28px}.metric-card strong{font-size:32px}.metric-card span{font-size:8px}.panel-head{padding:19px;align-items:flex-start}.panel-head h2{font-size:18px}.panel-head .text-link{max-width:95px}.owner-footer{font-size:9px;padding:20px}.owner-footer span{max-width:180px;text-align:right}}
