::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--fg-muted)}.btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background var(--duration-fast);white-space:nowrap;border:none;outline:none;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);color:var(--charcoal);box-shadow:0 2px 12px #f6de5a40}.btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #f6de5a66}.btn.secondary{color:var(--fg);border:1px solid var(--border-strong);background:0 0}.btn.secondary:hover{background:var(--bg-elevated);border-color:var(--accent)}.btn.ghost{color:var(--fg-muted);border:1px solid var(--border);background:0 0}.btn.ghost:hover{color:var(--fg);background:var(--bg-2)}.btn.sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn.lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;background:var(--bg-2);color:var(--fg-muted);border:1px solid var(--border);font-weight:700;display:inline-flex}.chip.accent{color:var(--accent);background:#f6de5a26;border-color:#f6de5a4d}.chip.green{color:#48c778;background:#48c7781f;border-color:#48c77840}.chip.red{color:#ff6363;background:#ff63631f;border-color:#ff636340}.field{gap:var(--space-2);flex-direction:column;display:flex}.field label{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-weight:700}.field input,.field select,.field textarea{width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--fg);font-family:var(--font-body);font-size:var(--text-sm);transition:border-color var(--duration-fast);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.field input::placeholder{color:var(--fg-muted)}input.field,textarea.field,select.field{background:var(--bg-subtle);width:100%;color:var(--fg);font-size:14px;font-family:var(--font-body);transition:border-color var(--dur-fast), background var(--dur-fast);border:1px solid #0000;border-radius:10px;outline:none;padding:12px 14px}input.field:focus,textarea.field:focus{border-color:var(--border-strong);background:var(--bg-elevated)}input.field::placeholder{color:var(--fg-subtle)}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6)}.card.sm{border-radius:var(--radius-lg);padding:var(--space-4)}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #f6de5a00}50%{box-shadow:0 0 20px 4px #f6de5a40}}.animate-fade-up{animation:fade-up var(--duration-slow) var(--ease-out) both}.animate-fade-in{animation:fade-in var(--duration-base) both}.animate-spin{animation:1s linear infinite spin}.animate-pulse-glow{animation:2s ease-in-out infinite pulse-glow}.shimmer{background:linear-gradient(90deg, var(--bg-2) 25%, var(--bg-3) 50%, var(--bg-2) 75%);background-size:200% 100%;animation:1.5s infinite shimmer}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.density-compact{--space-4:.75rem;--space-6:1rem;--text-sm:.8125rem}.density-spacious{--space-4:1.25rem;--space-6:2rem}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pointer{cursor:pointer}.chip.success{color:#48c778;background:#48c7781f;border-color:#48c77840}.eyebrow{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-muted);font-weight:700}.eyebrow.accent{color:var(--accent)}.hero-display{font-family:var(--font-display);letter-spacing:-.028em;margin:0;font-weight:700;line-height:.95}.hero-display em{color:var(--accent);font-style:normal;font-weight:300}.bar{background:var(--accent);border-radius:2px;width:48px;height:3px}.bar.lg{width:64px;height:4px}.bar.sm{width:28px;height:2px}.fade-up{animation:fade-up .36s var(--ease-out) both}.fade-up.d1{animation-delay:60ms}.fade-up.d2{animation-delay:.12s}.fade-up.d3{animation-delay:.18s}.fade-up.d4{animation-delay:.24s}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}.dot{background:var(--status-success);border-radius:999px;width:8px;height:8px;animation:1.6s ease-in-out infinite pulse-dot;display:inline-block}.dot.warn{background:var(--status-warning)}.dot.muted{background:var(--fg-subtle);animation:none}hr.divider,.divider{border:none;border-top:1px solid var(--border);margin:0}.app-scroll{flex:1;min-height:0;overflow:hidden auto}.tnum{font-variant-numeric:tabular-nums}.btn.ghost.icon,.btn.icon{border-radius:8px;justify-content:center;min-width:34px;min-height:34px;padding:8px}.chip.muted{background:var(--bg-subtle);color:var(--fg-muted);border-color:var(--border)}.sel-ring{box-shadow:0 0 0 2px var(--accent)}@keyframes stripe-move{0%{background-position:0 0}to{background-position:40px 0}}.stripe-loading{background:repeating-linear-gradient(90deg, var(--accent) 0px, var(--accent) 20px, #f6de5a66 20px, #f6de5a66 40px);background-size:40px 100%;border-radius:999px;width:60%;animation:.8s linear infinite stripe-move}
