:root{--gg-bg:#0a0908;--gg-panel:#171512;--gg-panel-2:#211e19;--gg-ink:#f4f0e8;--gg-muted:#aaa397;--gg-line:#383329;--gg-gold:#e9c568;--gg-field:#211e19}
:root[data-theme=light]{--gg-bg:#f7f4ed;--gg-panel:#fffdf8;--gg-panel-2:#eee7d9;--gg-ink:#1c1914;--gg-muted:#6f685c;--gg-line:#ded5c5;--gg-gold:#9c7024;--gg-field:#faf6ee}
body.dashboard,body.portal,body.auth-page{font-family:'DM Sans',Arial,sans-serif;background:var(--gg-bg);color:var(--gg-ink);transition:background .25s,color .25s}
.dashboard h1,.dashboard h2,.dashboard h3,.portal h1,.portal h2,.auth-page h1{font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:-.065em;color:var(--gg-ink)}
.dashboard .sidebar{background:#090807;border-right:1px solid #423623;color:#f4f0e8}
.dashboard .sidebar .brand-text,.portal .brand-text{color:#f4f0e8}
.dashboard .sidebar .brand-mark,.portal .brand-mark,.auth-panel .brand-mark{color:#e9c568}
.dashboard .sidebar .brand-text small,.portal .brand-text small{color:#d9ae53}
.dashboard .side-label{color:#af8740}
.dashboard .sidebar nav a{color:#aaa397;border:1px solid transparent;border-radius:12px}
.dashboard .sidebar nav a.active,.dashboard .sidebar nav a:hover{background:#2d2416;color:#f4d27c;border-color:#6b5228}
.dashboard .side-bottom{border-top:1px solid #423623}
.dashboard .side-bottom a,.dashboard .side-bottom button{color:#d1b577}
.dashboard .dash-main{background:var(--gg-bg)}
.dashboard .dash-top{border-bottom:1px solid var(--gg-line);padding-bottom:26px}
.dashboard .dash-top small,.portal small,.portal .section-kicker,.auth-panel .section-kicker{color:var(--gg-gold)}
.dashboard .dash-top h1{font-size:clamp(35px,4vw,56px)}
.dashboard .avatar{background:var(--gg-gold);color:#17120a}
.dashboard .metric-grid a,.dashboard .panel,.portal .portal-card,.auth-panel{background:var(--gg-panel);border:1px solid var(--gg-line);border-radius:18px;color:var(--gg-ink)}
.dashboard .metric-grid a:hover,.dashboard .panel:hover{border-color:#a78242}
.dashboard .metric-grid small,.dashboard .metric-grid span,.dashboard .panel-title a,.dashboard .panel-title span,.dashboard .panel p,.portal .portal-card p,.portal .portal-main>p,.auth-panel p{color:var(--gg-muted)}
.dashboard .metric-grid strong{color:var(--gg-gold)}
.dashboard .panel h2,.dashboard .panel h3{color:var(--gg-ink)}
.dashboard table,.dashboard td,.dashboard th{color:var(--gg-ink)}
.dashboard th{color:var(--gg-gold);border-color:var(--gg-line)}
.dashboard td,.dashboard .list-row,.dashboard .booking-card,.portal .list-row{border-color:var(--gg-line)}
.dashboard td small,.dashboard .list-row small,.dashboard .list-row span,.portal .list-row span,.dashboard .empty{color:var(--gg-muted)!important}
.dashboard a,.portal a{color:inherit}
.dashboard .badge{background:#4b371a;color:#f4ce77;border-radius:20px}
.dashboard .inventory-admin details{border-color:var(--gg-line);background:var(--gg-panel-2);border-radius:12px}
.dashboard .inventory-admin summary span{color:var(--gg-muted)}
.dashboard .panel label,.auth-panel label{color:var(--gg-muted)}
.dashboard .panel input,.dashboard .panel select,.dashboard .panel textarea,.auth-panel input{background:var(--gg-field);color:var(--gg-ink);border-color:var(--gg-line);border-radius:8px}
.dashboard .panel input:focus,.dashboard .panel select:focus,.dashboard .panel textarea:focus,.auth-panel input:focus{border-color:var(--gg-gold)}
.dashboard .mini-button,.dashboard .button,.portal .mini-button,.auth-panel .button{background:var(--gg-gold);color:#17120a;border:0;border-radius:25px;font-weight:800}
.dashboard .fine-print,.dashboard .doc-list{color:var(--gg-muted)}
.portal .portal-head{background:#090807;border-bottom:1px solid #423623}
.portal .portal-main{max-width:1440px}
.portal .portal-main h1{font-size:clamp(48px,6vw,90px)}
.portal .portal-card{padding:40px}
.portal .portal-card h2{font-size:60px;color:var(--gg-gold)}
.auth-page{background:linear-gradient(#0009,#000d),url('web/standard.jpg') center/cover fixed}
.auth-panel{box-shadow:0 30px 90px #0008}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #795f31;background:#231d13;color:#f1d18a;border-radius:30px;padding:10px 14px;font:600 11px 'DM Sans',Arial,sans-serif;white-space:nowrap;cursor:pointer}
.theme-toggle span:first-child{font-size:18px;line-height:0}
.sidebar .theme-toggle{width:100%;margin-bottom:8px}
.dashboard .mobile-theme{display:none}
.auth-panel>.theme-toggle{float:right}
.portal-head .theme-toggle{margin-left:auto;margin-right:20px}
:root[data-theme=light] .portal .portal-head{background:#1b1712}
@media(max-width:800px){.dashboard .sidebar{height:auto;min-height:0}.dashboard .side-bottom{display:block;padding:12px}.dashboard .side-bottom form{display:none}.dashboard .mobile-theme{display:none}}
@media(max-width:560px){.dashboard .dash-top h1{font-size:34px}.dashboard .metric-grid{grid-template-columns:1fr 1fr}.dashboard .panel{padding:18px}.portal .portal-head{padding:15px}.portal-head .theme-toggle{margin-right:8px}.portal-head .theme-toggle span:last-child{display:none}.portal .portal-card{padding:22px}}
body.auth-page{background:linear-gradient(#0009,#000d),url('web/exterior-2.jpg') center/cover fixed}
.auth-panel .line-link{color:var(--gg-gold)}
