@layer components{.dashboard-theme{--dash-bg:radial-gradient(1100px 540px at 12% 8%,rgba(14,165,233,.14),transparent 58%),radial-gradient(900px 500px at 88% 20%,rgba(99,102,241,.16),transparent 56%),#f4f7fb;--dash-panel:hsla(0,0%,100%,.82);--dash-panel-strong:hsla(0,0%,100%,.95);--dash-panel-soft:hsla(0,0%,100%,.72);--dash-border:rgba(15,23,42,.12);--dash-title:#020617;--dash-copy:rgba(15,23,42,.84);--dash-subtle:rgba(15,23,42,.66);--dash-ring:rgba(59,130,246,.18);--dash-shadow:0 18px 44px rgba(15,23,42,.1);--dash-link:#1d4ed8;--dash-link-hover:#1e40af;--dash-link-success:#15803d;--dash-link-success-hover:#166534;--dash-link-accent:#7c3aed;--dash-link-accent-hover:#6d28d9;--dash-file-bg:rgba(15,23,42,.08);--dash-file-bg-hover:rgba(15,23,42,.12);--dash-file-text:rgba(15,23,42,.76);--dash-option-bg:#fff;--dash-divider:rgba(15,23,42,.28)}.dark .dashboard-theme{--dash-bg:radial-gradient(1100px 540px at 12% 8%,rgba(14,165,233,.16),transparent 58%),radial-gradient(900px 500px at 88% 20%,rgba(139,92,246,.22),transparent 56%),#030712;--dash-panel:rgba(15,23,42,.76);--dash-panel-strong:rgba(15,23,42,.92);--dash-panel-soft:hsla(0,0%,100%,.08);--dash-border:hsla(0,0%,100%,.12);--dash-title:#f8fafc;--dash-copy:rgba(248,250,252,.8);--dash-subtle:rgba(248,250,252,.62);--dash-ring:rgba(139,92,246,.24);--dash-shadow:0 22px 54px rgba(2,6,23,.38);--dash-link:#93c5fd;--dash-link-hover:#dbeafe;--dash-link-success:#86efac;--dash-link-success-hover:#bbf7d0;--dash-link-accent:#d8b4fe;--dash-link-accent-hover:#f3e8ff;--dash-file-bg:hsla(0,0%,100%,.92);--dash-file-bg-hover:#fff;--dash-file-text:rgba(2,6,23,.82);--dash-option-bg:#0f172a;--dash-divider:rgba(248,250,252,.3)}.dashboard-shell{width:100%;min-height:100svh;background:var(--dash-bg)}.dash-title,.dashboard-shell{color:var(--dash-title)}.dash-copy{color:var(--dash-copy)}.dash-eyebrow,.dash-spinner,.dash-subtle{color:var(--dash-subtle)}.dash-panel{border:1px solid var(--dash-border);background:var(--dash-panel);box-shadow:var(--dash-shadow);backdrop-filter:blur(18px)}.dash-panel-hover{transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.dash-panel-hover:hover{transform:translateY(-2px);background:var(--dash-panel-strong);border-color:color-mix(in srgb,var(--dash-border) 72%,transparent);box-shadow:0 22px 52px rgba(15,23,42,.14)}.dark .dash-panel-hover:hover{box-shadow:0 24px 58px rgba(2,6,23,.44)}.dash-modal-panel{border:1px solid var(--dash-border);background:var(--dash-panel-strong);box-shadow:0 26px 64px rgba(15,23,42,.22);backdrop-filter:blur(20px)}.dark .dash-modal-panel{box-shadow:0 28px 68px rgba(2,6,23,.48)}.dash-input{border:1px solid var(--dash-border);background:var(--dash-panel-soft);color:var(--dash-title);box-shadow:0 10px 28px rgba(15,23,42,.08);backdrop-filter:blur(14px);transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,color .18s ease}.dash-input::placeholder{color:var(--dash-subtle)}.dash-input:focus{outline:none;border-color:rgba(37,99,235,.28);background:var(--dash-panel-strong);box-shadow:0 0 0 4px var(--dash-ring),0 14px 32px rgba(15,23,42,.12)}.dark .dash-input:focus{border-color:rgba(129,140,248,.4);box-shadow:0 0 0 4px var(--dash-ring),0 16px 36px rgba(2,6,23,.36)}.dash-input option{background:var(--dash-option-bg);color:var(--dash-title)}.dash-file-input{color:var(--dash-copy)}.dash-file-input::file-selector-button{margin-right:1rem;border:0;border-radius:.875rem;padding:.625rem 1rem;background:var(--dash-file-bg);color:var(--dash-file-text);font-weight:600;cursor:pointer;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s ease,box-shadow .18s ease}.dash-file-input::file-selector-button:hover{transform:translateY(-1px);background:var(--dash-file-bg-hover);box-shadow:0 10px 22px rgba(15,23,42,.1)}.dash-button-danger,.dash-button-primary,.dash-button-secondary,.dash-button-warning,.dash-icon-button{display:inline-flex;align-items:center;justify-content:center;font-weight:500;transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.dash-button-primary{background:#0f172a;color:#f8fafc;box-shadow:0 14px 30px rgba(15,23,42,.16)}.dash-button-primary:hover{transform:translateY(-2px);background:#020617;box-shadow:0 18px 34px rgba(15,23,42,.22)}.dark .dash-button-primary{background:hsla(0,0%,100%,.94);color:#020617;box-shadow:0 16px 34px rgba(2,6,23,.34)}.dark .dash-button-primary:hover{background:#fff;box-shadow:0 18px 38px rgba(2,6,23,.4)}.dash-button-secondary,.dash-icon-button{border:1px solid var(--dash-border);background:var(--dash-panel-soft);color:var(--dash-title);box-shadow:0 10px 26px rgba(15,23,42,.08);backdrop-filter:blur(14px)}.dash-button-secondary:hover,.dash-icon-button:hover{transform:translateY(-2px);background:var(--dash-panel-strong);box-shadow:0 14px 32px rgba(15,23,42,.12)}.dark .dash-button-secondary:hover,.dark .dash-icon-button:hover{box-shadow:0 16px 36px rgba(2,6,23,.36)}.dash-button-danger{background:#dc2626;color:#fff;box-shadow:0 12px 28px rgba(220,38,38,.22)}.dash-button-danger:hover{transform:translateY(-2px);background:#b91c1c;box-shadow:0 16px 34px rgba(185,28,28,.28)}.dash-button-warning{background:#f59e0b;color:#111827;box-shadow:0 12px 28px rgba(245,158,11,.24)}.dash-button-warning:hover{transform:translateY(-2px);background:#d97706;color:#fff;box-shadow:0 16px 34px rgba(217,119,6,.26)}.dash-button-danger:disabled,.dash-button-primary:disabled,.dash-button-secondary:disabled,.dash-button-warning:disabled,.dash-icon-button:disabled{cursor:not-allowed;opacity:.65;transform:none;box-shadow:none}.dash-inline-editor{border-radius:1rem;color:var(--dash-copy);transition:background-color .18s ease,color .18s ease}.dash-inline-editor:hover{background:var(--dash-panel-soft);color:var(--dash-title)}.dash-link{color:var(--dash-link);transition:color .16s ease}.dash-link:hover{color:var(--dash-link-hover)}.dash-link-success{color:var(--dash-link-success);transition:color .16s ease}.dash-link-success:hover{color:var(--dash-link-success-hover)}.dash-link-accent{color:var(--dash-link-accent);transition:color .16s ease}.dash-link-accent:hover{color:var(--dash-link-accent-hover)}.dash-divider{color:var(--dash-divider)}.dash-danger-panel{border:1px solid rgba(239,68,68,.22);background:rgba(239,68,68,.1);color:#b91c1c}.dark .dash-danger-panel{border-color:hsla(0,91%,71%,.24);color:#fecaca}}@media (max-width:640px){.dashboard-shell{background-size:cover}}