.auth-screen,.portal{--serif:var(--font-display),Georgia,serif;min-height:100vh;background:var(--ivory);color:var(--hide)}.auth-screen{display:grid;grid-template-columns:1fr}.auth-screen .auth-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 28px}.auth-brand{display:flex;align-items:center;gap:13px;margin-bottom:40px}.auth-brand .gam{font-weight:600;font-size:22px;letter-spacing:.03em}.auth-brand .rule{width:1px;height:26px;background:currentColor;opacity:.28}.auth-brand .wm b{font-weight:500;font-size:14px;letter-spacing:.2em;text-transform:uppercase;display:block;line-height:1}.auth-brand .wm span{font-family:var(--mono);font-size:8px;letter-spacing:.28em;text-transform:uppercase;opacity:.6;display:block;margin-top:5px}.auth-card{width:100%;max-width:420px;background:var(--paper);border:1px solid var(--line);padding:40px 38px 34px}.auth-eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}.auth-title{font-family:var(--serif);font-weight:300;font-size:30px;letter-spacing:-.01em;margin:12px 0 0}.auth-sub{margin-top:12px;font-size:14px;font-weight:300;line-height:1.6;color:var(--slate)}.auth-grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.auth-field{margin-top:20px;display:flex;flex-direction:column}.auth-grid2 .auth-field{margin-top:0}.auth-field label{font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--slate);margin-bottom:8px}.auth-field input{font-family:inherit;font-size:15px;color:var(--hide);background:var(--ivory);border:1px solid var(--line);padding:13px 15px;outline:none;transition:border-color .25s,background .25s}.auth-field input:focus{border-color:var(--hide);background:#fff}.auth-field input[aria-invalid=true]{border-color:#8a5a2a}.auth-fe{color:#8a5a2a;font-weight:500}.auth-fe,.auth-hint{margin-top:6px;font-size:12px}.auth-hint{color:var(--mute);font-weight:300}.auth-forgot{margin-top:10px;align-self:flex-start;font-size:12.5px;color:var(--slate);border-bottom:1px solid var(--line);padding-bottom:1px}.auth-forgot:hover{color:var(--hide)}.auth-error{margin-top:20px;padding:12px 14px;border:1px solid #c8a48a;background:#fbf3ec;font-size:13px;color:#8a5a2a;font-weight:500}.auth-devlink{margin-top:20px;padding:14px;border:1px dashed var(--line);background:var(--ivory)}.auth-devlink-label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}.auth-devlink a{color:var(--hide);border-bottom:1px solid var(--line);padding-bottom:1px}.auth-btn,.auth-devlink a{font-size:14px;font-weight:600}.auth-btn{margin-top:26px;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--hide);color:var(--ivory);border:none;font-family:inherit;letter-spacing:.01em;padding:15px 24px;cursor:pointer;transition:background .3s,opacity .3s}.auth-btn:hover:not(:disabled){background:#2c2f31}.auth-btn:disabled{opacity:.4;cursor:not-allowed}.auth-alt{margin-top:24px;font-size:13.5px;color:var(--slate);font-weight:300;text-align:center}.auth-alt a{color:var(--hide);font-weight:500;border-bottom:1px solid var(--line);padding-bottom:1px}.auth-back{margin-top:26px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.auth-back:hover{color:var(--hide)}.dash-top{justify-content:space-between;gap:24px;padding:22px var(--mx);border-bottom:1px solid var(--line);flex-wrap:wrap}.dash-top,.dash-top .brand{display:flex;align-items:center}.dash-top .brand{gap:13px}.dash-top .brand .gam{font-weight:600;font-size:20px;letter-spacing:.03em}.dash-top .brand .rule{width:1px;height:22px;background:currentColor;opacity:.28}.dash-top .brand .wm b{font-weight:500;font-size:12px;letter-spacing:.2em;text-transform:uppercase;display:block;line-height:1}.dash-top .brand .wm span{font-family:var(--mono);font-size:7.5px;letter-spacing:.26em;text-transform:uppercase;opacity:.6;display:block;margin-top:4px}.dash-top .who{align-items:center;font-size:13px;color:var(--slate)}.dash-top .who,.dash-top .who .nav{display:flex;gap:20px}.dash-top .who a,.dash-top .who button{color:var(--slate);font-size:13px;font-weight:500;background:none;border:none;font-family:inherit;cursor:pointer;padding:0}.dash-top .who a:hover,.dash-top .who button:hover{color:var(--hide)}.dash-main{padding:56px var(--mx) 80px;max-width:1100px;margin:0 auto}.dash-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}.dash-h1{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4vw,46px);letter-spacing:-.02em;margin-top:12px;line-height:1.08}.dash-lede{margin-top:16px;font-size:16px;font-weight:300;color:var(--slate);line-height:1.65;max-width:560px}.dash-cards{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.dash-stat{border:1px solid var(--line);background:var(--paper);padding:26px}.dash-stat .l{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}.dash-stat .v{font-family:var(--serif);font-weight:300;font-size:34px;letter-spacing:-.02em;margin-top:10px}.dash-stat .s{font-size:12.5px;color:var(--slate);font-weight:300;margin-top:4px}.dash-panel{margin-top:28px;border:1px solid var(--line);background:var(--paper)}.dash-panel .ph{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;border-bottom:1px solid var(--line)}.dash-panel .ph .t{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}.dash-panel .ph .r{font-family:var(--mono);font-size:11px;color:var(--slate)}.dash-panel .pb{padding:8px 26px 18px}.dash-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.dash-row:last-child{border-bottom:none}.dash-row .hn{font-size:15px;font-weight:500}.dash-row .ht{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-top:3px}.dash-row .hbar{flex:1 1;max-width:200px;height:5px;background:var(--ash);position:relative;margin:0 18px}.dash-row .hbar i{position:absolute;left:0;top:0;bottom:0;background:var(--hide)}.dash-row .ha{font-family:var(--mono);font-size:13px;color:var(--slate);text-align:right;min-width:130px}.dash-row .ha b{color:var(--hide);font-weight:500}.dash-empty{margin-top:44px;border:1px solid var(--line);background:var(--paper);padding:48px 40px;text-align:center}.dash-empty h2{font-family:var(--serif);font-weight:300;font-size:28px;letter-spacing:-.01em}.dash-empty p{margin-top:14px;font-size:15px;color:var(--slate);font-weight:300;line-height:1.6;max-width:460px;margin-left:auto;margin-right:auto}.dash-btn{display:inline-flex;align-items:center;gap:10px;margin-top:26px;background:var(--hide);color:var(--ivory);font-size:14px;font-weight:600;padding:14px 26px}.dash-btn:hover{background:#2c2f31}.dash-reg{margin-top:40px;font-size:12px;font-weight:300;line-height:1.7;color:var(--slate);max-width:820px}.verify-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:36px;padding:14px 18px;border:1px solid #c8a48a;background:#fbf3ec}.verify-banner .vb-dot{width:7px;height:7px;border-radius:50%;background:#b08a5a;flex:none}.verify-banner .vb-text{font-size:13.5px;color:#8a5a2a}.verify-banner .vb-btn{margin-left:auto;background:none;font-family:inherit;font-size:13px;font-weight:600;color:#8a5a2a;cursor:pointer;border:none;border-bottom:1px solid #c8a48a;padding:0 0 1px}.verify-banner .vb-btn:hover{color:#6f4720}.verify-banner .vb-link{margin-left:auto;font-size:13px;font-weight:600;color:#8a5a2a;border-bottom:1px solid #c8a48a;padding-bottom:1px}.admin-section-title{margin-top:40px;margin-bottom:16px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}.admin-table{width:100%;border-collapse:collapse;border-top:1px solid var(--line)}.admin-table th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-weight:400;padding:14px 16px}.admin-table td,.admin-table th{border-bottom:1px solid var(--line)}.admin-table td{padding:16px;font-size:14px;vertical-align:top}.admin-table tr:hover td{background:var(--paper)}.admin-muted{margin-top:3px;font-size:12.5px;color:var(--mute)}.admin-badge{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);padding:3px 8px}.admin-badge.submitted{color:var(--ok);border-color:var(--ok)}.admin-link{color:var(--hide);font-weight:500;border-bottom:1px solid var(--line);padding-bottom:1px}.admin-link:hover{border-color:var(--hide)}.admin-back-link{display:inline-block;margin-bottom:22px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.admin-back-link:hover{color:var(--hide)}.kv{display:flex;justify-content:space-between;gap:24px;padding:13px 0;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:none}.kv-k{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);min-width:180px}.kv-v{font-size:14.5px;color:var(--hide);text-align:right;flex:1 1}.kv-v .sub{display:block;font-size:12.5px;color:var(--slate);font-weight:300;margin-top:3px}.portal{--ok:#5f8d6b;--warn:#b08a5a;--bad:#a5544d}.review-badge{display:inline-block;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);padding:3px 8px}.review-badge.approved{color:var(--ok);border-color:var(--ok)}.review-badge.flagged{color:var(--warn);border-color:var(--warn)}.review-badge.rejected{color:var(--bad);border-color:var(--bad)}.review-actions{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.review-note-label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}.review-note{width:100%;font-family:inherit;font-size:14px;color:var(--hide);background:var(--ivory);border:1px solid var(--line);padding:12px 14px;outline:none;resize:vertical;transition:border-color .25s,background .25s}.review-note:focus{border-color:var(--hide);background:#fff}.review-note:disabled{opacity:.6}.review-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.review-btn{font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.02em;padding:11px 22px;border:1px solid var(--line);background:var(--ivory);color:var(--hide);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.review-btn:hover:not(:disabled){background:#fff}.review-btn:disabled{opacity:.45;cursor:not-allowed}.review-btn.ok{border-color:var(--ok);color:var(--ok)}.review-btn.ok:hover:not(:disabled){background:var(--ok);color:#fff}.review-btn.warn{border-color:var(--warn);color:var(--warn)}.review-btn.warn:hover:not(:disabled){background:var(--warn);color:#fff}.review-btn.bad{border-color:var(--bad);color:var(--bad)}.review-btn.bad:hover:not(:disabled){background:var(--bad);color:#fff}.review-btn.reset{color:var(--mute)}.review-error{margin-top:12px;font-size:13px;color:var(--bad)}.review-log{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.review-log-title{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:16px}.review-timeline{list-style:none;margin:0;padding:0}.review-event{position:relative;padding:0 0 18px 22px;border-left:1px solid var(--line)}.review-event:last-child{padding-bottom:0}.review-event:before{content:"";position:absolute;left:-4.5px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--mute)}.review-event.ok:before{background:var(--ok)}.review-event.warn:before{background:var(--warn)}.review-event.bad:before{background:var(--bad)}.review-event-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.review-event-action{font-size:14px;font-weight:600;color:var(--hide)}.review-event-when{font-family:var(--mono);font-size:11px;color:var(--mute);white-space:nowrap}.review-event-who{font-size:12.5px;color:var(--slate);margin-top:2px}.review-event-note{font-size:13.5px;color:var(--hide);margin-top:6px;font-weight:300;line-height:1.5}@media (max-width:760px){.auth-grid2,.dash-cards{grid-template-columns:1fr}.dash-row .hbar{display:none}}