:root{--ivory-black: #050505;--ivory-charcoal: #0a0a0a;--ivory-slate: #121212;--ivory-elevated: #0e0e0e;--ivory-gold: #c9a227;--ivory-gold-light: #e8c547;--ivory-gold-deep: #8a6a1a;--ivory-cream: #f3efe8;--ivory-platinum: #e6e0d6;--ivory-muted: rgba(243, 239, 232, .58);--ivory-muted-dark: rgba(243, 239, 232, .34);--ivory-border: rgba(201, 162, 39, .22);--ivory-border-strong: rgba(201, 162, 39, .42);--ivory-danger: #c97a7a;--ivory-success: #8aaf96;--ivory-warning: #d8d0c4;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Outfit", system-ui, sans-serif;color-scheme:dark}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;min-height:100%;background:var(--ivory-black);color:var(--ivory-cream)}body{font-family:var(--font-body);background:var(--ivory-black);color:var(--ivory-cream);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:500;color:var(--ivory-cream)}a{color:var(--ivory-gold);text-decoration:none}button{font-family:var(--font-body);cursor:pointer;border:none;border-radius:2px;padding:12px 20px;font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;transition:opacity .15s ease,background .15s ease}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--ivory-cream);color:var(--ivory-black)}.btn-primary:hover:not(:disabled){opacity:.92}.btn-secondary{background:transparent;color:var(--ivory-cream);border:1px solid var(--ivory-border-strong)}.btn-secondary:hover:not(:disabled){border-color:var(--ivory-gold-light)}.btn-danger{background:var(--ivory-danger);color:var(--ivory-cream)}input,select,textarea{display:block;background:var(--ivory-elevated);border:1px solid var(--ivory-border);color:var(--ivory-cream);padding:14px 16px;border-radius:2px;font-size:15px;font-family:var(--font-body);width:100%;line-height:1.4}input::placeholder,textarea::placeholder{color:var(--ivory-muted-dark)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ivory-border-strong);box-shadow:0 0 0 1px #c9a2271f}.card{background:var(--ivory-charcoal);border:1px solid var(--ivory-border);border-radius:2px;padding:24px;box-shadow:inset 0 1px #f3efe80a,0 0 0 1px #c9a2270a}.stat-card{text-align:center}.stat-card:hover{border-color:var(--ivory-border-strong)}.stat-value{font-family:var(--font-display);font-size:2.5rem;color:var(--ivory-cream);line-height:1.2}.stat-label{font-size:.75rem;color:var(--ivory-muted);text-transform:uppercase;letter-spacing:.12em;margin-top:8px}table{width:100%;border-collapse:collapse}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid rgba(201,162,39,.12)}th{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ivory-gold);font-weight:500}.badge{display:inline-block;padding:4px 10px;border-radius:2px;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.badge-gold{background:#c9a22724;color:var(--ivory-gold-light);border:1px solid rgba(201,162,39,.28)}.badge-success{background:#8aaf9626;color:var(--ivory-success)}.badge-danger{background:#c97a7a26;color:var(--ivory-danger)}.badge-warning{background:#d8d0c41f;color:var(--ivory-warning)}.screen-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ivory-black);color:var(--ivory-muted);font-size:14px;letter-spacing:.04em}.legal-page{min-height:100vh;background:var(--ivory-black);color:var(--ivory-cream);padding:32px 24px 64px}.legal-header{max-width:720px;margin:0 auto 32px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:1px solid var(--ivory-border);padding-bottom:16px}.legal-brand{font-family:var(--font-display);font-size:1.4rem;letter-spacing:.18em;color:var(--ivory-cream);text-decoration:none}.legal-nav{display:flex;gap:16px;font-size:.85rem}.legal-nav a{color:var(--ivory-muted);text-decoration:none}.legal-nav a.active,.legal-nav a:hover{color:var(--ivory-cream)}.legal-body{max-width:720px;margin:0 auto}.legal-body h1{font-family:var(--font-display);font-size:2rem;font-weight:500;margin-bottom:8px}.legal-meta{color:var(--ivory-muted-dark);font-size:.8rem;margin-bottom:24px}.legal-content{white-space:pre-wrap;font-family:var(--font-body);font-size:.95rem;line-height:1.65;color:var(--ivory-platinum)}.admin-shell{display:flex;height:100vh;max-height:100vh;overflow:hidden;background:var(--ivory-black)}.admin-sidebar{width:268px;height:100%;background:linear-gradient(180deg,rgba(201,162,39,.06) 0%,transparent 28%),var(--ivory-charcoal);border-right:1px solid var(--ivory-border-strong);padding:28px 0;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;box-shadow:inset -1px 0 #c9a22714}.admin-brand{padding:0 16px 28px;flex-shrink:0;border-bottom:1px solid rgba(201,162,39,.18);margin-bottom:16px}.admin-brand__mark{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center}.admin-brand__title{font-size:1.35rem;color:var(--ivory-cream);letter-spacing:.04em;line-height:1.15}.admin-brand__eyebrow{font-size:10px;color:var(--ivory-gold);letter-spacing:.2em;text-transform:uppercase;margin-top:6px}.admin-nav{flex:1;overflow-y:auto;min-height:0;padding:4px 0}.admin-nav__link{display:flex;align-items:center;gap:12px;padding:12px 22px;color:var(--ivory-muted);background:transparent;border-left:2px solid transparent;text-decoration:none;font-size:13px;letter-spacing:.04em;transition:color .15s ease,background .15s ease,border-color .15s ease}.admin-nav__link:hover{color:var(--ivory-cream);background:#c9a2270d}.admin-nav__link--active{color:var(--ivory-cream);background:#c9a2271a;border-left-color:var(--ivory-gold)}.admin-sidebar__foot{padding:16px 20px;border-top:1px solid rgba(201,162,39,.18);flex-shrink:0}.admin-sidebar__email{font-size:12px;margin-bottom:12px;color:var(--ivory-muted);word-break:break-all}.admin-main{flex:1;min-width:0;height:100%;padding:36px 40px 48px;overflow-y:auto;overflow-x:hidden;background:radial-gradient(ellipse 80% 40% at 50% -10%,rgba(201,162,39,.07),transparent 55%),var(--ivory-black);-webkit-overflow-scrolling:touch}.page-header{margin-bottom:28px}.page-header__eyebrow{text-align:center;color:var(--ivory-gold);font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:10px;font-weight:500}.page-header__title-row{display:flex;align-items:center;justify-content:center;gap:14px}.page-header__title{margin:0;flex:1;text-align:center;font-size:2rem;letter-spacing:.06em;max-width:520px}.page-header__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-top:14px}.page-header__subtitle{color:var(--ivory-muted);font-size:14px;line-height:1.5;margin:0;text-align:center;flex:1}.page-header__actions{flex-shrink:0}.page-header__actions select{width:auto;min-width:160px;padding:8px 12px;font-size:13px;background:var(--ivory-slate)}.luxe-frame{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:520px}.luxe-frame__body{flex:1;min-width:0}.luxe-frame__chevron{align-self:center}.luxe-login-shell{min-height:100vh;height:100%;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;background:var(--ivory-black)}.luxe-login-card{background:#0a0a0a;border:1px solid rgba(201,162,39,.38);box-shadow:0 0 0 1px #c9a22714,0 24px 48px #0000008c;padding:40px 36px;border-radius:2px}.luxe-login-card input{border-color:#c9a22747;background:#050505}.luxe-login-card input:focus{border-color:#c9a2278c}.luxe-login-eyebrow{color:var(--ivory-gold);font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin:0;font-weight:500}.dashboard-chart-card{background:linear-gradient(145deg,rgba(201,162,39,.05) 0%,transparent 42%),var(--ivory-charcoal);border-color:#c9a22747;box-shadow:inset 0 1px #f3efe80d,0 0 0 1px #c9a2270d;overflow:hidden;position:relative}.dashboard-chart-card>*{position:relative;z-index:1}.dashboard-section-title{display:flex;align-items:center;gap:12px;margin-bottom:24px}.dashboard-section-title h3{margin:0;flex:1;text-align:center;letter-spacing:.04em}.recharts-bar-rectangle path,.recharts-rectangle.recharts-bar-rectangle{filter:drop-shadow(0 0 6px rgba(201,162,39,.28))}@media (max-width: 640px){.luxe-frame{gap:4px}.luxe-frame__chevron{width:22px;height:auto}.admin-main{padding:24px 16px 40px}.page-header__title{font-size:1.55rem}.page-header__meta{flex-direction:column;align-items:stretch}}
