:root{--ink-900: #0a0e1a;--ink-800: #121829;--ink-700: #1a2238;--ink-600: #2a3350;--ink-500: #424d6e;--ink-400: #6b7797;--ink-300: #9aa3bf;--ink-200: #cdd3e2;--ink-100: #e8ebf2;--ink-050: #f4f5f9;--paper: #fbfaf6;--teal-500: #00d4aa;--teal-600: #00b893;--teal-700: #008f73;--teal-050: #e6fbf6;--gold-500: #c9a66b;--red-500: #d6455a;--red-050: #fdecef;--amber-500:#d89a3a;--amber-050:#fcf3e2;--font-display: "Fraunces", "Georgia", serif;--font-body: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Menlo, monospace;--r-1: 4px;--r-2: 8px;--r-3: 12px;--r-4: 16px;--r-5: 24px;--r-6: 32px;--r-7: 48px;--r-8: 64px;--r-9: 96px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(10, 14, 26, .04);--shadow-md: 0 4px 16px rgba(10, 14, 26, .06), 0 1px 2px rgba(10, 14, 26, .04);--shadow-lg: 0 20px 60px rgba(10, 14, 26, .12)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--ink-900);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;letter-spacing:-.02em;line-height:1.15;margin:0}h1{font-size:clamp(2rem,4.5vw,3.25rem);font-weight:400}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:1.25rem;font-weight:500}p{margin:0}a{color:var(--ink-900);text-decoration:none;border-bottom:1px solid var(--ink-200);transition:border-color .16s ease}a:hover{border-bottom-color:var(--teal-600)}code,pre{font-family:var(--font-mono)}.num,.amount,td.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.rule{height:1px;background:var(--ink-200);border:0;margin:var(--r-5) 0}.rule--dark{background:var(--ink-700)}.shell{display:grid;grid-template-rows:auto 1fr auto;min-height:100%}.topbar{background:var(--ink-900);color:var(--ink-100);border-bottom:1px solid var(--ink-700)}.topbar__inner{max-width:1280px;margin:0 auto;padding:18px 32px;display:flex;align-items:center;gap:var(--r-5)}.topbar__brand{font-family:var(--font-display);font-size:1.3rem;font-weight:400;letter-spacing:-.01em;color:var(--paper);display:flex;align-items:baseline;gap:10px;border:0}.topbar__brand .dot{width:8px;height:8px;background:var(--teal-500);border-radius:50%;display:inline-block;transform:translateY(-2px)}.topbar__brand em{font-style:italic;color:var(--teal-500);font-weight:300}.topbar__nav{display:flex;gap:4px;margin-left:auto;align-items:center}.topbar__link{color:var(--ink-200);border:0;padding:8px 14px;border-radius:var(--radius-sm);font-size:14px;font-weight:400;transition:color .16s,background .16s}.topbar__link:hover{color:var(--paper);background:#ffffff0a}.topbar__link.active{color:var(--teal-500);background:#00d4aa14}.topbar__user{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-300);padding-left:16px;border-left:1px solid var(--ink-700);margin-left:8px}.topbar__logout{margin-left:12px;background:transparent;color:var(--ink-200);border:1px solid var(--ink-600);padding:6px 12px;font:inherit;font-size:13px;border-radius:var(--radius-sm);cursor:pointer;transition:border-color .16s,color .16s}.topbar__logout:hover{border-color:var(--teal-500);color:var(--teal-500)}.main{max-width:1280px;margin:0 auto;padding:var(--r-7) 32px var(--r-9);width:100%}.footer{border-top:1px solid var(--ink-200);padding:var(--r-5) 32px;color:var(--ink-400);font-size:12px;text-align:center;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.page-head{margin-bottom:var(--r-7)}.page-head__eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--teal-700);margin-bottom:10px}.page-head__title{font-weight:400;max-width:820px}.page-head__title em{font-style:italic;color:var(--ink-500)}.page-head__desc{color:var(--ink-500);margin-top:12px;max-width:680px}.card{background:#fff;border:1px solid var(--ink-100);border-radius:var(--radius-lg);padding:var(--r-6);box-shadow:var(--shadow-sm)}.card--dense{padding:var(--r-5)}.card__title{font-family:var(--font-display);font-size:1.1rem;font-weight:500;margin-bottom:4px}.card__desc{color:var(--ink-500);font-size:13px;margin-bottom:var(--r-5)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border:1px solid var(--ink-100);background:#fff;border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--r-6)}.stat{padding:var(--r-5) var(--r-6);border-right:1px solid var(--ink-100);position:relative}.stat:last-child{border-right:0}.stat__label{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-400);margin-bottom:10px}.stat__value{font-family:var(--font-display);font-size:2rem;font-weight:400;letter-spacing:-.02em;color:var(--ink-900);font-variant-numeric:tabular-nums}.stat__meta{font-size:12px;color:var(--ink-500);margin-top:4px}.stat__meta.up{color:var(--teal-700)}.stat__meta.down{color:var(--red-500)}@media (max-width: 700px){.stat{border-right:0;border-bottom:1px solid var(--ink-100)}.stat:last-child{border-bottom:0}}.field{margin-bottom:var(--r-5)}.field__label{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500);margin-bottom:8px}.field__input,.field__select,.field__textarea{width:100%;padding:12px 14px;border:1px solid var(--ink-200);border-radius:var(--radius-md);font:inherit;color:var(--ink-900);background:#fff;transition:border-color .16s,box-shadow .16s}.field__input:focus,.field__select:focus,.field__textarea:focus{outline:none;border-color:var(--ink-900);box-shadow:0 0 0 3px #0a0e1a0f}.field__input.num{letter-spacing:.04em}.field__hint{margin-top:6px;color:var(--ink-400);font-size:12px}.field__error{margin-top:6px;color:var(--red-500);font-size:12px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--r-4)}@media (max-width: 560px){.field-row{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;font:inherit;font-weight:500;font-size:14px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .18s ease;text-decoration:none;line-height:1}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--ink-900);color:var(--paper);border-color:var(--ink-900)}.btn--primary:hover:not(:disabled){background:var(--ink-800);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--accent{background:var(--teal-500);color:var(--ink-900);border-color:var(--teal-500);font-weight:600}.btn--accent:hover:not(:disabled){background:var(--teal-600);border-color:var(--teal-600)}.btn--ghost{background:transparent;color:var(--ink-900);border-color:var(--ink-300)}.btn--ghost:hover:not(:disabled){border-color:var(--ink-900)}.btn--danger{background:transparent;color:var(--red-500);border-color:var(--red-500)}.btn--danger:hover:not(:disabled){background:var(--red-500);color:#fff}.btn--sm{padding:6px 12px;font-size:12px;border-radius:var(--radius-sm)}.btn--block{display:flex;width:100%}.table-wrap{overflow-x:auto;border:1px solid var(--ink-100);border-radius:var(--radius-lg);background:#fff}table.table{width:100%;border-collapse:collapse;font-size:14px}.table thead th{text-align:left;padding:14px 20px;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500);font-weight:500;border-bottom:1px solid var(--ink-200);background:var(--ink-050)}.table tbody td{padding:16px 20px;border-bottom:1px solid var(--ink-100);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--ink-050)}.table .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.table .actions{text-align:right;white-space:nowrap}.table .actions .btn{margin-left:6px}.tag{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;padding:4px 10px;border-radius:100px;border:1px solid var(--ink-200);color:var(--ink-500);background:#fff}.tag--active{color:var(--teal-700);background:var(--teal-050);border-color:#b5e8da}.tag--pending{color:var(--amber-500);background:var(--amber-050);border-color:#f0d9a8}.tag--suspended,.tag--rejected{color:var(--red-500);background:var(--red-050);border-color:#f4c6cd}.tag--vip{color:var(--gold-500);background:#faf2e1;border-color:#e8d6a5}.tag--simple{color:var(--ink-500);background:var(--ink-050)}.tag--approved{color:var(--teal-700);background:var(--teal-050);border-color:#b5e8da}.tag--open{color:var(--amber-500);background:var(--amber-050);border-color:#f0d9a8}.tag--in_progress{color:var(--teal-700);background:var(--teal-050);border-color:#b5e8da}.tag--closed,.tag--cancelled{color:var(--ink-400);background:var(--ink-050);border-color:var(--ink-200)}.toast-stack{position:fixed;right:24px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:1000;max-width:380px}.toast{background:var(--ink-900);color:var(--paper);padding:14px 18px;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:14px;display:flex;gap:12px;align-items:flex-start;animation:slideIn .26s cubic-bezier(.2,.9,.3,1.1);border-left:3px solid var(--teal-500)}.toast--error{border-left-color:var(--red-500)}.toast--warn{border-left-color:var(--amber-500)}.toast__close{margin-left:auto;opacity:.6;cursor:pointer;background:none;border:0;color:inherit;font-size:18px;line-height:1}.toast__close:hover{opacity:1}@keyframes slideIn{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.alert{padding:14px 18px;border-radius:var(--radius-md);font-size:14px;margin-bottom:var(--r-5);border-left:3px solid var(--ink-300);background:var(--ink-050);color:var(--ink-700)}.alert--error{border-left-color:var(--red-500);background:var(--red-050);color:#8a2a39}.alert--info{border-left-color:var(--teal-600);background:var(--teal-050);color:#1a4d42}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--paper)}@media (max-width: 900px){.auth{grid-template-columns:1fr}.auth__stage{display:none}}.auth__stage{background:radial-gradient(ellipse 800px 600px at 75% 25%,rgba(0,212,170,.08),transparent 60%),radial-gradient(ellipse 400px 500px at 15% 85%,rgba(201,166,107,.05),transparent 70%),var(--ink-900);color:var(--paper);padding:var(--r-8);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth__stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.02) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.auth__brand{font-family:var(--font-display);font-size:1.4rem;font-weight:400;position:relative;display:flex;align-items:baseline;gap:10px}.auth__brand em{font-style:italic;color:var(--teal-500);font-weight:300}.auth__tagline{position:relative;max-width:440px;font-family:var(--font-display);font-size:clamp(2rem,3.5vw,2.8rem);font-weight:300;line-height:1.15;letter-spacing:-.02em}.auth__tagline em{font-style:italic;color:var(--teal-500);font-weight:400}.auth__meta{position:relative;display:flex;gap:var(--r-6);font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-300);flex-wrap:wrap}.auth__meta>div span{display:block;color:var(--teal-500);font-family:var(--font-display);font-size:28px;letter-spacing:-.02em;text-transform:none;margin-top:4px}.auth__form{padding:var(--r-8);display:flex;align-items:center;justify-content:center}.auth__form-inner{width:100%;max-width:440px}.auth__form-inner .page-head{margin-bottom:var(--r-6)}.auth__switch{margin-top:var(--r-5);text-align:center;color:var(--ink-500);font-size:14px}.auth__switch a{color:var(--ink-900);font-weight:500}.otp-boxes{display:flex;gap:10px;justify-content:center;margin:var(--r-5) 0}.otp-boxes input{width:52px;height:60px;text-align:center;font-family:var(--font-mono);font-size:24px;font-weight:500;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:#fff;transition:border-color .16s,box-shadow .16s}.otp-boxes input:focus{outline:none;border-color:var(--ink-900);box-shadow:0 0 0 3px #0a0e1a0f}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e1a8c;display:flex;align-items:center;justify-content:center;z-index:900;animation:fadeIn .18s ease;padding:20px}.modal{background:#fff;border-radius:var(--radius-lg);max-width:520px;width:100%;box-shadow:var(--shadow-lg);animation:modalRise .22s cubic-bezier(.2,.9,.3,1.1);overflow:hidden}.modal__head{padding:var(--r-5) var(--r-6);border-bottom:1px solid var(--ink-100);display:flex;align-items:center;justify-content:space-between}.modal__title{font-family:var(--font-display);font-size:1.2rem;font-weight:500}.modal__body{padding:var(--r-6)}.modal__foot{padding:var(--r-4) var(--r-6);border-top:1px solid var(--ink-100);display:flex;justify-content:flex-end;gap:10px;background:var(--ink-050)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalRise{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.stack{display:flex;flex-direction:column;gap:var(--r-5)}.row{display:flex;gap:var(--r-4);align-items:center;flex-wrap:wrap}.row--end{justify-content:flex-end}.row--between{justify-content:space-between}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--r-5)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--r-5)}@media (max-width: 900px){.grid-2,.grid-3{grid-template-columns:1fr}}.muted{color:var(--ink-500)}.small{font-size:13px}.tiny{font-size:12px}.mono{font-family:var(--font-mono)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spinner{width:16px;height:16px;border:2px solid var(--ink-200);border-top-color:var(--ink-900);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.spinner--light{border-color:#fff3;border-top-color:var(--paper)}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{min-height:60vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:var(--ink-500)}.loading-screen .spinner{width:28px;height:28px}.empty{text-align:center;padding:var(--r-7);color:var(--ink-400)}.empty__title{font-family:var(--font-display);font-style:italic;font-size:1.1rem;color:var(--ink-600);margin-bottom:4px}
