:root{--ink:#17211d;--muted:#627068;--paper:#f7f8f4;--surface:#fff;--line:#d9e0da;--green:#1f6a4a;--mint:#dff1e8;--orange:#c65b2d;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;margin:0}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline-offset:3px;outline:3px solid #eb8b42}.skip-link{z-index:5;background:var(--ink);color:#fff;border-radius:8px;padding:12px 16px;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}.topbar{border-bottom:1px solid var(--line);background:#fffc;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:16px clamp(18px,4vw,52px);display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{background:var(--green);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.topbar-actions{align-items:center;gap:14px;display:flex}.menu-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:40px;padding:8px 12px;display:none}.role-badge{color:var(--green);letter-spacing:.08em;border:1px solid #afd2c0;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.layout{grid-template-columns:216px minmax(0,1fr);min-height:calc(100vh - 76px);display:grid}.sidebar{border-right:1px solid var(--line);padding:30px 18px}.sidebar a{border-radius:8px;padding:12px 14px;font-size:14px;text-decoration:none;display:block}.sidebar a:hover,.sidebar a:focus-visible{background:var(--mint);color:var(--green)}.nav-label,.eyebrow{color:var(--green);letter-spacing:.16em;margin:0 0 12px;font-size:11px;font-weight:800}.nav-label{color:var(--muted);padding:0 14px}.content{width:min(100%,1100px);padding:clamp(32px,6vw,76px) clamp(20px,6vw,80px)}.page-heading{max-width:750px;margin-bottom:40px}h1,h2,p{margin-top:0}h1{letter-spacing:-.055em;max-width:720px;margin-bottom:16px;font-size:clamp(36px,5vw,66px);line-height:.98}h2{letter-spacing:-.03em;margin-bottom:0;font-size:24px}.lede,.muted{color:var(--muted);font-size:18px;line-height:1.55}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:56px;display:grid}.metric-card,.state-panel,.auth-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;box-shadow:0 8px 24px #17211d0a}.metric-card{flex-direction:column;gap:12px;min-height:158px;padding:22px;display:flex}.metric-card span,.metric-card small{color:var(--muted)}.metric-card strong{letter-spacing:-.06em;font-size:42px}.section-block{border-top:1px solid var(--line);padding-top:28px}.section-heading{margin-bottom:18px}.state-panel{min-height:120px;color:var(--muted);flex-direction:column;justify-content:center;gap:8px;padding:24px;line-height:1.5;display:flex}.state-panel strong{color:var(--ink)}.state-error{background:#fff8f5;border-color:#e6b6a4}.status-dot{background:var(--orange);border-radius:50%;width:10px;height:10px}.auth-page{background:radial-gradient(circle at 80% 20%,#e8f4ed 0,transparent 35%),var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{width:min(100%,520px);padding:clamp(28px,6vw,52px)}.auth-card h1{font-size:clamp(38px,7vw,60px)}.notice{border-left:4px solid var(--green);background:var(--mint);color:var(--ink);margin:22px 0;padding:14px 16px;line-height:1.45}.notice-error{border-color:var(--orange);background:#fff2ec}.role-list{gap:10px;margin-top:28px;display:grid}.role-button,.button{border:1px solid var(--green);background:var(--green);color:#fff;cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;min-height:48px;padding:12px 16px;font-weight:700;text-decoration:none;display:flex}.role-button:hover,.button:hover{background:#154a35}.button-quiet{border-color:var(--line);min-height:36px;color:var(--ink);background:0 0;padding:8px 11px;font-size:13px}.button-quiet:hover{background:var(--mint);color:var(--green)}.fine-print{color:var(--muted);margin:22px 0 0;font-size:12px;line-height:1.5}.filter-bar{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:28px;display:flex}.filter-bar label,.review-card label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}select,input,textarea{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;border-radius:8px;padding:10px 12px}textarea{resize:vertical;width:100%;min-height:120px}.table-card,.review-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:24px;padding:22px;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:14px 10px}th{font-size:13px}td{color:var(--muted);font-size:14px}.state-chip{background:var(--mint);color:var(--green);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-block}.text-link{color:var(--green);font-weight:700}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.review-card{max-width:760px}.action-row{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.button-danger{background:#a43d23;border-color:#a43d23}.button-danger:hover{background:#7e2f1d}.empty-state{color:var(--muted);padding:14px 0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.detail-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar label,.filter-bar .button{width:100%}.table-card{padding:14px}.topbar{flex-wrap:wrap;align-items:center}.menu-toggle{margin-left:auto;display:block}.topbar-actions{justify-content:space-between;width:100%}.role-badge{font-size:9px}.layout{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);gap:4px;padding:10px 14px;display:none}.sidebar.is-open{display:grid}.sidebar a{white-space:nowrap}.nav-label{display:none}.content{padding:40px 20px}.metric-grid{grid-template-columns:1fr;margin-bottom:40px}}
