:root{color-scheme:dark}.app-wash{background-image:radial-gradient(54rem 32rem at 85% -10%,rgba(59,130,246,.13),transparent 62%),radial-gradient(46rem 30rem at -12% 108%,rgba(99,102,241,.09),transparent 60%),radial-gradient(28rem 18rem at 50% 45%,rgba(56,189,248,.05),transparent 65%);background-attachment:fixed}::selection{background:#3b82f659}button,a,input,select,[role=button]{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,box-shadow,transform,opacity,filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.glass{background:#ffffffa8;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.6);box-shadow:0 18px 44px -18px #0f172a47,inset 0 1px #ffffffa6}.dark .glass{background:#1e293b8c;border:1px solid rgba(255,255,255,.09);box-shadow:0 18px 44px -18px #0000009e,inset 0 1px #ffffff12}.card-lift{transition:transform .25s ease,box-shadow .25s ease}.card-lift:hover{transform:translateY(-3px)}.dark .card-lift:hover{box-shadow:0 26px 54px -18px #000000ad,inset 0 1px #ffffff17}.btn-glossy{position:relative;font-weight:600;border-radius:.75rem;box-shadow:inset 0 1px #ffffff59,inset 0 -2px 4px #0000002e,0 6px 16px -6px #2563eb8c;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.btn-primary{background:linear-gradient(180deg,#60a5fa,#3b82f6 45%,#2563eb);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25)}.btn-glossy:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.07);box-shadow:inset 0 1px #fff6,inset 0 -2px 4px #0000002e,0 10px 22px -6px #2563eba6}.btn-glossy:active:not(:disabled){transform:translateY(1px);filter:brightness(.97);box-shadow:inset 0 2px 6px #00000047,0 3px 8px -4px #2563eb80}.btn-glossy:disabled{background:#475569;color:#fff9;text-shadow:none;box-shadow:none;filter:saturate(.4);cursor:not-allowed;transform:none}.btn-glossy:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.btn-fab{border-radius:9999px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px}.icon-btn:hover{transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.icon-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.chip-gloss{box-shadow:inset 0 1px #ffffff59,inset 0 -2px 4px #0000002e,0 4px 10px -4px #00000073}.field{box-shadow:inset 0 2px 5px #00000047}.field:focus{outline:none;border-color:#3b82f6!important;box-shadow:inset 0 2px 5px #00000047,0 0 0 3px #3b82f659}.inset-panel{border-radius:1rem;background:#0f172a0d;border:1px solid rgba(15,23,42,.08);box-shadow:inset 0 2px 8px #0f172a14}.dark .inset-panel{background:#0000003d;border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 2px 8px #00000052}.progress-track{background:#0000004d;border-radius:9999px;box-shadow:inset 0 2px 4px #00000059;overflow:hidden}.progress-fill{position:relative;height:100%;border-radius:9999px;background:linear-gradient(180deg,#7dd3fc,#3b82f6 55%,#2563eb);box-shadow:inset 0 1px #ffffff80;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%)}.dropzone{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.dropzone:hover{border-color:#60a5fa99;box-shadow:inset 0 0 24px #3b82f614}.dropzone-active{border-color:#3b82f6!important;box-shadow:inset 0 0 32px #3b82f62e,0 0 0 3px #3b82f640}.logo-glow{filter:drop-shadow(0 4px 14px rgba(255,168,0,.35))}.scroll-slim::-webkit-scrollbar{width:8px;height:8px}.scroll-slim::-webkit-scrollbar-track{background:transparent}.scroll-slim::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:9999px}.scroll-slim::-webkit-scrollbar-thumb:hover{background:#94a3b899}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
