:root{--font-sans:var(--font-inter),"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:var(--font-space-grotesk),"Space Grotesk",var(--font-sans);--font-mono:var(--font-jetbrains-mono),"JetBrains Mono",ui-monospace,Menlo,monospace;--text-2xs:10px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:26px;--text-3xl:34px;--text-4xl:46px;--leading-tight:1.2;--leading-snug:1.4;--leading-normal:1.55;--tracking-display:-0.02em;--tracking-wide:0.08em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius:12px;--radius-lg:16px;--radius-full:999px;--transition-fast:120ms cubic-bezier(0.4,0,0.2,1);--transition:180ms cubic-bezier(0.4,0,0.2,1);--transition-slow:280ms cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--z-base:1;--z-sticky:100;--z-dock:800;--z-dropdown:1000;--z-overlay:1400;--z-modal:1410;--z-popover:1500;--z-toast:1600;--z-tooltip:1700;--overlay-bg:rgba(6,6,7,.66);--overlay-blur:2px;--bg-primary:#0a0a0b;--bg-secondary:#0f0f11;--bg-tertiary:#16161a;--bg-hover:#1c1c21;--bg-active:#26262d;--bg-deep:#060607;--bg-elevated:#16161a;--bg-primary-rgb:10,10,11;--bg-secondary-rgb:15,15,17;--bg-deep-rgb:6,6,7;--accent-primary:#c98e72;--accent-hover:#d6a187;--accent-light:#e0b59d;--accent-glow:hsla(19,45%,62%,.22);--accent-soft:hsla(19,45%,62%,.12);--accent-primary-rgb:201,142,114;--on-accent:#1c0f08;--text-primary:#f5f5f4;--text-secondary:#c4c4c0;--text-muted:#8b8b92;--success:#2ee089;--success-rgb:46,224,137;--success-soft:rgba(46,224,137,.13);--warning:#d98300;--warning-rgb:217,131,0;--warning-soft:rgba(217,131,0,.14);--error:#e5644d;--error-rgb:229,100,77;--error-soft:hsla(9,75%,60%,.14);--info:#6f8bab;--info-rgb:111,139,171;--info-soft:rgba(111,139,171,.14);--success-color:var(--success);--warning-color:var(--warning);--error-color:var(--error);--danger-color:var(--error);--border-color:hsla(0,0%,100%,.08);--border-hover:hsla(0,0%,100%,.16);--border-strong:hsla(0,0%,100%,.24);--shadow-sm:0 1px 2px rgba(0,0,0,.4);--shadow:0 8px 24px -8px rgba(0,0,0,.6);--shadow-lg:0 20px 48px -16px rgba(0,0,0,.7);--overlay-color:255,255,255;--dock-clearance:calc(68px + env(safe-area-inset-bottom, 0px))}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-y:scroll;scrollbar-gutter:stable}body,html{background-color:var(--bg-primary)}body{font-family:var(--font-sans);color:var(--text-primary);line-height:1.6;min-height:100vh;padding-top:env(safe-area-inset-top,0)}.lucide{width:1em;height:1em;vertical-align:-.125em;flex-shrink:0}[data-theme=argile]{--bg-primary:#0a0a0b;--bg-secondary:#0f0f11;--bg-tertiary:#16161a;--accent-primary:#c98e72;--on-accent:#1c0f08;--text-primary:#f5f5f4;--text-secondary:#c4c4c0;--border-color:hsla(0,0%,100%,.08)}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#fbfbfa;--bg-tertiary:#f4f3f0;--bg-hover:#efeee9;--bg-active:#e6e4dd;--bg-deep:#0c0c0d;--bg-elevated:#fff;--bg-primary-rgb:255,255,255;--accent-primary:#b07c63;--accent-hover:#9a6a53;--accent-light:#c59079;--accent-glow:rgba(176,124,99,.16);--accent-soft:rgba(176,124,99,.09);--accent-primary-rgb:176,124,99;--on-accent:#fff;--text-primary:#0b0b0c;--text-secondary:#3b3b40;--text-muted:#76767e;--success:#16a36a;--success-soft:rgba(22,163,106,.12);--warning:#c2750a;--warning-soft:rgba(194,117,10,.12);--error:#d6453f;--error-soft:rgba(214,69,63,.12);--info:#4f6f93;--info-soft:rgba(79,111,147,.12);--border-color:rgba(11,11,12,.1);--border-hover:rgba(11,11,12,.18);--border-strong:rgba(11,11,12,.28);--shadow-sm:0 1px 2px rgba(15,15,18,.06);--shadow:0 8px 24px -10px rgba(15,15,18,.16);--shadow-lg:0 20px 48px -18px rgba(15,15,18,.22);--overlay-bg:rgba(20,18,16,.4);--overlay-color:0,0,0}[data-theme=true-black]{--bg-primary:#000;--bg-secondary:#080808;--bg-tertiary:#121212;--bg-hover:#1a1a1a;--bg-active:#242424;--bg-deep:#000;--bg-elevated:#1a1a1a;--bg-primary-rgb:0,0,0;--accent-primary:#4ea1ff;--accent-hover:#2b8aff;--accent-light:#79b9ff;--accent-glow:rgba(78,161,255,.2);--accent-soft:rgba(78,161,255,.1);--accent-primary-rgb:78,161,255;--on-accent:#04101f;--text-primary:#f5f5f5;--text-secondary:#9a9a9a;--text-muted:#5a5a5a;--border-color:hsla(0,0%,100%,.06);--border-hover:hsla(0,0%,100%,.14);--border-strong:hsla(0,0%,100%,.22);--shadow-sm:0 1px 2px rgba(0,0,0,.6);--shadow:0 8px 24px -8px rgba(0,0,0,.8);--shadow-lg:0 20px 48px -16px rgba(0,0,0,.9);--overlay-color:255,255,255}[data-theme=mocha]{--bg-primary:#14100c;--bg-secondary:#1b1611;--bg-tertiary:#251e17;--bg-hover:#2f261c;--bg-active:#3d3124;--bg-deep:#0c0905;--bg-elevated:#2a221a;--bg-primary-rgb:20,16,12;--accent-primary:#b88a55;--accent-hover:#a07744;--accent-light:#d4a672;--accent-glow:rgba(184,138,85,.2);--accent-soft:rgba(184,138,85,.1);--accent-primary-rgb:184,138,85;--on-accent:#1a1206;--text-primary:#e8dcc6;--text-secondary:#b5a589;--text-muted:#7a6c58;--border-color:rgba(184,138,85,.12);--border-hover:rgba(184,138,85,.22);--border-strong:rgba(184,138,85,.32);--overlay-color:255,255,255}[data-theme=sage]{--bg-primary:#0e1612;--bg-secondary:#131e18;--bg-tertiary:#1a2820;--bg-hover:#21342a;--bg-active:#2c4438;--bg-deep:#060c09;--bg-elevated:#1f2e26;--bg-primary-rgb:14,22,18;--accent-primary:#5d8a6f;--accent-hover:#4a7560;--accent-light:#7da589;--accent-glow:rgba(93,138,111,.2);--accent-soft:rgba(93,138,111,.1);--accent-primary-rgb:93,138,111;--on-accent:#f2f7f4;--text-primary:#d8e2dc;--text-secondary:#9eada3;--text-muted:#6b7b71;--border-color:rgba(93,138,111,.12);--border-hover:rgba(93,138,111,.22);--border-strong:rgba(93,138,111,.32);--overlay-color:255,255,255}[data-theme=noir-gold]{--bg-primary:#0f0e0d;--bg-secondary:#161513;--bg-tertiary:#1e1c1a;--bg-hover:#262421;--bg-active:#322f2b;--bg-deep:#080706;--bg-elevated:#21201d;--bg-primary-rgb:15,14,13;--accent-primary:#c9a45a;--accent-hover:#b08e44;--accent-light:#dfba79;--accent-glow:rgba(201,164,90,.2);--accent-soft:rgba(201,164,90,.08);--accent-primary-rgb:201,164,90;--on-accent:#1a1405;--text-primary:#ece6dc;--text-secondary:#a8a196;--text-muted:#6e695f;--border-color:rgba(201,164,90,.1);--border-hover:rgba(201,164,90,.2);--border-strong:rgba(201,164,90,.3);--overlay-color:255,255,255}[data-theme=champagne]{--bg-primary:#faf7f0;--bg-secondary:#f4efe4;--bg-tertiary:#ede7da;--bg-hover:#e5dfd0;--bg-active:#dad3c2;--bg-deep:#2c2620;--bg-elevated:#fdfaf3;--bg-primary-rgb:250,247,240;--accent-primary:#a08355;--accent-hover:#8a6e44;--accent-light:#b89967;--accent-glow:rgba(160,131,85,.15);--accent-soft:rgba(160,131,85,.08);--accent-primary-rgb:160,131,85;--on-accent:#fdfaf3;--text-primary:#2c2620;--text-secondary:#5d5447;--text-muted:#8d8474;--success:#16a36a;--warning:#c2750a;--error:#c0443c;--info:#5d6f8a;--success-soft:rgba(22,163,106,.12);--warning-soft:rgba(194,117,10,.12);--error-soft:rgba(192,68,60,.12);--info-soft:rgba(93,111,138,.12);--border-color:rgba(44,38,32,.12);--border-hover:rgba(44,38,32,.2);--border-strong:rgba(44,38,32,.3);--shadow:0 8px 24px -10px rgba(44,38,32,.16);--shadow-lg:0 20px 48px -18px rgba(44,38,32,.22);--overlay-bg:rgba(44,38,32,.34);--overlay-color:0,0,0}[data-theme=midnight-silver]{--bg-primary:#0a1428;--bg-secondary:#0f1a32;--bg-tertiary:#15233f;--bg-hover:#1c2c4e;--bg-active:#243860;--bg-deep:#06101f;--bg-elevated:#1a2742;--bg-primary-rgb:10,20,40;--accent-primary:#a8b3c7;--accent-hover:#929daf;--accent-light:#c4cdde;--accent-glow:rgba(168,179,199,.22);--accent-soft:rgba(168,179,199,.1);--accent-primary-rgb:168,179,199;--on-accent:#0a1428;--text-primary:#e6ebf4;--text-secondary:#9aa4b8;--text-muted:#5d6679;--border-color:rgba(168,179,199,.12);--border-hover:rgba(168,179,199,.22);--border-strong:rgba(168,179,199,.32);--overlay-color:255,255,255}[data-theme=emerald-ivory]{--bg-primary:#f7f4ec;--bg-secondary:#f0ece1;--bg-tertiary:#e9e4d4;--bg-hover:#e0dac6;--bg-active:#d4cdb6;--bg-deep:#1a1d1b;--bg-elevated:#fbf9f3;--bg-primary-rgb:247,244,236;--accent-primary:#1f5a3f;--accent-hover:#184832;--accent-light:#2d7553;--accent-glow:rgba(31,90,63,.18);--accent-soft:rgba(31,90,63,.07);--accent-primary-rgb:31,90,63;--on-accent:#f7f4ec;--text-primary:#1a1d1b;--text-secondary:#4a534d;--text-muted:#7a857f;--success:#157a4f;--warning:#b3700a;--error:#bb413a;--info:#476a86;--success-soft:rgba(21,122,79,.12);--warning-soft:rgba(179,112,10,.12);--error-soft:rgba(187,65,58,.12);--info-soft:rgba(71,106,134,.12);--border-color:rgba(26,29,27,.12);--border-hover:rgba(26,29,27,.2);--border-strong:rgba(26,29,27,.3);--shadow:0 8px 24px -10px rgba(26,29,27,.16);--shadow-lg:0 20px 48px -18px rgba(26,29,27,.22);--overlay-bg:rgba(26,29,27,.34);--overlay-color:0,0,0}[data-theme=taupe-copper]{--bg-primary:#1d1a17;--bg-secondary:#252220;--bg-tertiary:#2d2a27;--bg-hover:#363330;--bg-active:#403c38;--bg-deep:#14120f;--bg-elevated:#2a2724;--bg-primary-rgb:29,26,23;--accent-primary:#c08a5e;--accent-hover:#a87545;--accent-light:#d6a37a;--accent-glow:rgba(192,138,94,.2);--accent-soft:rgba(192,138,94,.1);--accent-primary-rgb:192,138,94;--on-accent:#1d1a17;--text-primary:#e8e1d8;--text-secondary:#b0a89e;--text-muted:#74695e;--border-color:rgba(192,138,94,.12);--border-hover:rgba(192,138,94,.22);--border-strong:rgba(192,138,94,.32);--overlay-color:255,255,255}[data-theme=slate-violet]{--bg-primary:#101218;--bg-secondary:#161922;--bg-tertiary:#1d212c;--bg-hover:#252b39;--bg-active:#2f364a;--bg-deep:#0a0c11;--bg-elevated:#1b1f29;--bg-primary-rgb:16,18,24;--accent-primary:#a48cef;--accent-hover:#8b6fea;--accent-light:#bca5f3;--accent-glow:rgba(164,140,239,.22);--accent-soft:rgba(164,140,239,.1);--accent-primary-rgb:164,140,239;--on-accent:#120c22;--text-primary:#e8eaf0;--text-secondary:#9ba1b0;--text-muted:#5c6275;--border-color:rgba(164,140,239,.12);--border-hover:rgba(164,140,239,.22);--border-strong:rgba(164,140,239,.32);--overlay-color:255,255,255}.theme-overlay{position:fixed;inset:0;z-index:99999;pointer-events:none;background:var(--bg-primary);opacity:0;transition:opacity .15s ease}.theme-overlay.active{opacity:1}@keyframes slideIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.lucide-spin{animation:spin 1s linear infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--border-hover);border:2px solid transparent;background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--bg-hover) transparent}.modal-content::-webkit-scrollbar-track{background:transparent;margin:16px 0}.modal-content::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px;border:2px solid transparent;background-clip:padding-box}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--border-hover);border:2px solid transparent;background-clip:padding-box}*{scrollbar-width:none!important;-ms-overflow-style:none!important}::-webkit-scrollbar-button{display:none!important;width:0!important;height:0!important}::-webkit-scrollbar-corner{background:transparent!important}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:var(--transition);font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:var(--accent-primary);color:var(--on-accent);width:100%;position:relative}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-primary i{font-size:1rem}.btn-primary .btn-loader{align-items:center;gap:8px}.btn-primary .btn-loader i{animation:spin 1s linear infinite}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{background:var(--error);box-shadow:0 4px 12px rgba(var(--error-rgb),.3)}.btn-danger:active{transform:translateY(0)}.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-filter{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);position:relative}.btn-filter:hover{background:var(--bg-hover);border-color:var(--accent-primary)}.filter-count{position:absolute;top:-8px;right:-8px;background:var(--accent-primary);color:var(--on-accent);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.btn-pagination{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);padding:8px 16px}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.btn-pagination:not(:disabled):hover{background:var(--bg-hover);border-color:var(--accent-primary)}.toggle-switch{width:44px;height:24px;border-radius:12px;border:none;position:relative;transition:background .2s;flex-shrink:0}.toggle-switch--disabled{cursor:not-allowed;opacity:.5}.toggle-switch__knob{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;transition:left .2s}.error-message{margin-top:15px;padding:12px;background:rgba(var(--error-rgb),.1);border:1px solid var(--error);border-radius:8px;color:var(--error);font-size:.9rem;display:none}.error-message.show{display:block;animation:shake .5s ease-out}.custom-checkbox{position:relative;display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;gap:.75rem}.custom-checkbox input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.custom-checkbox .checkmark{position:relative;height:22px;width:22px;background:var(--surface-light,#1a2a44);border:2px solid var(--border-color);border-radius:6px;transition:background-color .2s ease,border-color .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}.custom-checkbox:hover .checkmark{border-color:var(--accent-primary);background:rgba(var(--accent-primary-rgb),.05)}.custom-checkbox input:checked~.checkmark{background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));border-color:var(--accent-primary)}.custom-checkbox .checkmark>svg.lucide{width:14px;height:14px;color:#fff;stroke-width:3;opacity:0;transform:scale(.6);transition:opacity .18s ease-out,transform .2s cubic-bezier(.34,1.56,.64,1);will-change:transform,opacity}.custom-checkbox input:checked~.checkmark>svg.lucide{opacity:1;transform:scale(1)}.custom-checkbox input:focus~.checkmark{outline:2px solid var(--accent-primary);outline-offset:2px}.custom-checkbox input:disabled~.checkmark{opacity:.5;cursor:not-allowed;background:var(--surface-dark,#152036)}.custom-checkbox input:disabled~.checkbox-label{opacity:.5;cursor:not-allowed}.custom-checkbox.disabled{cursor:not-allowed}.checkbox-label{font-size:.9375rem;color:var(--text-primary,#e2e8f0);transition:color .2s ease;display:inline-flex;align-items:center;gap:.5rem;line-height:1.5;flex:1 1}.checkbox-label>svg.lucide{width:1em;height:1em;vertical-align:0;flex-shrink:0}.custom-checkbox input:checked~.checkbox-label{color:var(--text-primary,#e2e8f0)}.custom-checkbox.small .checkmark{height:18px;width:18px}.custom-checkbox.small .checkmark>svg.lucide{width:11px;height:11px}.custom-checkbox.small .checkbox-label{font-size:.875rem}.custom-checkbox.large .checkmark{height:26px;width:26px}.custom-checkbox.large .checkmark>svg.lucide{width:17px;height:17px}.custom-checkbox.large .checkbox-label{font-size:1rem}.permission-item .custom-checkbox{width:100%;height:100%;min-height:54px;padding:.75rem;background:var(--surface-light,#1a2a44);border:1px solid var(--border-color);border-radius:8px;transition:all .2s ease;display:flex;align-items:center}.permission-item .custom-checkbox:hover{background:rgba(var(--accent-primary-rgb),.05);border-color:var(--accent-primary)}.permission-item .custom-checkbox input:checked{background:rgba(var(--accent-primary-rgb),.1)}.permission-item .custom-checkbox .checkbox-label{flex:1 1;word-break:break-word;line-height:1.4}.custom-checkbox .log-type-color-dot{flex-shrink:0;display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:middle}.roles-checkboxes{max-height:300px;overflow-y:auto}.confirm-checkbox-container .custom-checkbox{padding:.75rem;background:rgba(var(--error-rgb),.05);border:1px solid rgba(var(--error-rgb),.3);border-radius:8px}.confirm-checkbox-container .custom-checkbox:hover{background:rgba(var(--error-rgb),.1);border-color:var(--error)}.confirm-checkbox-container .custom-checkbox input:checked~.checkmark{background:linear-gradient(135deg,var(--error),rgba(var(--error-rgb),.75));border-color:var(--error)}@media (max-width:768px){.custom-checkbox{gap:.625rem}.custom-checkbox .checkmark{height:20px;width:20px}.custom-checkbox .checkmark>svg.lucide{width:12px;height:12px}.checkbox-label{font-size:.875rem}}@media (max-width:480px){.permission-item .custom-checkbox{padding:.625rem}}.custom-checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.custom-checkbox-input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.custom-checkbox-box{position:relative;width:22px;height:22px;background:var(--surface-light,#1a2a44);border:2px solid var(--border-color);border-radius:6px;transition:background-color .2s ease,border-color .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}.custom-checkbox-box i,.custom-checkbox-box svg.lucide{font-size:.75rem;width:14px;height:14px;color:#fff;opacity:0;transform:scale(.6);transition:opacity .18s ease-out,transform .2s cubic-bezier(.34,1.56,.64,1);stroke-width:3;will-change:transform,opacity}.custom-checkbox-label:hover .custom-checkbox-box{border-color:var(--accent-primary);background:rgba(var(--accent-primary-rgb),.05)}.custom-checkbox-input:checked~.custom-checkbox-box{background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));border-color:var(--accent-primary)}.custom-checkbox-input:checked~.custom-checkbox-box i,.custom-checkbox-input:checked~.custom-checkbox-box svg.lucide{opacity:1;transform:scale(1)}.custom-checkbox-input:focus~.custom-checkbox-box{outline:2px solid var(--accent-primary);outline-offset:2px}.custom-checkbox-input:disabled~.custom-checkbox-box{opacity:.5;cursor:not-allowed;background:var(--surface-dark,#152036)}.custom-checkbox-input:disabled~.custom-checkbox-text{opacity:.5;cursor:not-allowed}.custom-checkbox-text{color:var(--text-primary,#e2e8f0);font-size:.9375rem}.custom-select-wrapper{width:100%}.custom-select{width:100%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block}.custom-select-trigger{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.9375rem;transition:all .2s ease;min-height:44px;cursor:pointer}.custom-select-trigger:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.custom-select-trigger .select-value{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-trigger .select-value.placeholder{color:var(--text-secondary);opacity:.7}.custom-select-trigger .select-arrow{font-size:.75rem;color:var(--text-secondary);transition:transform .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1rem;height:1rem}.custom-select-trigger .select-arrow.open{transform:rotate(180deg)}.custom-select-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-secondary);border:1px solid var(--accent-primary);border-top:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px;max-height:250px;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.3)}.custom-select-dropdown.dropdown-up{top:auto;bottom:100%;border-top:1px solid var(--accent-primary);border-bottom:none;border-top-left-radius:8px;border-top-right-radius:8px;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 -4px 12px rgba(0,0,0,.3)}.custom-select.open .custom-select-trigger{border-color:var(--accent-primary)}.custom-select.open:has(.dropdown-up) .custom-select-trigger{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.custom-select.open:not(:has(.dropdown-up)) .custom-select-trigger{border-bottom-left-radius:0;border-bottom-right-radius:0}.custom-select-option{padding:.75rem 1rem;color:var(--text-primary);font-size:.9375rem;cursor:pointer;transition:all .15s ease;border-bottom:1px solid var(--border-color)}.custom-select-option:last-child{border-bottom:none}.custom-select-option:hover{background:var(--bg-hover);color:var(--accent-primary)}.custom-select-option.selected{background:rgba(var(--accent-primary-rgb),.1);color:var(--accent-primary);font-weight:500}.custom-select-option.selected:before{content:"✓ ";margin-right:.5rem}.custom-select-dropdown::-webkit-scrollbar{width:6px}.custom-select-dropdown::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:3px}.custom-select-dropdown::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.custom-select-dropdown::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.custom-select-dropdown:not(.dropdown-up){animation:slideDown .2s ease}.custom-select-dropdown.dropdown-up{animation:slideUp .2s ease}.custom-select-wrapper.small .custom-select-trigger{padding:.5rem .75rem;font-size:.875rem;min-height:36px}.custom-select-wrapper.small .custom-select-option{padding:.5rem .75rem;font-size:.875rem}.custom-select-wrapper.disabled{opacity:.5;pointer-events:none}.custom-select-wrapper.disabled .custom-select-trigger{cursor:not-allowed;background:var(--bg-tertiary)}.custom-select,.custom-select-wrapper{display:block;width:100%}.custom-select-trigger{width:100%;box-sizing:border-box}.custom-select-trigger .select-arrow,.custom-select-trigger>*{pointer-events:none}.custom-select,.custom-select-wrapper{position:relative;min-height:44px}.custom-select-trigger{position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;gap:.75rem!important;padding:.75rem 1rem!important;box-sizing:border-box!important;z-index:2!important;background:var(--bg-secondary)!important}.custom-select-dropdown{z-index:1050}.custom-select-dropdown--portal{position:fixed;max-height:250px;z-index:9999}.ncp,.nip{position:relative;width:100%}.nip-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.nip-trigger{display:flex;align-items:center;gap:.7rem;width:100%;padding:.55rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:var(--transition);text-align:left}.nip-trigger:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.nip-trigger.open{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.nip-trigger-ic{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:var(--radius-xs);background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--accent-light,var(--accent-primary));font-size:.95rem}.ncp-trigger-sw{width:30px;height:30px;flex:none;border-radius:var(--radius-xs);border:1px solid var(--border-hover);box-shadow:inset 0 0 0 2px rgba(0,0,0,.15)}.nip-trigger-lbl{flex:1 1;min-width:0;font-size:.85rem;font-weight:500}.nip-trigger-lbl small{display:block;margin-top:1px;font-family:var(--font-mono,ui-monospace,Menlo,monospace);font-size:.7rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nip-chev{flex:none;color:var(--text-muted);font-size:.75rem;transition:transform .2s ease}.nip-trigger.open .nip-chev{transform:rotate(180deg)}.nip-backdrop{display:none}.nip-panel{position:fixed;z-index:2400;background:var(--bg-primary);border:1px solid var(--border-hover);border-radius:var(--radius);box-shadow:var(--shadow-lg,0 10px 30px -8px rgba(0,0,0,.6));overflow:hidden;animation:nipPop .16s ease;display:flex;flex-direction:column}@keyframes nipPop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.nip-grab{display:none}.nip-search{display:flex;align-items:center;gap:.55rem;flex:none;padding:.7rem .8rem;border-bottom:1px solid var(--border-color)}.nip-search>i{color:var(--text-muted)}.nip-search input{flex:1 1;min-width:0;background:transparent;border:none;outline:none;color:var(--text-primary);font:inherit;font-size:.85rem}.nip-clear{border:none;background:none;color:var(--text-muted);cursor:pointer;font-size:.8rem;padding:2px}.nip-clear:hover{color:var(--text-primary)}.nip-cats{display:flex;gap:.45rem;flex-wrap:nowrap;flex:none;padding:.7rem .8rem;border-bottom:1px solid var(--border-color);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;touch-action:pan-x;-webkit-mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),transparent);mask-image:linear-gradient(90deg,#000,#000 calc(100% - 20px),transparent)}.nip-cats::-webkit-scrollbar{display:none}.nip-chip{flex:none;white-space:nowrap;display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:500;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);padding:.35rem .7rem;border-radius:999px;cursor:pointer;transition:var(--transition)}.nip-chip:hover{color:var(--text-primary);border-color:var(--border-hover)}.nip-chip i{font-size:.7rem;opacity:.85}.nip-chip.on{color:#fff;background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 4px 12px -4px var(--accent-glow)}.nip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));grid-gap:.4rem;gap:.4rem;padding:.8rem;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;touch-action:pan-y}.nip-grid::-webkit-scrollbar{width:8px}.nip-grid::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:4px}.nip-cell{height:46px;display:grid;place-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:1rem;cursor:pointer;transition:transform .12s ease,color .12s ease,background .12s ease,border-color .12s ease}.nip-cell:hover{color:var(--accent-light,var(--accent-primary));background:var(--accent-soft)}.nip-cell.on,.nip-cell:hover{border-color:var(--accent-primary)}.nip-cell.on{color:#fff;background:var(--accent-primary);box-shadow:0 6px 16px -6px var(--accent-glow)}.nip-empty{grid-column:1/-1;padding:1.4rem .5rem;text-align:center;color:var(--warning);font-size:.8rem}.nip-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex:none;padding:.55rem .8rem;border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.72rem}.nip-foot-l{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nip-foot-l.hov{color:var(--accent-light,var(--accent-primary));font-family:var(--font-mono,ui-monospace,Menlo,monospace)}.nip-foot-r{flex:none}.ncp-panel{padding:.8rem;overflow-y:auto}.ncp-seg{display:inline-flex;gap:3px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:3px;margin-bottom:.8rem}.ncp-seg button{border:none;background:none;cursor:pointer;color:var(--text-secondary);font:inherit;font-size:.78rem;font-weight:600;padding:.35rem .85rem;border-radius:var(--radius-xs);transition:var(--transition)}.ncp-seg button.on{background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px -5px var(--accent-glow)}.ncp-swgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));grid-gap:.5rem;gap:.5rem}.ncp-sw{height:34px;border-radius:var(--radius-xs);cursor:pointer;border:2px solid transparent;position:relative;transition:transform .12s ease}.ncp-sw:hover{transform:scale(1.08)}.ncp-sw.on{border-color:#fff;box-shadow:0 0 0 2px var(--bg-primary),0 4px 12px rgba(0,0,0,.4)}.ncp-sw.on:after{content:"\f00c";font-family:Font Awesome\ 6 Free;font-weight:900;position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:.7rem;text-shadow:0 1px 2px rgba(0,0,0,.6)}.ncp-adv-row{display:flex;gap:.65rem;align-items:stretch;flex-wrap:wrap}.ncp-native{position:relative;width:54px;height:54px;flex:none;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-hover);cursor:pointer}.ncp-native input[type=color]{position:absolute;inset:-6px;width:calc(100% + 12px);height:calc(100% + 12px);border:none;padding:0;background:none;cursor:pointer}.ncp-native-badge{position:absolute;right:3px;bottom:3px;width:18px;height:18px;border-radius:var(--radius-xs);background:rgba(0,0,0,.55);display:grid;place-items:center;font-size:.55rem;color:#fff;pointer-events:none}.ncp-hexcol{flex:1 1;min-width:140px;display:flex;flex-direction:column;gap:.45rem}.ncp-hex{display:flex;align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:0 .75rem;transition:var(--transition)}.ncp-hex.bad{border-color:var(--error);box-shadow:0 0 0 3px rgba(var(--error-rgb,239,68,68),.14)}.ncp-hex:not(.bad):focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.ncp-hex .hash{color:var(--text-muted)}.ncp-hex .hash,.ncp-hex input{font-family:var(--font-mono,ui-monospace,Menlo,monospace);font-size:.85rem}.ncp-hex input{flex:1 1;min-width:0;background:none;border:none;outline:none;color:var(--text-primary);text-transform:lowercase;padding:.6rem .25rem;letter-spacing:.04em}.ncp-eyed{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:var(--radius-sm);padding:.55rem .75rem;cursor:pointer;font-size:.8rem;white-space:nowrap;transition:var(--transition)}.ncp-eyed:hover{color:var(--accent-light,var(--accent-primary));border-color:var(--accent-primary)}.ncp-meta{display:flex;align-items:center;gap:.65rem;margin-top:.7rem;flex-wrap:wrap}.ncp-contrast{display:inline-flex;align-items:center;gap:.45rem;font-size:.72rem;font-weight:600;padding:.32rem .65rem;border-radius:999px;border:1px solid var(--border-color)}.ncp-contrast .ratio{font-family:var(--font-mono,ui-monospace,Menlo,monospace);opacity:.85}.ncp-contrast.aaa{color:var(--success);background:rgba(var(--success-rgb,34,197,94),.1);border-color:rgba(var(--success-rgb,34,197,94),.25)}.ncp-contrast.aa{color:var(--accent-light,var(--accent-primary));background:var(--accent-soft);border-color:var(--border-hover)}.ncp-contrast.low{color:var(--warning);background:rgba(var(--warning-rgb),.1);border-color:rgba(var(--warning-rgb),.28)}.ncp-recents{display:flex;align-items:center;gap:.4rem;margin-left:auto}.ncp-recents .lbl{font-size:.7rem;color:var(--text-muted)}.ncp-rsw{width:20px;height:20px;border-radius:var(--radius-xs);cursor:pointer;border:1px solid var(--border-hover);padding:0}.ncp-note{margin-top:.65rem;font-size:.7rem;color:var(--text-muted);line-height:1.5}.ncp-note code{font-family:var(--font-mono,ui-monospace,Menlo,monospace);color:var(--text-secondary);background:var(--bg-secondary);padding:1px 5px;border-radius:4px}@media (max-width:768px){.nip-backdrop{display:block;position:fixed;inset:0;z-index:2390;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:nipFade .2s ease}@keyframes nipFade{0%{opacity:0}to{opacity:1}}.nip-panel{position:fixed!important;top:auto!important;left:0!important;right:0!important;bottom:0!important;width:auto!important;max-height:82vh!important;z-index:2400;border-radius:18px 18px 0 0;border-bottom:none;padding-bottom:env(safe-area-inset-bottom,0);animation:nipSheet .28s cubic-bezier(.2,.8,.2,1)}@keyframes nipSheet{0%{transform:translateY(34px);opacity:.5}to{transform:none;opacity:1}}.nip-grab{display:block;width:40px;height:4px;flex:none;border-radius:2px;background:var(--border-hover);margin:.55rem auto 0}.ncp-panel{padding-bottom:calc(.8rem + env(safe-area-inset-bottom, 0px))}.nip-grid{max-height:44vh;grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}.nip-cell{height:44px}}.theme-picker-current{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:14px}.theme-picker-current-swatch{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.18)}.theme-picker-current-swatch--gradient{background:linear-gradient(135deg,var(--bg-primary) 0 49%,#fff 51% 100%)!important;box-shadow:0 0 0 2px rgba(var(--overlay-color),.1)}.theme-picker-current-label{font-size:.85rem;color:var(--text-secondary)}.theme-picker-current-label strong{color:var(--text-primary)}.theme-picker-current-hint{margin-left:auto;font-size:.72rem;color:var(--text-muted)}.theme-picker-section-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:14px 0 8px;display:flex;align-items:center;gap:8px}.theme-picker-section-label:after{content:"";flex:1 1;height:1px;background:var(--border-color)}.theme-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}@media (max-width:600px){.theme-picker-grid{grid-template-columns:repeat(2,1fr)}}.theme-picker-card{background:var(--bg-secondary);border:1.5px solid var(--border-color);border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;position:relative;padding:0;text-align:left;font-family:inherit;width:100%;color:inherit}.theme-picker-card:hover{border-color:var(--border-hover)}.theme-picker-card:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.theme-picker-card.selected{border-color:var(--accent-primary,var(--accent-primary));box-shadow:0 0 0 1px var(--accent-primary,var(--accent-primary)),0 6px 16px rgba(0,0,0,.25)}.theme-picker-card.selected:after{content:"✓";position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:var(--accent-primary,var(--accent-primary));color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none}.tp-preview{height:78px;display:grid;grid-template-columns:28px 1fr;grid-gap:5px;gap:5px;padding:6px}.tp-preview-rail{border-radius:4px;padding:4px 0;display:flex;flex-direction:column;align-items:center;gap:3px}.tp-rail-dot{width:14px;height:14px;border-radius:3px}.tp-preview-main{display:flex;flex-direction:column;gap:3px}.tp-preview-card{flex:1 1;border-radius:4px;padding:5px 6px;display:flex;flex-direction:column;justify-content:space-between}.tp-line{height:3px;border-radius:100px;width:70%}.tp-line-short{width:40%;height:2px}.tp-btn-row{display:flex;gap:4px;align-items:center}.tp-btn{padding:2px 6px;border-radius:3px;font-size:6.5px;font-weight:600}.tp-dot-online{width:4px;height:4px;border-radius:50%;background:var(--success);box-shadow:0 0 0 1px rgba(var(--success-rgb),.4)}.tp-preview-auto{height:78px;background:linear-gradient(135deg,#0a0a0b 0 49%,#fff 51% 100%);display:flex;align-items:center;justify-content:center;gap:8px;font-size:1.1rem;color:hsla(0,0%,100%,.7)}.tp-preview-auto>span:nth-child(3){color:rgba(0,0,0,.55)}.tp-meta{padding:7px 9px 8px;background:rgba(0,0,0,.25);border-top:1px solid rgba(var(--overlay-color),.04)}.tp-meta-name{font-size:.74rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-meta-swatch{width:7px;height:7px;border-radius:50%;flex-shrink:0}.tp-meta-sub{font-size:.6rem;color:hsla(0,0%,100%,.5);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-overlay{position:fixed;inset:0;z-index:var(--z-overlay,1400);background:var(--overlay-bg,rgba(6,6,7,.66));backdrop-filter:blur(var(--overlay-blur,2px));-webkit-backdrop-filter:blur(var(--overlay-blur,2px));display:grid;place-items:center;padding:var(--space-5,20px);animation:nm-overlay-in var(--transition,.18s cubic-bezier(.4,0,.2,1)) both}@keyframes nm-overlay-in{0%{opacity:0}}.nm-modal{position:relative;z-index:var(--z-modal,1410);width:100%;max-width:480px;background:var(--bg-elevated);border:1px solid var(--border-hover);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-10, 40px));animation:nm-modal-in var(--transition,.18s cubic-bezier(.4,0,.2,1)) var(--ease-out,cubic-bezier(.16,1,.3,1)) both}@keyframes nm-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.nm-modal.nm-sm{max-width:380px}.nm-modal.nm-md{max-width:480px}.nm-modal.nm-lg{max-width:640px}.nm-modal.nm-xl{max-width:860px}.nm-header{display:flex;align-items:center;gap:var(--space-3,12px);padding:var(--space-4,16px) var(--space-5,20px);border-bottom:1px solid var(--border-color)}.nm-icon{width:32px;height:32px;border-radius:var(--radius-sm,8px);display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-primary);flex-shrink:0}.nm-icon.nm-danger{background:var(--error-soft);color:var(--error)}.nm-icon .lucide{width:17px;height:17px}.nm-titlewrap{flex:1 1;min-width:0}.nm-title{font-family:var(--font-display,inherit);font-size:var(--text-lg,16px);font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.nm-sub{font-size:var(--text-sm,12px);color:var(--text-muted);font-weight:400;margin-top:1px}.nm-close{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;margin-left:auto;flex-shrink:0;width:30px;height:30px;display:grid;place-items:center;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm,8px);transition:background var(--transition-fast,.12s ease),color var(--transition-fast,.12s ease)}.nm-close .lucide{width:18px;height:18px}.nm-close:hover{background:var(--bg-hover);color:var(--text-primary)}.nm-close:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.nm-body{padding:var(--space-5,20px);overflow:auto;font-size:var(--text-base,13px);color:var(--text-secondary);line-height:var(--leading-normal,1.55)}.nm-body b{color:var(--text-primary)}.nm-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2,8px);padding:var(--space-4,16px) var(--space-5,20px);border-top:1px solid var(--border-color);border-radius:0 0 var(--radius-lg,16px) var(--radius-lg,16px)}.nm-footer .nm-spread{margin-right:auto}.nm-grabber{display:none}@media (max-width:640px){.nm-overlay{place-items:end stretch;padding:0}.nm-overlay>.nm-modal{max-width:none;width:100%;border-radius:var(--radius-lg,16px) var(--radius-lg,16px) 0 0;max-height:92vh;padding-bottom:env(safe-area-inset-bottom,0);animation:nm-sheet-in var(--transition,.2s) var(--ease-out,ease) both}.nm-grabber{display:block;position:relative;width:100%;height:22px;flex-shrink:0;touch-action:none;cursor:-webkit-grab;cursor:grab}.nm-grabber:active{cursor:-webkit-grabbing;cursor:grabbing}.nm-grabber:before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:40px;height:4px;border-radius:var(--radius-full,999px);background:var(--border-strong)}.nm-header{touch-action:none}.nm-close{touch-action:manipulation}@keyframes nm-sheet-in{0%{transform:translateY(100%)}}}@media (prefers-reduced-motion:reduce){.nm-modal,.nm-overlay,.nm-overlay>.nm-modal{animation-duration:.01ms}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;height:100%;padding:48px 24px;text-align:center;color:var(--text-secondary)}.empty-state .es-icon{width:52px;height:52px;border-radius:var(--radius-md,12px);background:var(--bg-tertiary);color:var(--text-muted);display:grid;place-items:center;margin-bottom:8px;flex-shrink:0}.empty-state .es-icon svg{width:24px;height:24px}.empty-state .es-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0}.empty-state .es-desc{font-size:.9rem;color:var(--text-muted);max-width:380px;margin:0;line-height:1.55}.empty-state .es-actions{display:flex;align-items:center;gap:8px;margin-top:12px}.empty-state>svg{width:40px;height:40px;opacity:.5;margin-bottom:8px}.empty-state>i{font-size:2.5rem;opacity:.5;margin-bottom:8px}.empty-state>h3{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0}.empty-state>p{font-size:.9rem;color:var(--text-muted);max-width:380px;margin:0;line-height:1.55}.empty-state>.btn{margin-top:12px}.empty-state--sm{height:auto;padding:20px 16px;gap:2px}.empty-state--sm .es-icon{width:40px;height:40px;margin-bottom:6px}.empty-state--sm .es-icon svg{width:20px;height:20px}.empty-state--sm .es-title{font-size:.95rem}.dtp-trigger,.empty-state--sm .es-desc{font-size:.85rem}.dtp-trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer;height:44px;text-align:left;color:var(--text-primary)}.dtp-trigger.dtp-trigger--empty,.dtp-trigger>.lucide{color:var(--text-muted)}.dtp-trigger>.lucide{flex-shrink:0}.dtp-dropdown{position:fixed;z-index:9999;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.35);padding:12px;animation:fadeIn .15s ease-out}.dtp-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.dtp-nav-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:6px;font-size:.85rem}.dtp-nav-btn:hover{background:var(--bg-hover)}.dtp-month{font-size:.85rem;font-weight:600;color:var(--text-primary)}.dtp-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px}.dtp-dayhead{text-align:center;font-size:.65rem;color:var(--text-muted);padding:4px 0;font-weight:600}.dtp-day{text-align:center;font-size:.8rem;padding:6px 0;border-radius:6px;border:none;background:transparent;color:var(--text-primary);cursor:pointer;transition:background .1s}.dtp-day:hover:not(:disabled):not(.selected){background:var(--bg-hover)}.dtp-day:disabled{cursor:default;color:transparent}.dtp-day.today{color:var(--accent-primary);font-weight:700}.dtp-day.selected{background:var(--accent-primary);color:var(--on-accent,#fff);font-weight:700}.dtp-time{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:8px;border-top:1px solid var(--border-color)}.dtp-time-sep,.dtp-time>.lucide{color:var(--text-muted)}.dtp-time-sep{font-weight:700}.dtp-time-input{width:44px;height:32px;text-align:center;font-size:.9rem;font-weight:600;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);outline:none}.dtp-time-spacer{flex:1 1}.dtp-clear{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.75rem;padding:4px 8px}.dtp-clear:hover{color:var(--text-secondary)}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 100%)}.auth-box{background:var(--bg-secondary);border-radius:16px;padding:40px;width:100%;max-width:450px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);animation:slideUp .5s ease-out}.logo{text-align:center;margin-bottom:30px}.logo-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;box-shadow:var(--shadow);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.logo h1{font-size:2rem;margin-bottom:8px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:var(--text-secondary);font-size:.9rem}.auth-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--border-color)}.tab-button{flex:1 1;padding:12px;background:none;border:none;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px}.tab-button,.tab-button i{font-size:1rem}.tab-button:hover{color:var(--text-primary)}.tab-button.active{color:var(--accent-primary)}.tab-button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent-primary);animation:expandWidth .4s cubic-bezier(.4,0,.2,1)}@keyframes expandWidth{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.auth-form{display:none;opacity:0;transform:translateY(20px)}.auth-form.active{display:block;animation:slideInUp .5s cubic-bezier(.4,0,.2,1) forwards}.auth-closed-notice{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin-bottom:18px;border-radius:10px;background:rgba(var(--error-rgb),.08);border:1px solid rgba(var(--error-rgb),.25);color:var(--text-secondary)}.auth-closed-notice i{color:var(--error);font-size:1rem;margin-top:2px}.auth-closed-notice strong{display:block;color:var(--text-primary);font-size:.92rem;margin-bottom:2px}.auth-closed-notice p{margin:0;font-size:.82rem;line-height:1.4}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideOutDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.95)}}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:.9rem;display:flex;align-items:center;gap:6px}.form-group label i{color:var(--accent-primary)}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon .input-icon{position:absolute;left:16px;color:var(--text-muted);pointer-events:none;transition:var(--transition)}.input-with-icon input{width:100%;padding:12px 16px 12px 45px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;transition:var(--transition)}.input-with-icon input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.input-with-icon input:focus~.input-icon{color:var(--accent-primary)}.input-with-icon .input-icon.match{color:var(--success-color)}.input-with-icon .input-icon.no-match{color:var(--error-color)}.auth-box--center{text-align:center}.logo-icon--amber{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.maintenance-icon{font-size:3rem;color:var(--warning);margin-bottom:16px;display:block}.maintenance-title{font-size:1.3rem;color:var(--text-primary);margin-bottom:12px}.maintenance-text{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.input-with-icon input::placeholder{color:var(--text-muted)}.toggle-password{font-size:1rem;position:absolute;right:12px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:var(--transition);border-radius:4px;z-index:2}.toggle-password:hover{color:var(--accent-primary);background:var(--accent-soft)}.toggle-password i{font-size:1rem}.password-strength{margin-top:8px;opacity:0;transition:opacity .3s ease;height:0;overflow:hidden}.password-strength.visible{opacity:1;height:auto}.strength-bar{height:4px;background:var(--border-color);border-radius:2px;overflow:hidden;margin-bottom:4px}.strength-bar-fill{height:100%;width:0;transition:all .3s ease;border-radius:2px}.strength-bar-fill.weak{width:33%;background:var(--error)}.strength-bar-fill.medium{width:66%;background:var(--warning)}.strength-bar-fill.strong{width:100%;background:var(--success)}.strength-text{font-size:.75rem;color:var(--text-muted)}.strength-text.weak{color:var(--error-color)}.strength-text.medium{color:var(--warning)}.strength-text.strong{color:var(--success-color)}.confirm-password-status{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;transition:all .3s ease}.confirm-password-status.match{color:var(--success)}.confirm-password-status.no-match{color:var(--error)}.confirm-password-status i{font-size:.78rem}.auth-options{justify-content:space-between;margin-bottom:20px;font-size:.85rem}.auth-options,.remember-me{display:flex;align-items:center}.remember-me{gap:8px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.remember-me input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer;border-radius:4px}.remember-me span{font-size:.85rem}.forgot-password-link{color:var(--accent-primary);text-decoration:none;font-size:.85rem;transition:color .2s ease}.forgot-password-link:hover{color:var(--accent-light);text-decoration:underline}.btn-text-visible{display:inline}.btn-text-hidden{display:none}.btn-full{width:100%}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-24{margin-bottom:24px}.auth-box-centered{text-align:center}.auth-section{margin-bottom:24px}.auth-heading{font-size:1.2rem;color:var(--text-primary);text-align:center}.auth-heading-lg{font-size:1.3rem;color:var(--text-primary)}.auth-subtitle{text-align:center;line-height:1.5}.auth-body-text,.auth-subtitle{color:var(--text-secondary);font-size:.85rem}.auth-body-text{line-height:1.6}.auth-body-text-md{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.auth-emphasis{color:var(--text-primary)}.auth-status-icon{font-size:3rem;margin-bottom:16px}.auth-status-icon-success{color:var(--success)}.auth-status-icon-error{color:var(--error)}.auth-status-icon-accent{color:var(--accent-primary)}.logo-icon-error{background:linear-gradient(135deg,#ef4444,#f87171)}.password-hint{font-size:.7rem;color:var(--text-muted);margin-left:8px}.btn-mb-12{margin-bottom:12px}.btn-mb-16{margin-bottom:16px}.auth-linkbtn{background:none;border:none;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.auth-linkbtn:disabled{opacity:.5;cursor:not-allowed}.auth-link-icon{width:.85rem;height:.85rem}.auth-back-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:14px;padding:10px;background:none;border:none;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:color .2s ease}.auth-back-btn:hover{color:var(--text-primary)}.auth-back-btn svg{width:1rem;height:1rem}.auth-split{display:flex;height:100vh;height:100dvh}.auth-brand-panel{flex:1.05 1;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 15% 10%,var(--accent-soft),transparent 55%),var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;align-items:center;padding:64px 48px}.auth-brand-panel:after{content:"";position:absolute;right:-140px;bottom:-140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,transparent 61%,var(--accent-soft) 61.5%,transparent 63%),radial-gradient(circle,transparent 74%,var(--border-color) 74.5%,transparent 76%);opacity:.8;pointer-events:none}.auth-brand-inner{position:relative;max-width:380px}.auth-brand-wordmark{font-family:var(--font-space-grotesk),var(--font-inter),sans-serif;font-weight:700;font-size:46px;letter-spacing:-.02em;line-height:1;margin:0 0 16px;color:var(--text-primary);background:none;-webkit-text-fill-color:currentColor}.auth-brand-wordmark .dot{color:var(--accent-primary)}.auth-brand-tag{font-size:16px;line-height:1.4;color:var(--text-secondary);margin-bottom:32px}.auth-brand-points{list-style:none;display:flex;flex-direction:column;gap:16px;margin:0;padding:0}.auth-brand-points li{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-secondary)}.auth-brand-pt-ic{flex-shrink:0;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--accent-primary)}.auth-brand-pt-ic svg{width:17px;height:17px}.auth-main{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:7vh 24px 40px;overflow-y:auto}.auth-main .auth-box{margin:0;max-width:380px;background:transparent;border:0;box-shadow:none;padding:0;animation:none}.auth-box-brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px}.auth-box-brand .wm{font-family:var(--font-space-grotesk),var(--font-inter),sans-serif;font-weight:700;font-size:26px;letter-spacing:-.02em;color:var(--text-primary)}.auth-box-brand .wm .dot{color:var(--accent-primary)}.auth-box-brand .rule{width:34px;height:2px;border-radius:999px;background:var(--accent-primary)}@media (max-width:900px){.auth-brand-panel{display:none}.auth-main{padding:24px 20px}.auth-main .auth-box{margin-block:auto}}.welcome-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 100%);display:flex;display:-moz-flex;flex-direction:column;-moz-flex-direction:column;justify-content:center;-webkit-justify-content:center;-moz-justify-content:center;align-items:center;-webkit-align-items:center;-moz-align-items:center;z-index:10000;opacity:1;transition:opacity .6s ease-out}.welcome-overlay.hidden{opacity:0;pointer-events:none}.welcome-content{text-align:center;color:var(--text-primary)}.welcome-icon{width:120px;height:120px;margin:0 auto 30px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));border-radius:30px;display:flex;display:-moz-flex;flex-direction:column;-moz-flex-direction:column;justify-content:center;-webkit-justify-content:center;-moz-justify-content:center;align-items:center;-webkit-align-items:center;-moz-align-items:center;font-size:3.5rem;color:#fff;box-shadow:0 10px 40px rgba(0,0,0,.3);will-change:transform,opacity;transform:translateZ(0);opacity:0;transform:scale(0) rotate(-180deg)}.welcome-overlay.active .welcome-icon{animation:welcomeIconAnimation 1.5s ease-out forwards!important}@keyframes welcomeIconAnimation{0%{transform:scale(0) rotate(-180deg);opacity:0}60%{transform:scale(1.1) rotate(10deg)}80%{transform:scale(.95) rotate(-5deg)}to{transform:scale(1) rotate(0deg);opacity:1}}.welcome-message{font-size:2.5rem;font-weight:700;margin-bottom:15px;color:var(--text-primary);opacity:0}.welcome-overlay.active .welcome-message{animation:fadeInUp .8s ease-out .3s forwards!important}.welcome-username{font-size:3rem;font-weight:800;background:linear-gradient(135deg,var(--accent-primary),var(--accent-light));-webkit-background-clip:text;-moz-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-moz-text-fill-color:transparent;color:transparent;margin:20px auto;opacity:0;overflow:hidden;white-space:nowrap;border-right:3px solid var(--accent-primary);max-width:fit-content;max-width:-moz-fit-content;max-width:-webkit-fit-content;width:0}.welcome-overlay.active .welcome-username{animation:typeWriter 1.5s steps(30) .8s forwards,fadeIn .5s ease-out .8s forwards!important}@keyframes typeWriter{0%{width:0}to{width:100%}}@keyframes fadeIn{to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.welcome-subtitle{font-size:1.3rem;color:var(--text-secondary);font-weight:400;opacity:0}.welcome-overlay.active .welcome-subtitle{animation:fadeInUp .8s ease-out 2.5s forwards!important}.welcome-loader{margin-top:40px;opacity:0}.welcome-overlay.active .welcome-loader{animation:fadeIn .5s ease-out 3s forwards!important}.welcome-spinner{width:60px;height:60px;margin:0 auto;border-radius:50%;position:relative;animation:spin 1.2s linear infinite}.welcome-spinner:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;border-left:4px solid transparent;border-bottom:4px solid transparent;border-top:4px solid transparent;border-top-color:var(--accent-primary);border-right:4px solid transparent;border-right-color:var(--accent-hover)}.welcome-spinner:after{content:"";position:absolute;top:8px;left:8px;right:8px;bottom:8px;border-radius:50%;border-bottom:3px solid transparent;border-right:3px solid transparent;border-top:3px solid transparent;border-top-color:var(--accent-light);border-left:3px solid transparent;border-left-color:var(--accent-light);animation:spin .8s linear infinite reverse}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.welcome-overlay.welcome-back .welcome-message{font-size:2rem}.welcome-overlay.welcome-back.active .welcome-icon{animation:welcomeBackIcon 1s ease-out forwards!important}@keyframes welcomeBackIcon{0%{transform:translateY(-100px);opacity:0}60%{transform:translateY(10px)}80%{transform:translateY(-5px)}to{transform:translateY(0);opacity:1}}.welcome-overlay.fade-out{animation:fadeOutScale .8s ease-out forwards}@keyframes fadeOutScale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}@media (max-width:768px){.welcome-content{width:100%;display:flex;display:-webkit-flex;flex-direction:column;align-items:center;-webkit-align-items:center}.welcome-icon{width:90px;height:90px;font-size:2.5rem;border-radius:22px}.welcome-message{font-size:1.8rem}.welcome-username{font-size:2rem}.welcome-subtitle{font-size:1rem;padding:0 20px}}@media (max-width:480px){.welcome-icon{width:72px;height:72px;font-size:2rem;border-radius:18px}.welcome-message{font-size:1.5rem}.welcome-username{font-size:1.5rem;margin-left:auto;margin-right:auto;text-align:center;max-width:90vw;white-space:normal;width:auto!important;border-right:none}.welcome-subtitle{font-size:.9rem}.welcome-content{width:100%;padding:0 16px;display:flex;display:-webkit-flex;flex-direction:column;align-items:center;-webkit-align-items:center}}