.tf-button{position:relative;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap;overflow:hidden}.tf-button--small{padding:.5rem 1rem;font-size:.875rem}.tf-button--medium{padding:.75rem 1.5rem;font-size:1rem}.tf-button--large{padding:1rem 2rem;font-size:1.125rem}.tf-button--primary{background:linear-gradient(135deg,var(--primary, #00d4ff) 0%,var(--primary2, #7b5cff) 100%);color:#fff;box-shadow:0 4px 16px #00d4ff66}.tf-button--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00d4ff80}.tf-button--secondary{background:#ffffff1a;color:var(--text-primary, #fff);border:1px solid rgba(255,255,255,.2)}.tf-button--secondary:hover:not(:disabled){background:#ffffff26;transform:translateY(-2px)}.tf-button--danger{background:linear-gradient(135deg,#f36,#ff6b9d);color:#fff;box-shadow:0 4px 16px #f366}.tf-button--danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ff336680}.tf-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.tf-button--loading{cursor:wait}.tf-button__spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.tf-button__spinner svg{width:1.25rem;height:1.25rem;animation:tf-button-spin .8s linear infinite}.tf-button__spinner circle{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-dasharray:50;stroke-dashoffset:25}.tf-button__content{transition:opacity .2s}@keyframes tf-button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tf-button:active:not(:disabled){transform:scale(.98)}.tf-input-group{display:flex;flex-direction:column;gap:.5rem}.tf-input-label{font-size:.9rem;font-weight:600;color:var(--text-primary, rgba(255, 255, 255, .95));letter-spacing:.01em}.tf-input{width:100%;padding:.875rem 1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:12px;color:var(--text-primary, #fff);font-size:1rem;font-family:inherit;transition:all .2s ease;outline:none}.tf-input::placeholder{color:#fff6}.tf-input:focus{background:#ffffff1a;border-color:var(--primary, #00d4ff);box-shadow:0 0 0 3px #00d4ff1a}.tf-input:disabled{opacity:.6;cursor:not-allowed}.tf-input--error{border-color:#f36}.tf-input--error:focus{border-color:#f36;box-shadow:0 0 0 3px #ff33661a}.tf-input-error{font-size:.85rem;color:#f36;margin-top:-.25rem}[data-theme=dark] .tf-input{background:#ffffff14;border-color:#ffffff26}[data-theme=light] .tf-input{background:#0000000a;border-color:#0000001a;color:#1a1a2e}[data-theme=light] .tf-input::placeholder{color:#0006}[data-theme=light] .tf-input:focus{background:#0000000f}[data-theme=light] .tf-input-label{color:#1a1a2e}.tf-spinner{display:inline-flex;align-items:center;justify-content:center}.tf-spinner__svg{animation:tf-spinner-rotate 1s linear infinite}.tf-spinner__circle{stroke-dasharray:50;stroke-dashoffset:25;transform-origin:center}.tf-spinner__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}@keyframes tf-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tf-toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000004d;min-width:300px;max-width:500px;animation:tf-toast-slide-in .3s ease}.tf-toast__icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;font-size:1.25rem;font-weight:700;flex-shrink:0}.tf-toast__message{flex:1;color:var(--text-primary, #fff);font-size:.95rem;line-height:1.4}.tf-toast__close{background:none;border:none;color:var(--text-secondary, rgba(255, 255, 255, .7));font-size:1.25rem;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s;flex-shrink:0}.tf-toast__close:hover{color:var(--text-primary, #fff)}.tf-toast--success{border-color:#10b98180}.tf-toast--success .tf-toast__icon{background:#10b98133;color:#10b981}.tf-toast--error{border-color:#ff336680}.tf-toast--error .tf-toast__icon{background:#f363;color:#f36}.tf-toast--warning{border-color:#fbbf2480}.tf-toast--warning .tf-toast__icon{background:#fbbf2433;color:#fbbf24}.tf-toast--info{border-color:#00d4ff80}.tf-toast--info .tf-toast__icon{background:#00d4ff33;color:#00d4ff}@keyframes tf-toast-slide-in{0%{opacity:0;transform:translateY(-1rem)}to{opacity:1;transform:translateY(0)}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast-container>*{pointer-events:auto}.tf-skeleton{background:linear-gradient(90deg,#ffffff14,#ffffff1f,#ffffff14);background-size:200% 100%;animation:tf-skeleton-shimmer 1.5s ease-in-out infinite;border-radius:8px}.tf-skeleton--text{border-radius:4px;margin-bottom:.5rem}.tf-skeleton--circle{border-radius:50%}.tf-skeleton--rect{border-radius:12px}.tf-skeleton--card{border-radius:16px}.tf-skeleton-tank{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px}.tf-skeleton-list{display:flex;flex-direction:column;gap:1rem}.tf-skeleton-list-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px}.tf-skeleton-list-content{flex:1;display:flex;flex-direction:column;gap:.5rem}@keyframes tf-skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}[data-theme=light] .tf-skeleton{background:linear-gradient(90deg,#0000000f,#0000001f,#0000000f);background-size:200% 100%}[data-theme=light] .tf-skeleton-tank,[data-theme=light] .tf-skeleton-list-item{background:#00000008;border-color:#00000014}.global-search-trigger{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:8px;color:var(--text-secondary, #6c757d);font-size:14px;cursor:pointer;transition:all .2s ease;min-width:280px}[data-theme=dark] .global-search-trigger{background:var(--card-bg, #1a1d2d);border-color:var(--border-color, rgba(255, 255, 255, .08));color:var(--text-secondary, #a6a8c6)}.global-search-trigger:hover{border-color:var(--primary, #6f42c1);color:var(--text-primary, #1a1d2d);box-shadow:0 2px 8px #6f42c11a}[data-theme=dark] .global-search-trigger:hover{color:var(--text-primary, #f4f7ff);box-shadow:0 2px 8px #6f42c133}.global-search-trigger svg{flex-shrink:0}.global-search-trigger span{flex:1;text-align:left}.global-search-trigger kbd{padding:4px 8px;background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:4px;font-size:11px;font-weight:600;color:var(--text-secondary, #6c757d)}[data-theme=dark] .global-search-trigger kbd{background:var(--bg-hover, #252941);border-color:var(--border-color, rgba(255, 255, 255, .08));color:var(--text-secondary, #a6a8c6)}.global-search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:9999;animation:overlayFadeIn .15s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.global-search-modal{width:90%;max-width:640px;background:var(--card-bg, #ffffff);border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden;animation:modalSlideIn .2s ease;max-height:70vh;display:flex;flex-direction:column}[data-theme=dark] .global-search-modal{background:var(--card-bg, #1a1d2d);box-shadow:0 20px 60px #0009}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.global-search-input-wrapper{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border-color, rgba(0, 0, 0, .08))}[data-theme=dark] .global-search-input-wrapper{border-bottom-color:var(--border-color, rgba(255, 255, 255, .08))}.search-icon{flex-shrink:0;color:var(--text-secondary, #6c757d)}[data-theme=dark] .search-icon{color:var(--text-secondary, #a6a8c6)}.global-search-input{flex:1;border:none;outline:none;font-size:16px;font-weight:500;color:var(--text-primary, #1a1d2d);background:transparent}[data-theme=dark] .global-search-input{color:var(--text-primary, #f4f7ff)}.global-search-input::placeholder{color:var(--text-secondary, #6c757d)}[data-theme=dark] .global-search-input::placeholder{color:var(--text-secondary, #a6a8c6)}.clear-button{flex-shrink:0;padding:4px;background:transparent;border:none;color:var(--text-secondary, #6c757d);cursor:pointer;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.clear-button:hover{background:var(--bg-secondary, #f8f9fa);color:var(--text-primary, #1a1d2d)}[data-theme=dark] .clear-button:hover{background:var(--bg-hover, #252941);color:var(--text-primary, #f4f7ff)}.escape-hint{padding:4px 8px;background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:4px;font-size:11px;font-weight:600;color:var(--text-secondary, #6c757d)}[data-theme=dark] .escape-hint{background:var(--bg-hover, #252941);border-color:var(--border-color, rgba(255, 255, 255, .08));color:var(--text-secondary, #a6a8c6)}.global-search-results{flex:1;overflow-y:auto;padding:12px 0;max-height:400px}.global-search-results::-webkit-scrollbar{width:8px}.global-search-results::-webkit-scrollbar-track{background:transparent}.global-search-results::-webkit-scrollbar-thumb{background:var(--border-color, rgba(0, 0, 0, .15));border-radius:4px}[data-theme=dark] .global-search-results::-webkit-scrollbar-thumb{background:var(--border-color, rgba(255, 255, 255, .15))}.global-search-results::-webkit-scrollbar-thumb:hover{background:var(--border-color, rgba(0, 0, 0, .25))}[data-theme=dark] .global-search-results::-webkit-scrollbar-thumb:hover{background:var(--border-color, rgba(255, 255, 255, .25))}.search-category{margin-bottom:8px}.category-header{display:flex;align-items:center;gap:8px;padding:12px 24px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #6c757d)}[data-theme=dark] .category-header{color:var(--text-secondary, #a6a8c6)}.search-result-item{display:flex;align-items:center;gap:16px;padding:12px 24px;cursor:pointer;transition:all .15s ease}.search-result-item:hover,.search-result-item.selected{background:var(--hover-bg, rgba(111, 66, 193, .08))}[data-theme=dark] .search-result-item:hover,[data-theme=dark] .search-result-item.selected{background:var(--hover-bg, rgba(111, 66, 193, .15))}.result-icon{width:36px;height:36px;border-radius:8px;background:var(--bg-secondary, #f8f9fa);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}[data-theme=dark] .result-icon{background:var(--bg-hover, #252941)}.result-content{flex:1;min-width:0}.result-label{font-size:14px;font-weight:600;color:var(--text-primary, #1a1d2d);margin-bottom:2px}[data-theme=dark] .result-label{color:var(--text-primary, #f4f7ff)}.result-description{font-size:12px;color:var(--text-secondary, #6c757d);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .result-description{color:var(--text-secondary, #a6a8c6)}.result-indicator{flex-shrink:0;color:var(--primary, #6f42c1)}.no-results{text-align:center;padding:48px 24px}.no-results-icon{font-size:48px;margin-bottom:16px;opacity:.5}.no-results p{font-size:16px;font-weight:600;color:var(--text-primary, #1a1d2d);margin:0 0 4px}[data-theme=dark] .no-results p{color:var(--text-primary, #f4f7ff)}.no-results span{font-size:13px;color:var(--text-secondary, #6c757d)}[data-theme=dark] .no-results span{color:var(--text-secondary, #a6a8c6)}.global-search-footer{padding:12px 24px;border-top:1px solid var(--border-color, rgba(0, 0, 0, .08));background:var(--bg-secondary, #f8f9fa)}[data-theme=dark] .global-search-footer{border-top-color:var(--border-color, rgba(255, 255, 255, .08));background:var(--bg-hover, #252941)}.footer-hints{display:flex;gap:16px;flex-wrap:wrap}.hint{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary, #6c757d)}[data-theme=dark] .hint{color:var(--text-secondary, #a6a8c6)}.hint kbd{padding:2px 6px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:4px;font-size:10px;font-weight:600}[data-theme=dark] .hint kbd{background:var(--card-bg, #1a1d2d);border-color:var(--border-color, rgba(255, 255, 255, .08))}@media (max-width: 768px){.global-search-modal{width:95%;max-height:80vh}.global-search-trigger{min-width:auto;padding:8px 12px}.global-search-trigger span{display:none}.global-search-input-wrapper{padding:16px}.global-search-input{font-size:15px}.category-header{padding:10px 16px 6px}.search-result-item{padding:10px 16px}.result-icon{width:32px;height:32px;font-size:16px}.footer-hints{justify-content:center}}.global-search-input:focus{outline:none}.search-result-item:focus{outline:2px solid var(--primary, #6f42c1);outline-offset:-2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.search-result-item{animation:fadeIn .15s ease}@media (prefers-reduced-motion: reduce){.global-search-modal,.search-result-item,.global-search-overlay{animation:none}}.global-search-trigger:focus-visible{outline:2px solid var(--primary, #6f42c1);outline-offset:2px}.notification-center{position:relative}.notification-trigger{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary, #6c757d);cursor:pointer;border-radius:8px;transition:all .2s ease}.notification-trigger:hover{background:var(--hover-bg, rgba(111, 66, 193, .08));color:var(--primary, #6f42c1)}[data-theme=dark] .notification-trigger:hover{background:var(--hover-bg, rgba(111, 66, 193, .15))}.notification-trigger svg{width:20px;height:20px}.notification-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 5px;background:linear-gradient(135deg,#ff6b6b,#ff8787);color:#fff;font-size:11px;font-weight:700;border-radius:9px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #ff6b6b66;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-width:calc(100vw - 32px);background:var(--card-bg, #ffffff);border-radius:12px;box-shadow:0 8px 32px #00000026;border:1px solid var(--border-color, rgba(0, 0, 0, .08));overflow:hidden;z-index:1000}[data-theme=dark] .notification-dropdown{background:var(--card-bg, #1a1d2d);box-shadow:0 8px 32px #0006;border-color:var(--border-color, rgba(255, 255, 255, .08))}.notification-header{padding:16px 20px;border-bottom:1px solid var(--border-color, rgba(0, 0, 0, .08));display:flex;justify-content:space-between;align-items:center}[data-theme=dark] .notification-header{border-bottom-color:var(--border-color, rgba(255, 255, 255, .08))}.notification-title{display:flex;align-items:center;gap:8px}.notification-title h3{font-size:16px;font-weight:600;color:var(--text-primary, #1a1d2d);margin:0}[data-theme=dark] .notification-title h3{color:var(--text-primary, #f4f7ff)}.unread-count{padding:2px 8px;background:linear-gradient(135deg,#6f42c1,#9b88ff);color:#fff;font-size:11px;font-weight:600;border-radius:10px}.notification-actions{display:flex;gap:12px}.action-link{padding:4px 8px;background:transparent;border:none;color:var(--primary, #6f42c1);font-size:12px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s ease}.action-link:hover{background:var(--hover-bg, rgba(111, 66, 193, .08))}[data-theme=dark] .action-link:hover{background:var(--hover-bg, rgba(111, 66, 193, .15))}.notification-filters{display:flex;gap:4px;padding:12px 16px;border-bottom:1px solid var(--border-color, rgba(0, 0, 0, .08));overflow-x:auto;scrollbar-width:none}.notification-filters::-webkit-scrollbar{display:none}[data-theme=dark] .notification-filters{border-bottom-color:var(--border-color, rgba(255, 255, 255, .08))}.filter-tab{padding:6px 12px;background:transparent;border:none;color:var(--text-secondary, #6c757d);font-size:12px;font-weight:500;cursor:pointer;border-radius:6px;white-space:nowrap;transition:all .2s ease}[data-theme=dark] .filter-tab{color:var(--text-secondary, #a6a8c6)}.filter-tab:hover{background:var(--bg-secondary, #f8f9fa);color:var(--text-primary, #1a1d2d)}[data-theme=dark] .filter-tab:hover{background:var(--bg-hover, #252941);color:var(--text-primary, #f4f7ff)}.filter-tab.active{background:linear-gradient(135deg,#6f42c1,#9b88ff);color:#fff}.notification-list{max-height:400px;overflow-y:auto}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:transparent}.notification-list::-webkit-scrollbar-thumb{background:var(--border-color, rgba(0, 0, 0, .15));border-radius:3px}[data-theme=dark] .notification-list::-webkit-scrollbar-thumb{background:var(--border-color, rgba(255, 255, 255, .15))}.notification-item{display:flex;gap:12px;padding:16px;border-bottom:1px solid var(--border-color, rgba(0, 0, 0, .05));cursor:pointer;transition:all .2s ease;position:relative}[data-theme=dark] .notification-item{border-bottom-color:var(--border-color, rgba(255, 255, 255, .05))}.notification-item:hover{background:var(--bg-secondary, #f8f9fa)}[data-theme=dark] .notification-item:hover{background:var(--bg-hover, #252941)}.notification-item.unread{background:var(--hover-bg, rgba(111, 66, 193, .04))}[data-theme=dark] .notification-item.unread{background:var(--hover-bg, rgba(111, 66, 193, .08))}.notification-item.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary, #6f42c1)}.notification-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.notification-item--alert .notification-icon{background:linear-gradient(135deg,#ff6b6b,#ff8787)}.notification-item--warning .notification-icon{background:linear-gradient(135deg,#fdcb6e,#ffeaa7)}.notification-item--success .notification-icon{background:linear-gradient(135deg,#51cf66,#69db7c)}.notification-item--info .notification-icon{background:linear-gradient(135deg,#74b9ff,#a0d4ff)}.notification-content{flex:1;min-width:0}.notification-header-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.notification-title{font-size:14px;font-weight:600;color:var(--text-primary, #1a1d2d)}[data-theme=dark] .notification-title{color:var(--text-primary, #f4f7ff)}.unread-dot{width:8px;height:8px;background:var(--primary, #6f42c1);border-radius:50%;flex-shrink:0}.notification-message{font-size:13px;color:var(--text-secondary, #6c757d);margin:0 0 8px;line-height:1.4}[data-theme=dark] .notification-message{color:var(--text-secondary, #a6a8c6)}.notification-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-time{font-size:11px;color:var(--text-secondary, #6c757d)}[data-theme=dark] .notification-time{color:var(--text-secondary, #a6a8c6)}.notification-link{font-size:12px;font-weight:600;color:var(--primary, #6f42c1);text-decoration:none;white-space:nowrap}.notification-link:hover{text-decoration:underline}.notification-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.notification-item:hover .notification-item-actions{opacity:1}.icon-btn{width:28px;height:28px;padding:4px;background:transparent;border:none;color:var(--text-secondary, #6c757d);cursor:pointer;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}[data-theme=dark] .icon-btn{color:var(--text-secondary, #a6a8c6)}.icon-btn:hover{background:var(--bg-secondary, #f8f9fa);color:var(--primary, #6f42c1)}[data-theme=dark] .icon-btn:hover{background:var(--bg-hover, #252941)}.icon-btn.delete-btn:hover{background:#ff6b6b1a;color:var(--danger, #ff6b6b)}.notification-empty{text-align:center;padding:48px 24px}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.notification-empty p{font-size:14px;color:var(--text-secondary, #6c757d);margin:0}[data-theme=dark] .notification-empty p{color:var(--text-secondary, #a6a8c6)}.notification-dropdown-footer{padding:12px 16px;border-top:1px solid var(--border-color, rgba(0, 0, 0, .08));text-align:center}[data-theme=dark] .notification-dropdown-footer{border-top-color:var(--border-color, rgba(255, 255, 255, .08))}.view-all-link{font-size:13px;font-weight:600;color:var(--primary, #6f42c1);text-decoration:none}.view-all-link:hover{text-decoration:underline}@media (max-width: 768px){.notification-dropdown{right:-100px;width:360px}.notification-filters{padding:8px 12px}.filter-tab{padding:4px 8px;font-size:11px}.notification-header{flex-direction:column;gap:12px;align-items:flex-start}.notification-actions{width:100%;justify-content:space-between}.notification-item-actions{opacity:1}}@media (max-width: 480px){.notification-dropdown{right:-16px;left:16px;width:auto}.notification-header{padding:12px 16px}.notification-list{max-height:300px}.notification-item{padding:12px}}.notification-trigger:focus-visible{outline:2px solid var(--primary, #6f42c1);outline-offset:2px}@media (prefers-reduced-motion: reduce){.notification-badge{animation:none}.notification-item{transition:none}}:root{--primary: #00d4ff;--primary2: #7b5cff;--error: #ff4d6d;--success: #00ff88;--bg-dark: #050816;--bg-light: #f1f5ff;--text-dark-main: #f4f7ff;--text-dark-soft: #c4cfdd;--text-light-main: #0f172a;--text-light-soft: #475569;--glass: rgba(255,255,255,.06);--glass-border: rgba(255,255,255,.14);--glass-inner: rgba(255,255,255,.24);--blur: 42px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;max-width:100vw;min-height:100%;min-height:100dvh;overflow-x:hidden;margin:0;padding:0;position:relative}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-overflow-scrolling:touch;overflow-x:hidden}body[data-theme=dark]{background:radial-gradient(circle at 20% 0%,#152044,#050816 60%,#02030a);color:var(--text-dark-main)}body[data-theme=light]{background:radial-gradient(circle at 20% 0%,#fff,#e8eeff,#d7e0ff);color:var(--text-light-main)}.login-page{width:100%;min-height:100vh;min-height:100dvh;position:relative;overflow-x:hidden}.bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}body[data-theme=dark] .bg{opacity:1}body[data-theme=light] .bg{opacity:.35}.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4;animation:float 24s ease-in-out infinite;will-change:transform}@media (max-width: 768px){.orb{animation:none;filter:blur(60px);opacity:.3}}@media (prefers-reduced-motion: reduce){.orb{animation:none}}.orb-1{width:350px;height:350px;background:linear-gradient(135deg,var(--primary),#4b7bff);top:-10%;left:-5%}.orb-2{width:280px;height:280px;background:linear-gradient(135deg,var(--primary2),#ff4fd1);bottom:-10%;right:-5%;animation-delay:8s}.orb-3{width:220px;height:220px;background:linear-gradient(135deg,var(--success),#00ccaa);top:40%;left:50%;animation-delay:16s;opacity:.25}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(20px,-25px)}}.shell{position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding:0;z-index:10;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:max(.8rem,env(safe-area-inset-top,.8rem));width:100%;max-width:100vw;box-sizing:border-box}@media (min-width: 768px){.shell{padding:.8rem;display:flex;flex-direction:column;justify-content:center}}@media (min-width: 1200px){.shell{padding:1rem;max-height:100vh;max-height:100dvh}}@media (min-height: 800px) and (min-width: 960px){.hero,.login-side{align-items:center}}@media (max-width: 932px) and (min-height: 700px){.shell{padding-top:max(4rem,env(safe-area-inset-top,4rem))}}@media (max-width: 480px) and (min-height: 600px){.shell{padding-top:max(3.5rem,env(safe-area-inset-top,3.5rem))}}.main-layout{display:flex;flex-direction:column;width:100%;max-width:100%;margin:0 auto;gap:0;padding:.8rem;flex:1;box-sizing:border-box;overflow-x:hidden}@media (min-width: 960px){.main-layout{flex-direction:row;gap:1rem;padding:1rem 2rem;max-width:1400px;align-items:center;justify-content:flex-start;margin:0 auto}}.hero{display:none}@media (min-width: 960px){.hero{display:flex;flex:1.5;align-items:center}}.hero-inner{width:100%;border-radius:28px;padding:1.5rem;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.12);position:relative;overflow:hidden;opacity:1}body[data-theme=dark] .hero-inner{background:linear-gradient(135deg,#070c22f2,#060a1ceb)}body[data-theme=light] .hero-inner{background:linear-gradient(135deg,#fff,#edf2ff);border-color:#0f172a0f;box-shadow:0 20px 50px #0f172a1a}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#03101d;padding:.3rem .8rem;border-radius:20px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #00d4ff66}50%{box-shadow:0 0 0 10px #00d4ff00}}.hero-title{font-size:1.8rem;font-weight:900;margin-bottom:.5rem;line-height:1.2;background:linear-gradient(135deg,var(--text-dark-main),var(--primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body[data-theme=light] .hero-title{background:linear-gradient(135deg,var(--text-light-main),#0066cc);-webkit-background-clip:text;background-clip:text}.hero-subtitle{font-size:.9rem;opacity:.85;margin-bottom:1rem;line-height:1.5;max-width:500px;color:var(--text-dark-soft)}body[data-theme=light] .hero-subtitle{color:var(--text-light-soft)}.dashboard-preview{background:linear-gradient(135deg,#0f0f23fa,#1a1a3ef2);border-radius:12px;padding:.8rem;border:1px solid rgba(0,212,255,.3);box-shadow:0 20px 60px #00000080,0 0 40px #00d4ff1a;margin-bottom:1rem;position:relative;overflow:hidden}body[data-theme=light] .dashboard-preview{background:#fffc;border-color:#0000001a}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem .6rem;background:#0000004d;border-radius:8px;margin-bottom:.6rem}body[data-theme=light] .dashboard-header{background:#0000000d}.dashboard-brand{display:flex;align-items:center;gap:.4rem;font-weight:700;font-size:.85rem;color:var(--primary)}.brand-badge{background:linear-gradient(135deg,var(--primary),#0099cc);color:#0f0f23;padding:2px 6px;border-radius:4px;font-size:.5rem;font-weight:700}.dashboard-status{display:flex;align-items:center;gap:.3rem;background:linear-gradient(135deg,#10b981,#059669);padding:.25rem .6rem;border-radius:6px;font-size:.65rem;font-weight:600;color:#fff}.status-dot{width:6px;height:6px;background:#fff;border-radius:50%;animation:blink 1.5s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.tanks-grid-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.tank-card-preview{background:linear-gradient(135deg,#16213ef2,#2a3f5fe6);border:1px solid rgba(0,212,255,.15);border-radius:8px;padding:.4rem;display:flex;flex-direction:column;gap:.3rem;transition:all .3s ease;position:relative;overflow:hidden}body[data-theme=light] .tank-card-preview{background:linear-gradient(135deg,#fffffff2,#f8fafce6);border-color:#0000001a}.tank-card-preview:nth-child(2){border-color:#00ff8880;box-shadow:0 0 20px #00ff884d;animation:fillPulse 2s ease-in-out infinite}@keyframes fillPulse{0%,to{box-shadow:0 0 20px #00ff884d}50%{box-shadow:0 0 35px #0f89}}.tankWrap{width:100%;height:60px;position:relative;display:flex;align-items:center;justify-content:center}.tank{width:40px;height:100%;position:relative;background:linear-gradient(to right,#ffffff1a,#ffffff0d,#ffffff1a);border-radius:20px/10px;box-shadow:inset -4px 0 8px #0000004d,inset 4px 0 8px #ffffff1a,0 3px 10px #0006;overflow:hidden}body[data-theme=light] .tank{background:linear-gradient(to right,#00000008,#00000003,#00000008);box-shadow:inset -2px 0 4px #0000001a,inset 2px 0 4px #ffffff80,0 2px 6px #0000001a}.liquid{position:absolute;bottom:0;left:0;right:0;border-radius:0 0 20px 20px/0 0 9px 9px;box-shadow:inset 0 -5px 10px #0000004d;transition:height 1s ease}.liquid:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);animation:liquidShimmer 3s ease-in-out infinite}@keyframes liquidShimmer{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.liquid-surface{position:absolute;top:0;left:0;width:100%;height:2px;background:#ffffff80;animation:wavePreview 3s ease-in-out infinite}@keyframes wavePreview{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}.tank-reflection{position:absolute;top:10px;left:calc(50% - 14px);width:10px;height:20px;background:linear-gradient(135deg,rgba(255,255,255,.4),transparent);border-radius:50%;filter:blur(3px);z-index:2}.pct{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.9rem;font-weight:900;color:#fff;text-shadow:1px 1px 3px rgba(0,0,0,.9),0 0 8px rgba(0,0,0,.6);z-index:10}.tank-info{display:flex;flex-direction:column;align-items:center;gap:.2rem}.tank-name{font-size:.6rem;font-weight:700;color:var(--text-dark-main);text-align:center}body[data-theme=light] .tank-name{color:var(--text-light-main)}.tank-product{font-size:.55rem;padding:.15rem .4rem;border-radius:4px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.tank-volume{font-size:.55rem;color:var(--text-dark-soft);text-align:center}body[data-theme=light] .tank-volume{color:var(--text-light-soft)}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin-bottom:1rem}.feature-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#00d4ff0f;border:1px solid rgba(0,212,255,.15);border-radius:10px;transition:all .3s ease}body[data-theme=light] .feature-item{background:#00000008;border-color:#0000001a}.feature-item:hover{background:#00d4ff1f;transform:translateY(-2px);box-shadow:0 8px 24px #00d4ff33}.feature-icon{width:32px;height:32px;background:linear-gradient(135deg,var(--primary),var(--primary2));border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.feature-text{font-size:.7rem;font-weight:600;line-height:1.2;color:var(--text-dark-main)}body[data-theme=light] .feature-text{color:var(--text-light-main)}.metrics-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.metric-card{padding:.6rem;border-radius:10px;background:#00d4ff14;border:1px solid rgba(0,212,255,.2);text-align:center;transition:all .3s ease}body[data-theme=light] .metric-card{background:#00000008;border-color:#0000001a}.metric-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px #00d4ff4d}.metric-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-bottom:.2rem;color:var(--text-dark-main)}body[data-theme=light] .metric-label{color:var(--text-light-soft)}.metric-value{font-size:1.3rem;font-weight:900;background:linear-gradient(135deg,var(--primary),var(--primary2));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.metric-unit{font-size:.6rem;opacity:.7;margin-top:.1rem;color:var(--text-dark-soft)}body[data-theme=light] .metric-unit{color:var(--text-light-soft)}.login-side{flex:1;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;padding:0;box-sizing:border-box;min-width:0}@media (min-width: 960px){.login-side{max-width:440px;width:100%;flex-shrink:0;justify-content:flex-start;margin-left:0}.card{margin-left:0;margin-right:auto}}@media (max-width: 959px){.login-side{width:100%;max-width:100%;padding:0}.card{margin-left:auto;margin-right:auto;width:100%;max-width:min(380px,calc(100vw - 2rem))}}.card{border-radius:24px;padding:1.5rem 1.2rem;-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));position:relative;border:1px solid var(--glass-border);width:100%;max-width:min(420px,calc(100vw - 2rem));margin:.5rem auto;box-sizing:border-box;background:var(--glass);box-shadow:0 25px 50px #0000004d;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}@media (min-width: 480px){.card{padding:1.8rem 1.6rem}}@media (max-width: 932px) and (min-height: 700px){.card{margin-top:0;padding:1.8rem 1.4rem}}body[data-theme=light] .card{background:#ffffffe6;border-color:#0f172a0f;box-shadow:0 18px 40px #0f172a26}.logo{text-align:left;margin-bottom:.8rem;width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;margin-left:0;margin-right:0;padding:0}.logo-icon{width:60px;height:60px;border-radius:18px;margin:0 auto .5rem;padding:4px;background:radial-gradient(circle at 30% 0%,var(--primary),#004cff)}.logo-icon img{width:100%;height:100%;border-radius:14px;object-fit:cover}.logo-text{font-size:1.3rem;font-weight:800;background:linear-gradient(135deg,var(--primary),var(--primary2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.2rem}.logo-pro{-webkit-text-fill-color:unset;font-weight:900;font-size:.8em;margin-left:.2rem}.logo-subtitle{opacity:.75;font-size:.85rem;line-height:1.3;color:var(--text-dark-soft)}body[data-theme=light] .logo-subtitle{color:var(--text-light-soft)}.form-header{text-align:center;margin-bottom:1rem;width:100%}.form-header h2{font-size:1.15rem;font-weight:700;margin-bottom:.2rem;color:var(--text-dark-main)}body[data-theme=light] .form-header h2{color:var(--text-light-main)}.form-header p{opacity:.8;font-size:.85rem;color:var(--text-dark-soft)}body[data-theme=light] .form-header p{color:var(--text-light-soft)}.flash-message{background:#ff4d6d2e;border-left:3px solid var(--error);padding:.6rem .8rem;border-radius:10px;margin-bottom:.9rem;font-size:.85rem;line-height:1.4;color:#ff6b6b;width:100%;max-width:100%;text-align:center}form{width:100%;max-width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center}.form-group{margin-bottom:1.2rem;width:100%}.form-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem;opacity:.8;font-weight:600;color:var(--text-dark-soft);text-align:left}body[data-theme=light] .form-label{color:var(--text-light-soft)}.required{color:var(--error)}.input-wrapper{position:relative;display:flex;align-items:center;width:100%}.form-input{width:100%;height:44px;padding:0 .9rem 0 2.6rem;border-radius:12px;border:1px solid var(--glass-inner);background:#050814d9;color:var(--text-dark-main);font-size:.95rem;transition:border-color .2s,box-shadow .2s;display:block;text-align:left;box-sizing:border-box}.form-input::placeholder{color:#f4f7ff99;opacity:1}body[data-theme=light] .form-input::placeholder{color:#0f172a80}body[data-theme=light] .form-input{background:#f8faff;color:var(--text-light-main);border-color:#0f172a1f}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1f;outline:none}.form-input:disabled{opacity:.6;cursor:not-allowed}.input-icon{position:absolute;left:.8rem;font-size:.9rem;pointer-events:none;display:flex;align-items:center;top:50%;transform:translateY(-50%)}.password-toggle{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;border-radius:8px;background:#ffffff1a;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10}.password-toggle:hover{background:#ffffff26}body[data-theme=light] .password-toggle{background:#0000000d}body[data-theme=light] .password-toggle:hover{background:#0000001a}.password-strength-meter{margin-top:.6rem;margin-bottom:0;width:100%;text-align:left}.strength-bar{width:100%;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-bottom:.3rem}body[data-theme=light] .strength-bar{background:#0000000f}.strength-progress{height:100%;width:0%;background:#64748b;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:2px}.strength-text{font-size:.75rem;color:var(--text-dark-soft);transition:color .3s ease}body[data-theme=light] .strength-text{color:var(--text-light-soft)}.form-options{display:flex;justify-content:space-between;align-items:center;margin:1rem 0 1.4rem;font-size:.8rem;gap:1rem;flex-wrap:nowrap;width:100%}.checkbox-wrapper{display:flex;gap:.5rem;align-items:center;cursor:pointer;flex-shrink:0;min-height:44px;padding:8px 0}.checkbox-wrapper input[type=checkbox]{width:18px;height:18px;min-width:18px;accent-color:var(--primary);cursor:pointer;margin:0}.checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;min-height:28px}.forgot-password{color:var(--primary);text-decoration:none;white-space:nowrap;transition:opacity .2s;margin-left:auto;display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px;position:relative}.forgot-password:hover{opacity:.8;background:#00d4ff14}body[data-theme=light] .forgot-password:hover{background:#00d4ff0d}.submit-btn{width:100%;max-width:100%;height:48px;min-height:48px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#03101d;font-weight:800;font-size:1rem;border:none;cursor:pointer;margin:.5rem 0 1.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 14px #00d4ff4d;display:flex;align-items:center;justify-content:center;gap:.5rem;box-sizing:border-box}.submit-btn:active{transform:scale(.98)}.submit-btn:hover{box-shadow:0 6px 20px #00d4ff66}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.submit-btn .spinner{display:inline-block;width:18px;height:18px;animation:spin 1s linear infinite;vertical-align:middle}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-note{text-align:center;opacity:.7;font-size:.75rem;line-height:1.4;color:var(--text-dark-soft);margin-top:0;margin-bottom:0;padding-top:.5rem;width:100%}body[data-theme=light] .login-note{color:var(--text-light-soft)}.controls{position:absolute;top:.8rem;right:.8rem;display:flex;gap:.5rem;z-index:100;padding:0;align-items:center}@media (min-width: 960px){.controls{position:absolute;top:1rem;right:1rem}}@supports (padding: env(safe-area-inset-top)){.controls{top:max(.8rem,env(safe-area-inset-top,.8rem));right:max(.8rem,env(safe-area-inset-right,.8rem))}@media (min-width: 960px){.controls{top:max(1rem,env(safe-area-inset-top,1rem));right:max(1rem,env(safe-area-inset-right,1rem))}}}.control-btn{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:12px;background:#0009;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:1.15rem;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #0006;color:var(--text-dark-main)}body[data-theme=light] .control-btn{background:#fffffff2;border-color:#0000001f;box-shadow:0 4px 16px #00000026;color:var(--text-light-main)}.control-btn:hover{transform:scale(1.08);box-shadow:0 6px 20px #00000080}body[data-theme=light] .control-btn:hover{background:#fff;box-shadow:0 6px 24px #0003}.control-btn:active{transform:scale(.92)}.language-btn{font-size:.9rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.theme-toggle-btn{position:relative}.theme-icon{display:flex;align-items:center;justify-content:center}.theme-icon svg{width:20px;height:20px}@media (max-width: 360px){.controls{top:.5rem;right:1.5rem;gap:.4rem}.control-btn{width:40px;height:40px;min-width:40px;min-height:40px;font-size:1rem}.card{padding:1.2rem 1rem;max-width:calc(100vw - 1.5rem)}}@media (min-width: 361px) and (max-width: 480px){.card{padding:1.5rem 1.2rem;max-width:min(360px,calc(100vw - 2rem))}}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.form-input:focus-visible,.password-toggle:focus-visible,.submit-btn:focus-visible,.control-btn:focus-visible,.checkbox-wrapper input:focus-visible+.checkbox-label,.forgot-password:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.field-error{display:block;color:var(--error);font-size:.75rem;margin-top:.35rem;text-align:left}.form-input[aria-invalid=true]{border-color:var(--error)}.form-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px #ff4d6d33}@media (max-width: 959px){.card{margin-left:auto!important;margin-right:auto!important;text-align:left;align-items:flex-start}.logo,.form-header{text-align:left;margin-left:0;margin-right:0;align-items:flex-start}.flash-message,form{text-align:left;margin-left:0;margin-right:0}.form-group{width:100%}.form-options{justify-content:space-between;gap:1rem}.password-strength-meter{text-align:left}.submit-btn{width:100%}.login-note{text-align:left}}@media (max-width: 320px){.card{padding:1rem .8rem;border-radius:16px}.logo-icon{width:48px;height:48px}.logo-text{font-size:1.1rem}.form-input,.submit-btn{height:40px;font-size:.9rem}}@media (min-width: 321px) and (max-width: 374px){.card{padding:1.2rem 1rem}.logo-icon{width:52px;height:52px}.logo-text{font-size:1.15rem}}@media (min-width: 375px) and (max-width: 413px){.card{padding:1.4rem 1.2rem}}@media (min-width: 414px) and (max-width: 479px){.card{padding:1.5rem 1.3rem}}@media (min-width: 480px) and (max-width: 767px){.card{padding:1.8rem 1.6rem;max-width:400px}.main-layout{padding:1rem;justify-content:center;min-height:100vh;min-height:100dvh}}@media (max-height: 500px) and (orientation: landscape){.shell{padding-top:.5rem}.card{padding:.8rem 1rem}.logo{margin-bottom:.5rem}.logo-icon{width:40px;height:40px}.form-group,.form-header{margin-bottom:.5rem}.form-header h2{font-size:1rem}}@supports (padding: env(safe-area-inset-top)){.shell{padding-top:max(.8rem,env(safe-area-inset-top));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (min-width: 960px){.card{align-items:stretch!important;text-align:left}.logo{align-items:flex-start;text-align:left}.form-header{text-align:left}form{align-items:stretch!important;max-width:100%!important;margin:0!important}.form-group{width:100%!important;margin-left:0!important;margin-right:0!important}.input-wrapper{justify-content:flex-start;width:100%!important}.submit-btn{width:100%!important;margin-left:0!important;margin-right:0!important}.login-note{text-align:left}.form-options{gap:1.5rem;width:100%!important}}.twofa-page *,.twofa-page *:before,.twofa-page *:after{margin:0;padding:0;box-sizing:border-box}.twofa-page{min-height:100vh;min-height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;background:#050816;color:#fff;-webkit-font-smoothing:antialiased}.twofa-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.twofa-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 40%,transparent 100%);mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 40%,transparent 100%)}.twofa-bg-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:.35;animation:twofaGlow 15s ease-in-out infinite}.twofa-bg-glow-1{width:600px;height:600px;background:radial-gradient(circle,rgba(0,102,255,.4),transparent 70%);top:-200px;left:-100px}.twofa-bg-glow-2{width:400px;height:400px;background:radial-gradient(circle,rgba(123,92,255,.3),transparent 70%);bottom:-150px;right:-50px;animation-delay:5s}.twofa-bg-glow-3{width:300px;height:300px;background:radial-gradient(circle,rgba(0,212,255,.2),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:10s}@keyframes twofaGlow{0%,to{transform:translate(0) scale(1);opacity:.35}33%{transform:translate(20px,-20px) scale(1.05);opacity:.4}66%{transform:translate(-15px,15px) scale(.95);opacity:.3}}.twofa-container{position:relative;z-index:1;display:flex;width:100%;max-width:960px;min-height:580px;margin:24px;border-radius:24px;overflow:hidden;background:#0a0e2799;border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 60px #00000080,0 0 80px #0066ff14,inset 0 1px #ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.twofa-brand-panel{flex:0 0 380px;display:flex;align-items:center;justify-content:center;padding:48px 40px;background:linear-gradient(135deg,#0066ff1f,#7b5cff14,#00d4ff0f);border-right:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden}.twofa-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(0,102,255,.15) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(123,92,255,.1) 0%,transparent 50%)}.twofa-brand-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:40px}.twofa-brand-logo{display:flex;align-items:center;gap:12px}.twofa-brand-logo img{width:44px;height:44px;border-radius:12px;box-shadow:0 4px 12px #00d4ff4d}.twofa-brand-info{display:flex;flex-direction:column;gap:4px}.twofa-brand-name{font-size:20px;font-weight:700;color:#00d4ff;letter-spacing:-.3px}.twofa-brand-badge{display:inline-block;width:fit-content;background:linear-gradient(135deg,#00d4ff,#7b5cff);color:#fff;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.twofa-brand-hero{text-align:center}.twofa-shield-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:96px;height:96px;margin-bottom:20px;color:#06f}.twofa-shield-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(0,102,255,.3);border-radius:50%;animation:ringPulse 3s ease-in-out infinite}.twofa-shield-ring:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:1px solid rgba(0,102,255,.15);border-radius:50%;animation:ringPulse 3s ease-in-out infinite reverse}@keyframes ringPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.6}}.twofa-brand-hero h2{font-size:22px;font-weight:700;color:#fff;margin-bottom:10px;letter-spacing:-.3px}.twofa-brand-hero p{font-size:14px;line-height:1.6;color:#8892b0;max-width:280px;margin:0 auto}.twofa-brand-features{display:flex;flex-direction:column;gap:12px}.twofa-feature{display:flex;align-items:center;gap:10px;font-size:13px;color:#a8b2d1}.twofa-feature svg{color:#00d4ff;flex-shrink:0}.twofa-form-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 40px;background:#0f0f2366}.twofa-mobile-brand{display:none}.twofa-lock-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,#0066ff26,#00d4ff0d);border:1px solid rgba(0,102,255,.25);color:#06f;margin-bottom:24px;transition:all .4s ease}.twofa-lock-icon.success{background:linear-gradient(135deg,#00ff8826,#22c55e0d);border-color:#00ff884d;color:#0f8}.twofa-form-header{text-align:center;margin-bottom:24px}.twofa-form-header h1{font-size:26px;font-weight:700;color:#fff;letter-spacing:-.5px;margin-bottom:8px}.twofa-form-header p{font-size:14px;color:#8892b0;line-height:1.5}.twofa-user-badge{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;margin-bottom:28px;width:100%;max-width:340px}.twofa-user-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#06f,#7b5cff);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0}.twofa-user-info{display:flex;flex-direction:column;min-width:0}.twofa-user-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.twofa-user-name{font-size:15px;font-weight:600;color:#e8e8f0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.twofa-form{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:340px}.twofa-alert{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:500}.twofa-alert-error{background:#ff33661a;border:1px solid rgba(255,51,102,.25);color:#ff6b8a}.twofa-alert-icon{width:22px;height:22px;border-radius:50%;background:#f363;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#f36;flex-shrink:0}.twofa-alert-success{background:#00ff881a;border:1px solid rgba(0,255,136,.25);color:#0f8}.twofa-alert-success svg{flex-shrink:0}.twofa-code-wrapper{position:relative;width:100%;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.twofa-code-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;z-index:2;font-size:24px;cursor:pointer;font-size:max(24px,16px)}.twofa-code-display{display:flex;gap:8px;justify-content:center;user-select:none;-webkit-user-select:none;pointer-events:none}.twofa-digit{width:48px;height:60px;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;font-family:SF Mono,Monaco,Fira Code,monospace;color:#fff;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:14px;transition:all .2s ease}.twofa-digit.active{border-color:#06f;box-shadow:0 0 0 3px #0066ff26;background:#0066ff0d}.twofa-digit.filled{border-color:#00d4ff66;background:#00d4ff14;color:#00d4ff}.twofa-progress{display:flex;gap:8px;margin:4px 0}.twofa-progress-dot{width:6px;height:6px;border-radius:50%;background:#ffffff1f;transition:all .25s ease}.twofa-progress-dot.filled{background:#00d4ff;box-shadow:0 0 8px #00d4ff80}.twofa-btn-verify{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;background:linear-gradient(135deg,#06f,#0052cc);border:none;border-radius:14px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 20px #0066ff4d;margin-top:4px}.twofa-btn-verify:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #06f6}.twofa-btn-verify:active:not(:disabled){transform:translateY(0)}.twofa-btn-verify:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.twofa-btn-verify.loading{pointer-events:none;opacity:.8}.twofa-btn-verify.success{background:linear-gradient(135deg,#00c853,#00a844);box-shadow:0 4px 20px #00c8534d}.twofa-btn-cancel{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#8892b0;font-size:14px;font-weight:500;cursor:pointer;transition:all .25s ease}.twofa-btn-cancel:hover:not(:disabled){background:#ffffff0a;border-color:#ffffff26;color:#e8e8f0}.twofa-btn-cancel:disabled{opacity:.4;cursor:not-allowed}.twofa-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:twofaSpin .7s linear infinite}@keyframes twofaSpin{to{transform:rotate(360deg)}}.twofa-form-footer{margin-top:28px;text-align:center}.twofa-form-footer p{font-size:13px;color:#64748b;margin-bottom:6px}.twofa-form-footer strong{color:#00d4ff;font-weight:600}.twofa-help-text{font-size:12px!important;color:#4a5568!important}@media (max-width: 900px){.twofa-container{max-width:480px;flex-direction:column;min-height:auto}.twofa-brand-panel{display:none}.twofa-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px}.twofa-mobile-logo{width:36px;height:36px;border-radius:10px;box-shadow:0 4px 12px #00d4ff4d}.twofa-mobile-name{font-size:18px;font-weight:700;color:#00d4ff}.twofa-mobile-badge{background:linear-gradient(135deg,#00d4ff,#7b5cff);color:#fff;padding:2px 8px;border-radius:6px;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.twofa-form-panel{padding:36px 28px}}@media (max-width: 480px){.twofa-container{margin:0;border-radius:0;border:none;min-height:100vh;min-height:100dvh;box-shadow:none;background:#050816f2}.twofa-form-panel{padding:32px 20px;justify-content:center;min-height:100vh;min-height:100dvh}.twofa-form-header h1{font-size:22px}.twofa-digit{width:42px;height:54px;font-size:22px;border-radius:12px}.twofa-code-display{gap:6px}.twofa-btn-verify{padding:14px 20px;font-size:14px}.twofa-btn-cancel{padding:12px 20px;font-size:13px}}@media (max-width: 360px){.twofa-form-panel{padding:24px 16px}.twofa-form-header h1{font-size:20px}.twofa-digit{width:36px;height:48px;font-size:20px;border-radius:10px;gap:5px}.twofa-code-display{gap:5px}}.twofa-code-input:focus-visible,.twofa-btn-verify:focus-visible,.twofa-btn-cancel:focus-visible{outline:2px solid #00d4ff;outline-offset:2px}.twofa-code-input:focus:not(:focus-visible),.twofa-btn-verify:focus:not(:focus-visible),.twofa-btn-cancel:focus:not(:focus-visible){outline:none}.twofa-code-input[aria-invalid=true]{border-color:#f36}@media (prefers-reduced-motion: reduce){.twofa-bg-glow,.twofa-shield-ring,.twofa-shield-ring:after{animation:none}.twofa-digit,.twofa-btn-verify,.twofa-btn-cancel,.twofa-lock-icon,.twofa-progress-dot{transition:none}.twofa-btn-verify:hover:not(:disabled){transform:none}}.tfsetup-page *,.tfsetup-page *:before,.tfsetup-page *:after{margin:0;padding:0;box-sizing:border-box}.tfsetup-page{min-height:100vh;min-height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;background:#050816;color:#fff;-webkit-font-smoothing:antialiased}.tfsetup-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.tfsetup-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 40%,transparent 100%);mask-image:radial-gradient(ellipse 80% 50% at 50% 50%,black 40%,transparent 100%)}.tfsetup-bg-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:.35;animation:tfsetupGlow 15s ease-in-out infinite}.tfsetup-bg-glow-1{width:600px;height:600px;background:radial-gradient(circle,rgba(0,102,255,.4),transparent 70%);top:-200px;left:-100px}.tfsetup-bg-glow-2{width:400px;height:400px;background:radial-gradient(circle,rgba(123,92,255,.3),transparent 70%);bottom:-150px;right:-50px;animation-delay:5s}.tfsetup-bg-glow-3{width:300px;height:300px;background:radial-gradient(circle,rgba(0,212,255,.2),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:10s}@keyframes tfsetupGlow{0%,to{transform:translate(0) scale(1);opacity:.35}33%{transform:translate(20px,-20px) scale(1.05);opacity:.4}66%{transform:translate(-15px,15px) scale(.95);opacity:.3}}.tfsetup-container{position:relative;z-index:1;display:flex;width:100%;max-width:1000px;margin:24px;border-radius:24px;overflow:hidden;background:#0a0e2799;border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 60px #00000080,0 0 80px #0066ff14,inset 0 1px #ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.tfsetup-brand-panel{flex:0 0 340px;display:flex;align-items:center;justify-content:center;padding:48px 36px;background:linear-gradient(135deg,#0066ff1f,#7b5cff14,#00d4ff0f);border-right:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden}.tfsetup-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(0,102,255,.15) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(123,92,255,.1) 0%,transparent 50%)}.tfsetup-brand-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:36px}.tfsetup-brand-logo{display:flex;align-items:center;gap:12px}.tfsetup-brand-logo img{width:44px;height:44px;border-radius:12px;box-shadow:0 4px 12px #00d4ff4d}.tfsetup-brand-info{display:flex;flex-direction:column;gap:4px}.tfsetup-brand-name{font-size:20px;font-weight:700;color:#00d4ff;letter-spacing:-.3px}.tfsetup-brand-badge{display:inline-block;width:fit-content;background:linear-gradient(135deg,#00d4ff,#7b5cff);color:#fff;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.tfsetup-brand-hero{text-align:center}.tfsetup-shield-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:96px;height:96px;margin-bottom:20px;color:#06f}.tfsetup-shield-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(0,102,255,.3);border-radius:50%;animation:tfsetupRingPulse 3s ease-in-out infinite}.tfsetup-shield-ring:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:1px solid rgba(0,102,255,.15);border-radius:50%;animation:tfsetupRingPulse 3s ease-in-out infinite reverse}@keyframes tfsetupRingPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.6}}.tfsetup-brand-hero h2{font-size:20px;font-weight:700;color:#fff;margin-bottom:10px;letter-spacing:-.3px}.tfsetup-brand-hero p{font-size:13px;line-height:1.6;color:#8892b0}.tfsetup-brand-features{display:flex;flex-direction:column;gap:10px}.tfsetup-feature{display:flex;align-items:center;gap:10px;font-size:13px;color:#a8b2d1}.tfsetup-feature svg{color:#00d4ff;flex-shrink:0}.tfsetup-form-panel{flex:1;display:flex;flex-direction:column;align-items:center;padding:40px 36px;background:#0f0f2366;overflow-y:auto;max-height:90vh}.tfsetup-mobile-brand{display:none}.tfsetup-lock-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,#0066ff26,#00d4ff0d);border:1px solid rgba(0,102,255,.25);color:#06f;margin-bottom:20px;transition:all .4s ease}.tfsetup-lock-icon.success{background:linear-gradient(135deg,#00ff8826,#22c55e0d);border-color:#00ff884d;color:#0f8}.tfsetup-form-header{text-align:center;margin-bottom:20px;width:100%}.tfsetup-form-header h1{font-size:24px;font-weight:700;color:#fff;letter-spacing:-.5px;margin-bottom:6px}.tfsetup-form-header p{font-size:13px;color:#8892b0}.tfsetup-form-header strong{color:#00d4ff}.tfsetup-alert{display:flex;align-items:center;gap:10px;width:100%;max-width:520px;padding:12px 16px;border-radius:12px;font-size:13px;font-weight:500;margin-bottom:16px}.tfsetup-alert-error{background:#ff33661a;border:1px solid rgba(255,51,102,.25);color:#ff6b8a}.tfsetup-alert-success{background:#00ff881a;border:1px solid rgba(0,255,136,.25);color:#0f8}.tfsetup-step-panel{width:100%;max-width:520px;display:flex;flex-direction:column;gap:20px}.tfsetup-apps-info{background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:18px 20px}.tfsetup-apps-label{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:12px}.tfsetup-apps-label svg{color:#00d4ff}.tfsetup-apps-grid{display:flex;flex-wrap:wrap;gap:8px}.tfsetup-app-chip{background:#0066ff14;border:1px solid rgba(0,102,255,.2);color:#a8b2d1;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:500}.tfsetup-step2{gap:16px}.tfsetup-wizard-step{display:flex;gap:14px;align-items:flex-start;width:100%;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:16px 18px}.tfsetup-wizard-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#06f,#00d4ff);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}.tfsetup-wizard-label{font-size:13px;color:#a8b2d1;margin-bottom:12px;display:flex;align-items:center;gap:5px}.tfsetup-qr-box{display:flex;justify-content:flex-start}.tfsetup-qr-box img{width:160px;height:160px;border-radius:10px;border:3px solid rgba(0,212,255,.2);background:#fff;padding:4px}.tfsetup-qr-placeholder{width:160px;height:160px;display:flex;align-items:center;justify-content:center;background:#ffffff0a;border-radius:10px}.tfsetup-secret-box{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#00d4ff0d;border:1px dashed rgba(0,212,255,.3);border-radius:10px;padding:10px 14px;cursor:pointer;transition:background .2s}.tfsetup-secret-box:hover{background:#00d4ff1a}.tfsetup-secret-box code{font-family:SF Mono,Monaco,Fira Code,monospace;font-size:13px;color:#00d4ff;letter-spacing:2px;word-break:break-all}.tfsetup-secret-box svg{flex-shrink:0;color:#64748b;transition:color .2s}.tfsetup-secret-box svg.copied{color:#0f8}.tfsetup-copied-hint{font-size:12px;color:#0f8;margin-top:4px;display:block}.tfsetup-backup-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:10px}.tfsetup-backup-code{background:#1a1a3ecc;border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:7px 10px;font-family:SF Mono,Monaco,Fira Code,monospace;font-size:12px;font-weight:600;color:#e8e8f0;text-align:center;letter-spacing:1px}.tfsetup-verify-form{display:flex;flex-direction:column;gap:14px}.tfsetup-code-wrapper{position:relative;width:100%}.tfsetup-code-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;z-index:2;font-size:24px;cursor:pointer}.tfsetup-code-display{display:flex;gap:8px;justify-content:flex-start}.tfsetup-digit{width:46px;height:56px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;font-family:SF Mono,Monaco,Fira Code,monospace;color:#fff;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:12px;transition:all .2s ease}.tfsetup-digit.active{border-color:#06f;box-shadow:0 0 0 3px #0066ff26;background:#0066ff0d}.tfsetup-digit.filled{border-color:#00d4ff66;background:#00d4ff14;color:#00d4ff}.tfsetup-btn-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:linear-gradient(135deg,#06f,#0052cc);border:none;border-radius:14px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 20px #0066ff4d}.tfsetup-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #06f6}.tfsetup-btn-primary:active:not(:disabled){transform:translateY(0)}.tfsetup-btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.tfsetup-btn-secondary{display:flex;align-items:center;gap:6px;padding:9px 16px;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#8892b0;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tfsetup-btn-secondary:hover{background:#ffffff0a;border-color:#ffffff2e;color:#e8e8f0}.tfsetup-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:tfsetupSpin .7s linear infinite;display:inline-block}@keyframes tfsetupSpin{to{transform:rotate(360deg)}}@media print{.tfsetup-bg,.tfsetup-brand-panel,.tfsetup-btn-primary,.tfsetup-btn-secondary,.tfsetup-lock-icon,.tfsetup-form-header,.tfsetup-wizard-step:not(:nth-child(3)){display:none!important}.tfsetup-page,.tfsetup-container,.tfsetup-form-panel{background:#fff;color:#000;box-shadow:none;border:none}.tfsetup-backup-code{border:1px solid #ccc;color:#000;background:#fff}}@media (max-width: 900px){.tfsetup-container{flex-direction:column;max-width:520px;max-height:none;margin:12px}.tfsetup-brand-panel{display:none}.tfsetup-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}.tfsetup-mobile-logo{width:36px;height:36px;border-radius:10px;box-shadow:0 4px 12px #00d4ff4d}.tfsetup-mobile-name{font-size:18px;font-weight:700;color:#00d4ff}.tfsetup-mobile-badge{background:linear-gradient(135deg,#00d4ff,#7b5cff);color:#fff;padding:2px 8px;border-radius:6px;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.tfsetup-form-panel{padding:32px 24px;max-height:none;overflow-y:visible}}@media (max-width: 480px){.tfsetup-container{margin:0;border-radius:0;border:none;min-height:100vh;min-height:100dvh;background:#050816fa}.tfsetup-form-panel{padding:28px 16px;min-height:100vh;min-height:100dvh;max-height:none;overflow-y:visible}.tfsetup-form-header h1{font-size:20px}.tfsetup-digit{width:38px;height:48px;font-size:20px;border-radius:10px}.tfsetup-code-display{gap:5px}.tfsetup-backup-grid{grid-template-columns:1fr}.tfsetup-qr-box img,.tfsetup-qr-placeholder{width:140px;height:140px}}.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}.tfsetup-code-input:focus-visible,.tfsetup-btn-primary:focus-visible,.tfsetup-btn-secondary:focus-visible,.tfsetup-secret-box:focus-visible{outline:2px solid #00d4ff;outline-offset:2px}.tfsetup-code-input:focus:not(:focus-visible),.tfsetup-btn-primary:focus:not(:focus-visible),.tfsetup-btn-secondary:focus:not(:focus-visible){outline:none}.tfsetup-code-input[aria-invalid=true]{border-color:#f36}@media (prefers-reduced-motion: reduce){.tfsetup-bg-glow,.tfsetup-shield-ring,.tfsetup-shield-ring:after{animation:none}.tfsetup-btn-primary,.tfsetup-btn-secondary,.tfsetup-digit,.tfsetup-lock-icon{transition:none}.tfsetup-btn-primary:hover:not(:disabled){transform:none}}.breadcrumb{margin-bottom:16px}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap;gap:4px}.breadcrumb-item{display:flex;align-items:center;gap:8px}.breadcrumb-home{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;transition:all .2s ease;text-decoration:none;color:var(--text-secondary, #6c757d);font-size:13px;font-weight:500}[data-theme=dark] .breadcrumb-home{color:var(--text-secondary, #a6a8c6)}.breadcrumb-home:hover{background:var(--hover-bg, rgba(111, 66, 193, .08));color:var(--primary, #6f42c1)}[data-theme=dark] .breadcrumb-home:hover{background:var(--hover-bg, rgba(111, 66, 193, .15))}.home-icon{font-size:16px;line-height:1}.home-label{display:none}.breadcrumb-link{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;transition:all .2s ease;text-decoration:none;color:var(--text-secondary, #6c757d);font-size:13px;font-weight:500}[data-theme=dark] .breadcrumb-link{color:var(--text-secondary, #a6a8c6)}.breadcrumb-link:hover{background:var(--hover-bg, rgba(111, 66, 193, .08));color:var(--primary, #6f42c1)}[data-theme=dark] .breadcrumb-link:hover{background:var(--hover-bg, rgba(111, 66, 193, .15))}.breadcrumb-current{display:flex;align-items:center;gap:6px;padding:6px 12px;color:var(--text-primary, #1a1d2d);font-size:13px;font-weight:600}[data-theme=dark] .breadcrumb-current{color:var(--text-primary, #f4f7ff)}.breadcrumb-separator{color:var(--text-secondary, #6c757d);font-size:14px;-webkit-user-select:none;user-select:none}[data-theme=dark] .breadcrumb-separator{color:var(--text-secondary, #a6a8c6)}.breadcrumb-icon{font-size:14px;line-height:1}.breadcrumb-label{line-height:1.4}.breadcrumb-compact .breadcrumb-list{gap:8px}.breadcrumb-compact .home-icon{font-size:18px}.breadcrumb-compact .breadcrumb-current{font-size:14px;padding:8px 14px;background:var(--bg-secondary, #f8f9fa);border-radius:6px}[data-theme=dark] .breadcrumb-compact .breadcrumb-current{background:var(--bg-hover, #252941)}.breadcrumb-with-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.breadcrumb-actions{display:flex;gap:8px;flex-shrink:0}.breadcrumb-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, rgba(0, 0, 0, .08));border-radius:8px;font-size:13px;font-weight:600;color:var(--text-primary, #1a1d2d);cursor:pointer;transition:all .2s ease}[data-theme=dark] .breadcrumb-action-btn{background:var(--card-bg, #1a1d2d);border-color:var(--border-color, rgba(255, 255, 255, .08));color:var(--text-primary, #f4f7ff)}.breadcrumb-action-btn:hover{border-color:var(--primary, #6f42c1);color:var(--primary, #6f42c1);transform:translateY(-1px);box-shadow:0 4px 8px #6f42c133}.action-icon{font-size:14px}.action-label{font-size:13px}@media (max-width: 768px){.breadcrumb{margin-bottom:12px}.breadcrumb-list{gap:2px}.breadcrumb-link,.breadcrumb-current{padding:6px 10px;font-size:12px}.breadcrumb-home{padding:6px 10px}.home-icon{font-size:14px}.breadcrumb-icon{font-size:12px}.home-label{display:none!important}.breadcrumb-with-actions{flex-direction:column;align-items:flex-start;gap:12px}.breadcrumb-actions{width:100%;justify-content:flex-start}.breadcrumb-action-btn{flex:1;justify-content:center}}@media (max-width: 480px){.breadcrumb-separator{font-size:12px}.breadcrumb-link,.breadcrumb-current{padding:4px 8px;font-size:11px}.breadcrumb-icon{font-size:11px}.breadcrumb-icon{display:none}}.breadcrumb-link:focus-visible,.breadcrumb-action-btn:focus-visible{outline:2px solid var(--primary, #6f42c1);outline-offset:2px}@media (prefers-reduced-motion: reduce){.breadcrumb-link,.breadcrumb-home,.breadcrumb-action-btn{transition:none}}.breadcrumb-large .breadcrumb-link,.breadcrumb-large .breadcrumb-current{padding:10px 16px;font-size:15px}.breadcrumb-large .breadcrumb-icon{font-size:16px}.breadcrumb-small .breadcrumb-link,.breadcrumb-small .breadcrumb-current{padding:4px 8px;font-size:12px}.breadcrumb-small .breadcrumb-icon{font-size:12px}.breadcrumb-pill .breadcrumb-link,.breadcrumb-pill .breadcrumb-current{border-radius:20px;padding:8px 16px}.breadcrumb-minimal .breadcrumb-separator{margin:0 4px}.breadcrumb-minimal .breadcrumb-link{padding:4px 8px}.breadcrumb-minimal .breadcrumb-current{padding:4px 8px;font-weight:500}.breadcrumb-minimal .breadcrumb-icon,.breadcrumb-minimal .home-icon{display:none}.admin-layout{min-height:100vh;display:flex;flex-direction:column}.admin-layout-content{flex:1;padding-top:64px;min-height:calc(100vh - 64px)}.admin-page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem;color:var(--text-primary, #f4f7ff)}.admin-page-loading .loading-spinner{width:50px;height:50px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent, #00d4ff);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tls-discovery-content{padding:2rem 1.5rem;max-width:1400px;margin:0 auto}@media (max-width: 768px){.admin-layout-content{padding-top:56px}.tls-discovery-content{padding:1rem}}:root,[data-theme=light]{--bg-primary: var(--tf-bg-primary, #ffffff);--bg-secondary: var(--tf-bg-secondary, #f8faff);--bg-tertiary: var(--tf-bg-tertiary, #f1f5ff);--text-primary: var(--tf-text-primary, #0f172a);--text-secondary: var(--tf-text-secondary, rgba(15, 23, 42, .7));--text-tertiary: var(--tf-text-tertiary, rgba(15, 23, 42, .5));--border-color: var(--tf-border-primary, rgba(15, 23, 42, .08));--primary: var(--tf-secondary-500, #7b5cff);--primary-light: var(--tf-secondary-400, #9b88ff);--primary-dark: var(--tf-secondary-600, #6249cc);--success: var(--tf-success-500, #4caf50);--warning: var(--tf-warning-500, #ffc107);--danger: var(--tf-error-500, #f44336);--info: var(--tf-primary-500, #00d4ff);--hover-bg: rgba(123, 92, 255, .08);--active-bg: rgba(123, 92, 255, .12);--card-shadow: 0 2px 8px rgba(0, 0, 0, .08);--card-shadow-hover: 0 8px 24px rgba(0, 0, 0, .12);--glass-bg: rgba(255, 255, 255, .8);--glass-bg-dark: rgba(15, 23, 42, .05)}[data-theme=dark]{--bg-primary: var(--tf-bg-primary, #050816);--bg-secondary: var(--tf-bg-secondary, #0a0f1f);--bg-tertiary: var(--tf-bg-tertiary, #101628);--bg-card: #1a1d2d;--bg-hover: #252941;--text-primary: var(--tf-text-primary, #f4f7ff);--text-secondary: var(--tf-text-secondary, rgba(255, 255, 255, .7));--text-tertiary: var(--tf-text-tertiary, rgba(255, 255, 255, .5));--text-primary-dark: #f4f7ff;--text-secondary-dark: #a6a8c6;--text-tertiary-dark: #7b7e94;--border-color: var(--tf-border-primary, rgba(255, 255, 255, .08));--border-color-dark: #373b55;--primary: var(--tf-secondary-400, #9b88ff);--primary-light: var(--tf-secondary-300, #b1a2ff);--primary-dark: var(--tf-secondary-500, #7b5cff);--success: var(--tf-primary-500, #00d4ff);--warning: var(--tf-warning-400, #ffca28);--danger: var(--tf-error-400, #ef5350);--info: var(--tf-primary-400, #1adbff);--hover-bg: rgba(255, 255, 255, .05);--active-bg: rgba(255, 255, 255, .08);--hover-bg-dark: rgba(255, 255, 255, .05);--card-shadow: 0 4px 12px rgba(0, 0, 0, .2);--card-shadow-hover: 0 8px 24px rgba(0, 0, 0, .3);--glass-bg: rgba(26, 29, 45, .8);--glass-bg-dark: rgba(10, 15, 31, .9)}*{transition-property:background-color,border-color,color,box-shadow;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}*:not(img):not(video):not(canvas):not(svg){transition-property:background-color,border-color,color}[data-theme=dark] body{background:linear-gradient(135deg,#0f1016,#1a1d2d,#152044);color:var(--text-primary);min-height:100vh;overflow-y:auto}[data-theme=light] body{background:var(--bg-secondary);color:var(--text-primary);min-height:100vh;overflow-y:auto}html{overflow-y:auto;overflow-x:hidden}html,body{height:auto;min-height:100vh}.admin-navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:64px;background:var(--glass-bg, rgba(15, 23, 42, .85));backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid var(--border-color, rgba(0, 212, 255, .15));box-shadow:0 4px 24px #00000026,0 0 1px #00d4ff33,inset 0 -1px #00d4ff1a;transition:background .3s ease,border-color .3s ease;will-change:background;transform:translateZ(0);-webkit-transform:translateZ(0)}[data-theme=light] .admin-navbar{background:var(--glass-bg, rgba(255, 255, 255, .9));border-bottom-color:var(--border-color, rgba(0, 0, 0, .08));box-shadow:0 4px 24px #00000014,0 0 1px #0000000d}.navbar-container{max-width:1440px;margin:0 auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.navbar-brand{display:flex;align-items:center}.brand-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;transition:all .2s ease}.brand-link:hover{opacity:.9;transform:translateY(-1px)}.brand-icon{font-size:28px;line-height:1;color:#00d4ff}.brand-text{font-size:18px;font-weight:700;background:linear-gradient(135deg,var(--text-primary, #ffffff) 0%,var(--info, #00d4ff) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}[data-theme=light] .brand-text{background:linear-gradient(135deg,var(--text-primary, #1e293b) 0%,var(--primary, #0066cc) 100%);-webkit-background-clip:text;background-clip:text}.brand-badge{font-size:10px;font-weight:700;color:#fff;background:linear-gradient(135deg,#00d4ff,#09c);padding:3px 10px;border-radius:12px;margin-left:6px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #00d4ff66}[data-theme=light] .brand-badge{background:linear-gradient(135deg,#06c,#0052a3);box-shadow:0 2px 8px #0066cc4d}.navbar-nav{display:flex;align-items:center;gap:4px}.nav-item{position:relative}.nav-link{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:10px;text-decoration:none;color:var(--text-secondary, rgba(255, 255, 255, .7));font-size:14px;font-weight:500;transition:all .2s ease;position:relative;background:transparent;border:1px solid transparent}[data-theme=light] .nav-link{color:var(--text-secondary, rgba(0, 0, 0, .7))}.nav-link:hover{color:var(--text-primary, #ffffff);background:var(--hover-bg, rgba(0, 212, 255, .15));border-color:var(--primary, rgba(0, 212, 255, .25));box-shadow:0 0 15px var(--info, rgba(0, 212, 255, .2))}[data-theme=light] .nav-link:hover{color:var(--primary, #0066cc);background:var(--hover-bg, rgba(0, 102, 204, .1));border-color:var(--primary, rgba(0, 102, 204, .2));box-shadow:0 0 15px var(--primary, rgba(0, 102, 204, .15))}.nav-item.active .nav-link{color:var(--text-primary, #ffffff);background:var(--active-bg, rgba(0, 212, 255, .25));border-color:var(--primary, rgba(0, 212, 255, .4));font-weight:600;box-shadow:0 0 20px var(--info, rgba(0, 212, 255, .3))}[data-theme=light] .nav-item.active .nav-link{color:var(--primary, #0066cc);background:var(--active-bg, rgba(0, 102, 204, .15));border-color:var(--primary, rgba(0, 102, 204, .3));box-shadow:0 0 20px var(--primary, rgba(0, 102, 204, .25))}.nav-item.active .nav-link:before{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:28px;height:3px;background:linear-gradient(90deg,#00d4ff,#0ff);border-radius:3px 3px 0 0;box-shadow:0 0 10px #00d4ff80}[data-theme=light] .nav-item.active .nav-link:before{background:linear-gradient(90deg,#06c,#08f)}.nav-link-special{color:#00d4ff!important;font-weight:600}.nav-link-special:hover{background:#00d4ff33!important;box-shadow:0 0 20px #00d4ff4d!important}.nav-item.has-dropdown .nav-link:after{content:"›";font-size:16px;margin-left:2px;transition:transform .2s ease}.nav-item.has-dropdown:hover .nav-link:after,.nav-item.has-dropdown[aria-expanded=true] .nav-link:after{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 12px);left:0;min-width:220px;background:var(--bg-card, rgba(15, 23, 42, .95));backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-color, rgba(0, 212, 255, .2));border-radius:16px;box-shadow:0 8px 32px #0000004d,0 0 1px #00d4ff4d,inset 0 1px #ffffff1a;padding:8px 0;z-index:1001}[data-theme=light] .dropdown-menu{background:var(--bg-primary, rgba(255, 255, 255, .95));border-color:var(--border-color, rgba(0, 0, 0, .1));box-shadow:0 8px 32px #0000001f,0 0 1px #0000000d}.dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary, rgba(255, 255, 255, .8));font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;margin:2px 8px;border-radius:8px}[data-theme=light] .dropdown-item{color:var(--text-secondary, rgba(0, 0, 0, .8))}.dropdown-item:hover{background:var(--hover-bg, rgba(0, 212, 255, .15));color:var(--text-primary, #ffffff);transform:translate(4px)}[data-theme=light] .dropdown-item:hover{background:var(--hover-bg, rgba(0, 102, 204, .1));color:var(--primary, #0066cc)}.dropdown-icon{font-size:16px;opacity:.9}.dropdown-divider{height:1px;background:#00d4ff26;margin:8px 16px}[data-theme=light] .dropdown-divider{background:#0000001a}.dropdown-item-danger{color:#ff6b6b}.dropdown-item-danger:hover{background:#ff6b6b26}.user-menu{min-width:240px;right:0;left:auto}.user-info{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(0,212,255,.1);margin-bottom:8px}[data-theme=light] .user-info{border-bottom-color:#00000014}.user-avatar{width:42px;height:42px;background:linear-gradient(135deg,#00d4ff,#09c);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;box-shadow:0 4px 12px #00d4ff66}.user-avatar.large{width:48px;height:48px;font-size:18px}.user-details{flex:1}.user-name{font-size:14px;font-weight:600;color:var(--text-primary, #ffffff)}[data-theme=light] .user-name{color:var(--text-primary, #1e293b)}.user-role{font-size:12px;color:var(--info, rgba(0, 212, 255, .9));font-weight:500}[data-theme=light] .user-role{color:var(--primary, #0066cc)}.navbar-actions{display:flex;align-items:center;gap:4px}.action-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;border-radius:10px;color:var(--text-secondary, rgba(255, 255, 255, .6));cursor:pointer;transition:all .2s ease}[data-theme=light] .action-btn{color:var(--text-secondary, rgba(0, 0, 0, .5))}.action-btn:hover{background:var(--hover-bg, rgba(0, 212, 255, .15));color:var(--info, #00d4ff);box-shadow:0 0 15px var(--info, rgba(0, 212, 255, .2))}[data-theme=light] .action-btn:hover{background:var(--hover-bg, rgba(0, 102, 204, .1));color:var(--primary, #0066cc);box-shadow:0 0 15px var(--primary, rgba(0, 102, 204, .15))}.action-btn svg{width:20px;height:20px}.language-selector{position:relative;display:flex;align-items:center}.language-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;border-radius:10px;color:var(--text-secondary, rgba(255, 255, 255, .6));cursor:pointer;transition:all .2s ease;font-size:20px}.language-btn:hover{background:var(--hover-bg, rgba(0, 212, 255, .15));color:var(--info, #00d4ff);box-shadow:0 0 15px var(--info, rgba(0, 212, 255, .2))}[data-theme=light] .language-btn{color:var(--text-secondary, rgba(0, 0, 0, .5))}[data-theme=light] .language-btn:hover{background:var(--hover-bg, rgba(0, 102, 204, .1));color:var(--primary, #0066cc)}.language-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--bg-card, rgba(15, 23, 42, .95));backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-color, rgba(0, 212, 255, .2));border-radius:16px;box-shadow:0 8px 32px #0000004d;padding:8px 0;z-index:1001;overflow:hidden}[data-theme=light] .language-dropdown-menu{background:var(--bg-primary, rgba(255, 255, 255, .95));border-color:var(--border-color, rgba(0, 0, 0, .1));box-shadow:0 8px 32px #0000001f}.language-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary, rgba(255, 255, 255, .8));font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;margin:2px 8px;border-radius:8px}[data-theme=light] .language-dropdown-item{color:var(--text-secondary, rgba(0, 0, 0, .8))}.language-dropdown-item:hover{background:var(--hover-bg, rgba(0, 212, 255, .15));color:var(--text-primary, #ffffff);transform:translate(4px)}[data-theme=light] .language-dropdown-item:hover{background:var(--hover-bg, rgba(0, 102, 204, .1));color:var(--primary, #0066cc)}.language-dropdown-item.active{background:var(--active-bg, rgba(0, 212, 255, .25));color:var(--info, #00d4ff)}[data-theme=light] .language-dropdown-item.active{background:var(--active-bg, rgba(0, 102, 204, .15));color:var(--primary, #0066cc)}.language-flag{font-size:20px;line-height:1}.language-name{flex:1}.language-name-native{font-weight:500}.language-name-english{font-size:12px;color:#ffffff80;margin-left:4px}[data-theme=light] .language-name-english{color:#00000080}.notification-badge{position:absolute;top:6px;right:6px;min-width:16px;height:16px;background:linear-gradient(135deg,#ff6b6b,#ff4757);color:#fff;font-size:10px;font-weight:700;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 2px 8px #ff6b6b66}.user-btn{width:auto;padding:0 12px;gap:8px;background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);border-radius:10px;transition:all .2s ease}.user-btn:hover{background:#00d4ff33;border-color:#00d4ff4d;box-shadow:0 0 15px #00d4ff33}[data-theme=light] .user-btn{background:#0066cc14;border-color:#0066cc26}[data-theme=light] .user-btn:hover{background:#0066cc1f;border-color:#0066cc40}.user-arrow{font-size:10px;color:#ffffff80;transition:transform .2s ease}[data-theme=light] .user-arrow{color:#0006}.user-arrow.open,.user-btn[aria-expanded=true] .user-arrow{transform:rotate(180deg)}.mobile-toggle{display:none}.hamburger{display:flex;flex-direction:column;gap:5px;width:24px;cursor:pointer}.hamburger span{width:100%;height:2px;background:#fff;border-radius:1px;transition:all .3s ease}[data-theme=light] .hamburger span{background:#1e293b}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999}.mobile-menu{position:fixed;top:0;right:0;bottom:0;width:280px;max-width:100%;background:var(--bg-card, rgba(15, 23, 42, .98));backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-left:1px solid var(--border-color, rgba(0, 212, 255, .2));box-shadow:-8px 0 32px #0000004d;display:flex;flex-direction:column}[data-theme=light] .mobile-menu{background:var(--bg-primary, rgba(255, 255, 255, .98));border-left-color:var(--border-color, rgba(0, 0, 0, .1));box-shadow:-8px 0 32px #0000001f}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid rgba(0,212,255,.15)}[data-theme=light] .mobile-menu-header{border-bottom-color:#0000001a}.mobile-menu-header .brand-text{font-size:18px;font-weight:600;background:linear-gradient(135deg,#fff,#00d4ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=light] .mobile-menu-header .brand-text{background:linear-gradient(135deg,#1e293b,#06c);-webkit-background-clip:text;background-clip:text}.close-btn{width:36px;height:36px;border:none;background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);border-radius:10px;color:#00d4ff;font-size:18px;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#00d4ff33;box-shadow:0 0 15px #00d4ff4d}[data-theme=light] .close-btn{background:#0066cc1a;border-color:#06c3;color:#06c}[data-theme=light] .close-btn:hover{background:#0066cc26;box-shadow:0 0 15px #0066cc40}.mobile-nav{flex:1;padding:20px;overflow-y:auto}.mobile-nav-link{display:block;padding:14px 16px;border-radius:12px;color:var(--text-secondary, rgba(255, 255, 255, .8));text-decoration:none;font-size:15px;font-weight:500;margin-bottom:4px;transition:all .2s ease;border:1px solid transparent}[data-theme=light] .mobile-nav-link{color:var(--text-secondary, rgba(0, 0, 0, .8))}.mobile-nav-link:hover{background:var(--hover-bg, rgba(0, 212, 255, .15));color:var(--text-primary, #ffffff);border-color:var(--primary, rgba(0, 212, 255, .2));transform:translate(4px)}[data-theme=light] .mobile-nav-link:hover{background:var(--hover-bg, rgba(0, 102, 204, .1));color:var(--primary, #0066cc);border-color:var(--primary, rgba(0, 102, 204, .15))}.mobile-nav-link.active{color:var(--info, #00d4ff);background:var(--active-bg, rgba(0, 212, 255, .2));border-color:var(--primary, rgba(0, 212, 255, .3));box-shadow:0 0 20px var(--info, rgba(0, 212, 255, .3))}[data-theme=light] .mobile-nav-link.active{color:var(--primary, #0066cc);background:var(--active-bg, rgba(0, 102, 204, .15));border-color:var(--primary, rgba(0, 102, 204, .25));box-shadow:0 0 20px var(--primary, rgba(0, 102, 204, .25))}.mobile-menu-footer{padding:20px;border-top:1px solid rgba(0,212,255,.15)}[data-theme=light] .mobile-menu-footer{border-top-color:#0000001a}.theme-btn-mobile{width:100%;padding:12px;border:1px solid rgba(0,212,255,.3);background:#00d4ff1a;border-radius:10px;color:#00d4ff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.theme-btn-mobile:hover{background:#00d4ff33;box-shadow:0 0 15px #00d4ff4d}[data-theme=light] .theme-btn-mobile{border-color:#0066cc4d;background:#0066cc1a;color:#06c}[data-theme=light] .theme-btn-mobile:hover{background:#0066cc26;box-shadow:0 0 15px #0066cc40}@media (max-width: 1200px){.navbar-container{padding:0 16px;gap:16px}.brand-text{font-size:14px}.brand-icon{font-size:22px}.nav-link{font-size:13px;padding:8px 10px}.action-btn{padding:8px}.nav-link-special .emoji-only{display:inline}}@media (max-width: 1050px){.nav-link{font-size:12px;padding:8px}.brand-text{font-size:13px}}@media (max-width: 992px){.desktop-nav{display:none}.mobile-toggle{display:flex}.search-btn,.notification-btn{display:none}}@media (max-width: 430px){.mobile-menu{width:85vw;max-width:320px}.mobile-nav-link{padding:16px;font-size:16px;min-height:44px;display:flex;align-items:center}.close-btn{min-width:44px;min-height:44px}.theme-btn-mobile{min-height:44px}}@media (max-width: 768px){.admin-navbar{height:56px}.navbar-container{padding:0 16px;gap:16px}.brand-text{display:none}.brand-icon{font-size:24px;color:#00d4ff}.user-btn{padding:0}.user-arrow{display:none}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu{animation:slideIn .3s ease}:root{--color-primary: #6366f1;--color-primary-hover: #5558e3;--color-primary-light: #eef2ff;--color-secondary: #8b5cf6;--color-secondary-hover: #7c3aed;--color-secondary-light: #f5f3ff;--color-success: #10b981;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-danger: #ef4444;--color-danger-light: #fee2e2;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-text-primary: #111827;--color-text-secondary: #6b7280;--color-text-tertiary: #9ca3af;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 30px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--border-radius-sm: 6px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--border-width: 1px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}@media (prefers-color-scheme: dark){:root{--color-bg-primary: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-border: #334155;--color-border-light: #475569;--color-text-primary: #f1f5f9;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8}}[data-theme=dark]{--color-bg-primary: #0f172a !important;--color-bg-secondary: #1e293b !important;--color-bg-tertiary: #334155 !important;--color-border: #334155 !important;--color-border-light: #475569 !important;--color-text-primary: #f1f5f9 !important;--color-text-secondary: #cbd5e1 !important;--color-text-tertiary: #94a3b8 !important}[data-theme=light]{--color-bg-primary: #ffffff !important;--color-bg-secondary: #f9fafb !important;--color-bg-tertiary: #f3f4f6 !important;--color-border: #e2e8f0 !important;--color-border-light: #f1f5f9 !important;--color-text-primary: #111827 !important;--color-text-secondary: #6b7280 !important;--color-text-tertiary: #9ca3af !important}.premium-admin-dashboard{min-height:100vh;padding:var(--spacing-lg);background:var(--color-bg-secondary);font-family:var(--font-family);color:var(--color-text-primary);max-width:1600px;margin:0 auto;overflow-y:auto;overflow-x:hidden}.premium-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--spacing-md)}.premium-loading-spinner{width:48px;height:48px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:premium-spin .8s linear infinite}@keyframes premium-spin{to{transform:rotate(360deg)}}.premium-loading-text{color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.premium-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.premium-header-content{flex:1}.premium-page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0;letter-spacing:-.02em}.premium-page-subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0;font-weight:var(--font-weight-normal)}.premium-header-actions{display:flex;gap:var(--spacing-md);align-items:center}.premium-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-base);text-decoration:none;min-height:44px;min-width:44px;justify-content:center}.premium-btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.premium-btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.premium-btn-secondary{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border)}.premium-btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-text-tertiary)}.premium-btn:active{transform:translateY(0)}.premium-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.premium-quick-action-card{background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-md);transition:all var(--transition-base);cursor:pointer;box-shadow:var(--shadow-sm)}.premium-quick-action-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.premium-quick-action-link{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:var(--color-text-primary)}.premium-quick-action-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-lg);font-size:24px;background:var(--color-bg-secondary);transition:all var(--transition-base)}.premium-quick-action-icon--primary{background:var(--color-primary-light);color:var(--color-primary)}.premium-quick-action-icon--success{background:var(--color-success-light);color:var(--color-success)}.premium-quick-action-icon--info{background:var(--color-info-light);color:var(--color-info)}.premium-quick-action-icon--warning{background:var(--color-warning-light);color:var(--color-warning)}.premium-quick-action-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.premium-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.premium-stat-card{background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);cursor:default}.premium-stat-card:hover{border-color:var(--color-border-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.premium-stat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.premium-stat-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-md);color:#fff;transition:all var(--transition-base)}.premium-stat-icon--primary{background:var(--color-primary)}.premium-stat-icon--success{background:var(--color-success)}.premium-stat-icon--info{background:var(--color-info)}.premium-stat-icon--warning{background:var(--color-warning)}.premium-stat-icon--danger{background:var(--color-danger)}.premium-stat-trend{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.premium-stat-trend.trend-up{background:var(--color-success-light);color:var(--color-success)}.premium-stat-trend.trend-down{background:var(--color-danger-light);color:var(--color-danger)}.premium-stat-trend.trend-neutral{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.premium-stat-body{display:flex;flex-direction:column;gap:var(--spacing-xs)}.premium-stat-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:0;text-transform:uppercase;letter-spacing:.05em}.premium-stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;letter-spacing:-.02em;line-height:1.2}.premium-stat-period{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin:0}.premium-charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.premium-chart-card{background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.premium-chart-card--large{grid-column:1 / -1}.premium-chart-card:hover{border-color:var(--color-border-light);box-shadow:var(--shadow-md)}.premium-chart-header{margin-bottom:var(--spacing-md)}.premium-chart-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.premium-chart-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.premium-chart-loading{display:flex;align-items:center;justify-content:center;height:280px;color:var(--color-text-secondary);font-size:var(--font-size-md)}.premium-system-status{background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-xl)}.premium-section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;letter-spacing:-.01em}.premium-status-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.premium-status-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--spacing-md);align-items:center;padding:var(--spacing-md);border:var(--border-width) solid var(--color-border-light);border-radius:var(--border-radius-md);transition:all var(--transition-base)}.premium-status-item:hover{background:var(--color-bg-secondary);border-color:var(--color-border)}.premium-status-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);color:#fff;flex-shrink:0}.premium-status-icon--success{background:var(--color-success)}.premium-status-icon--warning{background:var(--color-warning)}.premium-status-icon--danger{background:var(--color-danger)}.premium-status-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.premium-status-content strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.premium-status-content span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.premium-status-time{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:right;white-space:nowrap}.premium-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) 0;border-top:var(--border-width) solid var(--color-border);margin-top:var(--spacing-2xl);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.premium-footer-version{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}@media (max-width: 1024px){.premium-admin-dashboard{padding:var(--spacing-md)}.premium-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.premium-charts-section{grid-template-columns:1fr}.premium-chart-card--large{grid-column:1}}@media (max-width: 768px){.premium-page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.premium-header-actions{width:100%;flex-direction:column}.premium-header-actions .premium-btn{width:100%}.premium-quick-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.premium-stats-grid{grid-template-columns:1fr}.premium-status-item{grid-template-columns:auto 1fr}.premium-status-time{grid-column:2;text-align:left}.premium-footer{flex-direction:column;gap:var(--spacing-sm);text-align:center}}@media (max-width: 480px){.premium-admin-dashboard{padding:var(--spacing-sm)}.premium-page-title{font-size:var(--font-size-2xl)}.premium-quick-actions{grid-template-columns:1fr}}.pwa-install-prompt{position:fixed;bottom:24px;right:24px;z-index:var(--tf-z-toast, 800);animation:pwaSlideIn .4s cubic-bezier(.34,1.56,.64,1);will-change:transform,opacity}@media (max-width: 768px){.pwa-install-prompt{bottom:16px;right:16px;left:16px}}.pwa-install-prompt--hiding{animation:pwaSlideOut .3s cubic-bezier(.4,0,1,1) forwards}@keyframes pwaSlideIn{0%{opacity:0;transform:translateY(100%) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pwaSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20%) scale(.95)}}.pwa-install-prompt__glass{position:relative;display:flex;align-items:center;gap:var(--tf-space-4, 16px);padding:var(--tf-space-4, 16px);background:var(--tf-glass-bg, rgba(255, 255, 255, .06));backdrop-filter:blur(var(--tf-glass-blur, 40px)) saturate(var(--tf-glass-saturate, 180%));-webkit-backdrop-filter:blur(var(--tf-glass-blur, 40px)) saturate(var(--tf-glass-saturate, 180%));border:1px solid var(--tf-glass-border, rgba(255, 255, 255, .08));border-radius:var(--tf-radius-2xl, 20px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffffff0d inset,0 1px #ffffff1a inset;overflow:hidden}.pwa-install-prompt__glass:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(135deg,#00d4ff66,#7b5cff66,#00d4ff66);border-radius:inherit;z-index:-1;opacity:0;transition:opacity var(--tf-transition-normal, .3s ease);background-size:200% 200%;animation:pwaGradientShift 3s ease infinite}.pwa-install-prompt:hover .pwa-install-prompt__glass:before{opacity:1}@keyframes pwaGradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.pwa-install-prompt__glass:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(0,212,255,.15) 0%,transparent 50%);opacity:0;transition:opacity var(--tf-transition-normal, .3s ease);pointer-events:none}.pwa-install-prompt:hover .pwa-install-prompt__glass:after{opacity:1}.pwa-install-prompt__close{position:absolute;top:8px;right:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:none;border-radius:var(--tf-radius-md, 8px);color:var(--tf-text-tertiary, rgba(255, 255, 255, .5));cursor:pointer;transition:all var(--tf-transition-fast, .15s ease);flex-shrink:0}.pwa-install-prompt__close:hover{background:#f363;color:var(--tf-error-500, #f44336);transform:rotate(90deg) scale(1.1)}.pwa-install-prompt__close:active{transform:rotate(90deg) scale(.95)}.pwa-install-prompt__close svg{width:14px;height:14px}.pwa-install-prompt__icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--tf-primary-500, #00d4ff) 0%,var(--tf-secondary-500, #7b5cff) 100%);border-radius:var(--tf-radius-lg, 12px);color:#fff;flex-shrink:0;box-shadow:var(--tf-glow-primary, 0 0 20px rgba(0, 212, 255, .4));animation:pwaIconFloat 3s ease-in-out infinite}@keyframes pwaIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.pwa-install-prompt__icon svg{width:24px;height:24px}.pwa-install-prompt__content{flex:1;min-width:0}.pwa-install-prompt__title{margin:0;font-size:var(--tf-text-sm, .875rem);font-weight:var(--tf-font-semibold, 600);color:var(--tf-text-primary, #f4f7ff);line-height:var(--tf-leading-tight, 1.25)}.pwa-install-prompt__message{margin:var(--tf-space-1, 4px) 0 0 0;font-size:var(--tf-text-xs, .75rem);color:var(--tf-text-secondary, rgba(255, 255, 255, .7));line-height:var(--tf-leading-normal, 1.5)}.pwa-install-prompt__button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:var(--tf-space-2, 8px) var(--tf-space-4, 16px);min-height:44px;min-width:44px;background:linear-gradient(135deg,var(--tf-primary-500, #00d4ff) 0%,var(--tf-secondary-500, #7b5cff) 100%);border:none;border-radius:var(--tf-radius-lg, 12px);color:#0f0f23;font-size:var(--tf-text-sm, .875rem);font-weight:var(--tf-font-semibold, 600);cursor:pointer;overflow:hidden;transition:all var(--tf-transition-fast, .15s ease);box-shadow:var(--tf-glow-primary, 0 0 20px rgba(0, 212, 255, .4));flex-shrink:0}.pwa-install-prompt__button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00d4ff80,var(--tf-glow-primary, 0 0 20px rgba(0, 212, 255, .4))}.pwa-install-prompt__button:active{transform:translateY(0) scale(.98)}.pwa-install-prompt__button-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);transform:translate(-100%);transition:transform .5s ease}.pwa-install-prompt__button:hover .pwa-install-prompt__button-glow{transform:translate(100%)}.pwa-install-prompt__progress{position:absolute;bottom:0;left:0;height:2px;background:linear-gradient(90deg,var(--tf-primary-500, #00d4ff),var(--tf-secondary-500, #7b5cff));width:100%;transform-origin:left;animation:pwaProgress 15s linear forwards}@keyframes pwaProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.pwa-ios-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--tf-z-toast, 800) + 1);display:flex;align-items:center;justify-content:center;padding:var(--tf-space-4, 16px);background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:pwaModalFadeIn .2s ease;will-change:opacity}@keyframes pwaModalFadeIn{0%{opacity:0}to{opacity:1}}.pwa-ios-modal__content{position:relative;max-width:360px;width:100%;background:var(--tf-bg-primary, #050816);border:1px solid var(--tf-glass-border, rgba(255, 255, 255, .08));border-radius:var(--tf-radius-2xl, 20px);padding:var(--tf-space-6, 24px);box-shadow:0 20px 40px #0006,0 0 0 1px #ffffff0d inset;animation:pwaModalSlideUp .3s cubic-bezier(.34,1.56,.64,1);will-change:transform,opacity}@keyframes pwaModalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.pwa-ios-modal__close{position:absolute;top:var(--tf-space-4, 16px);right:var(--tf-space-4, 16px);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:none;border-radius:var(--tf-radius-md, 8px);color:var(--tf-text-secondary, rgba(255, 255, 255, .7));cursor:pointer;transition:all var(--tf-transition-fast, .15s ease)}.pwa-ios-modal__close:hover{background:#f363;color:var(--tf-error-500, #f44336);transform:rotate(90deg) scale(1.1)}.pwa-ios-modal__close svg{width:16px;height:16px}.pwa-ios-modal__icon{width:64px;height:64px;margin:0 auto var(--tf-space-4, 16px);display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--tf-primary-500, #00d4ff) 0%,var(--tf-secondary-500, #7b5cff) 100%);border-radius:var(--tf-radius-xl, 16px);color:#fff;box-shadow:var(--tf-glow-primary, 0 0 20px rgba(0, 212, 255, .4))}.pwa-ios-modal__icon svg{width:32px;height:32px}.pwa-ios-modal__title{margin:0 0 var(--tf-space-5, 20px) 0;font-size:var(--tf-text-lg, 1.125rem);font-weight:var(--tf-font-bold, 700);color:var(--tf-text-primary, #f4f7ff);text-align:center}.pwa-ios-modal__steps{display:flex;flex-direction:column;gap:var(--tf-space-3, 12px);margin-bottom:var(--tf-space-5, 20px)}.pwa-ios-modal__step{display:flex;align-items:flex-start;gap:var(--tf-space-3, 12px);padding:var(--tf-space-3, 12px);background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--tf-radius-lg, 12px);transition:all var(--tf-transition-fast, .15s ease)}.pwa-ios-modal__step:hover{background:#ffffff0d;border-color:#00d4ff33}.pwa-ios-modal__step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--tf-primary-500, #00d4ff) 0%,var(--tf-secondary-500, #7b5cff) 100%);border-radius:var(--tf-radius-full, 9999px);color:#0f0f23;font-size:var(--tf-text-xs, .75rem);font-weight:var(--tf-font-bold, 700);flex-shrink:0}.pwa-ios-modal__step-content{flex:1}.pwa-ios-modal__step-title{font-size:var(--tf-text-sm, .875rem);font-weight:var(--tf-font-semibold, 600);color:var(--tf-text-primary, #f4f7ff);margin-bottom:2px}.pwa-ios-modal__step-desc{font-size:var(--tf-text-xs, .75rem);color:var(--tf-text-secondary, rgba(255, 255, 255, .7))}.pwa-ios-modal__step-icon{width:24px;height:24px;color:var(--tf-primary-500, #00d4ff)}.pwa-ios-modal__step-icon svg{width:100%;height:100%}.pwa-ios-modal__button{width:100%;padding:var(--tf-space-3, 12px);background:linear-gradient(135deg,var(--tf-primary-500, #00d4ff) 0%,var(--tf-secondary-500, #7b5cff) 100%);border:none;border-radius:var(--tf-radius-lg, 12px);color:#0f0f23;font-size:var(--tf-text-sm, .875rem);font-weight:var(--tf-font-semibold, 600);cursor:pointer;transition:all var(--tf-transition-fast, .15s ease);box-shadow:var(--tf-glow-primary, 0 0 20px rgba(0, 212, 255, .4))}.pwa-ios-modal__button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00d4ff80}.pwa-ios-modal__button:active{transform:translateY(0) scale(.98)}@media (max-width: 768px){.pwa-install-prompt__glass{flex-wrap:wrap;gap:var(--tf-space-3, 12px);padding:var(--tf-space-3, 12px)}.pwa-install-prompt__content{flex-basis:100%;order:-1}.pwa-install-prompt__icon{order:-2}.pwa-ios-modal__content{padding:var(--tf-space-4, 16px)}}@media (prefers-reduced-motion: reduce){.pwa-install-prompt,.pwa-install-prompt__glass,.pwa-install-prompt__close,.pwa-install-prompt__button,.pwa-install-prompt__icon,.pwa-ios-modal,.pwa-ios-modal__content,.pwa-ios-modal__step{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.pwa-install-prompt__icon{animation:none}.pwa-install-prompt__progress{animation:none;transform:scaleX(1)}}.pwa-install-prompt__close:focus-visible,.pwa-install-prompt__button:focus-visible,.pwa-ios-modal__close:focus-visible,.pwa-ios-modal__button:focus-visible{outline:2px solid var(--tf-primary-500, #00d4ff);outline-offset:2px}[data-theme=light] .pwa-install-prompt__glass{background:var(--tf-glass-bg, rgba(255, 255, 255, .8));box-shadow:0 8px 32px #0000001a,0 0 0 1px #0000000d inset,0 1px #fffc inset}[data-theme=light] .pwa-ios-modal__content{background:var(--tf-bg-primary, #ffffff);box-shadow:0 20px 40px #00000026,0 0 0 1px #0000000d inset}[data-theme=light] .pwa-ios-modal__step{background:#00000005;border-color:#00000014}[data-theme=light] .pwa-ios-modal__step:hover{background:#0000000a;border-color:#00d4ff4d}:root{--tf-primary-50: #e6fbff;--tf-primary-100: #b3f3ff;--tf-primary-200: #80ebff;--tf-primary-300: #4de3ff;--tf-primary-400: #1adbff;--tf-primary-500: #00d4ff;--tf-primary-600: #00a9cc;--tf-primary-700: #007f99;--tf-primary-800: #005466;--tf-primary-900: #002a33;--tf-secondary-50: #f3f0ff;--tf-secondary-100: #ddd6ff;--tf-secondary-200: #c7bcff;--tf-secondary-300: #b1a2ff;--tf-secondary-400: #9b88ff;--tf-secondary-500: #7b5cff;--tf-secondary-600: #6249cc;--tf-secondary-700: #4a3799;--tf-secondary-800: #312466;--tf-secondary-900: #191233;--tf-success-50: #e8f5e9;--tf-success-100: #c8e6c9;--tf-success-200: #a5d6a7;--tf-success-300: #81c784;--tf-success-400: #66bb6a;--tf-success-500: #4caf50;--tf-success-600: #43a047;--tf-success-700: #388e3c;--tf-success-800: #2e7d32;--tf-success-900: #1b5e20;--tf-warning-50: #fff8e1;--tf-warning-100: #ffecb3;--tf-warning-200: #ffe082;--tf-warning-300: #ffd54f;--tf-warning-400: #ffca28;--tf-warning-500: #ffc107;--tf-warning-600: #ffb300;--tf-warning-700: #ffa000;--tf-warning-800: #ff8f00;--tf-warning-900: #ff6f00;--tf-error-50: #ffebee;--tf-error-100: #ffcdd2;--tf-error-200: #ef9a9a;--tf-error-300: #e57373;--tf-error-400: #ef5350;--tf-error-500: #f44336;--tf-error-600: #e53935;--tf-error-700: #d32f2f;--tf-error-800: #c62828;--tf-error-900: #b71c1c;--tf-neutral-50: #fafafa;--tf-neutral-100: #f5f5f5;--tf-neutral-200: #eeeeee;--tf-neutral-300: #e0e0e0;--tf-neutral-400: #bdbdbd;--tf-neutral-500: #9e9e9e;--tf-neutral-600: #757575;--tf-neutral-700: #616161;--tf-neutral-800: #424242;--tf-neutral-900: #212121;--tf-gradient-primary: linear-gradient(135deg, var(--tf-primary-500) 0%, var(--tf-secondary-500) 100%);--tf-gradient-success: linear-gradient(135deg, #4caf50 0%, #00d4ff 100%);--tf-gradient-warning: linear-gradient(135deg, #ffc107 0%, #ff9800 100%);--tf-gradient-error: linear-gradient(135deg, #f44336 0%, #e91e63 100%);--tf-gradient-dark: linear-gradient(135deg, #152044 0%, #050816 100%);--tf-gradient-light: linear-gradient(135deg, #ffffff 0%, #e8eeff 100%);--tf-chart-gradient-1: linear-gradient(180deg, rgba(0, 212, 255, .4) 0%, rgba(0, 212, 255, 0) 100%);--tf-chart-gradient-2: linear-gradient(180deg, rgba(123, 92, 255, .4) 0%, rgba(123, 92, 255, 0) 100%);--tf-chart-gradient-3: linear-gradient(180deg, rgba(76, 175, 80, .4) 0%, rgba(76, 175, 80, 0) 100%);--tf-space-0: 0;--tf-space-1: 4px;--tf-space-2: 8px;--tf-space-3: 12px;--tf-space-4: 16px;--tf-space-5: 20px;--tf-space-6: 24px;--tf-space-8: 32px;--tf-space-10: 40px;--tf-space-12: 48px;--tf-space-16: 64px;--tf-space-20: 80px;--tf-space-24: 96px;--tf-font-primary: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;--tf-font-mono: "SF Mono", "Fira Code", "Consolas", monospace;--tf-text-xs: .75rem;--tf-text-sm: .875rem;--tf-text-base: 1rem;--tf-text-lg: 1.125rem;--tf-text-xl: 1.25rem;--tf-text-2xl: 1.5rem;--tf-text-3xl: 1.875rem;--tf-text-4xl: 2.25rem;--tf-text-5xl: 3rem;--tf-text-6xl: 3.75rem;--tf-font-normal: 400;--tf-font-medium: 500;--tf-font-semibold: 600;--tf-font-bold: 700;--tf-font-extrabold: 800;--tf-leading-none: 1;--tf-leading-tight: 1.25;--tf-leading-snug: 1.375;--tf-leading-normal: 1.5;--tf-leading-relaxed: 1.625;--tf-leading-loose: 2;--tf-tracking-tighter: -.05em;--tf-tracking-tight: -.025em;--tf-tracking-normal: 0;--tf-tracking-wide: .025em;--tf-tracking-wider: .05em;--tf-tracking-widest: .1em;--tf-radius-none: 0;--tf-radius-sm: 4px;--tf-radius-md: 8px;--tf-radius-lg: 12px;--tf-radius-xl: 16px;--tf-radius-2xl: 20px;--tf-radius-3xl: 24px;--tf-radius-full: 9999px;--tf-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--tf-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--tf-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--tf-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--tf-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--tf-glow-primary: 0 0 20px rgba(0, 212, 255, .4);--tf-glow-secondary: 0 0 20px rgba(123, 92, 255, .4);--tf-glow-success: 0 0 20px rgba(76, 175, 80, .4);--tf-glow-warning: 0 0 20px rgba(255, 193, 7, .4);--tf-glow-error: 0 0 20px rgba(244, 67, 54, .4);--tf-glass-bg: rgba(255, 255, 255, .06);--tf-glass-bg-hover: rgba(255, 255, 255, .1);--tf-glass-border: rgba(255, 255, 255, .08);--tf-glass-border-hover: rgba(255, 255, 255, .15);--tf-glass-blur: 40px;--tf-glass-saturate: 180%;--tf-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--tf-transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--tf-transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--tf-transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--tf-z-base: 0;--tf-z-dropdown: 100;--tf-z-sticky: 200;--tf-z-fixed: 300;--tf-z-modal-backdrop: 400;--tf-z-modal: 500;--tf-z-popover: 600;--tf-z-tooltip: 700;--tf-z-toast: 800;--tf-breakpoint-sm: 640px;--tf-breakpoint-md: 768px;--tf-breakpoint-lg: 1024px;--tf-breakpoint-xl: 1280px;--tf-breakpoint-2xl: 1536px}[data-theme=dark]{--tf-bg-primary: #050816;--tf-bg-secondary: #0a0f1f;--tf-bg-tertiary: #101628;--tf-bg-elevated: rgba(255, 255, 255, .06);--tf-text-primary: #f4f7ff;--tf-text-secondary: rgba(255, 255, 255, .7);--tf-text-tertiary: rgba(255, 255, 255, .5);--tf-text-disabled: rgba(255, 255, 255, .3);--tf-border-primary: rgba(255, 255, 255, .08);--tf-border-secondary: rgba(255, 255, 255, .12);--tf-border-focus: var(--tf-primary-500);--tf-surface-card: rgba(255, 255, 255, .04);--tf-surface-card-hover: rgba(255, 255, 255, .08)}[data-theme=light]{--tf-bg-primary: #ffffff;--tf-bg-secondary: #f8faff;--tf-bg-tertiary: #f1f5ff;--tf-bg-elevated: rgba(255, 255, 255, .9);--tf-text-primary: #0f172a;--tf-text-secondary: rgba(15, 23, 42, .7);--tf-text-tertiary: rgba(15, 23, 42, .5);--tf-text-disabled: rgba(15, 23, 42, .3);--tf-border-primary: rgba(15, 23, 42, .08);--tf-border-secondary: rgba(15, 23, 42, .12);--tf-border-focus: var(--tf-primary-500);--tf-surface-card: rgba(255, 255, 255, .9);--tf-surface-card-hover: rgba(255, 255, 255, 1);--tf-glass-bg: rgba(255, 255, 255, .8);--tf-glass-bg-hover: rgba(255, 255, 255, .9);--tf-glass-border: rgba(15, 23, 42, .08);--tf-glass-border-hover: rgba(15, 23, 42, .12)}:root{--tf-chart-1: #00d4ff;--tf-chart-2: #7b5cff;--tf-chart-3: #4caf50;--tf-chart-4: #ffc107;--tf-chart-5: #ff6b6b;--tf-chart-6: #45b7d1;--tf-chart-7: #96ceb4;--tf-chart-8: #ffeaa7;--tf-chart-9: #dfe6e9;--tf-chart-10: #fd79a8}*:focus-visible{outline:3px solid var(--tf-primary-500);outline-offset:2px;border-radius:var(--tf-radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--tf-primary-500);outline-offset:2px}*:focus:not(:focus-visible){outline:none}.critical-alert,.badge-critical{background:var(--tf-error-600);color:#fff!important}.warning-alert,.badge-warning{background:var(--tf-warning-700);color:#fff!important}.success-alert,.badge-success{background:var(--tf-success-700);color:#fff!important}@media (pointer: coarse){button,a,input[type=checkbox],input[type=radio]{min-width:44px;min-height:44px}.btn-inline,.badge-count{min-width:auto;min-height:auto}}.gpu-accelerate{will-change:transform;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.contain-strict{contain:strict}.contain-layout{contain:layout style paint}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}img{content-visibility:auto;image-rendering:-webkit-optimize-contrast}button,a,[role=button],input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}*{scrollbar-width:thin;scrollbar-color:rgba(0,212,255,.3) transparent}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.login-page,.twofa-page{contain:layout style}.card-compact,.tank-card-premium,.tank-skeleton{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden}.grid>*,.skeleton-grid>*,.tanks-grid>*{content-visibility:auto;contain-intrinsic-size:340px 200px}.orb,.gradient-orb{will-change:transform;transform:translateZ(0);backface-visibility:hidden;contain:strict}.header.glassos-header{will-change:transform;transform:translateZ(0);contain:layout style}.stats-bar{will-change:scroll-position;transform:translateZ(0)}.modal-overlay,.alerts-modal,.history-modal{will-change:opacity;transform:translateZ(0)}.btn-control,.stat-item,.feature-item,.metric-card{transform:translateZ(0);backface-visibility:hidden}@media print{*{animation:none!important;transition:none!important}.orb,.gradient-orb,.bg{display:none!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-reduced-data: reduce){.orb,.gradient-orb{display:none}.backdrop-filter{-webkit-backdrop-filter:none;backdrop-filter:none}}
