@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&family=IBM+Plex+Mono:wght@400;600&display=swap";.pricing-configurator{background:var(--color-bg-panel);border-radius:16px;padding:24px;width:100%;max-width:1000px;margin:0 auto;box-shadow:0 8px 32px var(--color-shadow);border:1px solid var(--color-border-light);box-sizing:border-box}.configurator-header{text-align:center;margin-bottom:24px;position:relative}.configurator-header h2{margin:0 0 8px;font-size:1.5rem;color:var(--color-text-primary)}.configurator-header p{margin:0;color:var(--color-text-secondary);font-size:.9rem}.configurator-header .close-btn{position:absolute;top:-8px;right:-8px;width:32px;height:32px;border-radius:50%;border:none;background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.configurator-header .close-btn:hover{background:var(--color-accent);color:var(--color-accent-text)}.section-label{display:block;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:12px}.presets-section{margin-bottom:24px}.presets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.preset-btn{padding:12px 8px;border:2px solid var(--color-border);border-radius:10px;background:var(--color-bg-input);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:4px}.preset-btn:hover{border-color:var(--color-accent);background:var(--color-bg-secondary)}.preset-btn.active{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-text)}.preset-name{font-weight:600;font-size:.9rem}.preset-price{font-size:.75rem;opacity:.8}.configurator-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-bottom:24px}.configurator-column-left,.configurator-column-middle,.configurator-column-right{display:flex;flex-direction:column;min-width:0}.sliders-section{margin-bottom:0;padding-bottom:0;border-bottom:none}.slider-row{margin-bottom:14px}.slider-row:last-child{margin-bottom:0}.slider-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.85rem}.slider-label span:first-child{color:var(--color-text-primary)}.slider-value{font-weight:600;color:var(--color-accent);font-family:IBM Plex Mono,monospace;font-size:.8rem;min-width:90px;text-align:right}.slider{width:100%;height:6px;border-radius:3px;background:var(--color-border);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:2px solid var(--color-bg-panel);box-shadow:0 2px 6px var(--color-shadow);-webkit-transition:transform .15s ease;transition:transform .15s ease}.slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:2px solid var(--color-bg-panel);box-shadow:0 2px 6px var(--color-shadow)}.slider-range{display:flex;justify-content:space-between;font-size:.65rem;color:var(--color-text-muted);margin-top:4px}.dropdown-row{margin-top:14px}.dropdown-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.85rem;color:var(--color-text-primary)}.retention-select{width:100%;padding:10px 12px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-input);color:var(--color-text-primary);font-size:.85rem;font-family:inherit;cursor:pointer;transition:border-color .2s}.retention-select:hover,.retention-select:focus{border-color:var(--color-accent);outline:none}.unit-price{font-size:.7rem;color:var(--color-text-muted);font-weight:400}.checkboxes-section{margin-bottom:0}.checkbox-grid{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.checkbox-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;background:var(--color-bg-input);cursor:pointer;transition:background .2s;border:1px solid transparent}.checkbox-item:hover{background:var(--color-bg-secondary);border-color:var(--color-border)}.checkbox-item input[type=checkbox]{width:16px;height:16px;margin-top:2px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.checkbox-label{display:flex;flex-direction:column;gap:2px;font-size:.8rem;color:var(--color-text-primary)}.checkbox-price{font-size:.7rem;color:var(--color-text-muted);font-family:IBM Plex Mono,monospace}.checkbox-item.disabled{opacity:.5;cursor:not-allowed}.checkbox-item.disabled input{cursor:not-allowed}.checkbox-requirement{display:block;font-size:.65rem;color:var(--color-text-muted);font-style:italic}.checkbox-price.free{color:#10b981;font-weight:600}.sla-section{margin-top:0}.sla-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:10px}.sla-options{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.sla-option{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-input);cursor:pointer;transition:all .2s;text-align:center}.sla-option:hover{border-color:var(--color-accent)}.sla-option.active{border-color:var(--color-accent);background:#1d1a1614}[data-theme=dark] .sla-option.active{background:#e8e8e81a}.sla-option input[type=radio]{display:none}.sla-option span:first-of-type{font-weight:600;font-size:.8rem}.sla-price{font-size:.65rem;color:var(--color-text-muted);font-family:IBM Plex Mono,monospace}.sms-section{margin-top:10px;padding:10px;background:var(--color-bg-secondary);border-radius:8px}.sms-section .checkbox-item{background:transparent;padding:4px 0}.sms-count-row{display:flex;align-items:center;gap:8px;margin-top:8px;padding-left:24px;flex-wrap:wrap}.sms-count-row label{font-size:.75rem;color:var(--color-text-secondary)}.sms-input{width:100px;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-input);color:var(--color-text-primary);font-size:.9rem;font-family:IBM Plex Mono,monospace}.sms-input:focus{outline:none;border-color:var(--color-accent)}.sms-total{font-size:.8rem;color:var(--color-accent);font-family:IBM Plex Mono,monospace;font-weight:600}.validation-errors{margin-bottom:16px;padding:12px;background:#dc26261a;border-radius:8px;border:1px solid rgba(220,38,38,.3)}.error-message{margin:0;padding:4px 0;font-size:.85rem;color:#dc2626}.error-message+.error-message{border-top:1px solid rgba(220,38,38,.2);margin-top:4px;padding-top:8px}.price-summary{background:var(--color-bg-secondary);border-radius:12px;padding:16px 20px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--color-border-light)}.price-breakdown{display:flex;align-items:center;gap:12px}.price-label{font-size:1rem;color:var(--color-text-secondary)}.price-amount{font-size:1.8rem;font-weight:700;color:var(--color-text-primary);font-family:IBM Plex Mono,monospace;min-width:120px}.price-period{font-size:.9rem;font-weight:400;color:var(--color-text-muted)}.configure-btn{padding:14px 32px;font-size:1rem;font-weight:600;white-space:nowrap}@media(max-width:900px)and (min-width:601px){.configurator-columns{grid-template-columns:1fr 1fr;gap:16px}.configurator-column-right{grid-column:span 2}}@media(max-width:600px){.pricing-configurator{padding:16px;border-radius:12px;max-width:100%}.presets-grid{grid-template-columns:1fr;gap:8px}.preset-btn{flex-direction:row;justify-content:space-between;padding:14px 16px}.configurator-columns{grid-template-columns:1fr;gap:20px}.sliders-section,.checkboxes-section{padding-bottom:16px;border-bottom:1px solid var(--color-border-light)}.sla-options{grid-template-columns:repeat(2,1fr);gap:6px}.sla-option{flex-direction:row;justify-content:space-between;padding:12px 14px}.sms-count-row{padding-left:0}.price-summary{flex-direction:column;text-align:center}.price-breakdown{flex-direction:column;gap:4px}.configure-btn{width:100%}.price-amount{font-size:1.5rem;min-width:auto}}.enterprise-form{background:var(--color-bg-panel);border-radius:16px;padding:24px;max-width:600px;margin:0 auto;box-shadow:0 8px 32px var(--color-shadow);border:1px solid var(--color-border-light)}.enterprise-header{text-align:center;margin-bottom:24px;position:relative}.enterprise-header h2{margin:0 0 8px;font-size:1.5rem;color:var(--color-text-primary)}.enterprise-header p{margin:0;color:var(--color-text-secondary);font-size:.9rem}.enterprise-header .close-btn{position:absolute;top:-8px;right:-8px;width:32px;height:32px;border-radius:50%;border:none;background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.enterprise-header .close-btn:hover{background:var(--color-accent);color:var(--color-accent-text)}.enterprise-form form{display:flex;flex-direction:column;gap:16px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row.two-col{flex-direction:row;gap:16px}.form-row.two-col>label{flex:1}.enterprise-form label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--color-text-primary)}.enterprise-form input,.enterprise-form textarea,.enterprise-form select{padding:12px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-input);color:var(--color-text-primary);font-size:.95rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}.enterprise-form input:focus,.enterprise-form textarea:focus,.enterprise-form select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #1d1a161a}[data-theme=dark] .enterprise-form input:focus,[data-theme=dark] .enterprise-form textarea:focus,[data-theme=dark] .enterprise-form select:focus{box-shadow:0 0 0 3px #e8e8e81a}.enterprise-form textarea{resize:vertical;min-height:100px}.enterprise-form select{cursor:pointer}.contact-preference{margin-top:8px}.radio-group{display:flex;gap:8px;margin-top:8px}.radio-group label{flex:1;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-input);cursor:pointer;transition:all .2s;font-size:.85rem}.radio-group label:hover{border-color:var(--color-accent)}.radio-group label.active{border-color:var(--color-accent);background:#1d1a1614}[data-theme=dark] .radio-group label.active{background:#e8e8e81a}.radio-group input[type=radio]{display:none}.submit-btn{margin-top:8px;padding:14px;font-size:1rem;font-weight:600}.enterprise-form .error{color:#dc2626;font-size:.9rem;padding:10px 14px;background:#dc26261a;border-radius:8px;margin:0}.enterprise-success{text-align:center;padding:40px 20px}.success-icon{width:64px;height:64px;margin:0 auto 20px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.enterprise-success h2{margin:0 0 12px;color:var(--color-text-primary)}.enterprise-success p{margin:0 0 24px;color:var(--color-text-secondary)}@media(max-width:768px){.enterprise-form{padding:16px}.form-row.two-col{flex-direction:column;gap:16px}.radio-group{flex-direction:column;gap:6px}.radio-group label{justify-content:flex-start;padding:12px 16px}}.pricing-grid{display:grid;gap:20px;grid-template-columns:repeat(4,minmax(0,1fr))}.pricing-grid--consumer{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1099px){.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pricing-grid--consumer{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:859px){.pricing-grid,.pricing-grid--consumer{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:539px){.pricing-grid,.pricing-grid--consumer{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.pricing-card{background:var(--color-bg-card, var(--color-bg-secondary));border:2px solid var(--color-border);border-radius:20px;padding:clamp(14px,2vw,24px);display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .08));min-width:0}.pricing-card--featured{border-color:var(--color-accent);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .1))}@media(max-width:539px){.pricing-card{border-width:1px;border-radius:12px;gap:8px}}.track-panel{animation:track-in .42s cubic-bezier(.16,1,.3,1) backwards}@keyframes track-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.pricing-card.reveal{animation:track-in .42s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--i, 0) * 45ms)}@media(prefers-reduced-motion:reduce){.track-panel,.pricing-card.reveal{animation:none}}.fullscreen-trigger-btn{position:absolute;top:.5rem;right:.5rem;padding:.5rem .75rem;background:#ffffff14;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:10px;cursor:pointer;font-size:1rem;color:var(--color-text);transition:all .25s cubic-bezier(.4,0,.2,1);z-index:10}.fullscreen-trigger-btn:hover{background:var(--color-accent);color:#fff;transform:scale(1.08);box-shadow:0 4px 16px #6366f14d}.fullscreen-trigger-btn:active{transform:scale(.95)}.fullscreen-chart-overlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;overflow:hidden;background:#0a0a1a;background-image:radial-gradient(ellipse 80% 50% at 20% 40%,rgba(99,102,241,.15) 0%,transparent 60%),radial-gradient(ellipse 60% 80% at 80% 20%,rgba(139,92,246,.12) 0%,transparent 55%),radial-gradient(ellipse 70% 60% at 50% 90%,rgba(16,185,129,.08) 0%,transparent 50%),radial-gradient(ellipse 50% 40% at 90% 70%,rgba(245,158,11,.06) 0%,transparent 50%),linear-gradient(135deg,#0f0c29,#1a1a3e 40%,#24243e,#0f0c29);animation:fs-enter .35s cubic-bezier(.34,1.56,.64,1) forwards}.fullscreen-chart-overlay:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 40%,rgba(99,102,241,.08) 0%,transparent 40%),radial-gradient(circle at 70% 60%,rgba(139,92,246,.06) 0%,transparent 35%);animation:fs-ambient 20s ease-in-out infinite alternate;pointer-events:none;z-index:0}@keyframes fs-enter{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes fs-ambient{0%{transform:translate(0) rotate(0)}33%{transform:translate(2%,-1%) rotate(1deg)}66%{transform:translate(-1%,2%) rotate(-.5deg)}to{transform:translate(1%,-2%) rotate(.5deg)}}.fullscreen-chart-overlay.fs-exiting{animation:fs-exit .25s cubic-bezier(.4,0,1,1) forwards}@keyframes fs-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.fs-close-btn{position:absolute;top:16px;right:16px;z-index:100;display:flex;align-items:center;gap:6px;padding:10px 18px;background:#ffffff14;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:24px;color:#ffffffd9;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);animation:fs-close-in .4s .15s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 2px 12px #0000004d,inset 0 1px #ffffff0d}.fs-close-btn:before{content:"";position:absolute;inset:-2px;border-radius:26px;background:linear-gradient(135deg,rgba(99,102,241,.3),rgba(139,92,246,.1),transparent);z-index:-1;opacity:0;transition:opacity .3s;animation:fs-close-glow 3s ease-in-out infinite alternate}@keyframes fs-close-glow{0%{opacity:.3}to{opacity:.6}}@keyframes fs-close-in{0%{opacity:0;transform:translateY(-12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.fs-close-btn:hover{background:#ffffff26;border-color:#fff3;transform:scale(1.05);box-shadow:0 4px 20px #0006,0 0 20px #6366f126}.fs-close-btn:hover:before{opacity:.8}.fs-close-btn:active{transform:scale(.95);background:#fff3}.fs-close-icon{font-size:1rem;line-height:1;opacity:.7}.fs-value-badges{position:relative;z-index:10;display:flex;gap:8px;padding:56px 16px 8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0}.fs-value-badges::-webkit-scrollbar{display:none}.fs-badge{display:flex;align-items:center;gap:6px;padding:6px 14px;background:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:20px;white-space:nowrap;flex-shrink:0;animation:fs-badge-in .35s cubic-bezier(.34,1.56,.64,1) both}.fs-badge:nth-child(1){animation-delay:.1s}.fs-badge:nth-child(2){animation-delay:.15s}.fs-badge:nth-child(3){animation-delay:.2s}.fs-badge:nth-child(4){animation-delay:.25s}.fs-badge:nth-child(5){animation-delay:.3s}.fs-badge:nth-child(6){animation-delay:.35s}.fs-badge:nth-child(7){animation-delay:.4s}@keyframes fs-badge-in{0%{opacity:0;transform:translateY(-10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.fs-badge-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.fs-badge-label{font-size:.7rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.fs-badge-value{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.fs-badge-unit{font-size:.65rem;color:#fff6}.fs-badge-hidden{opacity:.35;border-style:dashed}.fs-badge-hidden .fs-badge-dot{box-shadow:none}.fs-badge:hover{background:#ffffff1f;border-color:#ffffff26}.fs-badge:active{transform:scale(.95)}.fs-time-range{position:relative;z-index:10;display:flex;gap:4px;padding:0 16px 6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;flex-shrink:0}.fs-time-range::-webkit-scrollbar{display:none}.fs-time-btn{padding:4px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#ffffff80;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s ease}.fs-time-btn:hover{background:#ffffff1a;color:#fffc}.fs-time-btn-active{background:#6366f14d;border-color:#6366f180;color:#fff;box-shadow:0 0 10px #6366f133}.fullscreen-chart-content{position:relative;z-index:1;flex:1;padding:.5rem 1rem 1rem;min-height:0;overflow:hidden;display:flex;flex-direction:column}.fullscreen-chart-content>*{width:100%;height:100%;max-width:100%;max-height:100%}.fullscreen-chart-content .recharts-line-curve{animation:fs-line-draw 1.2s ease-out forwards}@keyframes fs-line-draw{0%{stroke-dasharray:2000;stroke-dashoffset:2000}to{stroke-dasharray:2000;stroke-dashoffset:0}}.fullscreen-chart-content .recharts-cartesian-grid line{animation:fs-grid-in .6s ease-out both}@keyframes fs-grid-in{0%{opacity:0}to{opacity:.3}}.fullscreen-chart-content .recharts-responsive-container,.fullscreen-chart-content .recharts-wrapper{width:100%!important;height:100%!important}@media(min-width:769px){.fs-value-badges{padding:16px 80px 8px 16px;justify-content:flex-start}.fs-close-btn{top:14px;right:20px}.fullscreen-chart-content{padding:.5rem 2rem 1.5rem}}@media(max-width:768px){.fs-close-btn{top:8px;right:8px;padding:10px 16px;min-width:44px;min-height:44px}.fs-value-badges{padding:48px 10px 4px;gap:6px}.fs-badge{padding:4px 10px}.fs-badge-value{font-size:.85rem}.fullscreen-chart-content{padding:.25rem .5rem .5rem}}@media(max-width:768px)and (orientation:landscape){.fs-close-btn{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}.fs-value-badges{padding-top:max(48px,calc(env(safe-area-inset-top) + 40px));padding-left:max(8px,env(safe-area-inset-left))}.fullscreen-chart-content{padding:.25rem;padding-left:max(.5rem,env(safe-area-inset-left));padding-right:max(.5rem,env(safe-area-inset-right));padding-bottom:max(.25rem,env(safe-area-inset-bottom))}}@media(prefers-color-scheme:dark){.fullscreen-trigger-btn{background:#1e1e1ecc}}.fullscreen-chart-header{display:none}.chart-with-table-widget{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;min-height:500px;display:flex;flex-direction:column}.chart-with-table-widget:fullscreen,.chart-with-table-widget:-webkit-full-screen,.chart-with-table-widget:-moz-full-screen{width:100%;height:100%;min-height:100%;max-height:100%;background:var(--color-surface, #fff);padding:1rem;border:none;border-radius:0;overflow:hidden;display:flex;flex-direction:column}.chart-with-table-widget:fullscreen .widget-content,.chart-with-table-widget:-webkit-full-screen .widget-content,.chart-with-table-widget:-moz-full-screen .widget-content{flex:1;overflow:hidden;height:calc(100vh - 80px)}.chart-with-table-widget:fullscreen .chart-view-container,.chart-with-table-widget:-webkit-full-screen .chart-view-container,.chart-with-table-widget:-moz-full-screen .chart-view-container{height:100%!important;min-height:0!important;flex:1}.chart-with-table-widget .widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap;flex-shrink:0}.chart-with-table-widget .widget-title-section h3{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:var(--color-text)}.chart-with-table-widget .device-name{font-size:.875rem;color:var(--color-text-secondary)}.chart-with-table-widget .widget-controls{display:flex;gap:.5rem;align-items:center}.chart-with-table-widget .view-toggle{display:flex;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.chart-with-table-widget .toggle-btn{padding:.5rem 1rem;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;white-space:nowrap}.chart-with-table-widget .toggle-btn:hover{background:var(--color-surface);color:var(--color-text)}.chart-with-table-widget .toggle-btn.active{background:var(--color-accent);color:#fff}.chart-with-table-widget .refresh-btn{padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);cursor:pointer;font-size:1rem;transition:all .2s}.chart-with-table-widget .refresh-btn:hover:not(:disabled){background:var(--color-background);transform:rotate(90deg)}.chart-with-table-widget .refresh-btn:disabled{opacity:.5;cursor:not-allowed}.chart-with-table-widget .widget-content{flex:1;display:flex;flex-direction:column}.chart-loading{display:flex;justify-content:center;align-items:center;height:400px;color:var(--color-text-secondary);font-size:1.125rem}.chart-error{display:flex;flex-direction:column;justify-content:center;align-items:center;height:400px;color:#ef4444;text-align:center;gap:1rem}.chart-error .btn-retry{padding:.5rem 1.5rem;background:#ef4444;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:background .2s}.chart-error .btn-retry:hover{background:#dc2626}.chart-empty{display:flex;justify-content:center;align-items:center;height:400px;color:var(--color-text-secondary);font-style:italic}.chart-view-container{flex:1;display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-height:0;overflow:hidden}.chart-view-absolute{position:absolute;top:0;left:0;width:100%;height:100%}.table-view{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%;min-height:0}.table-container{flex:1;overflow:auto;border:1px solid var(--color-border);border-radius:8px;height:100%}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{background:var(--color-background);color:var(--color-text);font-weight:600;padding:.75rem 1rem;text-align:left;position:sticky;top:0;z-index:10;border-bottom:2px solid var(--color-border)}.data-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}.data-table tr:hover{background:var(--color-background-hover, rgba(0, 0, 0, .02))}.table-info{margin-top:1rem;color:var(--color-text-secondary);font-size:.875rem;text-align:right}.recharts-default-tooltip{border-radius:8px!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important;background-color:var(--color-surface)!important;border:1px solid var(--color-border)!important}.recharts-tooltip-item{padding-top:2px!important;padding-bottom:2px!important}.spin-animation{display:inline-block;animation:spin 1s linear infinite}.chart-stats{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 0 0}.chart-stats .stat-card{flex:1;min-width:120px;background:var(--color-bg-secondary, rgba(255,255,255,.05));border:1px solid var(--color-border);border-radius:8px;padding:.5rem .75rem}.chart-stats .stat-header{margin-bottom:.25rem}.chart-stats .stat-key{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.chart-stats .stat-values{display:flex;flex-wrap:wrap;gap:.25rem .75rem}.chart-stats .stat-item{display:flex;gap:.25rem;font-size:.75rem}.chart-stats .stat-label{color:var(--color-text-secondary)}.chart-stats .stat-value{color:var(--color-text);font-weight:600}.chart-value-badges,.chart-stats-mobile{display:none}@media(max-width:768px){.chart-with-table-widget{padding:.75rem;min-height:350px;border-radius:16px;animation:chart-widget-in .4s cubic-bezier(.4,0,.2,1)}.chart-view-container{min-height:260px;height:300px}@keyframes chart-widget-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.chart-with-table-widget .widget-header{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:.75rem}.chart-with-table-widget .widget-title-section h3{font-size:1.1rem}.chart-with-table-widget .device-name{font-size:.85rem}.chart-with-table-widget .widget-controls{justify-content:space-between;width:100%}.chart-with-table-widget .view-toggle{flex:1;border-radius:12px}.chart-with-table-widget .toggle-btn{padding:.75rem;font-size:.85rem;min-height:48px;flex:1;text-align:center;transition:transform .15s cubic-bezier(.4,0,.2,1),background .15s}.chart-with-table-widget .toggle-btn:active:not(.active){transform:scale(.97)}.chart-with-table-widget .refresh-btn{padding:.75rem;min-height:48px;min-width:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:transform .15s cubic-bezier(.4,0,.2,1)}.chart-with-table-widget .refresh-btn:active:not(:disabled){transform:scale(.9) rotate(45deg)}.chart-value-badges{display:flex;gap:6px;padding:0 0 6px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.chart-value-badges::-webkit-scrollbar{display:none}.value-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:20px;white-space:nowrap;flex-shrink:0;transition:transform .15s ease,opacity .15s ease}.value-badge:active{transform:scale(.95)}.value-badge-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.value-badge-label{font-size:.65rem;color:#fff9;text-transform:uppercase;letter-spacing:.3px;font-weight:500}.value-badge-value{font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums}.value-badge-unit{font-size:.6rem;color:#ffffff80;font-weight:400}.chart-stats{display:none!important}.chart-stats-mobile{display:flex;gap:8px;padding:8px 0 0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.chart-stats-mobile::-webkit-scrollbar{display:none}.stat-pill{flex-shrink:0;min-width:110px;background:var(--color-bg-secondary, rgba(255,255,255,.05));border:1px solid var(--color-border);border-radius:12px;padding:8px 12px;display:flex;flex-direction:column;gap:2px}.stat-pill-header{display:flex;align-items:center;gap:4px}.stat-pill-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.stat-pill-name{font-size:.65rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;font-weight:600}.stat-pill-current{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.stat-pill-range{display:flex;gap:6px;font-size:.6rem;color:var(--color-text-secondary)}.stat-pill-range span{opacity:.7}.table-container{border-radius:12px;-webkit-overflow-scrolling:touch}.data-table{font-size:.85rem}.data-table th,.data-table td{padding:.625rem .875rem}.table-info{font-size:.8rem;text-align:center;padding:.75rem 0}.chart-loading,.chart-error,.chart-empty{height:280px;font-size:1rem}.chart-error .btn-retry{padding:.75rem 1.5rem;min-height:48px;border-radius:12px;transition:transform .15s cubic-bezier(.4,0,.2,1)}.chart-error .btn-retry:active{transform:scale(.96)}.chart-view-container{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.chart-with-table-widget .fullscreen-mobile-btn{background:var(--color-accent)!important;color:#fff!important;border-radius:12px!important;min-width:48px!important;min-height:48px!important;font-size:1.2rem!important;border:none!important;box-shadow:0 2px 8px #6366f14d}.chart-with-table-widget .fullscreen-mobile-btn:active{transform:scale(.92);box-shadow:0 1px 4px #6366f133}}@media(max-width:375px){.chart-with-table-widget{padding:.5rem}.chart-with-table-widget .widget-title-section h3{font-size:1rem}.chart-with-table-widget .toggle-btn{padding:.5rem;font-size:.75rem}.data-table{font-size:.75rem}.data-table th,.data-table td{padding:.4rem .5rem}.chart-loading,.chart-error,.chart-empty{height:200px}.value-badge{padding:3px 8px}.value-badge-value{font-size:.75rem}.stat-pill{min-width:95px;padding:6px 10px}.stat-pill-current{font-size:.95rem}}@media(max-width:768px)and (orientation:landscape){.chart-with-table-widget .widget-header{flex-direction:row;align-items:center}.chart-with-table-widget .widget-controls{width:auto}.chart-loading,.chart-error,.chart-empty{height:180px}.chart-view-container{height:220px;min-height:200px}}.chart-widget{background:var(--color-bg-card);border:1px solid var(--color-border-light);border-radius:16px;padding:16px;position:relative;min-height:300px;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chart-widget-circle{border-radius:50%;aspect-ratio:1;overflow:hidden}.chart-widget-rounded{border-radius:32px}.chart-widget-pill{border-radius:9999px;min-height:200px}.chart-widget-title{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px;padding-left:4px}.chart-container{flex:1;min-height:200px;display:flex;align-items:center;justify-content:center}.chart-loading,.chart-error,.chart-empty{color:var(--color-text-secondary);font-size:14px}.chart-error{color:#fc8181}.chart-overlay{position:absolute;z-index:10;display:flex;flex-direction:column;align-items:center;background:#0009;border-radius:8px;padding:8px 12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay-top-left{top:16px;left:16px}.overlay-top-right{top:16px;right:16px}.overlay-center{top:50%;left:50%;transform:translate(-50%,-50%)}.overlay-bottom{bottom:16px;left:50%;transform:translate(-50%)}.overlay-small .overlay-value{font-size:18px}.overlay-medium .overlay-value{font-size:28px}.overlay-large .overlay-value{font-size:42px}.overlay-value{font-weight:700;color:var(--color-accent-text);line-height:1.2}.overlay-label{font-size:11px;color:var(--color-text-secondary);margin-top:2px}.recharts-legend-item-text{color:var(--color-text-secondary)!important;font-size:12px}.recharts-tooltip-label{color:var(--color-text-primary)!important;font-weight:600}.chart-time-controls{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:0 4px}.chart-period-selector{display:flex;gap:4px;background:#ffffff0d;padding:4px;border-radius:8px}.period-btn{padding:4px 10px;font-size:11px;font-weight:600;color:var(--color-text-secondary);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.period-btn:hover{color:var(--color-text-primary);background:#ffffff1a}.period-btn.active{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f666}.realtime-btn{padding:4px 10px;font-size:11px;font-weight:600;color:var(--color-text-secondary);background:#ffffff0d;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.realtime-btn:hover{background:#ffffff1a}.realtime-btn.active{color:#22c55e;background:#22c55e26;box-shadow:0 0 12px #22c55e4d}.chart-last-updated{margin-left:auto;font-size:10px;color:var(--color-text-muted);font-family:Courier New,monospace}@media(max-width:768px){.chart-widget{padding:12px;min-height:250px;border-radius:12px}.chart-widget-title{font-size:13px;margin-bottom:8px}.chart-container{min-height:180px}.chart-overlay{padding:6px 10px}.overlay-top-left{top:10px;left:10px}.overlay-top-right{top:10px;right:10px}.overlay-bottom{bottom:10px}.overlay-small .overlay-value{font-size:16px}.overlay-medium .overlay-value{font-size:22px}.overlay-large .overlay-value{font-size:32px}.overlay-label{font-size:10px}.chart-time-controls{gap:8px;margin-bottom:8px;flex-wrap:wrap}.chart-period-selector{gap:2px;padding:3px}.period-btn{padding:6px 8px;font-size:10px;min-height:32px;min-width:32px}.realtime-btn{padding:6px 8px;font-size:10px;min-height:32px}.chart-last-updated{font-size:9px;width:100%;text-align:center;margin-top:4px}}@media(max-width:375px){.chart-widget{padding:10px;min-height:220px;border-radius:10px}.chart-container{min-height:150px}.overlay-small .overlay-value{font-size:14px}.overlay-medium .overlay-value{font-size:18px}.overlay-large .overlay-value{font-size:26px}.chart-period-selector{width:100%;justify-content:center}.period-btn{flex:1;padding:8px 4px;min-height:36px}}.floorplan-viewer{display:flex;flex-direction:column;background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border);overflow:hidden}.floorplan-viewer.fullscreen{position:fixed;inset:0;z-index:1000;border-radius:0;background:#0a0a0f}.floorplan-viewer-loading,.floorplan-viewer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--color-text-secondary);gap:1rem}.btn-link{color:var(--color-accent);text-decoration:underline}.viewer-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-border);background:#0003}.viewer-info h3{margin:0;font-size:1rem;font-weight:600}.last-update{font-size:.75rem;color:var(--color-text-secondary)}.viewer-actions{display:flex;gap:.5rem}.viewer-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.8rem;cursor:pointer;transition:all .2s}.viewer-btn:hover{background:var(--color-bg-hover);border-color:var(--color-accent)}.viewer-canvas-container{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;min-height:400px}.fullscreen .viewer-canvas-container{min-height:calc(100vh - 100px)}.viewer-legend{display:flex;justify-content:center;gap:1.5rem;padding:.75rem;border-top:1px solid var(--color-border);background:#0003}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-secondary)}.legend-item .dot{width:12px;height:12px;border-radius:50%}.legend-item .dot.cold{background:#3b82f6}.legend-item .dot.normal{background:#10b981}.legend-item .dot.hot{background:#ef4444}.legend-hint{margin-left:auto;font-size:.75rem;color:var(--color-text-secondary)}.comfort-legend{flex-wrap:wrap;gap:1rem}.comfort-legend .ring{width:16px;height:16px;border-radius:50%;border:3px solid}.comfort-legend .ring.co2,.comfort-legend .ring.temp{border-color:#10b981}.comfort-legend .ring.humidity{border-color:#8b5cf6}.legend-divider{width:1px;height:16px;background:var(--color-border)}.sensor-chart-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1100;padding:2rem}.sensor-chart-content{background:var(--color-bg-secondary);border-radius:16px;border:1px solid var(--color-border);width:100%;max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.sensor-chart-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border)}.sensor-chart-header h3{margin:0;font-size:1.1rem}.close-btn{width:36px;height:36px;background:transparent;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}.sensor-chart-body{flex:1;padding:1rem;overflow:auto;min-height:400px}@media(max-width:768px){.floorplan-viewer{border-radius:16px;animation:viewer-fade-in .4s cubic-bezier(.4,0,.2,1)}@keyframes viewer-fade-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.viewer-header{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem}.viewer-info h3{font-size:1rem}.last-update{font-size:.75rem}.viewer-actions{gap:.5rem}.viewer-btn{padding:.625rem;min-height:48px;min-width:48px;font-size:.8rem;justify-content:center;border-radius:12px;transition:transform .15s cubic-bezier(.4,0,.2,1)}.viewer-btn:active{transform:scale(.94)}.viewer-btn span:last-child{display:none}.viewer-canvas-container{padding:.75rem;min-height:300px;touch-action:pan-x pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.viewer-legend{padding:.625rem .75rem;gap:.875rem;flex-wrap:wrap;justify-content:center}.legend-item{font-size:.75rem;gap:.5rem}.legend-item .dot{width:12px;height:12px}.comfort-legend{gap:.625rem}.comfort-legend .ring{width:16px;height:16px;border-width:3px}.legend-hint{width:100%;text-align:center;margin-left:0;font-size:.75rem;padding-top:.5rem}.sensor-chart-modal{padding:0;align-items:flex-end;background:#0000;animation:modal-overlay-in .3s forwards}@keyframes modal-overlay-in{to{background:#000000b3}}.sensor-chart-content{border-radius:20px 20px 0 0;max-width:100%;max-height:90vh;height:auto;animation:chart-slide-up .35s cubic-bezier(.4,0,.2,1)}@keyframes chart-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sensor-chart-content:before{content:"";display:block;width:36px;height:4px;background:var(--color-border);border-radius:2px;margin:12px auto 4px}.sensor-chart-header{padding:.5rem 1rem .75rem}.sensor-chart-header h3{font-size:1.1rem}.close-btn{width:44px;height:44px;border-radius:12px;transition:transform .15s cubic-bezier(.4,0,.2,1)}.close-btn:active{transform:scale(.9)}.sensor-chart-body{padding:.75rem 1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0));min-height:350px;max-height:calc(90vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}}@media(max-width:375px){.viewer-header{padding:.5rem}.viewer-info h3{font-size:.85rem}.viewer-btn{padding:.375rem}.viewer-canvas-container{min-height:240px;padding:.25rem}.viewer-legend{padding:.375rem;gap:.5rem}.legend-item{font-size:.65rem}}@media(max-width:768px){.floorplan-viewer.fullscreen{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.fullscreen .viewer-canvas-container{min-height:calc(100vh - 120px)}}@media(max-width:768px)and (orientation:landscape){.viewer-canvas-container{min-height:200px}.fullscreen .viewer-canvas-container{min-height:calc(100vh - 80px)}.viewer-legend{padding:.375rem}}.ring-metric-picker{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px}.ring-metric-picker-label{font-size:.8rem;font-weight:600;color:var(--color-text-secondary, #9ca3af)}.ring-metric-picker-label small{opacity:.7;font-weight:400}.ring-metric-hint{color:#f59e0b;opacity:.9!important}.ring-metric-chips{display:flex;flex-wrap:wrap;gap:.375rem}.ring-metric-chip{padding:.25rem .625rem;font-size:.78rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:transparent;color:var(--color-text-secondary, #9ca3af);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.ring-metric-chip:hover:not(:disabled){background:#ffffff0f}.ring-metric-chip.active{background:#0ea5e91f;font-weight:600}.ring-metric-chip:disabled{opacity:.4;cursor:not-allowed}.command-palette-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;animation:fadeIn .15s ease-out}.command-palette{width:100%;max-width:560px;background:var(--color-bg-primary);border-radius:12px;box-shadow:0 0 0 1px var(--color-border),0 16px 70px #0006;overflow:hidden;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.command-palette-input-wrapper{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border);gap:12px}.command-palette-icon{font-size:18px;opacity:.5}.command-palette-input{flex:1;border:none;background:transparent;font-size:16px;color:var(--color-text-primary);outline:none}.command-palette-input::-moz-placeholder{color:var(--color-text-secondary)}.command-palette-input::placeholder{color:var(--color-text-secondary)}.command-palette-shortcut{background:var(--color-bg-secondary);color:var(--color-text-secondary);padding:2px 6px;border-radius:4px;font-size:11px;font-family:inherit;border:1px solid var(--color-border)}.command-palette-list{max-height:400px;overflow-y:auto;padding:8px}.command-palette-empty{padding:24px;text-align:center;color:var(--color-text-secondary)}.command-palette-section{margin-bottom:8px}.command-palette-section:last-child{margin-bottom:0}.command-palette-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);padding:8px 8px 4px}.command-palette-item{display:flex;align-items:center;padding:10px 12px;border-radius:8px;cursor:pointer;gap:12px;transition:background .1s}.command-palette-item:hover,.command-palette-item.selected{background:var(--color-bg-secondary)}.command-palette-item.selected{background:var(--color-accent);color:#fff}.command-palette-item.selected .command-palette-item-path{color:#ffffffb3}.command-palette-item-icon{font-size:18px;width:24px;text-align:center}.command-palette-item-label{flex:1;font-size:14px;font-weight:500}.command-palette-item-path{font-size:12px;color:var(--color-text-secondary);font-family:monospace}.command-palette-footer{display:flex;gap:16px;padding:10px 16px;border-top:1px solid var(--color-border);background:var(--color-bg-secondary);font-size:12px;color:var(--color-text-secondary)}.command-palette-footer kbd{background:var(--color-bg-primary);padding:2px 5px;border-radius:3px;font-size:11px;font-family:inherit;border:1px solid var(--color-border);margin-right:4px}@media(max-width:640px){.command-palette-overlay{padding-top:10vh;padding-left:16px;padding-right:16px}.command-palette{max-width:100%}.command-palette-footer{display:none}}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;animation:fadeIn .3s ease}.loading-screen.small{padding:8px}.loading-screen.small .loading-logo{width:32px;height:32px}.loading-screen.medium{padding:24px;min-height:120px}.loading-screen.medium .loading-logo{width:64px;height:64px}.loading-screen.large{padding:48px;min-height:200px}.loading-screen.large .loading-logo{width:120px;height:120px}.loading-screen.fullscreen{position:fixed;inset:0;z-index:9999}.loading-screen.dark{background:linear-gradient(135deg,#0f172a,#1e293b);color:#94a3b8}.loading-screen.light{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:#475569}.loading-logo-container{position:relative;display:flex;align-items:center;justify-content:center}.loading-logo{position:relative;z-index:2;animation:logoPulse 2s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(59,130,246,.3))}.loading-pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;border:2px solid rgba(59,130,246,.5);animation:ringPulse 1.5s ease-out infinite}.loading-message{font-size:14px;font-weight:500;opacity:.8;animation:textFade 1.5s ease-in-out infinite}.loading-screen.small .loading-message{font-size:12px}.loading-screen.large .loading-message{font-size:18px}.loading-spinner-mini{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.loading-spinner-mini .spinner-logo{width:20px;height:20px;animation:spin 1.5s linear infinite}.loading-spinner-mini.dark .spinner-logo{filter:brightness(1)}.loading-spinner-mini.light .spinner-logo{filter:brightness(.8)}@keyframes logoPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@keyframes ringPulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.6}to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}@keyframes textFade{0%,to{opacity:.8}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.loading-screen.large .loading-logo{width:80px;height:80px}.loading-screen.large .loading-message{font-size:16px}}.admin-layout{display:flex;min-height:100vh;background:var(--color-bg)}.admin-main{flex:1;padding:2rem;margin-left:260px;overflow-y:auto;transition:margin-left .3s ease}.admin-mobile-menu-btn{display:none;position:fixed;top:1rem;left:1rem;z-index:100;background:var(--color-card);border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem;font-size:1.25rem;cursor:pointer;box-shadow:0 2px 8px #0000001a}.admin-loading,.admin-page-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;color:var(--color-text-secondary)}.loader-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.admin-login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-card) 100%);padding:1rem}.admin-login-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;padding:2rem;width:100%;max-width:400px;box-shadow:0 8px 32px #0000001a}.admin-login-header{text-align:center;margin-bottom:2rem}.admin-login-header h1{font-size:1.5rem;margin:0 0 .5rem;color:var(--color-text)}.admin-login-header p{color:var(--color-text-secondary);margin:0}.admin-login-form{display:flex;flex-direction:column;gap:1rem}.admin-login-form label{display:flex;flex-direction:column;gap:.5rem;color:var(--color-text-secondary);font-size:.9rem}.admin-login-form input{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-size:1rem}.admin-login-form input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.1)}.admin-login-btn{padding:.875rem 1.5rem;background:var(--color-accent);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.admin-login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-accent-rgb),.3)}.admin-login-btn:disabled{opacity:.6;cursor:not-allowed}.admin-login-status{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:rgba(var(--color-accent-rgb),.1);border-radius:8px;color:var(--color-accent);font-size:.9rem}.admin-login-error{padding:.75rem 1rem;background:#ef44441a;border-radius:8px;color:#ef4444;font-size:.9rem}.admin-page{max-width:1400px;margin:0 auto}.admin-page-header{margin-bottom:2rem}.admin-page-header h1{font-size:1.75rem;margin:0 0 .5rem;color:var(--color-text)}.admin-page-header p{color:var(--color-text-secondary);margin:0}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.admin-stat-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.admin-stat-icon{font-size:2rem;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-accent-rgb),.1);border-radius:12px}.admin-stat-content h3{font-size:1.75rem;margin:0;color:var(--color-text)}.admin-stat-content p{margin:0;color:var(--color-text-secondary);font-size:.9rem}.admin-quick-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.admin-quick-action{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-card);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);text-decoration:none;font-size:.9rem;cursor:pointer;transition:all .2s ease}.admin-quick-action:hover{border-color:var(--color-accent);color:var(--color-accent)}.admin-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.admin-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.admin-card-header h2{font-size:1.25rem;margin:0;color:var(--color-text)}.admin-card-actions{display:flex;gap:.5rem}.admin-table-container{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th{background:rgba(var(--color-accent-rgb),.05);font-weight:600;color:var(--color-text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.admin-table tbody tr:hover{background:rgba(var(--color-accent-rgb),.02)}.admin-table td{color:var(--color-text)}.admin-form{display:flex;flex-direction:column;gap:1.25rem}.admin-form-group{display:flex;flex-direction:column;gap:.5rem}.admin-form-group label{font-weight:500;color:var(--color-text);font-size:.9rem}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-size:1rem}.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{outline:none;border-color:var(--color-accent)}.admin-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.admin-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.admin-btn-primary{background:var(--color-accent);color:#fff}.admin-btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.admin-btn-secondary{background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text)}.admin-btn-secondary:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.admin-btn-danger{background:#ef4444;color:#fff}.admin-btn-danger:hover:not(:disabled){background:#dc2626}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600}.admin-badge-success{background:#22c55e1a;color:#22c55e}.admin-badge-warning{background:#f59e0b1a;color:#f59e0b}.admin-badge-danger{background:#ef44441a;color:#ef4444}.admin-badge-info{background:#3b82f61a;color:#3b82f6}.admin-empty-state{text-align:center;padding:3rem 2rem;color:var(--color-text-secondary)}.admin-empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.admin-empty-state h3{margin:0 0 .5rem;color:var(--color-text)}.admin-empty-state p{margin:0 0 1.5rem}.admin-message{padding:.875rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.admin-message-success{background:#22c55e1a;color:#22c55e}.admin-message-error{background:#ef44441a;color:#ef4444}.admin-message-info{background:#3b82f61a;color:#3b82f6}@media(max-width:768px){.admin-main{margin-left:0;padding:4rem 1rem 1rem}.admin-mobile-menu-btn{display:block}.admin-stats-grid,.admin-form-row{grid-template-columns:1fr}.admin-table th,.admin-table td{padding:.625rem .75rem;font-size:.85rem}.admin-card{padding:1rem}}.sidebar.collapsed+.admin-main{margin-left:64px}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-2{left:.5rem}.right-0{right:0}.right-1{right:.25rem}.right-1\/2{right:50%}.top-0{top:0}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-1{grid-column:span 1 / span 1}.col-span-10{grid-column:span 10 / span 10}.col-span-11{grid-column:span 11 / span 11}.col-span-12{grid-column:span 12 / span 12}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-4{grid-column:span 4 / span 4}.col-span-5{grid-column:span 5 / span 5}.col-span-6{grid-column:span 6 / span 6}.col-span-7{grid-column:span 7 / span 7}.col-span-8{grid-column:span 8 / span 8}.col-span-9{grid-column:span 9 / span 9}.mx-2\.5{margin-left:.625rem;margin-right:.625rem}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.-mb-px{margin-bottom:-1px}.-ml-0{margin-left:-0px}.-ml-0\.5{margin-left:-.125rem}.-ml-1{margin-left:-.25rem}.-ml-1\.5{margin-left:-.375rem}.-ml-px{margin-left:-1px}.-mr-1{margin-right:-.25rem}.mb-0{margin-bottom:0}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-px{margin-left:1px}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-10{margin-right:2.5rem}.mr-2{margin-right:.5rem}.mr-2\.5{margin-right:.625rem}.mr-20{margin-right:5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.mr-8{margin-right:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.size-3\.5{width:.875rem;height:.875rem}.h-0{height:0px}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-full{height:100%}.max-h-\[228px\]{max-height:228px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-1{width:.25rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-\[90\%\]{width:90%}.w-\[var\(--button-width\)\]{width:var(--button-width)}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-screen{width:100vw}.min-w-44{min-width:11rem}.min-w-\[10rem\]{min-width:10rem}.min-w-min{min-width:-moz-min-content;min-width:min-content}.max-w-2xl{max-width:42rem}.max-w-5xl{max-width:64rem}.max-w-\[100px\]{max-width:100px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-4{--tw-translate-y: -1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.snap-mandatory{--tw-scroll-snap-strictness: mandatory}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.grid-cols-none{grid-template-columns:none}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.space-x-0\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.125rem * var(--tw-space-x-reverse));margin-left:calc(.125rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.375rem * var(--tw-space-x-reverse));margin-left:calc(.375rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-tremor-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-x-clip{overflow-x:clip}.overflow-x-scroll{overflow-x:scroll}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.\!rounded-none{border-radius:0!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[1px\]{border-radius:1px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-4{border-bottom-width:4px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-r-4{border-right-width:4px}.border-t-4{border-top-width:4px}.border-t-\[1px\]{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-tremor-background{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-tremor-border{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-tremor-brand{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-tremor-brand-emphasis{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.border-tremor-brand-inverted{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-tremor-brand-subtle{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-950\/30{background-color:#0206174d}.bg-transparent{background-color:transparent}.bg-tremor-background{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-tremor-background-emphasis{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-tremor-background-muted{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-tremor-background-subtle{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-tremor-border{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-tremor-brand{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-tremor-brand-faint{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-tremor-brand-muted{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.bg-tremor-brand-muted\/50{background-color:#bfdbfe80}.bg-tremor-brand-subtle{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-tremor-content-subtle{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-40{--tw-bg-opacity: .4}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-slate-100{--tw-gradient-from: #f1f5f9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(241 245 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-50{--tw-gradient-from: #f8fafc var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-slate-100{--tw-gradient-to: #f1f5f9 var(--tw-gradient-to-position)}.to-slate-200{--tw-gradient-to: #e2e8f0 var(--tw-gradient-to-position)}.fill-tremor-content{fill:#6b7280}.fill-tremor-content-emphasis{fill:#374151}.stroke-tremor-background{stroke:#fff}.stroke-tremor-border{stroke:#e5e7eb}.stroke-tremor-brand{stroke:#3b82f6}.stroke-tremor-brand-muted\/50{stroke:#bfdbfe80}.stroke-1{stroke-width:1}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-\[10px\]{padding-top:10px;padding-bottom:10px}.pb-3{padding-bottom:.75rem}.pl-10{padding-left:2.5rem}.pl-11{padding-left:2.75rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-1\.5{padding-right:.375rem}.pr-12{padding-right:3rem}.pr-14{padding-right:3.5rem}.pr-16{padding-right:4rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-widest{letter-spacing:.1em}.\!text-tremor-content-subtle{--tw-text-opacity: 1 !important;color:rgb(156 163 175 / var(--tw-text-opacity, 1))!important}.text-\[\#d1d5db\]\/15{color:#d1d5db26}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-tremor-brand{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-tremor-brand-emphasis{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-tremor-brand-inverted{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-tremor-content{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-tremor-content-emphasis{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-tremor-content-strong{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-tremor-content-subtle{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.accent-tremor-brand{accent-color:#3b82f6}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-tremor-brand{outline-color:#3b82f6}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-tremor-brand-inverted{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1))}.ring-tremor-brand-muted{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity, 1))}.ring-tremor-brand\/20{--tw-ring-color: rgb(59 130 246 / .2)}.ring-tremor-ring{--tw-ring-opacity: 1;--tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity, 1))}.ring-opacity-20{--tw-ring-opacity: .2}.ring-opacity-40{--tw-ring-opacity: .4}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-75{transition-duration:75ms}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[--anchor-gap\:4px\]{--anchor-gap: 4px}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.\[scrollbar-width\:none\]{scrollbar-width:none}:root{font-family:Space Grotesk,Segoe UI,sans-serif;--color-text-primary: #1b1712;--color-text-secondary: #4a4137;--color-text-muted: #6b5b47;--color-bg-primary: #f5f0e8;--color-bg-secondary: rgba(255, 255, 255, .85);--color-bg-card: rgba(255, 255, 255, .7);--color-bg-panel: rgba(255, 255, 255, .75);--color-bg-input: #fbf8f3;--color-border: #d4c8b8;--color-border-light: #e3d8c9;--color-input-border: #b3a081;--color-shadow: rgba(20, 20, 20, .1);--color-shadow-strong: rgba(20, 20, 20, .18);--color-accent: #1d1a16;--color-accent-text: #f8f4ee;--color-surface: #ffffff;--color-text: #1b1712;--color-background: #f5f0e8;--gradient-bg: radial-gradient(circle at top left, #f7d9b8, transparent 55%), radial-gradient(circle at 20% 70%, #d8eadf, transparent 55%), linear-gradient(120deg, #f7f2ea, #f0e7dc);--glow-one: radial-gradient(circle, #f6b892, transparent 70%);--glow-two: radial-gradient(circle, #9bd2c2, transparent 70%);color:var(--color-text-primary);background-color:var(--color-bg-primary)}[data-theme=dark]{--color-text-primary: #e8e8e8;--color-text-secondary: #b0b0b0;--color-text-muted: #888888;--color-bg-primary: #1a1a1a;--color-bg-secondary: rgba(30, 30, 30, .95);--color-bg-card: rgba(40, 40, 40, .9);--color-bg-panel: rgba(35, 35, 35, .85);--color-bg-input: #2a2a2a;--color-border: #404040;--color-border-light: #333333;--color-input-border: #5a5a5a;--color-shadow: rgba(0, 0, 0, .3);--color-shadow-strong: rgba(0, 0, 0, .5);--color-accent: #e8e8e8;--color-accent-text: #1a1a1a;--color-surface: #2a2a2a;--color-text: #e8e8e8;--color-background: #1a1a1a;--gradient-bg: radial-gradient(circle at top left, #2a2420, transparent 55%), radial-gradient(circle at 20% 70%, #1a2823, transparent 55%), linear-gradient(120deg, #1a1a1a, #222222);--glow-one: radial-gradient(circle, #3a2a1a, transparent 70%);--glow-two: radial-gradient(circle, #1a3a2a, transparent 70%)}[data-theme=gold]{--color-text-primary: #f5f5f5;--color-text-secondary: #b8b8b8;--color-text-muted: #777777;--color-bg-primary: #0a0a0a;--color-bg-secondary: rgba(17, 17, 17, .98);--color-bg-card: rgba(22, 22, 22, .95);--color-bg-panel: rgba(20, 20, 20, .9);--color-bg-input: #1a1a1a;--color-border: #2a2a2a;--color-border-light: #1f1f1f;--color-input-border: #6a5d33;--color-shadow: rgba(0, 0, 0, .4);--color-shadow-strong: rgba(0, 0, 0, .6);--color-accent: #c9a227;--color-accent-text: #0a0a0a;--color-surface: #161616;--color-text: #f5f5f5;--color-background: #0a0a0a;--gradient-bg: radial-gradient(circle at top left, rgba(201, 162, 39, .08), transparent 55%), radial-gradient(circle at 80% 80%, rgba(201, 162, 39, .05), transparent 55%), linear-gradient(135deg, #0a0a0a, #111111);--glow-one: radial-gradient(circle, rgba(201, 162, 39, .15), transparent 70%);--glow-two: radial-gradient(circle, rgba(244, 208, 63, .1), transparent 70%)}.logo-img{filter:invert(1) hue-rotate(180deg);transition:filter .2s ease}[data-theme=dark] .logo-img{filter:none}[data-theme=gold] .logo-img{filter:sepia(100%) saturate(300%) brightness(90%) hue-rotate(5deg)}[data-theme=gold] .tariff-card{background:#111111f2;border:1px solid rgba(201,162,39,.15);box-shadow:0 16px 40px #00000080,0 0 0 1px #c9a2271a}[data-theme=gold] .tariff-card:hover{box-shadow:0 20px 50px #0009,0 0 30px #c9a2271a}[data-theme=gold] .tariff-card.featured{background:#fffffffa;border:2px solid #c9a227;box-shadow:0 20px 50px #0006,0 0 40px #c9a22733}[data-theme=gold] .tariff-card .tariff-badge,[data-theme=gold] .tariff-card .tariff-name{color:#c9a227}[data-theme=gold] .tariff-card .tariff-price{color:#f5f5f5}[data-theme=gold] .tariff-card .tariff-price span{color:#888}[data-theme=gold] .tariff-card .tariff-trial{color:#c9a227}[data-theme=gold] .tariff-card .tariff-features li{color:#b8b8b8}[data-theme=gold] .tariff-card.featured .tariff-badge,[data-theme=gold] .tariff-card.featured .tariff-name,[data-theme=gold] .tariff-card.featured .tariff-price{color:#1d1a16}[data-theme=gold] .tariff-card.featured .tariff-features li{color:#4a4a4a}[data-theme=gold] .tariff-card .btn.primary{background:linear-gradient(135deg,#c9a227,#f4d03f,#c9a227);color:#0a0a0a;font-weight:600;border:none;box-shadow:0 4px 15px #c9a22759}[data-theme=gold] .tariff-card .btn.primary:hover{box-shadow:0 6px 25px #c9a22780;transform:translateY(-2px)}[data-theme=gold] .tariff-card .btn.ghost{border-color:#c9a227;color:#c9a227}[data-theme=gold] .tariff-card .btn.ghost:hover{background:#c9a2271a}[data-theme=gold] .panel{background:#141414f2;border:1px solid rgba(201,162,39,.15);box-shadow:0 20px 50px #00000080}[data-theme=gold] .hero h1{color:#f5f5f5}[data-theme=gold] .hero .lead{color:#b8b8b8}[data-theme=gold] .hero .eyebrow{color:#c9a227}[data-theme=aurora] .tariff-card{background:#0f0f23cc;border:1px solid rgba(0,240,255,.15);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 16px 40px #00000080,inset 0 1px #ffffff0d}[data-theme=aurora] .tariff-card:hover{border-color:#00f0ff4d;box-shadow:0 20px 50px #0009,0 0 30px #00f0ff1a}[data-theme=aurora] .tariff-card.featured{background:#fffffff2;border:2px solid #00f0ff;box-shadow:0 20px 50px #0006,0 0 40px #00f0ff26}[data-theme=aurora] .tariff-card .tariff-badge{color:#00f0ff}[data-theme=aurora] .tariff-card .tariff-name{background:linear-gradient(135deg,#00f0ff,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=aurora] .tariff-card .tariff-price{color:#f0f4ff}[data-theme=aurora] .tariff-card .tariff-price span{color:#6b7aa0}[data-theme=aurora] .tariff-card .tariff-trial{color:#0f8}[data-theme=aurora] .tariff-card .tariff-features li{color:#a8b4d4}[data-theme=aurora] .tariff-card.featured .tariff-name{background:none;-webkit-text-fill-color:#1d1a16;color:#1d1a16}[data-theme=aurora] .tariff-card.featured .tariff-badge{color:#1d1a16}[data-theme=aurora] .tariff-card.featured .tariff-features li{color:#4a4a4a}[data-theme=aurora] .tariff-card .btn.primary{background:linear-gradient(135deg,#00f0ff,#8b5cf6);color:#050510;font-weight:600;border:none;box-shadow:0 4px 15px #00f0ff4d,0 0 20px #00f0ff1a}[data-theme=aurora] .tariff-card .btn.primary:hover{box-shadow:0 6px 25px #00f0ff80,0 0 40px #8b5cf633;transform:translateY(-2px)}[data-theme=aurora] .tariff-card .btn.ghost{border-color:#00f0ff;color:#00f0ff}[data-theme=aurora] .tariff-card .btn.ghost:hover{background:#00f0ff1a;box-shadow:0 0 20px #00f0ff26}[data-theme=aurora] .panel{background:#0f0f23e6;border:1px solid rgba(0,240,255,.15);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 50px #00000080}[data-theme=aurora] .hero h1{background:linear-gradient(135deg,#00f0ff,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=aurora] .hero .lead{color:#a8b4d4}[data-theme=aurora] .hero .eyebrow{color:#00f0ff}body{margin:0;min-height:100vh;background:var(--gradient-bg)}a{color:inherit;text-decoration:none}.page{position:relative;padding:48px 6vw 64px;display:flex;flex-direction:column;gap:32px;max-width:1200px;margin:0 auto}.top-controls{position:fixed;top:16px;right:16px;z-index:30;display:flex;align-items:center;gap:12px}.lang-select{padding:6px 10px;border-radius:8px;background:#1d1a16e0;color:#f8f4ee;border:none;font-family:IBM Plex Mono,monospace;font-size:.75rem;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lang-select:focus{outline:2px solid #f2c07b}.dev-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:#1d1a16e0;color:#f8f4ee;font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.12em;cursor:pointer;box-shadow:0 10px 20px #1d1a162e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dev-toggle input{width:14px;height:14px;accent-color:#f2c07b}.glow{position:absolute;border-radius:999px;filter:blur(0);opacity:.35;z-index:0}.glow-one{width:280px;height:280px;top:-80px;right:10%;background:var(--glow-one)}.glow-two{width:220px;height:220px;bottom:80px;left:8%;background:var(--glow-two)}.hero{position:relative;z-index:1;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center;animation:rise .6s ease both}.hero-copy{display:flex;flex-direction:column;gap:16px}.eyebrow{font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.hero h1{font-size:clamp(2rem,3vw + 1rem,3.3rem);line-height:1.05;margin:0}.lead{font-size:1.05rem;line-height:1.6;margin:0}.cta-row{display:flex;flex-wrap:wrap;gap:12px}.btn{border:none;border-radius:999px;padding:12px 20px;font-weight:600;cursor:pointer;font-size:.95rem;transition:transform .2s ease,box-shadow .2s ease}.btn:disabled{cursor:not-allowed;opacity:.6}.btn.primary{background:var(--color-accent);color:var(--color-accent-text);box-shadow:0 10px 20px var(--color-shadow-strong)}.btn.primary:hover{transform:translateY(-2px)}.btn.ghost{background:transparent;border:1px solid var(--color-accent)}.hero-card{background:var(--color-bg-card);padding:24px;border-radius:24px;box-shadow:0 24px 60px var(--color-shadow);display:flex;flex-direction:column;gap:20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-card ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px;font-size:.95rem}.card-title{font-weight:600;margin:0}.plan{display:flex;align-items:center;justify-content:space-between;background:var(--color-bg-input);border-radius:16px;padding:12px 16px}.plan-label{font-weight:600}.plan-note{font-family:IBM Plex Mono,monospace;font-size:.75rem}.tariffs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;z-index:1;animation:rise .7s ease both}@media(max-width:1200px){.tariffs{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.tariffs{grid-template-columns:1fr}}.tariff-card{background:var(--color-bg-secondary);border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:16px;box-shadow:0 16px 40px var(--color-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:2px solid transparent;transition:transform .2s ease,box-shadow .2s ease}.tariff-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #1414141f}.tariff-card.featured{border-color:#1d1a16;background:#fffffff2}.tariff-badge{font-family:IBM Plex Mono,monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#6b5b47}.tariff-card.featured .tariff-badge{color:#1d1a16;font-weight:600}.tariff-name{font-size:1.8rem;font-weight:700;margin:0;color:#1d1a16}.tariff-price{font-size:2.2rem;font-weight:700;margin:0;color:#1d1a16}.tariff-price span{font-size:.9rem;font-weight:400;color:#6b5b47}.tariff-trial{font-size:.9rem;color:#2e5c4b;margin:0;font-weight:600}.tariff-features{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:10px;flex-grow:1}.tariff-features li{font-size:.9rem;color:#4a4137}.tariff-card .btn{margin-top:auto;width:100%;text-align:center}.starter-promo-section{margin-bottom:1.5rem}.starter-promo-tabs{display:flex;gap:8px;margin-bottom:1rem}.promo-tab{flex:1;padding:12px 16px;border:2px solid rgba(255,255,255,.1);border-radius:12px;background:#00000026;color:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:IBM Plex Mono,monospace;text-align:left;display:flex;flex-direction:column;gap:4px}.promo-tab:hover{border-color:#fff3}.promo-tab.active{background:var(--color-accent);color:var(--color-accent-text);border-color:var(--color-accent);box-shadow:0 2px 12px #0003}.promo-tab-sub{display:block;font-size:.7rem;font-weight:400;opacity:.7}.starter-promo-banner{background:linear-gradient(135deg,#f59e0b26,#d9770614);border:1px solid rgba(245,158,11,.3);border-radius:12px;padding:1.25rem}.promo-badge{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#000;border-radius:6px;font-size:.75rem;font-weight:700;margin-bottom:8px}.promo-desc{font-size:.9rem;margin:0 0 12px;opacity:.9}.promo-includes{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.8rem;opacity:.75}.price-after{display:block;font-size:.75rem;font-weight:400;opacity:.6;margin-top:2px}.selected-plan{display:flex;align-items:center;justify-content:space-between;background:#ffffffd9;border-radius:16px;padding:16px 20px;position:relative;z-index:1;box-shadow:0 8px 20px #1414140f}.panel{position:relative;z-index:1;background:var(--color-bg-panel);border-radius:28px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:0 20px 50px var(--color-shadow);animation:rise .7s ease both}.panel-header h2{margin:0 0 6px}.panel-header p{margin:0;color:#4a4137}.form{display:grid;gap:16px}.form label{display:grid;gap:6px;font-weight:600}.form input,.form select{padding:12px 14px;border-radius:12px;border:1px solid var(--color-border);font-size:.95rem;background:var(--color-bg-input);color:var(--color-text-primary)}.admin-panel{border:1px dashed #d4c8b8}.admin-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.admin-row label{flex:1 1 240px}.admin-token-status{flex:1;font-size:.95rem;color:#4a4137;display:flex;align-items:center;gap:.5rem}.admin-divider{height:1px;background:#e3d8c9;margin:16px 0 8px}.checkbox{display:flex;align-items:center;gap:10px;font-weight:600}.checkbox input{width:16px;height:16px}.token-box{width:100%;min-height:120px;padding:12px 14px;border-radius:12px;border:1px solid #d4c8b8;font-family:IBM Plex Mono,monospace;font-size:.85rem;background:#fbf8f3;margin-top:8px}.payment{display:grid;gap:16px}.summary{background:#f3eee6;border-radius:16px;padding:12px 16px}.summary-title{margin:0 0 6px;font-weight:600}.status,.error,.warning{margin:0;font-size:.95rem}.status{color:#2e5c4b}.error{color:#a3322b}.warning{color:#6b5b47}.success h3{margin-top:0}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.admin-table-wrap{margin-top:12px;overflow-x:auto}.admin-table-wrap h4{margin:16px 0 8px;font-size:1rem}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th,.admin-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #e3d8c9}.admin-table th{background:#f3eee6;font-weight:600}.admin-table tbody tr:hover{background:#f3eee680}.btn-danger{border:none;background:#a3322b;color:#fff;padding:6px 12px;border-radius:8px;font-size:.8rem;cursor:pointer;transition:background .2s ease}.btn-danger:hover{background:#8a2a24}.btn-danger:disabled{cursor:not-allowed;opacity:.6}.login-btn-mobile{display:none}.login-btn-desktop{display:inline-flex}@media(max-width:720px){.page{padding:32px 5vw 48px}.hero-card{padding:20px}.panel{padding:22px}.admin-table{font-size:.8rem}.admin-table th,.admin-table td{padding:8px 10px}}@media(max-width:600px){.login-btn-desktop{display:none!important}.login-btn-mobile{display:flex;width:100%;justify-content:center;min-height:52px;border-radius:14px;font-weight:700;letter-spacing:.03em}.top-controls{top:8px;right:8px;gap:6px}.page{padding-top:56px}}.landing-footer{position:relative;z-index:1;text-align:center;padding:40px 0 16px;margin-top:24px;border-top:1px solid var(--color-border, #e5e7eb);animation:rise .8s ease both}.landing-footer-links{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:12px}.landing-footer-links a{color:var(--color-text-secondary, #4b5563);text-decoration:none;font-size:.85rem;font-weight:500;transition:color .2s ease}.landing-footer-links a:hover{color:var(--color-accent, #3b82f6)}.landing-footer-sep{color:var(--color-text-muted, #9ca3af);font-size:.9rem}.landing-footer-copy{margin:0;font-size:.78rem;color:var(--color-text-muted, #9ca3af)}[data-theme=gold] .landing-footer{border-top-color:#c9a2271f}[data-theme=gold] .landing-footer-links a:hover{color:#c9a227}[data-theme=aurora] .landing-footer{border-top-color:#00f0ff1a}[data-theme=aurora] .landing-footer-links a:hover{color:#00f0ff;text-shadow:0 0 8px rgba(0,240,255,.3)}.placeholder\:text-red-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.placeholder\:text-red-500::placeholder{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.placeholder\:text-tremor-content::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder\:text-tremor-content::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder\:text-tremor-content-subtle::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-tremor-content-subtle::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.first\:rounded-l-\[4px\]:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.last\:rounded-r-\[4px\]:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.focus-within\:relative:focus-within{position:relative}.hover\:border-b-2:hover{border-bottom-width:2px}.hover\:border-tremor-brand-emphasis:hover{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.hover\:border-tremor-content:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-tremor-background-muted:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-tremor-background-subtle:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-tremor-brand-emphasis:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-tremor-brand-faint:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:text-tremor-brand-emphasis:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-tremor-content:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.hover\:text-tremor-content-emphasis:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-tremor-brand-subtle:focus{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-tremor-brand-muted:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity, 1))}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.group:hover .group-hover\:bg-tremor-brand-subtle\/30{background-color:#60a5fa4d}.group:hover .group-hover\:bg-opacity-30{--tw-bg-opacity: .3}.group:hover .group-hover\:text-tremor-content-emphasis{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.group:active .group-active\:scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.aria-selected\:\!bg-tremor-background-subtle[aria-selected=true]{--tw-bg-opacity: 1 !important;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))!important}.aria-selected\:bg-tremor-background-emphasis[aria-selected=true]{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.aria-selected\:\!text-tremor-content[aria-selected=true]{--tw-text-opacity: 1 !important;color:rgb(107 114 128 / var(--tw-text-opacity, 1))!important}.aria-selected\:text-tremor-brand-inverted[aria-selected=true],.aria-selected\:text-tremor-content-inverted[aria-selected=true]{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.data-\[selected\]\:border-b-2[data-selected]{border-bottom-width:2px}.data-\[selected\]\:border-tremor-border[data-selected]{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.data-\[selected\]\:border-tremor-brand[data-selected]{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.data-\[focus\]\:bg-tremor-background-muted[data-focus]{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.data-\[selected\]\:bg-tremor-background[data-selected]{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.data-\[selected\]\:bg-tremor-background-muted[data-selected]{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.data-\[focus\]\:text-tremor-content-strong[data-focus]{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.data-\[selected\]\:text-tremor-brand[data-selected]{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.data-\[selected\]\:text-tremor-content-strong[data-selected]{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.data-\[closed\]\:opacity-0[data-closed]{opacity:0}.data-\[enter\]\:duration-300[data-enter]{transition-duration:.3s}.data-\[leave\]\:duration-200[data-leave]{transition-duration:.2s}.data-\[enter\]\:ease-out[data-enter]{transition-timing-function:cubic-bezier(0,0,.2,1)}.data-\[leave\]\:ease-in[data-leave]{transition-timing-function:cubic-bezier(.4,0,1,1)}@media(min-width:640px){.sm\:col-span-1{grid-column:span 1 / span 1}.sm\:col-span-10{grid-column:span 10 / span 10}.sm\:col-span-11{grid-column:span 11 / span 11}.sm\:col-span-12{grid-column:span 12 / span 12}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:col-span-3{grid-column:span 3 / span 3}.sm\:col-span-4{grid-column:span 4 / span 4}.sm\:col-span-5{grid-column:span 5 / span 5}.sm\:col-span-6{grid-column:span 6 / span 6}.sm\:col-span-7{grid-column:span 7 / span 7}.sm\:col-span-8{grid-column:span 8 / span 8}.sm\:col-span-9{grid-column:span 9 / span 9}.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sm\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.sm\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.sm\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.sm\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.sm\:grid-cols-none{grid-template-columns:none}.sm\:flex-row{flex-direction:row}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}}@media(min-width:768px){.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-10{grid-column:span 10 / span 10}.md\:col-span-11{grid-column:span 11 / span 11}.md\:col-span-12{grid-column:span 12 / span 12}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-3{grid-column:span 3 / span 3}.md\:col-span-4{grid-column:span 4 / span 4}.md\:col-span-5{grid-column:span 5 / span 5}.md\:col-span-6{grid-column:span 6 / span 6}.md\:col-span-7{grid-column:span 7 / span 7}.md\:col-span-8{grid-column:span 8 / span 8}.md\:col-span-9{grid-column:span 9 / span 9}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.md\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.md\:grid-cols-none{grid-template-columns:none}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-10{grid-column:span 10 / span 10}.lg\:col-span-11{grid-column:span 11 / span 11}.lg\:col-span-12{grid-column:span 12 / span 12}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-5{grid-column:span 5 / span 5}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-7{grid-column:span 7 / span 7}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:col-span-9{grid-column:span 9 / span 9}.lg\:max-w-\[200px\]{max-width:200px}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lg\:grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-cols-9{grid-template-columns:repeat(9,minmax(0,1fr))}.lg\:grid-cols-none{grid-template-columns:none}}@media(prefers-color-scheme:dark){.dark\:border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.dark\:bg-slate-950\/50{background-color:#02061780}.dark\:bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.dark\:bg-opacity-10{--tw-bg-opacity: .1}.dark\:bg-opacity-5{--tw-bg-opacity: .05}.dark\:text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.dark\:text-tremor-content-emphasis{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.dark\:opacity-25{opacity:.25}.dark\:ring-opacity-60{--tw-ring-opacity: .6}.dark\:placeholder\:text-red-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-red-500::placeholder{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-tremor-content::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-tremor-content::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-tremor-content-subtle::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-tremor-content-subtle::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.dark\:hover\:text-tremor-content:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:hover\:text-tremor-content-emphasis:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\:not\(\[data-selected\]\)\]\:text-tremor-content:not([data-selected]){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.\[\&\:not\(\[data-selected\]\)\]\:hover\:text-tremor-content-emphasis:hover:not([data-selected]){--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}:root{--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-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-accent: 0 4px 14px rgba(59, 130, 246, .25);--shadow-success: 0 4px 14px rgba(16, 185, 129, .25);--shadow-danger: 0 4px 14px rgba(239, 68, 68, .25);--font-sans: "Inter", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Consolas", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: 2.5rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-tertiary: #9ca3af;--color-text-muted: #d1d5db;--color-bg-primary: #f9fafb;--color-bg-secondary: #ffffff;--color-bg-card: #ffffff;--color-bg-elevated: #ffffff;--color-bg-input: #ffffff;--color-bg-hover: #f3f4f6;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-border-focus: #3b82f6;--color-accent: #3b82f6;--color-accent-hover: #2563eb;--color-accent-light: #eff6ff;--color-accent-text: #ffffff;--color-success: #10b981;--color-success-light: #ecfdf5;--color-warning: #f59e0b;--color-warning-light: #fffbeb;--color-danger: #ef4444;--color-danger-light: #fef2f2;--color-info: #3b82f6;--color-info-light: #eff6ff;--color-surface: #ffffff;--color-surface-elevated: #ffffff}[data-theme=dark]{--color-text-primary: #f9fafb;--color-text-secondary: #d1d5db;--color-text-tertiary: #9ca3af;--color-text-muted: #6b7280;--color-bg-primary: #0f0f0f;--color-bg-secondary: #171717;--color-bg-card: #1f1f1f;--color-bg-elevated: #262626;--color-bg-input: #262626;--color-bg-hover: #2a2a2a;--color-border: #2e2e2e;--color-border-light: #262626;--color-border-focus: #3b82f6;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-accent-light: rgba(59, 130, 246, .15);--color-accent-text: #0f0f0f;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .25);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .35);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .4);--color-success: #34d399;--color-success-light: rgba(16, 185, 129, .15);--color-warning: #fbbf24;--color-warning-light: rgba(245, 158, 11, .15);--color-danger: #f87171;--color-danger-light: rgba(239, 68, 68, .15);--color-info: #60a5fa;--color-info-light: rgba(59, 130, 246, .15);--color-surface: #1f1f1f;--color-surface-elevated: #262626}[data-theme=gold]{--color-text-primary: #f5f5f5;--color-text-secondary: #b8b8b8;--color-text-tertiary: #888888;--color-text-muted: #555555;--color-bg-primary: #0a0a0a;--color-bg-secondary: #111111;--color-bg-card: #161616;--color-bg-elevated: #1a1a1a;--color-bg-input: #1a1a1a;--color-bg-hover: #222222;--color-border: #2a2a2a;--color-border-light: #1f1f1f;--color-border-focus: #c9a227;--color-accent: #c9a227;--color-accent-hover: #d4af37;--color-accent-light: rgba(201, 162, 39, .15);--color-accent-text: #0a0a0a;--gradient-gold: linear-gradient(135deg, #c9a227 0%, #f4d03f 50%, #c9a227 100%);--gradient-gold-subtle: linear-gradient(135deg, rgba(201, 162, 39, .2) 0%, rgba(244, 208, 63, .1) 100%);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .35);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .45);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .5);--shadow-accent: 0 4px 20px rgba(201, 162, 39, .3);--color-success: #4ade80;--color-success-light: rgba(74, 222, 128, .15);--color-warning: #fbbf24;--color-warning-light: rgba(251, 191, 36, .15);--color-danger: #f87171;--color-danger-light: rgba(248, 113, 113, .15);--color-info: #c9a227;--color-info-light: rgba(201, 162, 39, .15);--color-surface: #161616;--color-surface-elevated: #1a1a1a}[data-theme=gold] .ds-btn-primary{background:var(--gradient-gold);color:#0a0a0a;font-weight:600;text-shadow:none}[data-theme=gold] .ds-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#d4af37,#f7dc6f,#d4af37);box-shadow:var(--shadow-accent)}[data-theme=gold] .sidebar{background:linear-gradient(180deg,#0f0f0f,#0a0a0a);border-right:1px solid #1a1a1a}[data-theme=gold] .sidebar-logo{color:#c9a227}[data-theme=gold] .sidebar-item.active{background:#c9a2271a;border-left:3px solid #c9a227;color:#c9a227}[data-theme=gold] .sidebar-item:hover:not(.active){background:#c9a2270d}[data-theme=gold] .page-header h1{color:#f5f5f5}[data-theme=gold] .settings-card,[data-theme=gold] .card{background:#161616;border:1px solid #2a2a2a}[data-theme=gold] .settings-tab.active{background:#c9a2271a;border-color:#c9a227;color:#c9a227}[data-theme=gold] .ds-badge-info,[data-theme=gold] .premium-badge{background:var(--gradient-gold);color:#0a0a0a;font-weight:600}[data-theme=gold] .sidebar-action-btn{background:#161616cc;border:1px solid rgba(201,162,39,.2);box-shadow:0 4px 12px #0000004d;transition:all .2s ease}[data-theme=gold] .sidebar-action-btn:hover{background:#c9a2271a;border-color:#c9a22766;box-shadow:0 6px 20px #0006,0 0 15px #c9a22726}[data-theme=gold] .btn.primary,[data-theme=gold] button.primary{background:var(--gradient-gold);color:#0a0a0a;font-weight:600;border:none;box-shadow:0 4px 15px #c9a2274d}[data-theme=gold] .btn.primary:hover,[data-theme=gold] button.primary:hover{box-shadow:0 6px 25px #c9a22780;transform:translateY(-1px)}[data-theme=gold]::-webkit-scrollbar-thumb{background:#2a2a2a}[data-theme=gold]::-webkit-scrollbar-thumb:hover{background:#c9a227}[data-theme=aurora]{--color-text-primary: #f0f4ff;--color-text-secondary: #a8b4d4;--color-text-tertiary: #6b7aa0;--color-text-muted: #4a5578;--color-bg-primary: #050510;--color-bg-secondary: #0a0a1a;--color-bg-card: rgba(15, 15, 35, .7);--color-bg-elevated: rgba(20, 20, 45, .8);--color-bg-input: rgba(15, 15, 35, .9);--color-bg-hover: rgba(30, 30, 60, .6);--color-border: rgba(100, 120, 180, .2);--color-border-light: rgba(100, 120, 180, .1);--color-border-focus: #00f0ff;--color-accent: #00f0ff;--color-accent-hover: #00d4e0;--color-accent-light: rgba(0, 240, 255, .15);--color-accent-text: #050510;--color-accent-secondary: #8b5cf6;--color-accent-secondary-hover: #7c3aed;--color-accent-secondary-light: rgba(139, 92, 246, .15);--gradient-aurora: linear-gradient(135deg, #00f0ff 0%, #8b5cf6 50%, #a855f7 100%);--gradient-aurora-subtle: linear-gradient(135deg, rgba(0, 240, 255, .2) 0%, rgba(139, 92, 246, .1) 100%);--gradient-glow: radial-gradient(ellipse at 50% 0%, rgba(0, 240, 255, .15) 0%, transparent 70%);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .7);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .8);--shadow-neon-cyan: 0 0 20px rgba(0, 240, 255, .4), 0 0 40px rgba(0, 240, 255, .2);--shadow-neon-purple: 0 0 20px rgba(139, 92, 246, .4), 0 0 40px rgba(139, 92, 246, .2);--shadow-accent: 0 4px 20px rgba(0, 240, 255, .3);--glass-bg: rgba(15, 15, 35, .6);--glass-border: rgba(100, 120, 180, .2);--glass-blur: blur(20px);--color-success: #00ff88;--color-success-light: rgba(0, 255, 136, .15);--color-warning: #ffaa00;--color-warning-light: rgba(255, 170, 0, .15);--color-danger: #ff4466;--color-danger-light: rgba(255, 68, 102, .15);--color-info: #00f0ff;--color-info-light: rgba(0, 240, 255, .15);--color-surface: rgba(15, 15, 35, .7);--color-surface-elevated: rgba(20, 20, 45, .8)}[data-theme=aurora] body{background:radial-gradient(ellipse 80% 50% at 20% -10%,rgba(0,240,255,.15) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 0%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(ellipse 50% 30% at 50% 100%,rgba(168,85,247,.1) 0%,transparent 50%),linear-gradient(180deg,#050510,#0a0a1a);background-attachment:fixed}[data-theme=aurora] .card,[data-theme=aurora] .settings-card,[data-theme=aurora] .ds-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff0d}[data-theme=aurora] .ds-btn-primary{background:var(--gradient-aurora);color:#050510;font-weight:600;text-shadow:none;box-shadow:var(--shadow-neon-cyan);border:none}[data-theme=aurora] .ds-btn-primary:hover:not(:disabled){box-shadow:0 0 30px #00f0ff80,0 0 60px #00f0ff4d,0 0 90px #8b5cf633;transform:translateY(-2px)}[data-theme=aurora] .sidebar{background:linear-gradient(180deg,#0a0a1af2,#050510fa);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-right:1px solid rgba(0,240,255,.1)}[data-theme=aurora] .sidebar-logo{background:var(--gradient-aurora);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=aurora] .sidebar-item.active{background:#00f0ff1a;border-left:3px solid #00f0ff;color:#00f0ff;box-shadow:inset 0 0 20px #00f0ff1a}[data-theme=aurora] .sidebar-item:hover:not(.active){background:#8b5cf61a;border-left:3px solid transparent}[data-theme=aurora] .page-header h1{background:var(--gradient-aurora);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=aurora] .settings-tab.active{background:#00f0ff1a;border-color:#00f0ff;color:#00f0ff;box-shadow:0 0 15px #00f0ff33}[data-theme=aurora] input,[data-theme=aurora] textarea,[data-theme=aurora] select{background:#0f0f23cc;border:1px solid rgba(100,120,180,.3);color:#f0f4ff;transition:all .3s ease}[data-theme=aurora] input:focus,[data-theme=aurora] textarea:focus,[data-theme=aurora] select:focus{border-color:#00f0ff;box-shadow:0 0 0 3px #00f0ff1a,0 0 20px #00f0ff33;outline:none}[data-theme=aurora] .ds-badge-info,[data-theme=aurora] .premium-badge{background:var(--gradient-aurora);color:#050510;font-weight:600;box-shadow:var(--shadow-neon-cyan)}[data-theme=aurora] .sidebar-action-btn{background:#0f0f23cc;border:1px solid rgba(0,240,255,.15);box-shadow:0 4px 12px #0006;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease}[data-theme=aurora] .sidebar-action-btn:hover{background:#00f0ff14;border-color:#00f0ff4d;box-shadow:0 6px 20px #00000080,0 0 20px #00f0ff26,inset 0 1px #ffffff0d}[data-theme=aurora] .btn.primary,[data-theme=aurora] button.primary{background:var(--gradient-aurora);color:#050510;font-weight:600;border:none;box-shadow:0 4px 15px #00f0ff4d,0 0 30px #00f0ff26}[data-theme=aurora] .btn.primary:hover,[data-theme=aurora] button.primary:hover{box-shadow:0 6px 25px #00f0ff80,0 0 40px #8b5cf633;transform:translateY(-1px)}[data-theme=aurora]::-webkit-scrollbar{width:8px;height:8px}[data-theme=aurora]::-webkit-scrollbar-track{background:#05051080}[data-theme=aurora]::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#00f0ff,#8b5cf6);border-radius:4px}[data-theme=aurora]::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#00d4e0,#7c3aed)}[data-theme=aurora] a{color:#00f0ff;transition:all .2s ease}[data-theme=aurora] a:hover{color:#8b5cf6;text-shadow:0 0 10px rgba(0,240,255,.5)}[data-theme=aurora] .app-main:before{content:"";position:fixed;inset:0;background-image:linear-gradient(90deg,rgba(0,240,255,.03) 1px,transparent 1px),linear-gradient(rgba(0,240,255,.03) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;z-index:-1}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary)}.ds-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-base)}.ds-card:hover{box-shadow:var(--shadow-md)}.ds-card-interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.ds-btn:disabled{opacity:.5;cursor:not-allowed}.ds-btn-primary{background:var(--color-accent);color:var(--color-accent-text)}.ds-btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-accent)}.ds-btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.ds-btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-text-tertiary)}.ds-btn-ghost{background:transparent;color:var(--color-text-secondary)}.ds-btn-ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.ds-btn-danger{background:var(--color-danger);color:#fff}.ds-btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:var(--shadow-danger)}.ds-btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.ds-btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base)}.ds-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ds-input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-accent-light)}.ds-input::-moz-placeholder{color:var(--color-text-tertiary)}.ds-input::placeholder{color:var(--color-text-tertiary)}.ds-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);margin-bottom:var(--space-2)}.ds-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.ds-badge-success{background:var(--color-success-light);color:var(--color-success)}.ds-badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.ds-badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.ds-badge-info{background:var(--color-info-light);color:var(--color-info)}.ds-badge-neutral{background:var(--color-bg-hover);color:var(--color-text-secondary)}.ds-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.ds-status-dot{width:8px;height:8px;border-radius:var(--radius-full);animation:pulse-dot 2s ease-in-out infinite}.ds-status-dot-success{background:var(--color-success);box-shadow:0 0 0 3px var(--color-success-light)}.ds-status-dot-warning{background:var(--color-warning);box-shadow:0 0 0 3px var(--color-warning-light)}.ds-status-dot-danger{background:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-light)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.6}}.ds-divider{height:1px;background:var(--color-border);margin:var(--space-4) 0}.ds-text-primary{color:var(--color-text-primary)}.ds-text-secondary{color:var(--color-text-secondary)}.ds-text-tertiary{color:var(--color-text-tertiary)}.ds-text-muted{color:var(--color-text-muted)}.ds-text-success{color:var(--color-success)}.ds-text-warning{color:var(--color-warning)}.ds-text-danger{color:var(--color-danger)}.ds-text-accent{color:var(--color-accent)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ds-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ds-animate-fade-in{animation:ds-fade-in var(--transition-base) ease-out}.ds-animate-slide-up{animation:ds-slide-up var(--transition-slow) ease-out}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ds-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ds-skeleton{background:linear-gradient(90deg,var(--color-bg-hover) 25%,var(--color-border-light) 50%,var(--color-bg-hover) 75%);background-size:200% 100%;animation:ds-skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes ds-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}[data-theme=dark]::-webkit-scrollbar-thumb{background:var(--color-border)}[data-theme=dark]::-webkit-scrollbar-thumb:hover{background:#4b5563}.sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;transition:width var(--transition-slow, .3s) cubic-bezier(.4,0,.2,1);z-index:1000;overflow:hidden}.sidebar.collapsed{width:72px}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;max-width:85vw;transform:translate(-100%);background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;z-index:1000;overflow:hidden;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);box-shadow:none}.sidebar:not(.collapsed){transform:translate(0);box-shadow:4px 0 24px #00000040}.sidebar-header{padding:1rem;min-height:56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border);flex-shrink:0}.sidebar-logo{display:flex;align-items:center;gap:.5rem;font-size:1rem}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:.5rem;-webkit-overflow-scrolling:touch}.sidebar-nav-item{min-height:48px;padding:.75rem 1rem;margin:.25rem 0;border-radius:12px;font-size:.9375rem;display:flex;align-items:center;gap:.75rem;transition:background .15s,transform .1s}.sidebar-nav-item:active{transform:scale(.98);background:var(--color-bg-card)}.sidebar-footer{padding:.75rem;border-top:1px solid var(--color-border);flex-shrink:0}.sidebar-user{padding:.75rem;border-radius:10px;margin-bottom:.5rem;gap:.5rem}.sidebar-user-avatar{width:32px;height:32px;font-size:1rem}.sidebar-user-name{font-size:.8125rem}.sidebar-user-email{font-size:.6875rem}.sidebar-action-btn{min-height:44px;padding:.5rem .75rem;border-radius:10px;font-size:.8125rem}.sidebar-action-btn:active{transform:scale(.97)}.sidebar-toggle{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.25rem;border-radius:10px}.sidebar-action-group{margin-bottom:.5rem!important}.lang-btn{padding:6px!important;font-size:.75rem!important}.sidebar-divider{margin:0 .5rem}}@media(min-width:768px){.sidebar{transform:translate(0)}}[data-theme=dark] .sidebar{background:var(--color-bg-secondary);border-right-color:var(--color-border)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1rem;border-bottom:1px solid var(--color-border)}.sidebar-logo{display:flex;align-items:center;gap:.75rem;font-size:1.125rem;color:var(--color-text-primary)}.sidebar-toggle{padding:.5rem;border-radius:.5rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.sidebar-toggle:hover{background:var(--color-bg-card);border-color:var(--color-text-tertiary)}.sidebar.collapsed .sidebar-header{justify-content:center;padding:1.5rem .5rem}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem .5rem}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-3, .75rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);margin:var(--space-1, .25rem) 0;border-radius:var(--radius-md, .5rem);background:transparent;border:none;color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm, .875rem);font-weight:var(--font-medium, 500);cursor:pointer;transition:all var(--transition-fast, .15s);width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-nav-item.active{background:var(--color-accent);color:var(--color-accent-text);font-weight:var(--font-semibold, 600)}[data-theme=dark] .sidebar-nav-item.active{background:var(--color-accent);color:var(--color-accent-text)}.sidebar.collapsed .sidebar-nav-item{padding:.75rem;justify-content:center}.sidebar-submenu{margin-left:.5rem;padding-left:1rem;border-left:2px solid var(--color-border)}.sidebar-footer{padding:1rem .5rem;border-top:1px solid var(--color-border)}.sidebar-divider{height:1px;background:var(--color-border);margin:0 .5rem}.sidebar-user{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:.5rem;margin-bottom:.5rem;background:var(--color-bg-card);transition:all .2s}.sidebar-user.collapsed{justify-content:center}.sidebar-user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:.75rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-action-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin:.25rem 0;border-radius:.5rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s;width:100%}.sidebar-action-btn:hover{background:var(--color-bg-card);border-color:var(--color-text-tertiary)}.sidebar-action-btn.logout{border-color:var(--color-danger);color:var(--color-danger)}.sidebar-action-btn.logout:hover{background:var(--color-danger);color:#fff}.sidebar.collapsed .sidebar-action-btn{justify-content:center;padding:.75rem .5rem}.sidebar.collapsed .sidebar-action-btn span:last-child{display:none}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar-overlay{display:block;position:fixed;inset:0;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);z-index:999;animation:overlay-fade-in .35s cubic-bezier(.4,0,.2,1) forwards}.sidebar.collapsed~.sidebar-overlay{display:none}}@keyframes overlay-fade-in{0%{background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.sidebar-nav-item .badge{padding:.125rem .5rem;border-radius:.25rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}@media(min-width:768px)and (max-width:1023px){.sidebar{width:72px}.sidebar:not(.collapsed){width:260px}}@media(min-width:1024px){.sidebar{width:260px}.sidebar.collapsed{width:72px}}.sidebar,.sidebar-nav-item,.sidebar-user,.sidebar-action-btn{transition:all .2s cubic-bezier(.4,0,.2,1)}.sidebar-nav-item:focus,.sidebar-action-btn:focus,.sidebar-toggle:focus{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar-nav-item,.sidebar-user,.sidebar-action-btn,.sidebar-toggle{transition:none}}.under-dev-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out;padding:1rem}.under-dev-modal{position:relative;background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:1rem;padding:3rem 2rem 2rem;max-width:500px;width:100%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out;text-align:center}[data-theme=dark] .under-dev-modal{background:#1e1e1efa;border-color:#404040;box-shadow:0 20px 60px #0009}.under-dev-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.under-dev-title{font-size:1.75rem;font-weight:700;color:#ff9800;margin-bottom:.5rem;letter-spacing:-.02em}.under-dev-feature{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}.under-dev-description{font-size:1rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:1.5rem}.under-dev-release{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:1.5rem;font-size:.9375rem;color:var(--color-text-secondary)}.under-dev-release-icon{font-size:1.25rem}.under-dev-release strong{color:var(--color-text-primary);font-weight:600}.under-dev-progress{position:relative;width:100%;height:8px;background:var(--color-bg-tertiary);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.under-dev-progress-bar{position:absolute;left:0;top:0;height:100%;width:60%;background:linear-gradient(90deg,#ff9800,#ffc107);border-radius:4px;animation:progressPulse 2s ease-in-out infinite}@keyframes progressPulse{0%,to{opacity:1}50%{opacity:.6}}.under-dev-progress-text{font-size:.875rem;color:var(--color-text-tertiary);margin-bottom:2rem}.under-dev-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.under-dev-btn{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.5rem}.under-dev-btn.primary{background:linear-gradient(135deg,#5b21b6,#7c3aed);color:#fff;box-shadow:0 4px 12px #5b21b64d}.under-dev-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #5b21b666}.under-dev-btn.secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.under-dev-btn.secondary:hover{background:var(--color-bg-card);border-color:var(--color-text-tertiary)}.under-dev-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:1.25rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.under-dev-close:hover{background:var(--color-bg-card);border-color:var(--color-text-tertiary);transform:rotate(90deg)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:640px){.under-dev-modal{padding:2rem 1.5rem 1.5rem}.under-dev-icon{font-size:3rem}.under-dev-title{font-size:1.5rem}.under-dev-feature{font-size:1.125rem}.under-dev-actions{flex-direction:column;width:100%}.under-dev-btn{width:100%;justify-content:center}}.under-dev-btn:focus,.under-dev-close:focus{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.under-dev-overlay,.under-dev-modal,.under-dev-icon,.under-dev-progress-bar,.under-dev-btn,.under-dev-close{animation:none;transition:none}}.dev-mode-admin{margin-top:2rem}.dev-mode-toggle-section{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.dev-mode-toggle-content{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:1rem}.dev-mode-toggle-content h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.dev-mode-description{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.toggle-switch{position:relative;display:inline-block;width:60px;height:34px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:#4caf50}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.dev-mode-status{padding:.75rem 1.25rem;border-radius:.5rem;font-weight:600;font-size:.9375rem;text-align:center}.dev-mode-status.active{background:#4caf50;color:#fff}.dev-mode-status.inactive{background:#f44336;color:#fff}.features-table-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:.5rem;margin:1rem 0}.features-table{width:100%;border-collapse:collapse;font-size:.875rem}.features-table thead{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border)}.features-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--color-text-primary);white-space:nowrap}.features-table td{padding:1rem;border-bottom:1px solid var(--color-border);vertical-align:middle}.features-table tbody tr:last-child td{border-bottom:none}.features-table tbody tr:hover{background:var(--color-bg-card)}.feature-name{display:flex;flex-direction:column;gap:.25rem}.feature-name strong{color:var(--color-text-primary);font-size:.9375rem}.feature-route{font-family:monospace;font-size:.75rem;color:var(--color-text-secondary);background:var(--color-bg-tertiary);padding:.125rem .5rem;border-radius:.25rem;width:-moz-fit-content;width:fit-content}.feature-desc{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.checkbox-toggle{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-toggle span{font-size:.875rem;color:var(--color-text-secondary)}.feature-release{font-size:.8125rem;color:var(--color-text-tertiary);font-style:italic}.features-legend{margin-top:1.5rem;padding:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:.5rem}.features-legend h5{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.legend-items{display:flex;flex-direction:column;gap:.5rem}.legend-item{display:flex;align-items:center;gap:.75rem;font-size:.8125rem;color:var(--color-text-secondary)}@media(max-width:768px){.dev-mode-toggle-content{flex-direction:column;align-items:flex-start}.toggle-switch{align-self:flex-end}.features-table{font-size:.8125rem}.features-table th,.features-table td{padding:.5rem}.feature-name strong{font-size:.875rem}.feature-route{font-size:.6875rem}.feature-desc{font-size:.75rem}}[data-theme=dark] .dev-mode-toggle-section{background:#28282880;border-color:#404040}[data-theme=dark] .features-table thead{background:#1e1e1ecc}[data-theme=dark] .features-table tbody tr:hover{background:#32323280}[data-theme=dark] .features-legend{background:#28282880;border-color:#404040}.app-layout{display:flex;min-height:100vh;background:var(--color-bg-primary)}.app-main{flex:1;margin-left:260px;min-height:100vh;overflow-x:hidden;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed~.app-main{margin-left:72px}@media(max-width:768px){.app-main{margin-left:0!important}}@media(min-width:768px)and (max-width:1023px){.app-main{margin-left:72px}}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg-primary)}.loading-spinner{font-size:1.25rem;color:var(--color-text-secondary);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.coming-soon-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center;cursor:pointer;transition:all .3s}.coming-soon-placeholder:hover{transform:scale(1.05)}.coming-soon-placeholder h2{font-size:2rem;margin-bottom:1rem;color:var(--color-text-primary)}.coming-soon-placeholder p{font-size:1rem;color:var(--color-text-secondary)}.page-container{padding:2rem;max-width:1400px;margin:0 auto}@media(max-width:768px){.page-container{padding:4px 0}}.page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.page-header h1{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.page-header p{font-size:1rem;color:var(--color-text-secondary)}.breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;color:var(--color-text-secondary)}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--color-text-primary)}.breadcrumb span{color:var(--color-text-tertiary)}.breadcrumb .active{color:var(--color-text-primary);font-weight:500}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}@media(max-width:640px){.cards-grid{grid-template-columns:1fr;gap:.75rem}}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:.75rem;padding:1.5rem;transition:all .2s}@media(max-width:768px){.card{padding:.75rem;border-radius:10px}}.card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}[data-theme=dark] .card:hover{box-shadow:0 4px 12px #0000004d}.card-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.card-description{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.mobile-header{display:none}@media(max-width:768px){.mobile-header{display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;height:56px;padding:0 16px;padding-top:env(safe-area-inset-top,0);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);z-index:900;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=dark] .mobile-header{background:#1e1e1ef2}.app-main{padding-top:calc(56px + env(safe-area-inset-top,0))}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:none;border-radius:12px;cursor:pointer;transition:background .15s,transform .15s;-webkit-tap-highlight-color:transparent}.mobile-menu-btn:active{background:var(--color-bg-card);transform:scale(.95)}.hamburger-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;width:24px;height:24px;gap:5px}.hamburger-icon span{display:block;width:20px;height:2px;background:var(--color-text-primary);border-radius:1px;transition:transform .2s,opacity .2s}.mobile-header-logo{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.mobile-header-logo span:first-child{font-size:1.5rem}.hires-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:var(--color-bg-hover);border:1px solid var(--color-border);border-radius:10px;cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.hires-toggle:active{transform:scale(.95)}.hires-toggle.active{background:var(--color-accent);border-color:var(--color-accent)}.hires-icon{font-size:.7rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text-secondary)}.hires-toggle.active .hires-icon{color:var(--color-accent-text)}}@media(prefers-reduced-motion:reduce){.app-main,.card,.coming-soon-placeholder,.mobile-menu-btn,.hamburger-icon span{transition:none}}.settings-layout{display:grid;grid-template-columns:250px 1fr;gap:2rem;margin-top:2rem}@media(max-width:768px){.settings-layout{grid-template-columns:1fr}}.settings-tabs{display:flex;flex-direction:column;gap:.5rem}@media(max-width:768px){.settings-tabs{flex-direction:row;overflow-x:auto;gap:1rem}}.settings-tab{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.5rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);text-decoration:none;font-size:.9375rem;transition:all .2s;cursor:pointer}.settings-tab:hover{background:var(--color-bg-card);border-color:var(--color-text-tertiary)}.settings-tab.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:500}[data-theme=dark] .settings-tab.active{background:#5b21b6;border-color:#5b21b6}.settings-tab-icon{font-size:1.25rem}.settings-tab-label{flex:1}@media(max-width:768px){.settings-tab{white-space:nowrap}}.settings-content{min-width:0}.settings-section{max-width:800px}.settings-section-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}.settings-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.settings-card-description{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:1.5rem;line-height:1.5}.settings-card-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.settings-card-row:last-child{border-bottom:none}.settings-card-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.settings-card-value{font-size:.9375rem;color:var(--color-text-primary);text-align:right}.settings-card-info{margin-top:1rem;padding:.75rem;background:var(--color-bg-tertiary);border-radius:.5rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.5}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-primary{background:#5b21b6;color:#fff}.badge-success{background:#10b981;color:#fff}.badge-error{background:#ef4444;color:#fff}.badge-warning{background:#f59e0b;color:#fff}.badge-info{background:#3b82f6;color:#fff}.badge-secondary{background:#6b7280;color:#fff}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}@media(max-width:640px){.theme-options{grid-template-columns:1fr}}.theme-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:.75rem;cursor:pointer;transition:all .2s}.theme-option:hover{border-color:var(--color-text-tertiary);transform:translateY(-2px)}.theme-option.active{border-color:var(--color-accent);background:var(--color-bg-card);box-shadow:0 4px 12px #5b21b633}[data-theme=dark] .theme-option.active{border-color:#5b21b6;box-shadow:0 4px 12px #5b21b666}.theme-option-icon{font-size:2rem}.theme-option-label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.theme-option-check{position:absolute;top:.5rem;right:.5rem;color:var(--color-accent);font-size:1.25rem;font-weight:700}.language-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.language-option{position:relative;display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:.75rem;cursor:pointer;transition:all .2s;text-align:left}.language-option:hover{border-color:var(--color-text-tertiary);transform:translate(4px)}.language-option.active{border-color:var(--color-accent);background:var(--color-bg-card);box-shadow:0 4px 12px #5b21b633}[data-theme=dark] .language-option.active{border-color:#5b21b6;box-shadow:0 4px 12px #5b21b666}.language-option-flag{font-size:2rem}.language-option-name{font-size:.9375rem;font-weight:500;color:var(--color-text-primary)}.language-option-native{font-size:.75rem;color:var(--color-text-secondary)}.language-option-check{margin-left:auto;color:var(--color-accent);font-size:1.25rem;font-weight:700}@media(prefers-reduced-motion:reduce){.settings-tab,.theme-option,.language-option{transition:none}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;max-width:420px;pointer-events:none}@media(max-width:640px){.toast-container{left:1rem;right:1rem;max-width:none}}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 10px 25px #00000026;animation:slideIn .3s ease-out;pointer-events:auto;min-width:300px}[data-theme=dark] .toast{box-shadow:0 10px 25px #0006}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.875rem;font-weight:700}.toast-message{flex:1;font-size:.9375rem;line-height:1.5;color:var(--color-text-primary)}.toast-close{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:.25rem;transition:all .2s;font-size:1rem}.toast-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.toast-success{border-left:4px solid #10b981}.toast-success .toast-icon{background:#10b981;color:#fff}.toast-error{border-left:4px solid #ef4444}.toast-error .toast-icon{background:#ef4444;color:#fff}.toast-warning{border-left:4px solid #f59e0b}.toast-warning .toast-icon{background:#f59e0b;color:#fff}.toast-info{border-left:4px solid #3b82f6}.toast-info .toast-icon{background:#3b82f6;color:#fff}@media(max-width:640px){.toast{min-width:auto;padding:.875rem}.toast-message{font-size:.875rem}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.modal-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-surface);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text)}.modal-close-btn{background:transparent;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.modal-close-btn:hover:not(:disabled){background:var(--color-background);color:var(--color-text)}.modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--color-border)}.modal-info{padding:1.5rem;background:var(--color-background);border-top:1px solid var(--color-border)}.modal-info h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--color-text)}.modal-info ul{margin:0;padding-left:1.5rem;font-size:.875rem;color:var(--color-text-secondary);line-height:1.6}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.875rem;color:var(--color-text)}.form-group label .required{color:#ef4444}.form-group label .optional{color:var(--color-text-secondary);font-weight:400}.form-group input{width:100%;padding:.75rem;font-size:1rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-background);color:var(--color-text);transition:all .2s}.form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #6366f11a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-help{margin:.5rem 0 0;font-size:.75rem;color:var(--color-text-secondary);line-height:1.4}.alert{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;line-height:1.5}.alert-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.alert-success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#10b981}.btn{padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-background);color:var(--color-text)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.serial-input-row{display:flex;gap:8px;align-items:stretch}.serial-input-row input{flex:1;min-width:0}.serial-input-row .btn-qr-scan{flex-shrink:0;white-space:nowrap}@media(max-width:768px){.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;max-height:90vh;border-radius:16px 16px 0 0;animation:slideUpMobile .3s ease-out}@keyframes slideUpMobile{0%{transform:translateY(100%);opacity:1}to{transform:translateY(0);opacity:1}}.modal-header{padding:1rem}.modal-header h2{font-size:1.25rem}.modal-close-btn{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.modal-body{padding:1rem}.modal-footer{padding:1rem;flex-direction:column;gap:.625rem}.modal-info{padding:1rem}.form-group{margin-bottom:1rem}.form-group input{padding:.875rem .75rem;font-size:16px;min-height:48px}.btn{width:100%;padding:.875rem 1rem;font-size:1rem;min-height:48px}.serial-input-row{display:flex;gap:8px;align-items:stretch}.serial-input-row input{flex:1;min-width:0}.btn.btn-qr-scan{width:auto!important;flex-shrink:0;padding:0 .75rem;font-size:.85rem;min-height:48px;height:48px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.alert{font-size:.8rem}}@media(max-width:375px){.modal-header h2{font-size:1.1rem}.modal-header,.modal-body,.modal-footer,.modal-info{padding:.875rem}.form-group label{font-size:.8rem}}@media(max-width:768px){.modal-content{padding-bottom:env(safe-area-inset-bottom)}}:root{--touch-target-min: 44px;--touch-target-comfortable: 48px;--ease-out-expo: cubic-bezier(.19, 1, .22, 1);--ease-in-out-expo: cubic-bezier(.87, 0, .13, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--duration-instant: .1s;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--space-xs: clamp(.25rem, 1vw, .5rem);--space-sm: clamp(.5rem, 2vw, .75rem);--space-md: clamp(.75rem, 3vw, 1rem);--space-lg: clamp(1rem, 4vw, 1.5rem);--space-xl: clamp(1.5rem, 5vw, 2rem);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}@media(max-width:768px){html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}a,button,input,textarea,select{-webkit-touch-callout:none}*{-webkit-tap-highlight-color:transparent}}@media(max-width:768px){.touch-feedback{position:relative;overflow:hidden}.touch-feedback:after{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity var(--duration-fast);pointer-events:none}.touch-feedback:active:after{opacity:.1}.btn,button,[role=button],.clickable{transition:transform var(--duration-fast) var(--ease-spring),opacity var(--duration-fast),background-color var(--duration-fast);will-change:transform}.btn:active:not(:disabled),button:active:not(:disabled),[role=button]:active,.clickable:active{transform:scale(.97);opacity:.9}.card,.device-card,.dashboard-card,.building-card,.gallery-card{transition:transform var(--duration-normal) var(--ease-out-expo),box-shadow var(--duration-normal);will-change:transform}.card:active,.device-card:active,.dashboard-card:active,.building-card:active,.gallery-card:active{transform:scale(.98)}.sidebar-nav-item:active,.list-item:active,.menu-item:active{background:var(--color-bg-card)!important;transform:scale(.99)}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width var(--duration-slow),height var(--duration-slow)}.btn-ripple:active:before{width:200%;height:200%}}.skeleton{position:relative;overflow:hidden;background:var(--color-bg-card);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);animation:skeleton-shimmer 1.5s infinite}[data-theme=dark] .skeleton:after{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%)}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-text{height:1em;border-radius:4px;margin-bottom:.5em}.skeleton-text:last-child{width:70%}.skeleton-avatar{width:40px;height:40px;border-radius:50%}.skeleton-card{height:120px;border-radius:var(--radius-lg)}.skeleton-chart{height:200px;border-radius:var(--radius-md)}.skeleton-button{height:44px;width:120px;border-radius:var(--radius-full)}.page-enter{animation:page-fade-in var(--duration-normal) var(--ease-out-expo)}.page-exit{animation:page-fade-out var(--duration-fast) var(--ease-in-out-expo)}@keyframes page-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes page-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.slide-in-right{animation:slide-in-right var(--duration-normal) var(--ease-out-expo)}.slide-in-left{animation:slide-in-left var(--duration-normal) var(--ease-out-expo)}.slide-in-up{animation:slide-in-up var(--duration-normal) var(--ease-out-expo)}.slide-in-down{animation:slide-in-down var(--duration-normal) var(--ease-out-expo)}@keyframes slide-in-right{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.bottom-sheet-overlay{position:fixed;inset:0;background:#0000;z-index:1000;animation:overlay-fade-in var(--duration-normal) forwards}@keyframes overlay-fade-in{to{background:#0009}}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:bottom-sheet-slide-up var(--duration-slow) var(--ease-out-expo);padding-bottom:var(--safe-bottom)}@keyframes bottom-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bottom-sheet-closing{animation:bottom-sheet-slide-down var(--duration-normal) var(--ease-in-out-expo) forwards}@keyframes bottom-sheet-slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}.bottom-sheet-handle{width:36px;height:4px;background:var(--color-border);border-radius:2px;margin:12px auto 8px;flex-shrink:0}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-lg) var(--space-md);border-bottom:1px solid var(--color-border)}.bottom-sheet-title{font-size:1.125rem;font-weight:600;color:var(--color-text)}.bottom-sheet-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-background);border:none;border-radius:50%;color:var(--color-text-secondary);cursor:pointer}.bottom-sheet-body{flex:1;overflow-y:auto;padding:var(--space-lg);-webkit-overflow-scrolling:touch}.bottom-sheet-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-sm)}.bottom-sheet-footer .btn{width:100%}}.pull-indicator{position:fixed;top:0;left:50%;transform:translate(-50%) translateY(-100%);padding:12px 20px;background:var(--color-surface);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:0 4px 12px var(--color-shadow);display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--color-text-secondary);z-index:100;transition:transform var(--duration-normal) var(--ease-out-expo)}.pull-indicator.visible{transform:translate(-50%) translateY(var(--safe-top))}.pull-indicator .spinner{width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.fab{position:fixed;right:var(--space-lg);bottom:calc(var(--space-lg) + var(--safe-bottom));width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text);border:none;box-shadow:0 4px 16px #0003;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;z-index:100;transition:transform var(--duration-fast) var(--ease-spring),box-shadow var(--duration-fast)}.fab:active{transform:scale(.92);box-shadow:0 2px 8px #0003}.fab.extended{width:auto;border-radius:var(--radius-full);padding:0 20px;gap:8px}.fab.extended span{font-size:.875rem;font-weight:600}}@media(max-width:768px){.toast-container{position:fixed;bottom:calc(var(--space-lg) + var(--safe-bottom));left:var(--space-md);right:var(--space-md);z-index:2000;display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none}.toast{background:var(--color-text);color:var(--color-background);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0003;display:flex;align-items:center;gap:var(--space-sm);font-size:.875rem;font-weight:500;animation:toast-slide-up var(--duration-normal) var(--ease-out-expo);pointer-events:auto}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.toast.success{background:#059669;color:#fff}.toast.error{background:#dc2626;color:#fff}.toast.warning{background:#d97706;color:#fff}}@media(max-width:768px){.swipe-container{position:relative;overflow:hidden}.swipe-content{transition:transform var(--duration-fast) var(--ease-out-expo)}.swipe-actions{position:absolute;top:0;bottom:0;display:flex;align-items:stretch}.swipe-actions-left{left:0;transform:translate(-100%)}.swipe-actions-right{right:0;transform:translate(100%)}.swipe-action{display:flex;align-items:center;justify-content:center;padding:0 20px;font-weight:600;font-size:.875rem}.swipe-action.delete{background:#dc2626;color:#fff}.swipe-action.archive{background:#6366f1;color:#fff}.swipe-action.edit{background:#0891b2;color:#fff}}@media(max-width:768px){.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-sm) 0;padding-bottom:calc(var(--space-sm) + var(--safe-bottom));display:flex;justify-content:space-around;z-index:1000}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-xs) var(--space-md);background:none;border:none;color:var(--color-text-secondary);font-size:.625rem;text-decoration:none;transition:color var(--duration-fast);min-width:64px}.mobile-nav-item .icon{font-size:1.25rem;transition:transform var(--duration-fast) var(--ease-spring)}.mobile-nav-item.active{color:var(--color-accent)}.mobile-nav-item.active .icon{transform:scale(1.1)}.mobile-nav-item:active .icon{transform:scale(.9)}}@media(max-width:768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],textarea,select{font-size:16px!important;min-height:var(--touch-target-comfortable);padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-input);color:var(--color-text);transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #6366f11a}input[type=checkbox],input[type=radio]{width:22px;height:22px;accent-color:var(--color-accent)}input[type=range]{-webkit-appearance:none;width:100%;height:8px;background:var(--color-border);border-radius:4px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;background:var(--color-accent);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0003}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.floating-label-group{position:relative}.floating-label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:1rem;transition:all var(--duration-fast);pointer-events:none;background:var(--color-bg-input);padding:0 4px}.floating-label-group input:not(:-moz-placeholder)+.floating-label{top:0;font-size:.75rem;color:var(--color-accent)}.floating-label-group input:focus+.floating-label,.floating-label-group input:not(:placeholder-shown)+.floating-label{top:0;font-size:.75rem;color:var(--color-accent)}}.loading-spinner{width:24px;height:24px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner.small{width:16px;height:16px;border-width:2px}.loading-spinner.large{width:40px;height:40px;border-width:4px}.loading-dots{display:flex;gap:6px}.loading-dots span{width:8px;height:8px;background:var(--color-accent);border-radius:50%;animation:dots-bounce 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.loading-dots span:nth-child(3){animation-delay:0}@keyframes dots-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.page-loader{position:fixed;inset:0;background:var(--color-background);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);z-index:9999}.page-loader-logo{font-size:3rem;animation:pulse-scale 2s ease-in-out infinite}@keyframes pulse-scale{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl);text-align:center;min-height:300px}.empty-state-icon{font-size:4rem;margin-bottom:var(--space-lg);opacity:.5}.empty-state-title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-sm)}.empty-state-description{font-size:.875rem;color:var(--color-text-secondary);max-width:280px;margin-bottom:var(--space-lg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.skeleton:after{animation:none;background:var(--color-border)}}.safe-area-top{padding-top:var(--safe-top)}.safe-area-bottom{padding-bottom:var(--safe-bottom)}.safe-area-left{padding-left:var(--safe-left)}.safe-area-right{padding-right:var(--safe-right)}.safe-area-all{padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}@media(max-width:768px){.scroll-snap-x{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:var(--space-md);padding:var(--space-sm) var(--space-lg)}.scroll-snap-x::-webkit-scrollbar{display:none}.scroll-snap-item{flex-shrink:0;scroll-snap-align:start}.scroll-snap-center .scroll-snap-item{scroll-snap-align:center}}.stagger-children>*{animation:stagger-fade-in var(--duration-normal) var(--ease-out-expo) backwards}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}@keyframes stagger-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.haptic-light:active{animation:haptic-light .1s}.haptic-medium:active{animation:haptic-medium .1s}.haptic-heavy:active{animation:haptic-heavy .1s}@keyframes haptic-light{0%{transform:scale(1)}50%{transform:scale(.99)}to{transform:scale(1)}}@keyframes haptic-medium{0%{transform:scale(1)}50%{transform:scale(.97)}to{transform:scale(1)}}@keyframes haptic-heavy{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}@media(max-width:767px){html.hires-mode{font-size:14px}.hires-mode .dashboard-page,.hires-mode .page-container,.hires-mode .buildings-page{padding:6px 2px}.hires-mode .app-main{padding-top:calc(48px + env(safe-area-inset-top,0))}.hires-mode .mobile-header{height:48px}.hires-mode .mobile-menu-btn,.hires-mode .hires-toggle{width:36px;height:36px}.hires-mode .mobile-header-logo{font-size:1rem;gap:6px}.hires-mode .mobile-header-logo span:first-child{font-size:1.25rem}.hires-mode .dashboard-card,.hires-mode .device-card{padding:12px;border-radius:12px}.hires-mode .dashboard-card h3{font-size:.75rem;margin-bottom:10px}.hires-mode .dashboard-grid,.hires-mode .device-grid{gap:8px}.hires-mode .telemetry-grid{grid-template-columns:repeat(3,1fr);gap:6px}.hires-mode .balance-amount{font-size:1.6rem}.hires-mode .plan-name{font-size:1.1rem}.hires-mode .widget-value{font-size:.95rem}.hires-mode .section-header h2,.hires-mode .device-name{font-size:1rem}.hires-mode .device-type{font-size:.75rem}.hires-mode .btn,.hires-mode .sensor-btn{min-height:40px;min-width:40px;padding:8px 14px;font-size:.85rem;border-radius:10px}.hires-mode .sidebar{width:min(240px,75vw)}.hires-mode .sidebar-nav-item{min-height:40px;padding:.6rem .8rem;font-size:.85rem}.hires-mode .sidebar-nav-item span.text-xl{font-size:1.1rem}.hires-mode .sidebar-user{padding:.6rem}.hires-mode .sidebar-user-avatar{width:32px;height:32px;font-size:1rem}.hires-mode .sidebar-user-name{font-size:.8rem}.hires-mode .sidebar-user-email{font-size:.7rem}.hires-mode .sidebar-action-btn{min-height:40px;padding:.5rem .6rem;font-size:.8rem}.hires-mode .modal{border-radius:16px 16px 0 0;max-height:85vh}.hires-mode .modal h2{font-size:1.1rem;padding:0 16px}.hires-mode .modal p{font-size:.9rem;padding:0 16px}.hires-mode .modal-actions{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0));gap:8px}.hires-mode .modal-actions .btn{min-height:44px}.hires-mode .form input,.hires-mode .form select,.hires-mode .login-card input{min-height:44px;padding:10px 12px;font-size:14px;border-radius:10px}.hires-mode .login-card{padding:20px;margin:24px 12px}.hires-mode .login-card h1{font-size:1.3rem}.hires-mode .status-badge{padding:6px 12px;font-size:.75rem}.hires-mode .telemetry-widget{padding:10px;border-radius:10px}.hires-mode .telemetry-widget .widget-label{font-size:.7rem}.hires-mode .telemetry-widget .widget-value{font-size:1rem}.hires-mode .buildings-grid{grid-template-columns:repeat(2,1fr);gap:8px}.hires-mode .building-card{border-radius:12px}.hires-mode .building-card-image{height:100px}.hires-mode .building-card-content{padding:10px}.hires-mode .building-card h3{font-size:.9rem}.hires-mode .floor-plan-controls{padding:8px;gap:6px}.hires-mode .floor-plan-controls .btn{padding:6px 10px;font-size:.8rem}.hires-mode .chart-container{height:180px}.hires-mode .recharts-legend-wrapper{font-size:.7rem!important}.hires-mode .alert-rule-card{padding:12px;border-radius:10px}.hires-mode ::-webkit-scrollbar{width:4px;height:4px}}.legal-page{min-height:100vh;background:var(--gradient-bg, var(--color-bg-primary));padding:0}.legal-container{max-width:820px;margin:0 auto;padding:48px 24px 80px}.legal-back-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;padding:8px 16px;border-radius:var(--radius-full, 9999px);background:var(--color-bg-card, rgba(255, 255, 255, .7));border:1px solid var(--color-border, #e5e7eb);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .2s ease;margin-bottom:32px}.legal-back-link:hover{background:var(--color-bg-hover, #f3f4f6);color:var(--color-text-primary);transform:translate(-2px)}.legal-title{font-size:clamp(2rem,4vw,2.8rem);font-weight:700;color:var(--color-text-primary);margin:0 0 24px;letter-spacing:-.02em;line-height:1.15}.legal-section{margin-bottom:56px}.legal-section+.legal-section{padding-top:40px;border-top:1px solid var(--color-border, #e5e7eb)}.legal-card{background:var(--color-bg-card, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-xl, 20px);padding:36px 32px;box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .08));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.legal-card h2{font-size:1.1rem;font-weight:600;color:var(--color-text-secondary, #4b5563);margin:0 0 28px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light, #f3f4f6);letter-spacing:-.01em}.legal-block{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--color-border-light, #f3f4f6)}.legal-block:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.legal-block h3{font-size:1.05rem;font-weight:600;color:var(--color-text-primary);margin:0 0 12px;display:flex;align-items:center;gap:8px}.legal-block h3:before{content:"";display:inline-block;width:4px;height:18px;border-radius:2px;background:var(--color-accent, #3b82f6);flex-shrink:0}.legal-block p{font-size:.95rem;line-height:1.7;color:var(--color-text-secondary, #4b5563);margin:0 0 10px}.legal-block p:last-child{margin-bottom:0}.legal-basis{background:var(--color-accent-light, #eff6ff);border-left:3px solid var(--color-accent, #3b82f6);padding:10px 14px;border-radius:0 var(--radius-sm, 8px) var(--radius-sm, 8px) 0;margin-top:12px!important;font-size:.88rem!important}.legal-link{color:var(--color-accent, #3b82f6);text-decoration:none;font-weight:500;transition:all .2s ease;border-bottom:1px solid transparent}.legal-link:hover{border-bottom-color:var(--color-accent, #3b82f6);opacity:.85}.legal-date{text-align:right;font-size:.85rem;color:var(--color-text-tertiary, #9ca3af);margin-top:24px!important;font-style:italic}.legal-footer{text-align:center;padding-top:32px;color:var(--color-text-tertiary, #9ca3af);font-size:.85rem}.legal-footer p{margin:0}[data-theme=dark] .legal-card{background:#1e1e1ee6;border-color:#333}[data-theme=dark] .legal-basis{background:#3b82f61a}[data-theme=gold] .legal-card{background:#111111f2;border-color:#c9a22726;box-shadow:0 8px 32px #0006,0 0 0 1px #c9a22714}[data-theme=gold] .legal-title{color:#c9a227}[data-theme=gold] .legal-block h3:before{background:linear-gradient(180deg,#c9a227,#f4d03f)}[data-theme=gold] .legal-link{color:#c9a227}[data-theme=gold] .legal-link:hover{border-bottom-color:#c9a227}[data-theme=gold] .legal-basis{background:#c9a22714;border-left-color:#c9a227}[data-theme=gold] .legal-back-link{background:#161616e6;border-color:#c9a22733;color:#c9a227}[data-theme=gold] .legal-back-link:hover{background:#c9a2271a;color:#f4d03f}[data-theme=gold] .legal-card h2{color:#b8b8b8;border-bottom-color:#c9a2271a}[data-theme=gold] .legal-section+.legal-section{border-top-color:#c9a2271a}[data-theme=gold] .legal-block{border-bottom-color:#ffffff0d}[data-theme=aurora] .legal-card{background:#0f0f23b3;border-color:#00f0ff26;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px #00000080,inset 0 1px #ffffff0d}[data-theme=aurora] .legal-title{background:linear-gradient(135deg,#00f0ff,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=aurora] .legal-block h3:before{background:linear-gradient(180deg,#00f0ff,#8b5cf6)}[data-theme=aurora] .legal-link{color:#00f0ff}[data-theme=aurora] .legal-link:hover{color:#8b5cf6;border-bottom-color:#8b5cf6;text-shadow:0 0 10px rgba(0,240,255,.3)}[data-theme=aurora] .legal-basis{background:#00f0ff0f;border-left-color:#00f0ff}[data-theme=aurora] .legal-back-link{background:#0f0f23cc;border-color:#00f0ff33;color:#00f0ff}[data-theme=aurora] .legal-back-link:hover{background:#00f0ff14;border-color:#00f0ff66;box-shadow:0 0 20px #00f0ff26}[data-theme=aurora] .legal-card h2{color:#a8b4d4;border-bottom-color:#00f0ff1a}[data-theme=aurora] .legal-section+.legal-section{border-top-color:#00f0ff1a}[data-theme=aurora] .legal-block{border-bottom-color:#6478b41a}@media(max-width:640px){.legal-container{padding:24px 16px 60px}.legal-card{padding:24px 20px;border-radius:var(--radius-lg, 16px)}.legal-title{font-size:1.8rem}}.legal-section{animation:legalFadeIn .5s ease both}.legal-section:nth-child(2){animation-delay:.1s}@keyframes legalFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
