:root{--indigo-50: #f3f2fb;--indigo-100: #e4e2f6;--indigo-200: #cbc7ee;--indigo-300: #a9a3e0;--indigo-400: #7d75c7;--indigo-500: #5b52ad;--indigo-600: #464093;--indigo-700: #363285;--indigo-800: #2a2769;--indigo-900: #22214a;--indigo-950: #171533;--gold-50: #fbf6e8;--gold-100: #f6ecc9;--gold-200: #efdd9c;--gold-300: #e6c76a;--gold-400: #d9a038;--gold-500: #c98a24;--gold-600: #a97b1e;--gold-700: #8a641b;--gold-800: #6f501a;--gold-900: #5c4318;--cream: #faf6ec;--sand: #efe6d0;--muted: #5f5a6e;--ink: #22214a;--bg: var(--cream);--surface: #ffffff;--brand: var(--indigo-700);--brand-hover: var(--indigo-800);--cta: var(--gold-400);--cta-text: #3a2a06;--cta-hover: var(--gold-500);--gold-text: var(--gold-700);--text: var(--ink);--text-muted: var(--muted);--focus-ring: var(--indigo-500);--teal: var(--indigo-700);--teal-dark: var(--indigo-800);--teal-d: var(--indigo-800);--teal-l: var(--indigo-50);--teal-10: rgba(54,50,133,.1);--teal-100: var(--indigo-100);--s50: #faf6ec;--s100: #f4eedd;--s200: #e7dcc0;--s300: #d5cbae;--s400: #8f8a9e;--s500: #5f5a6e;--s600: #4a4560;--s700: #343153;--s800: #22214a;--red: #ef4444;--amber: #f59e0b;--amber-l:#fffbeb;--green: #10b981;--indigo: var(--indigo-500);--violet: var(--indigo-400);--blue: #3b82f6;--sidebar-w: 240px;--topbar-h: 60px;--radius: 12px;--shadow-sm: 0 1px 3px rgba(23,21,51,.06);--shadow-md: 0 4px 16px rgba(23,21,51,.08);--shadow-lg: 0 8px 32px rgba(23,21,51,.12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:DM Sans,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}button{font-family:DM Sans,sans-serif;cursor:pointer}input,textarea,select{font-family:DM Sans,sans-serif}input:focus,textarea:focus,select:focus{outline:none}a{color:inherit;text-decoration:none}h1{font-family:Fraunces,Georgia,serif;font-weight:500!important;letter-spacing:-.01em}.font-display{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.01em}.font-display-italic{font-family:Fraunces,Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.02em}.font-mono{font-family:DM Mono,monospace;letter-spacing:.02em}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--s200);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--s300)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes gradMove{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmer{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.anim-fade-up{animation:fadeUp .25s ease both}.anim-fade-in{animation:fadeIn .2s ease both}.anim-scale-in{animation:scaleIn .2s ease both}.anim-shake{animation:shake .4s ease both}.anim-float{animation:float 4s ease-in-out infinite}.card{background:var(--surface);border:1px solid var(--s200);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-hover{transition:box-shadow .18s ease,transform .18s ease}.card-hover:hover{box-shadow:0 16px 34px -18px #36328559,0 2px 8px #1715330f;transform:translateY(-1px)}.bg-gradient{background:linear-gradient(-45deg,var(--indigo-800),var(--indigo-700),var(--indigo-950),var(--indigo-800));background-size:400% 400%;animation:gradMove 14s ease infinite}.glass{background:#fffffff5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}@media (max-width: 767px){input,textarea,select{font-size:16px!important}}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 767px){.grid-2{grid-template-columns:1fr}}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.safe-pad-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}@media (max-width: 480px){.onb-grid{grid-template-columns:1fr!important}}
