:root{--ink: #0f172a;--ink-soft: #334155;--muted: #64748b;--line: rgba(15, 23, 42, .08);--line-strong: rgba(15, 23, 42, .14);--paper: #eef2f7;--surface: #ffffff;--accent: #2563eb;--accent-deep: #1d4ed8;--accent-soft: rgba(37, 99, 235, .12);--ok: #047857;--warn: #b45309;--bad: #b42318;--navy: #0b1f33;--navy-2: #132a44;--blue: #2563eb;--blue-deep: #1d4ed8;--admin-bg: #eef2f7;--font-display: "Fraunces", Georgia, serif;--font-body: "Plus Jakarta Sans", sans-serif;--font-admin: "Outfit", "Plus Jakarta Sans", sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--radius: 18px;color:var(--ink);font-family:var(--font-body);font-feature-settings:"ss01" on,"cv11" on}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:var(--ink);background:radial-gradient(900px 480px at 0% 0%,rgba(37,99,235,.08),transparent 60%),radial-gradient(700px 420px at 100% 10%,rgba(11,31,51,.06),transparent 55%),linear-gradient(180deg,#f4f7fb 0%,var(--admin-bg) 45%,#e8edf5 100%);background-attachment:fixed}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:600;letter-spacing:-.035em;line-height:1.1}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-1.5%,1%,0) scale(1.03)}}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:12px;background:var(--navy);color:#f8fafc;padding:.78rem 1.15rem;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .25s var(--ease),background .25s var(--ease),opacity .2s}.btn:hover{transform:translateY(-1px);background:var(--navy-2)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}.btn.ghost:hover{background:#ffffffb3}.btn.soft{background:var(--blue);color:#fff}.btn.soft:hover{background:var(--blue-deep)}.btn.tiny{padding:.45rem .75rem;font-size:.82rem;border-radius:9px}.field{display:grid;gap:.4rem;margin-bottom:1rem}.field label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.field input,.field select,.field textarea,.toolbar select,.search-input{border:1px solid var(--line-strong);background:#ffffffe6;border-radius:12px;padding:.85rem .95rem;outline:none;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus,.toolbar select:focus,.search-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #2563eb26}.alert{border-radius:14px;padding:.85rem 1rem;margin:0 0 1rem;font-size:.92rem;animation:rise .35s var(--ease)}.alert.error{background:#fef3f2;color:#912018;border:1px solid #fecdca}.alert.ok{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.login-hero{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;font-family:var(--font-admin)}.login-visual{position:relative;padding:clamp(2rem,5vw,4.5rem);color:#e8eef7;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;overflow:hidden;background:var(--navy)}.login-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(160deg,#0b1f3333 10%,#132a44a6 50%,#081220e6),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cpath fill='none' stroke='rgba(255,255,255,0.05)' stroke-width='1' d='M0 60h120M60 0v120'/%3E%3C/svg%3E"),radial-gradient(ellipse at 28% 18%,#2563eb 0%,transparent 52%),linear-gradient(145deg,#132a44,#0b1f33 58%);animation:drift 18s ease-in-out infinite alternate}.login-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,transparent 40%,rgba(8,18,32,.55) 100%)}.login-visual .brand-word{font-family:var(--font-admin);font-size:clamp(3.2rem,8vw,5.8rem);font-weight:700;letter-spacing:-.04em;line-height:.92;margin:0 0 .55rem;animation:rise .9s var(--ease) both}.login-visual .brand-sub{margin:0;max-width:22rem;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.72;animation:rise 1s var(--ease) .08s both}.login-panel{display:grid;place-items:center;padding:clamp(1.5rem,4vw,2.5rem);background:linear-gradient(180deg,#f8fafc 0%,var(--admin-bg) 100%);animation:fade .7s var(--ease)}.login-box{width:min(420px,100%);animation:rise .75s var(--ease) .12s both}.login-box h1{font-family:var(--font-admin);font-size:clamp(1.8rem,3vw,2.25rem);margin-bottom:.4rem;letter-spacing:-.03em}.login-box .lede{color:var(--muted);margin:0 0 1.5rem;line-height:1.5}.login-box .btn{background:var(--blue);box-shadow:0 8px 20px #2563eb47}.login-box .btn:hover{background:var(--blue-deep)}.tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1.35rem;padding:.25rem;border-radius:14px;background:#e2e8f0}.tabs.compact{margin:0;background:#eef2f7}.tabs button{border:0;background:transparent;border-radius:11px;padding:.7rem .9rem;cursor:pointer;font-weight:650;color:var(--muted);transition:background .2s,color .2s}.tabs button.active{background:var(--surface);color:var(--blue-deep);box-shadow:0 1px #0f172a0f}.shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:272px 1fr}.sidebar{position:sticky;top:0;height:100vh;height:100dvh;padding:1.5rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:1.6rem;border-right:1px solid var(--line);background:#ffffff9e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand-row{padding:.35rem .7rem .2rem;display:grid;gap:.15rem}.brand-row strong{font-family:var(--font-display);font-size:1.55rem;letter-spacing:-.04em}.brand-row span{color:var(--muted);font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.nav{display:grid;gap:.2rem}.nav a{padding:.72rem .85rem;border-radius:12px;color:var(--ink-soft);font-weight:600;font-size:.95rem;transition:background .2s,color .2s,transform .2s var(--ease)}.nav a:hover{background:var(--accent-soft);color:var(--ink)}.nav a.active{background:var(--navy);color:#f8fafc}.sidebar-foot{margin-top:auto;padding:1rem .55rem .55rem;display:grid;gap:.55rem;border-top:1px solid var(--line)}.main{padding:clamp(1.4rem,3.2vw,2.6rem) clamp(1.2rem,3vw,2.8rem) 3rem;animation:rise .45s var(--ease);min-width:0}.page-head{margin-bottom:1.6rem;max-width:40rem}.page-head h1{font-size:clamp(2rem,3.4vw,2.75rem)}.page-head p{margin:.55rem 0 0;color:var(--muted);font-size:1.02rem;line-height:1.55}.panel{background:#ffffffe6;border:1px solid rgba(15,23,42,.06);border-radius:16px;padding:1.25rem 1.35rem 1.35rem;margin-bottom:1.1rem;box-shadow:0 10px 30px #0f172a0a}.panel h2{font-size:1.15rem;margin-bottom:.55rem;font-family:var(--font-admin)}.panel>p{margin-top:0;color:var(--muted);line-height:1.55}.panel-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap}.panel-head p{margin:.25rem 0 0;color:var(--muted);font-size:.9rem}.panel-actions{display:flex;gap:.5rem;flex-wrap:wrap}.row-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.9rem;align-items:center}.table-wrap{overflow:auto;margin:0 -.25rem}.data-table,table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.85rem .65rem;border-bottom:1px solid rgba(15,23,42,.06);vertical-align:middle}th{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:700}tbody tr{transition:background .15s;cursor:default}tbody tr:hover{background:#2563eb0a}tbody tr.selected{background:#2563eb14}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;background:#e2e8f0;color:#334155}.pill.ok{background:#d1fae5;color:#065f46}.pill.warn{background:#ffedd5;color:#9a3412}.pill.bad{background:#fee2e2;color:#991b1b}.pill.muted{background:#e2e8f0;color:#475569}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84rem}.mono.tiny{font-size:.72rem;word-break:break-all}.muted{color:var(--muted)}.ok-text{color:#047857;font-weight:600}.warn-text{color:#b45309;font-weight:600}.bad-text{color:#b91c1c;font-weight:600}.toolbar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-bottom:1rem}.inline-form{display:flex;gap:.5rem;flex-wrap:wrap}.search-input{min-width:220px}.split-view{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:1rem;align-items:start}.detail-drawer h2{margin-bottom:1rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.kv{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.kv li{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.55rem;border-bottom:1px solid rgba(15,23,42,.06);font-size:.92rem}.kv li span{color:#64748b}.kv li strong{text-align:right}.admin-app{min-height:100vh;min-height:100dvh;background:var(--admin-bg);font-family:var(--font-admin);color:#0f172a}.admin-app h1,.admin-app h2,.admin-app h3{font-family:var(--font-admin);letter-spacing:-.02em}.admin-top{display:grid;grid-template-columns:auto 1fr auto;gap:1.2rem;align-items:center;padding:.85rem 1.25rem;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%);color:#e8eef7;box-shadow:0 8px 24px #0b1f3347;position:sticky;top:0;z-index:20}.admin-brand{display:grid;gap:.1rem;min-width:150px}.admin-brand strong{font-size:1.2rem;font-weight:700;letter-spacing:-.03em}.admin-brand span{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;opacity:.7;font-weight:600}.admin-top-nav{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center}.top-pill{padding:.55rem .95rem;border-radius:999px;font-size:.88rem;font-weight:600;color:#e8eef7c7;transition:background .2s,color .2s}.top-pill:hover{background:#ffffff14;color:#fff}.top-pill.active{background:#2563ebf2;color:#fff;box-shadow:0 6px 16px #2563eb59}.admin-top-right{display:flex;align-items:center;gap:.75rem}.admin-top-right .btn.ghost{color:#e8eef7;border-color:#fff3}.admin-top-right .btn.ghost:hover{background:#ffffff14}.admin-user{display:flex;align-items:center;gap:.7rem;text-align:right}.admin-user strong{display:block;font-size:.9rem}.admin-user span{display:block;font-size:.72rem;opacity:.65}.admin-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#3b82f6,#1e3a8a);font-weight:700;font-size:.78rem}.admin-body{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 64px)}.admin-aside{padding:1.25rem .9rem;background:#f8fafc;border-right:1px solid rgba(15,23,42,.06)}.aside-group{margin:1rem .65rem .45rem;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;font-weight:700}.aside-group:first-child{margin-top:.2rem}.aside-link{display:block;padding:.65rem .75rem;border-radius:10px;color:#334155;font-weight:600;font-size:.92rem;margin-bottom:.15rem}.aside-link:hover{background:#eef2ff;color:#1e3a8a}.aside-link.active{background:#dbeafe;color:#1d4ed8}.admin-main{padding:1.25rem 1.35rem 2.5rem;min-width:0;animation:rise .4s var(--ease)}.kpi-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-bottom:.85rem}.kpi-card{background:#fff;border-radius:14px;padding:1rem 1.05rem;border:1px solid rgba(15,23,42,.05);box-shadow:0 8px 22px #0f172a0a;display:grid;gap:.25rem;animation:rise .5s var(--ease) both}.kpi-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:700}.kpi-value{font-size:clamp(1.25rem,2vw,1.55rem);letter-spacing:-.03em}.kpi-hint{font-size:.78rem;color:#64748b}.kpi-trend{margin-top:.2rem;font-size:.72rem;font-weight:700;color:#2563eb}.status-strip{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;background:#fff;border-radius:12px;padding:.7rem 1rem;margin-bottom:1rem;border:1px solid rgba(15,23,42,.05);font-size:.86rem;color:#475569}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#94a3b8}.dot.ok{background:#10b981;box-shadow:0 0 0 4px #10b98126}.dot.bad{background:#ef4444}.strip-sep{opacity:.85}.strip-sep:before{content:"·";margin-right:.75rem;opacity:.4}.strip-link{margin-left:auto;color:#2563eb;font-weight:650}.dash-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:1rem;align-items:start}.dash-panel{margin-bottom:0}.bar-chart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.45rem;align-items:end;height:180px;padding:.5rem 0 0}.bar-col{display:grid;grid-template-rows:1fr auto;gap:.35rem;height:100%;text-align:center;font-size:.65rem;color:#94a3b8;font-weight:600}.bar-stack{display:flex;flex-direction:column-reverse;justify-content:flex-start;height:100%;border-radius:8px 8px 4px 4px;overflow:hidden;background:#f1f5f9}.bar-seg{width:100%;min-height:2px;transition:height .45s var(--ease)}.bar-seg.collect{background:linear-gradient(180deg,#3b82f6,#1d4ed8)}.bar-seg.payout{background:linear-gradient(180deg,#a78bfa,#7c3aed)}.chart-legend{display:flex;gap:1rem;align-items:center;margin-top:.85rem;font-size:.82rem;color:#64748b}.chart-legend strong{margin-left:auto;color:#0f172a}.swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:.35rem}.swatch.collect{background:#2563eb}.swatch.payout{background:#7c3aed}.donut{width:160px;height:160px;border-radius:50%;margin:1rem auto;display:grid;place-items:center}.donut-hole{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;box-shadow:inset 0 0 0 1px #0f172a0a}.donut-hole strong{font-size:1.2rem}.donut-hole span{font-size:.72rem;color:#94a3b8}.method-list{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.method-list li{display:flex;justify-content:space-between;font-size:.88rem;color:#475569}.method-list .dot{margin-right:.45rem}.mini-stat .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:700}.mini-stat strong{display:block;font-size:1.6rem;margin:.35rem 0;letter-spacing:-.03em}.mini-stat p{margin:0;font-size:.85rem}@media(max-width:1100px){.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.split-view,.card-grid,.admin-body{grid-template-columns:1fr}.admin-aside{display:flex;gap:.35rem;overflow-x:auto;align-items:center;padding:.75rem}.aside-group{display:none}.aside-link{white-space:nowrap}}@media(max-width:960px){.login-hero,.shell{grid-template-columns:1fr}.login-visual{min-height:38vh}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav{display:flex;gap:.35rem;overflow-x:auto}.nav a{white-space:nowrap}.admin-top{grid-template-columns:1fr}.admin-top-nav{justify-content:flex-start}}
