:root{--bg-dark: #0f0f11;--glass-border: rgba(255, 255, 255, .1);--glass-surface: rgba(20, 20, 30, .6);--glass-popover: rgba(30, 30, 45, .85);--glass-highlight: rgba(255, 255, 255, .05);--primary: #6d28d9;--primary-glow: #8b5cf6;--accent: #06b6d4;--success: #10b981;--danger: #f43f5e;--warning: #f59e0b;--text-main: #ffffff;--text-muted: #94a3b8;--blur-md: blur(20px);--blur-lg: blur(40px);--radius: 24px;--radius-sm: 16px;--radius-xs: 10px;--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .3)}*{box-sizing:border-box;outline:none;-webkit-tap-highlight-color:transparent}body{margin:0;padding:0;font-family:Plus Jakarta Sans,sans-serif;background-color:var(--bg-dark);color:var(--text-main);height:100vh;width:100vw;overflow:hidden;font-size:14px;background:radial-gradient(circle at 0% 0%,rgba(109,40,217,.2),transparent 40%),radial-gradient(circle at 100% 0%,rgba(6,182,212,.2),transparent 40%),radial-gradient(circle at 100% 100%,rgba(236,72,153,.2),transparent 40%),radial-gradient(circle at 0% 100%,rgba(16,185,129,.15),transparent 40%),#0f0f11}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000;transition:opacity .5s ease,visibility .5s ease}.auth-overlay.hiding{opacity:0;visibility:hidden}.app-shell.blurred{filter:blur(20px) brightness(.5);transform:scale(1.02);transition:filter .6s ease,transform .6s ease}.app-shell.unblurring{filter:blur(0) brightness(1);transform:scale(1)}.auth-card{width:100%;max-width:400px;padding:40px;animation:fadeInUp .6s ease-out;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .5s ease}.auth-card.slide-out{transform:translateY(-100vh) scale(.8) rotate(-5deg);opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-logo{display:flex;justify-content:center}.auth-card{background:linear-gradient(135deg,#141423cc,#0f0f19e6)!important;backdrop-filter:blur(40px)!important;-webkit-backdrop-filter:blur(40px)!important;border:1px solid rgba(139,92,246,.15)!important;box-shadow:0 25px 50px -12px #00000080,0 0 100px #8b5cf61a,inset 0 1px #ffffff0d!important}.brand-logo-large{width:80px;height:80px;background:linear-gradient(135deg,#6d28d9,#06b6d4);border-radius:20px;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 10px 40px #6d28d966,0 0 60px #06b6d433;animation:logoFloat 3s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.logo-text{font-family:Plus Jakarta Sans,sans-serif;font-size:1.8rem;font-weight:800;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.3);position:relative;z-index:2}.logo-glow{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;background:linear-gradient(135deg,#8b5cf6,#06b6d4);border-radius:22px;filter:blur(15px);opacity:.5;z-index:0;animation:glowPulse 2s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.auth-title{margin:25px 0 8px;color:#fff;text-align:center;font-family:Plus Jakarta Sans,sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,#fff,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subtitle{color:#94a3b8cc;text-align:center;margin-bottom:35px;font-size:.7rem;font-family:JetBrains Mono,monospace;letter-spacing:1px;text-transform:uppercase}.subtitle-dot{color:#06b6d4;margin:0 8px;font-weight:700}.auth-form{display:flex;flex-direction:column;gap:18px}.input-group-glass{display:flex;flex-direction:column;gap:6px}.input-group-glass label{font-size:.7rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:1px;margin-left:4px}.input-group-glass input{width:100%;padding:14px 16px;background:#0006;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#fff;font-family:JetBrains Mono,monospace;font-size:.9rem;transition:all .3s ease}.input-group-glass input:focus{border-color:#8b5cf680;background:#00000080;box-shadow:0 0 0 3px #8b5cf61a,0 0 20px #8b5cf61a;outline:none}.input-group-glass input::-moz-placeholder{color:#94a3b866}.input-group-glass input::placeholder{color:#94a3b866}.btn-login{width:100%;padding:16px;margin-top:10px;border-radius:12px;background:linear-gradient(135deg,#6d28d9,#8b5cf6);color:#fff;border:none;font-weight:700;font-size:.95rem;font-family:Plus Jakarta Sans,sans-serif;cursor:pointer;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 15px #6d28d966,inset 0 1px #ffffff1a}.btn-login:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6d28d980,inset 0 1px #ffffff26}.btn-login:active{transform:translateY(0)}.btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:btnShine 3s ease-in-out infinite}@keyframes btnShine{0%{left:-100%}50%,to{left:100%}}.auth-footer{text-align:center;margin-top:25px;color:#94a3b8b3;font-size:.85rem}.auth-footer a{color:#06b6d4;text-decoration:none;font-weight:600;transition:all .2s ease}.auth-footer a:hover{color:#22d3ee;text-shadow:0 0 10px rgba(6,182,212,.5)}.auth-error{color:#f43f5e;text-align:center;margin-top:15px;font-size:.85rem;min-height:20px}.app-shell{display:flex;height:100%;width:100%}.mobile-top-header{display:none}.mobile-top-header-btn[hidden]{display:none!important}.glass-sidebar{width:80px;height:100%;background:var(--glass-surface);backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;padding:20px 0;z-index:100;flex-shrink:0}.brand-logo{position:relative;width:40px;height:40px;background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;color:#fff;margin-bottom:40px;box-shadow:0 0 15px #8b5cf666;transition:transform .3s,box-shadow .3s}.brand-logo:hover{transform:scale(1.05);box-shadow:0 0 25px #8b5cf699}.brand-logo .brand-logo-text{display:inline-flex;align-items:center;justify-content:center;transition:opacity .2s ease,transform .2s ease}.brand-logo .brand-logo-back{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease,transform .2s ease;pointer-events:none}.brand-logo .brand-logo-back i,.brand-logo .brand-logo-back svg{width:18px;height:18px;stroke-width:2.6;color:#fff}.brand-logo .brand-logo-tooltip{display:none}.brand-logo.is-clickable{cursor:pointer;outline:none}.brand-logo.is-clickable:focus-visible{outline:2px solid rgba(139,92,246,.8);outline-offset:3px}.brand-logo.is-clickable:hover .brand-logo-text,.brand-logo.is-clickable:focus-visible .brand-logo-text{opacity:0;transform:scale(.85)}.brand-logo.is-clickable:hover .brand-logo-back,.brand-logo.is-clickable:focus-visible .brand-logo-back{opacity:1;transform:translate(0)}.brand-logo.is-clickable .brand-logo-tooltip{display:block;top:50%;transform:translateY(-50%)}.brand-logo.is-clickable:hover .brand-logo-tooltip,.brand-logo.is-clickable:focus-visible .brand-logo-tooltip{opacity:1;transform:translate(5px,-50%)}.brand-logo.is-clickable:hover,.brand-logo.is-clickable:focus-visible{transform:scale(1.08);box-shadow:0 0 28px #8b5cf6b3}.brand-logo.is-clickable:active{transform:scale(.96)}.nav-group{display:flex;flex-direction:column;gap:20px;width:100%;align-items:center}.nav-item{position:relative;width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-item:hover{background:var(--glass-highlight);color:#fff;box-shadow:0 0 10px #ffffff1a}.nav-item.active{background:#ffffff1a;color:var(--accent);border:1px solid rgba(6,182,212,.3)}.nav-item i,.nav-item svg{width:22px;height:22px}.glass-popover{position:absolute;left:60px;top:-10px;width:320px;background:var(--glass-popover);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--glass-border);border-radius:var(--radius);padding:20px;opacity:0;visibility:hidden;transform:translate(-10px) scale(.95);transition:opacity .25s ease,transform .25s ease,visibility .25s ease;box-shadow:var(--shadow-glass);z-index:200;pointer-events:none}.glass-popover:before{content:"";position:absolute;left:-30px;top:0;width:40px;height:100%;background:transparent}.nav-item:hover .glass-popover,.nav-item:focus-within .glass-popover,.glass-popover:hover{opacity:1;visibility:visible;transform:translate(10px) scale(1);pointer-events:auto}.nav-item{position:relative}.nav-item:not(:hover) .glass-popover{transition-delay:.15s}.popover-title{font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;border-bottom:1px solid var(--glass-border);padding-bottom:10px}.chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(55px,1fr));gap:6px}#assetChips{grid-template-columns:repeat(4,1fr)}.popover-wide{min-width:200px}.drawing-tools-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:12px}.draw-tool{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff9;cursor:pointer;transition:all .15s ease}.draw-tool:hover{background:#ffffff1a;color:#fff;border-color:#fff3}.draw-tool.active{background:#8b5cf64d;border-color:#a78bfa;color:#a78bfa;box-shadow:0 0 10px #8b5cf64d}.draw-tool i{width:16px;height:16px}.draw-options{display:flex;flex-direction:column;gap:8px;padding:10px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:10px}.color-picker-row,.stroke-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.option-label{font-size:.7rem;color:#fff9}.color-input{width:32px;height:24px;border:none;border-radius:4px;cursor:pointer;background:transparent}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:1px solid rgba(255,255,255,.2);border-radius:4px}.stroke-slider{width:80px;height:4px;-webkit-appearance:none;background:#fff3;border-radius:2px;outline:none}.stroke-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;background:#a78bfa;border-radius:50%;cursor:pointer}.draw-actions{display:flex;gap:6px}.draw-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .15s ease}.draw-action-btn:hover{background:#ef444440;border-color:#ef4444}.draw-action-btn i{width:14px;height:14px}.drawing-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.drawing-overlay.active{pointer-events:auto;cursor:crosshair}.chip{padding:6px 8px;border-radius:10px;background:#ffffff0d;border:1px solid transparent;text-align:center;font-size:.75rem;color:var(--text-muted);font-weight:500;cursor:pointer;transition:all .2s ease;font-family:Plus Jakarta Sans,sans-serif}.chip:hover{background:#ffffff1a;color:#fff}.chip.active{background:linear-gradient(135deg,#06b6d433,#06b6d41a);border-color:var(--accent);color:#fff;box-shadow:0 0 15px #06b6d426}.chip.fld-trend-active{background:#10b98133!important;border-color:#10b981!important;color:#10b981!important;box-shadow:0 0 10px #10b9814d}.chip.fld-3d-active{background:#ffb74d33!important;border-color:#ffb74d!important;color:#ffb74d!important;box-shadow:0 0 10px #ffb74d4d}.chip.mix-active{background:#8b5cf633!important;border-color:#8b5cf6!important;color:#8b5cf6!important;box-shadow:0 0 10px #8b5cf64d}.input-group{margin-bottom:15px}.input-group label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:6px}input[type=number],input[type=text],input[type=email],input[type=password],input[type=file],select{width:100%;padding:10px 12px;background:#0000004d;border:1px solid var(--glass-border);border-radius:var(--radius-xs);color:#fff;font-family:JetBrains Mono,monospace;font-size:.9rem;transition:all .2s ease}input:focus,select:focus{border-color:var(--primary-glow);background:#00000080;box-shadow:0 0 0 3px #8b5cf61a}input::-moz-placeholder{color:var(--text-muted);opacity:.6}input::placeholder{color:var(--text-muted);opacity:.6}.action-group{margin-top:auto;display:flex;flex-direction:column;gap:15px;width:100%;align-items:center;padding-bottom:20px}.btn-icon-only{width:48px;height:48px;border-radius:14px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#fff;position:relative}.btn-icon-only i,.btn-icon-only svg{width:20px;height:20px}.btn-analyze{background:linear-gradient(135deg,var(--primary),var(--primary-glow));box-shadow:0 0 20px #8b5cf64d}.btn-analyze:hover{transform:scale(1.05);box-shadow:0 0 30px #8b5cf680}.btn-analyze:active{transform:scale(.95)}.btn-live{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-muted)}.btn-live:hover{background:#ffffff1a;color:#fff}.btn-live.active{background:#10b98126;border-color:var(--success);color:var(--success);box-shadow:0 0 15px #10b98133;animation:pulse-green 2s infinite}.btn-snapshot{background:#06b6d41a;border:1px solid rgba(6,182,212,.3);color:var(--accent)}.btn-snapshot:hover{background:#06b6d433;box-shadow:0 0 15px #06b6d44d;transform:scale(1.05)}.btn-snapshot:active{transform:scale(.95)}.utility-group{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px 0;margin:auto 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.btn-utility{background:linear-gradient(135deg,#06b6d426,#8b5cf626);border:1px solid rgba(6,182,212,.4);color:#06b6d4;position:relative;overflow:hidden}.btn-utility:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(6,182,212,.1),transparent);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%{transform:translate(-100%) rotate(45deg)}to{transform:translate(100%) rotate(45deg)}}.btn-utility:hover{background:linear-gradient(135deg,#06b6d440,#8b5cf640);border-color:#06b6d4;color:#fff;box-shadow:0 0 20px #06b6d44d,inset 0 0 20px #06b6d41a;transform:scale(1.05)}.btn-utility.btn-toggle-active{background:linear-gradient(135deg,#fb923c40,#ef444426);border-color:var(--accent);color:var(--accent);box-shadow:0 0 20px #fb923c66,inset 0 0 15px #fb923c1a}.btn-utility.btn-toggle-active:before{background:linear-gradient(45deg,transparent,rgba(251,146,60,.15),transparent)}.btn-toggle{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-muted)}.btn-toggle:hover{background:#ffffff1a;color:#fff}.btn-toggle-active{background:#fb923c26;border-color:var(--accent);color:var(--accent);box-shadow:0 0 15px #fb923c33}@keyframes pulse-green{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}.btn-tooltip{position:absolute;left:60px;background:#000;padding:5px 10px;border-radius:6px;font-size:.7rem;opacity:0;pointer-events:none;transition:all .2s ease;white-space:nowrap;z-index:300}.btn-icon-only:hover .btn-tooltip{opacity:1;transform:translate(5px)}.btn-main{width:100%;padding:14px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary),var(--primary-glow));color:#fff;border:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #8b5cf64d;font-family:Plus Jakarta Sans,sans-serif}.btn-main:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.btn-main:active{transform:translateY(0)}.main-content{flex:1;padding:20px;display:flex;flex-direction:column;position:relative;overflow:hidden}.top-bar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px;padding:0 5px}.top-bar-left{display:flex;align-items:center;gap:8px}.top-bar-center,.top-bar-right{display:flex;align-items:center;gap:10px}.tf-quick-bar{display:flex;gap:2px}.tf-chip{padding:4px 6px;font-size:.55rem;font-family:JetBrains Mono,monospace;font-weight:600;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:3px;color:#fff6;cursor:pointer;transition:all .15s ease;text-transform:uppercase}.tf-chip:hover{background:#ffffff0f;color:#fffc;border-color:#ffffff26}.tf-chip.active{background:#8b5cf640;border-color:#8b5cf699;color:#a78bfa}.info-panel{display:flex;align-items:center;gap:10px;padding:4px 10px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:6px;font-size:.65rem;flex-shrink:0}.info-item{display:flex;align-items:center;gap:8px}.info-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:600;color:var(--primary-glow)}.info-item:nth-child(1) .info-value{color:#a78bfa}.info-item:nth-child(2) .info-value{color:#fbbf24}.info-item:nth-child(3) .info-value{color:#06b6d4}.layout-switcher{display:flex;align-items:center;gap:4px;background:#ffffff0d;border:1px solid var(--glass-border);padding:4px;border-radius:8px;margin-right:10px}.layout-btn{width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.layout-btn:hover{background:#ffffff1a;color:#fffc}.layout-btn.active{background:#8b5cf64d;color:#8b5cf6;box-shadow:0 0 10px #8b5cf64d}.layout-btn i,.layout-btn svg{width:18px;height:18px}.tf-switcher{display:flex;align-items:center;gap:4px;background:#ffffff0d;border:1px solid var(--glass-border);padding:4px 8px;border-radius:100px}.tf-btn{width:28px;height:28px;border-radius:50%;border:none;background:#ffffff0d;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.tf-btn:hover{background:var(--accent);color:#fff;transform:scale(1.1)}.tf-btn svg{width:16px;height:16px}.tf-current{min-width:40px;text-align:center;font-weight:700;font-size:.85rem;color:var(--accent);font-family:JetBrains Mono,monospace}.lang-switch{display:flex;gap:2px;padding:3px;background:#ffffff0d;border-radius:8px;border:1px solid var(--glass-border)}.lang-btn{padding:5px 10px;font-size:.7rem;font-weight:600;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .2s ease;font-family:JetBrains Mono,monospace}.lang-btn:hover{color:#fff;background:#ffffff1a}.lang-btn.active{background:var(--primary);color:#fff;box-shadow:0 0 10px #8b5cf64d}.live-indicator{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#ef444426;border:1.5px solid #ef4444;border-radius:100px;animation:live-glow 1.5s ease-in-out infinite;flex-shrink:0}.live-dot{width:8px;height:8px;background:#ef4444;border-radius:50%;animation:live-pulse 1s ease-in-out infinite;box-shadow:0 0 8px #ef4444}.live-text{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:700;color:#ef4444;letter-spacing:2px}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes live-glow{0%,to{box-shadow:0 0 10px #ef44444d}50%{box-shadow:0 0 20px #ef444499}}.mode-switcher{display:flex;align-items:center;justify-content:center;padding:6px 14px;background:#14141ecc;border:1.5px solid #a78bfa;border-radius:100px;cursor:pointer;transition:all .25s ease;font-family:JetBrains Mono,monospace;flex-shrink:0}.mode-switcher:hover{transform:scale(1.05);box-shadow:0 0 20px #a78bfa4d}.mode-switcher:active{transform:scale(.95)}.mode-switcher .mode-value{font-size:.85rem;font-weight:700;color:#a78bfa;letter-spacing:1px;transition:color .25s ease}.glass-tabs{display:flex;background:#ffffff0d;border:1px solid var(--glass-border);padding:4px;border-radius:100px}.tab-btn{padding:8px 24px;border-radius:100px;border:none;background:transparent;color:var(--text-muted);font-weight:600;cursor:pointer;transition:all .2s ease;font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem}.tab-btn:hover{color:#fff}.tab-btn.active{background:#ffffff1a;color:#fff;box-shadow:0 2px 10px #0003}.grid-layout{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:20px;flex:1;min-height:0;transition:grid-template-columns .25s ease,grid-template-rows .25s ease}.grid-layout.layout-2charts{grid-template-columns:1fr 360px;grid-template-rows:1fr 1fr;transition:grid-template-columns .35s ease}.grid-layout.layout-2charts .cell-right{transition:width .35s ease,min-width .35s ease,padding .35s ease,opacity .35s ease}.grid-layout.layout-2charts.panel-collapsed{grid-template-columns:1fr 0px}.grid-layout.layout-2charts.panel-collapsed .cell-right{width:0!important;min-width:0!important;padding:0!important;border:none!important;overflow:hidden!important;opacity:0}.panel-toggle-btn{position:fixed;right:20px;top:50%;transform:translateY(-50%);width:32px;height:90px;background:linear-gradient(135deg,#232332fa,#191928f2);border:1px solid rgba(255,255,255,.25);border-radius:8px 0 0 8px;cursor:pointer;z-index:9999;display:none;align-items:center;justify-content:center;transition:right .35s ease,background .2s ease,transform .2s ease;box-shadow:-3px 0 12px #00000080}.panel-toggle-btn:hover{background:linear-gradient(135deg,#37374bfa,#2d2d41f2);border-color:#f59e0b99;box-shadow:-4px 0 18px #f59e0b4d;transform:translateY(-50%) scale(1.05)}.panel-toggle-btn .toggle-arrow{font-size:24px;color:#ffffffe6;transition:transform .35s ease,color .2s ease;font-weight:700}.panel-toggle-btn:hover .toggle-arrow{color:#f59e0b}.panel-toggle-btn.collapsed .toggle-arrow{transform:rotate(180deg)}.grid-layout.layout-2charts .cell-main{grid-column:1;grid-row:1}.grid-layout.layout-2charts .cell-top{grid-column:1;grid-row:2}.grid-layout.layout-2charts .cell-bot{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;position:absolute!important;left:-9999px!important}.grid-layout.layout-2charts .cell-right{grid-column:2;grid-row:1 / 3;display:flex!important;overflow:hidden;position:relative;transition:width .35s ease,min-width .35s ease,padding .35s ease,opacity .35s ease}.cell-right{display:none;position:relative;overflow:hidden}.cycles-panel-content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:16px;padding:4px}.cycles-panel-content::-webkit-scrollbar{width:5px}.cycles-panel-content::-webkit-scrollbar-track{background:#ffffff05;border-radius:10px}.cycles-panel-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8b5cf666,#06b6d466);border-radius:10px}.panel-two-columns{display:flex;gap:12px;flex:1;min-height:0;overflow:hidden}.panel-col-left{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.cycles-controls{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:6px}.cycles-controls input{width:50px;flex-shrink:0;padding:10px 6px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.75rem;font-weight:600;text-align:center}.cycles-controls button{flex:1;padding:10px 8px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fffc;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s}.cycles-controls button:hover{background:#fff3;color:#fff;transform:translateY(-1px)}.cycles-controls button.active{background:#8b5cf666;border-color:#8b5cf699;color:#fff;box-shadow:0 0 8px #8b5cf64d}.panel-col-right{width:80px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.section-title-small{font-size:.65rem;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;padding:4px 8px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1)}.cycles-list-compact{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:2px}.cycles-list-compact::-webkit-scrollbar{width:4px}.cycles-list-compact::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.cycle-row-header{display:grid;grid-template-columns:20px 40px 36px 36px 36px 36px 40px;gap:3px;padding:4px 6px;font-size:.52rem;font-weight:700;color:#fff6;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:4px}.cycle-row-full{display:grid;grid-template-columns:20px 40px 36px 36px 36px 36px 40px;gap:3px;padding:5px 6px;background:#ffffff05;border-radius:6px;font-size:.62rem;align-items:center;cursor:pointer;transition:background .15s ease;border-left:3px solid transparent}.cycle-row-full:hover{background:#ffffff0f}.cycle-row-full.active{background:#f59e0b26;border-left-color:#f59e0b}.cycle-row-full.in-harmonics{background:#8b5cf61a;border-left-color:#8b5cf6}.cycle-row-full.active.in-harmonics{background:linear-gradient(90deg,#f59e0b26,#8b5cf61a)}.cycle-row-full.hover-highlight{background:#3b82f640!important;border-left-color:#3b82f6!important;box-shadow:0 0 8px #3b82f666;transform:scale(1.02)}.cycle-row-full .duration{font-weight:700;color:#ffffffe6}.cycle-row-full .real-time{color:#93c5fde6;font-weight:500;font-size:.58rem}.cycle-row-full .grade{font-size:.55rem;padding:1px 3px;background:#06b6d433;color:#06b6d4;border-radius:3px;text-align:center}.cycle-row-full .amplitude,.cycle-row-full .bartels{color:#fff9;text-align:right}.cycle-row-full .score{text-align:right;color:#f59e0b;font-weight:600}.cycle-row-compact{display:grid;grid-template-columns:20px 45px 35px 1fr;gap:6px;padding:5px 6px;background:#ffffff05;border-radius:6px;font-size:.7rem;align-items:center;cursor:pointer;transition:background .15s ease;border-left:3px solid transparent}.cycle-row-compact:hover{background:#ffffff0f}.cycle-row-compact.active{background:#f59e0b26;border-left-color:#f59e0b}.cycle-row-compact.in-harmonics{background:#8b5cf61a;border-left-color:#8b5cf6}.cycle-row-compact .duration{font-weight:700;color:#ffffffe6}.cycle-row-compact .grade{font-size:.6rem;padding:1px 4px;background:#06b6d433;color:#06b6d4;border-radius:3px;text-align:center}.cycle-row-compact .score{text-align:right;color:#f59e0b;font-weight:600}.layout-2charts .cycle-row-header{grid-template-columns:28px 55px 50px 50px 50px 50px 55px;gap:6px;padding:8px 10px;font-size:.7rem}.layout-2charts .cycle-row-full{grid-template-columns:28px 55px 50px 50px 50px 50px 55px;gap:6px;padding:10px;font-size:.75rem}.layout-2charts .cycle-row-full .real-time{font-size:.72rem}.layout-2charts .cycle-row-full .grade{font-size:.68rem;padding:2px 5px}.layout-2charts .view-dot{width:16px;height:16px}.view-dot{width:12px;height:12px;border-radius:50%;cursor:pointer;transition:all .2s ease;border:1px solid rgba(255,255,255,.15)}.view-dot:hover{transform:scale(1.3);border-color:#fff6}.view-dot.visible{border-color:transparent}.harmonics-vertical{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.harmonics-vertical::-webkit-scrollbar{width:3px}.harmonics-vertical::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}#harmonicsVertical{display:flex;flex-direction:column;gap:4px;height:100%;overflow:hidden}.hcard{--hcolor: #8b5cf6;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px;background:#ffffff05;border-left:3px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;transition:all .2s;min-height:0;opacity:.6}.hcard:hover{background:#ffffff0d;opacity:.8}.hcard.on{background:color-mix(in srgb,var(--hcolor) 15%,transparent);border-left:4px solid var(--hcolor);box-shadow:0 0 12px color-mix(in srgb,var(--hcolor) 25%,transparent);opacity:1}.hcard.dom{--hcolor: #f59e0b}.hcard.hover-highlight{background:#3b82f640!important}.hcard-ratio{font-size:.9rem;font-weight:800;color:#fff;line-height:1}.hcard-info{font-size:.65rem;color:#fff9;margin-top:2px}.hcard-info small{color:#22d3ee;font-weight:600;margin-left:4px}.hcard-eye{width:20px;height:20px;border:none;border-radius:50%;background:color-mix(in srgb,var(--hcolor) 20%,transparent);color:color-mix(in srgb,var(--hcolor) 50%,transparent);font-size:10px;cursor:pointer;transition:all .15s;margin-top:4px}.hcard-eye.vis{background:var(--hcolor);color:#fff;box-shadow:0 0 8px color-mix(in srgb,var(--hcolor) 60%,transparent)}.hcard-eye:hover{transform:scale(1.15)}.harmonics-table-wrapper{overflow-x:auto;background:linear-gradient(135deg,#ffffff0d,#ffffff05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2px;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff1a}.harmonics-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.harmonics-table th{text-align:left;padding:12px 10px;color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:#0003;position:sticky;left:0;z-index:1}.harmonics-table th:first-child{border-radius:12px 0 0}.harmonics-table tr:last-child th{border-radius:0 0 0 12px}.harmonics-table td{padding:12px 14px;text-align:center;white-space:nowrap;cursor:pointer;transition:all .2s ease;border-left:1px solid rgba(255,255,255,.03);position:relative}.harmonics-table td:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary-glow);transition:all .2s ease;transform:translate(-50%)}.harmonics-table td:hover{background:#8b5cf61a}.harmonics-table td:hover:after{width:80%}.harmonics-table td.active{border-bottom:3px solid var(--harmonic-color, var(--primary-glow))}.harmonics-table td.active:after{display:none}.harmonics-table td.dominant{background:linear-gradient(180deg,#ffd70026,#ffd7000d);color:gold;text-shadow:0 0 10px rgba(255,215,0,.3)}.harmonics-table td.dominant-off{background:#ffd70008;color:#ffd7004d;text-decoration:line-through}.harmonics-table .view-toggle{display:inline-block;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.harmonics-table .view-toggle.on{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.harmonics-table .view-toggle.off{background:#ffffff0d;color:var(--text-muted);border-color:#ffffff1a}.harmonics-table .view-toggle.off:hover{background:#ffffff1a;border-color:#fff3}.harmonics-table .view-toggle.dominant-on{background:linear-gradient(135deg,gold,orange);color:#000;box-shadow:0 2px 8px #ffd70066}.panel-controls{background:linear-gradient(135deg,#ffffff0d,#ffffff05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px;box-shadow:0 4px 16px #00000026,inset 0 1px #ffffff1a}.panel-controls .control-row{display:flex;align-items:center;gap:10px}.panel-controls label{font-size:10px;color:var(--text-muted);font-weight:500}.panel-controls input[type=number]{width:65px;padding:8px 10px;font-size:11px;font-family:JetBrains Mono,monospace;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--text-main);transition:all .2s}.panel-controls input[type=number]:focus{border-color:var(--primary-glow);box-shadow:0 0 0 3px #8b5cf633}.panel-controls .chip{font-size:9px;font-weight:600;padding:8px 14px;background:linear-gradient(135deg,var(--primary),#4c1d95);border:none;box-shadow:0 2px 8px #6d28d94d;transition:all .2s}.panel-controls .chip:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6d28d966}.all-cycles-section{flex:1;display:flex;flex-direction:column;min-height:0}.all-cycles-section .section-title{font-size:9px;font-weight:700;color:var(--text-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:8px}.all-cycles-section .section-title:before{content:"";width:3px;height:12px;background:linear-gradient(180deg,var(--primary-glow),var(--accent));border-radius:2px}.all-cycles-table-wrapper{flex:1;overflow-y:auto;background:linear-gradient(135deg,#ffffff0a,#ffffff03);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.06);border-radius:14px;box-shadow:0 4px 20px #00000026,inset 0 1px #ffffff0d}.all-cycles-table{width:100%;border-collapse:collapse;font-size:9px}.all-cycles-table thead{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,#14141efa,#14141ef2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.all-cycles-table th{padding:10px 6px;text-align:center;font-weight:700;color:var(--text-muted);font-size:8px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(139,92,246,.2)}.all-cycles-table th:first-child{width:24px}.all-cycles-table td{padding:8px 6px;text-align:center;font-family:JetBrains Mono,monospace;border-bottom:1px solid rgba(255,255,255,.02);transition:all .15s}.all-cycles-table tr{cursor:pointer;transition:all .2s ease}.all-cycles-table tbody tr:hover{background:linear-gradient(90deg,#8b5cf61a,#06b6d40d)}.all-cycles-table tr.in-harmonics{background:linear-gradient(90deg,rgba(245,158,11,.1) 0%,transparent 100%)}.all-cycles-table tr.in-harmonics td:first-child{border-left:3px solid var(--warning);box-shadow:inset 5px 0 15px #f59e0b1a}.all-cycles-table .cycle-color{width:12px;height:12px;border-radius:4px;display:inline-block;opacity:.25;transition:all .2s ease;cursor:pointer;border:1px solid rgba(255,255,255,.1)}.all-cycles-table .cycle-color:hover{opacity:.7;transform:scale(1.2)}.all-cycles-table .cycle-color.visible{opacity:1;box-shadow:0 0 8px currentColor,0 0 16px currentColor;border-color:currentColor}.all-cycles-table .duration-cell{font-weight:700;color:var(--text-main);font-size:10px}.all-cycles-table .grade-cell{font-size:8px;color:var(--primary-glow);background:#8b5cf61a;padding:3px 6px;border-radius:6px;display:inline-block}.all-cycles-table .score-cell{color:var(--warning);font-weight:600}.all-cycles-table .rank-badge{font-size:9px;margin-left:3px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.glass-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:opacity .15s ease,transform .2s ease}.cell-main{grid-column:1 / 2;grid-row:1 / 3}.cell-top{grid-column:2 / 3;grid-row:1 / 2;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.cell-top:hover{transform:scale(1.02);box-shadow:0 0 25px #8b5cf64d}.cell-bot{grid-column:2 / 3;grid-row:2 / 3;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.cell-bot:hover{transform:scale(1.02);box-shadow:0 0 25px #06b6d44d}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;flex-shrink:0}.card-title{font-size:.9rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}.canvas-box{flex:1;position:relative;width:100%;min-height:0}.canvas-box canvas{width:100%!important;height:100%!important;display:block;transition:opacity .3s ease-out;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.canvas-box canvas:active{cursor:grabbing}.canvas-box canvas.loading{opacity:0}.canvas-box canvas.loaded{opacity:1}.nav-hint{position:absolute;bottom:32px;left:50%;transform:translate(-50%);background:#000000b3;color:#ffffffb3;padding:4px 12px;border-radius:20px;font-size:.7rem;font-family:JetBrains Mono,monospace;pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:10}.canvas-box:hover .nav-hint{opacity:1}.zoom-indicator{position:absolute;top:10px;right:10px;background:#8b5cf633;border:1px solid rgba(139,92,246,.4);color:#a78bfa;padding:4px 10px;border-radius:6px;font-size:.7rem;font-family:JetBrains Mono,monospace;pointer-events:none;z-index:10}.top3-preview{display:flex;flex-direction:column;gap:8px}.top3-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;transition:all .2s ease}.top3-item:hover{background:#8b5cf61a;border-color:#8b5cf64d;transform:translate(4px)}.top3-item.current{background:#8b5cf626;border-color:#8b5cf6}.top3-rank{font-size:1.1rem}.top3-bars{font-family:JetBrains Mono,monospace;font-weight:700;font-size:.95rem;color:#fff;min-width:50px}.top3-grade{font-size:.75rem;color:var(--text-muted);margin-left:auto;font-family:JetBrains Mono,monospace}.top3-score{font-size:.7rem;color:var(--accent);font-family:JetBrains Mono,monospace}.micro-table{width:100%;border-collapse:collapse;font-size:.75rem;color:#fff}.micro-table th{text-align:left;padding:8px;color:var(--text-muted);border-bottom:1px solid rgba(255,255,255,.1);font-weight:600}.micro-table td{padding:8px;border-bottom:1px solid rgba(255,255,255,.05)}.micro-table tr:hover td{background:#ffffff0d}.micro-table tbody tr{cursor:pointer;transition:background .2s}.modal-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:9999;align-items:center;justify-content:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.modal-card{width:400px;max-height:80vh;background:var(--bg-dark);overflow:hidden}.status-text{position:absolute;bottom:10px;left:20px;font-size:.7rem;color:var(--text-muted);transition:opacity .5s ease}.branding-overlay{position:absolute;bottom:10px;left:20px;opacity:0;transition:opacity .6s ease;pointer-events:none;z-index:20}.branding-overlay.visible{opacity:1}.branding-text{font-family:Plus Jakarta Sans,sans-serif;font-size:.65rem;font-weight:700;letter-spacing:1.5px;color:#fffdf5b3;text-shadow:0 0 8px rgba(255,253,245,.3);text-transform:uppercase}.branding-overlay.visible+.status-text,.status-text.hidden-for-brand{opacity:0}.hidden{display:none!important}.mobile-chart-tabs,.mobile-bottom-bar,.mobile-fld-overlay,.mobile-overlay,.mobile-dom-info,.mobile-top-header{display:none}@media (max-width: 1024px){.app-shell{flex-direction:column}.glass-sidebar{order:2;width:100%;height:70px;flex-direction:row;padding:0 15px;justify-content:space-around;position:fixed;bottom:0;left:0;z-index:100;border-right:none;border-top:1px solid var(--glass-border)}.brand-logo{display:none}.nav-group{flex-direction:row;width:auto;gap:8px}.nav-item{width:44px;height:44px}.utility-group{flex-direction:row;padding:0;margin:0;border:none;gap:8px}.action-group{flex-direction:row;width:auto;padding:0;margin:0;gap:8px}.glass-popover{position:fixed;left:10px;right:10px;bottom:80px;top:auto;width:auto;max-height:60vh;overflow-y:auto;border-radius:var(--radius);transform:translateY(20px) scale(.95)}.nav-item:hover .glass-popover,.nav-item:focus-within .glass-popover,.glass-popover:hover{transform:translateY(0) scale(1)}.glass-popover:before{display:none}.main-content{padding:10px 10px 80px}.top-bar{flex-wrap:wrap;gap:8px}.top-bar-left{order:2;width:100%;overflow-x:auto;padding-bottom:5px}.top-bar-center{order:1;width:100%;justify-content:center}.top-bar-right{order:3;width:100%;justify-content:center}.info-panel{flex-shrink:0}.tf-quick-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.grid-layout{grid-template-columns:1fr;grid-template-rows:1fr 1fr 1fr;gap:10px;overflow-y:auto}.cell-main{grid-column:1;grid-row:1;min-height:300px}.cell-top{grid-column:1;grid-row:2;min-height:250px}.cell-bot{grid-column:1;grid-row:3;min-height:250px}.cell-top:hover,.cell-bot:hover{transform:none}.glass-card{padding:12px;border-radius:var(--radius-sm)}.btn-tooltip{display:none}.layout-switcher{margin-right:5px}.layout-btn{width:28px;height:28px}.glass-tabs{padding:3px}.tab-btn{padding:6px 14px;font-size:.75rem}}@media (max-width: 768px),(orientation: portrait) and (max-width: 1280px){html,body{overflow-x:hidden!important;overflow-y:auto!important;width:100%!important;min-height:100%!important}body{font-size:14px}.app-container{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.glass-sidebar,.top-bar-left,.top-bar-center,.layout-switcher,.tf-quick-bar,.glass-tabs,.lang-switch,.live-indicator,#chartControls,#container-cycles-panel,#panelToggleBtn,.info-panel{display:none!important}.mobile-top-header{display:flex!important;position:fixed;top:0;left:0;right:0;height:44px;padding:4px 8px;padding-top:max(4px,env(safe-area-inset-top));background:#0f172afa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08);z-index:999;align-items:center;justify-content:space-between}.mobile-top-header-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#ffffffd9;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,transform .15s ease;flex-shrink:0}.mobile-top-header-btn i,.mobile-top-header-btn svg{width:18px;height:18px;stroke-width:2.2}.mobile-top-header-btn:active{transform:scale(.92)}.mobile-top-header-home{background:#8b5cf62e;border-color:#8b5cf673;color:#c4b5fd}.mobile-top-header-home:active{background:#8b5cf652}.mobile-top-header-logout{background:#f43f5e1f;border-color:#f43f5e59;color:#fda4af}.mobile-top-header-logout:active{background:#f43f5e40}.mobile-top-header-logo{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-weight:800;font-size:.85rem;letter-spacing:.5px;box-shadow:0 0 12px #8b5cf673;flex-shrink:0}.mobile-top-header-home[hidden]{display:inline-flex!important;visibility:hidden;pointer-events:none}.top-bar{display:flex!important;position:fixed;top:92px;left:0;right:0;height:44px;background:#0f172af2;border-bottom:1px solid rgba(255,255,255,.08);padding:6px 12px;z-index:998;align-items:center;justify-content:space-between}.top-bar-right{display:flex!important;align-items:center;gap:10px;width:100%;justify-content:space-between}.tf-switcher{display:flex!important;align-items:center;gap:4px;background:#ffffff14;padding:4px 8px;border-radius:8px}.tf-btn{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center}.tf-current{font-size:.8rem;font-weight:600;min-width:36px;text-align:center;color:#8b5cf6}.mobile-dom-info{display:flex!important;align-items:center;gap:4px;padding:4px 8px;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:6px;font-family:JetBrains Mono,monospace}.mobile-dom-info .dom-label{font-size:.6rem;color:#ffffff80;font-weight:500}.mobile-dom-info .dom-value{font-size:.8rem;color:#a78bfa;font-weight:700}.mobile-dom-info .grade-value{font-size:.65rem;color:#10b981;font-weight:600}.mode-switcher{display:flex!important;padding:6px 12px;background:#ffffff14;border-radius:8px}.mode-switcher .mode-value{font-size:.75rem;font-weight:600}.main-content{display:flex;flex-direction:column;padding:180px 0 0!important;height:100vh;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden!important}.grid-layout,#mainGrid{display:block!important}.cell-main,.cell-top,.cell-bot,#container-main,#container-top,#container-bot{display:none!important;height:calc(100dvh - 180px)!important;min-height:calc(100dvh - 180px)!important;max-height:calc(100dvh - 180px)!important}.cell-main.mobile-active,.cell-top.mobile-active,.cell-bot.mobile-active,#container-main.mobile-active,#container-top.mobile-active,#container-bot.mobile-active{display:flex!important}.glass-card{flex:1;display:flex;flex-direction:column;margin:0!important;border-radius:0!important;background:transparent!important;border:none!important;padding:8px!important}.card-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;margin-bottom:4px!important}.card-title{font-size:.9rem;font-weight:600}.canvas-slot,#canvas-slot-main,#canvas-slot-top,#canvas-slot-bot{flex:1!important;position:relative;min-height:0}.canvas-slot canvas,#canvas-slot-main canvas,#canvas-slot-top canvas,#canvas-slot-bot canvas{position:absolute;top:0;left:0;width:100%!important;height:100%!important}.mobile-chart-tabs{display:flex!important;position:fixed;top:44px;left:0;right:0;height:48px;background:#0f172afa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);padding:6px 8px;gap:6px;z-index:1000}.mobile-tab{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 12px;border:none;background:#ffffff0d;color:#ffffff80;border-radius:8px;font-size:.75rem;font-weight:600;letter-spacing:.5px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.mobile-tab:active{transform:scale(.97)}.mobile-tab.active{background:linear-gradient(135deg,#8b5cf64d,#6366f14d);color:#fff;border:1px solid rgba(139,92,246,.5)}.mobile-fld-overlay{display:none;position:fixed;top:184px;right:8px;gap:6px;z-index:500}.mobile-fld-overlay.visible{display:flex!important}.mobile-fld-btn{padding:6px 10px;border:none;background:#0009;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffffb3;font-size:.65rem;font-weight:600;border-radius:6px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all .15s ease}.mobile-fld-btn.active{background:#8b5cf680;color:#fff}.mobile-fld-btn:active{transform:scale(.95)}.mobile-bottom-bar{display:flex!important;position:fixed;top:136px;left:0;right:0;height:44px;background:#0f172af2;border-bottom:1px solid rgba(255,255,255,.08);padding:4px 8px;gap:6px;z-index:997}.mobile-bar-btn{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border:none;background:#ffffff14;color:#ffffffb3;border-radius:8px;font-size:.7rem;font-weight:600;letter-spacing:.5px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.mobile-bar-btn:active{transform:scale(.97)}.mobile-bar-btn svg,.mobile-bar-btn i{width:16px;height:16px}.mobile-bar-btn.analyze{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.mobile-bar-btn.analyze:active{background:linear-gradient(135deg,#7c3aed,#4f46e5)}.mobile-bar-btn.live{background:#10b98133;color:#10b981}.mobile-bar-btn.live.active{background:#10b98166}.mobile-bar-btn.cycles{background:#fbbf2433;color:#fbbf24}.mobile-bar-btn.cycles:active{background:#fbbf2466}.mobile-bar-btn.snapshot{background:#06b6d433;color:#06b6d4}.mobile-bar-btn.snapshot:active{background:#06b6d466}.glass-popover{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;max-height:80vh;border-radius:20px 20px 0 0!important;padding:20px!important;padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;transform:translateY(100%);transition:transform .3s ease;z-index:2000}.glass-popover.show{transform:translateY(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}.popover-title{font-size:1rem;font-weight:600;text-align:center;margin-bottom:16px}.glass-popover:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:40px;height:4px;background:#ffffff4d;border-radius:2px}.chip-grid{grid-template-columns:repeat(4,1fr);gap:8px}.chip{padding:12px 8px;font-size:.8rem;border-radius:10px}.auth-card{margin:16px!important;padding:24px!important;max-width:none!important}.auth-card h2{font-size:1.4rem}.btn-main{padding:14px;font-size:1rem}.status-text{font-size:.65rem;bottom:70px;left:12px;z-index:50}.mobile-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1500}.mobile-overlay.show{display:block}.swipe-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 20px;background:#000000b3;border-radius:12px;font-size:.85rem;color:#fff;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:100}.swipe-hint.show{opacity:1}#container-cycles-panel.mobile-sheet{display:none!important}#container-cycles-panel.mobile-sheet.mobile-sheet-open{display:flex!important;flex-direction:column;position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;height:auto;max-height:70dvh;min-height:50dvh;z-index:99999;margin:0!important;padding:24px 14px 14px!important;padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;background:linear-gradient(180deg,#28304ef7,#181e36f7 35%,#0f172afa)!important;backdrop-filter:blur(28px) saturate(1.15);-webkit-backdrop-filter:blur(28px) saturate(1.15);border-top:2px solid rgba(139,92,246,.55)!important;border-radius:22px 22px 0 0!important;box-shadow:0 -16px 48px #0009,0 -2px #ffffff0f inset,0 0 60px #8b5cf614 inset;animation:cs-sheet-slide-up .28s cubic-bezier(.32,.72,.24,1);overflow:hidden;pointer-events:auto}.cycles-sheet-close{display:none}#container-cycles-panel.mobile-sheet.mobile-sheet-open .card-header{position:relative;padding-right:40px}#container-cycles-panel.mobile-sheet.mobile-sheet-open .cycles-sheet-close{display:flex;align-items:center;justify-content:center;position:absolute;top:50%;right:0;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:22px;line-height:1;font-weight:300;cursor:pointer;padding:0;transition:background .15s ease,transform .15s ease;z-index:2}#container-cycles-panel.mobile-sheet.mobile-sheet-open .cycles-sheet-close:hover,#container-cycles-panel.mobile-sheet.mobile-sheet-open .cycles-sheet-close:active{background:#ffffff2e;transform:translateY(-50%) scale(1.05)}@keyframes cs-sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}#container-cycles-panel.mobile-sheet.mobile-sheet-open:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:44px;height:4px;background:#ffffff40;border-radius:2px;pointer-events:none}#container-cycles-panel.mobile-sheet.mobile-sheet-open .card-header{padding:4px 4px 10px!important;margin-bottom:6px!important;border-bottom:1px solid rgba(255,255,255,.08)}#container-cycles-panel.mobile-sheet.mobile-sheet-open .card-title{font-size:.85rem}#container-cycles-panel.mobile-sheet.mobile-sheet-open .panel-col-right{width:92px}#container-cycles-panel.mobile-sheet.mobile-sheet-open .cycles-panel-content{overflow:hidden;padding:0}#container-cycles-panel.mobile-sheet.mobile-sheet-open .cycles-controls{margin-top:8px;padding-top:8px}.mobile-overlay.cycles-sheet-overlay{z-index:1599;background:#00000073!important}.mobile-bar-btn.cycles.active{background:#fbbf2473;color:#fff;box-shadow:0 0 0 1px #fbbf2480 inset}}@media (max-width: 400px){.top-bar-right{justify-content:space-between}.live-indicator{display:none!important}.tab-btn{padding:4px 8px;font-size:.65rem}.mode-switcher{padding:3px 8px}.mode-switcher .mode-value{font-size:.65rem}.glass-sidebar{height:55px}.nav-item,.btn-icon-only{width:36px;height:36px}.glass-popover{max-height:75vh}}@media (orientation: landscape) and (max-height: 500px){.glass-sidebar,.top-bar-left,.top-bar-center,.layout-switcher,.tf-quick-bar,.glass-tabs,.lang-switch,.info-panel,#chartControls,.hamburger-menu,.mobile-dom-info,.mobile-top-header{display:none!important}.mobile-chart-tabs{display:flex!important;height:32px!important;position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:999!important}.mobile-chart-tabs .tab-btn{padding:4px 12px!important;font-size:.65rem!important}.top-bar{display:flex!important;position:fixed!important;top:32px!important;left:0!important;right:0!important;height:32px!important;padding:2px 8px!important;z-index:998!important;background:#0f172af2!important}.top-bar-right{display:flex!important;width:100%!important;justify-content:space-between!important}.mobile-bottom-bar{display:flex!important;position:fixed!important;top:64px!important;left:0!important;right:0!important;height:32px!important;padding:2px 6px!important;gap:4px!important;z-index:997!important}.mobile-bar-btn{padding:2px 6px!important;font-size:.55rem!important;gap:4px!important}.mobile-bar-btn svg,.mobile-bar-btn i{width:12px!important;height:12px!important}.mobile-fld-overlay{top:100px!important}.mobile-fld-btn{padding:3px 6px!important;font-size:.55rem!important}.main-content{padding:96px 0 0!important;margin-left:0!important;height:100dvh!important}.cell-main,.cell-top,.cell-bot,#container-main,#container-top,#container-bot{height:calc(100dvh - 96px)!important;min-height:calc(100dvh - 96px)!important;max-height:calc(100dvh - 96px)!important}.tf-switcher{padding:2px 4px!important}.tf-btn{width:22px!important;height:22px!important}.tf-current{font-size:.7rem!important}.mode-switcher{padding:3px 8px!important}.mode-switcher .mode-value{font-size:.65rem!important}}@media (hover: none) and (pointer: coarse){.nav-item:hover .glass-popover{opacity:0;visibility:hidden}.nav-item.popover-open .glass-popover{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}.cell-top:hover,.cell-bot:hover{transform:none;box-shadow:none}.chip{min-height:36px;min-width:44px}.draw-tool{min-width:44px;min-height:44px}.tab-btn{min-height:36px}.tf-chip{min-height:28px;min-width:32px}}.popover-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:150;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}@media (max-width: 768px),(orientation: portrait) and (max-width: 1280px){.popover-backdrop.visible{display:block}}@supports (padding: max(0px)){.glass-sidebar{padding-bottom:max(10px,env(safe-area-inset-bottom))}.main-content{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}@media (max-width: 768px),(orientation: portrait) and (max-width: 1280px){.glass-popover{padding-bottom:max(15px,env(safe-area-inset-bottom))}}}@media print{.glass-sidebar,.top-bar,.nav-hint,.status-text{display:none!important}.main-content{padding:0}.grid-layout{display:block}.glass-card{page-break-inside:avoid;margin-bottom:20px;background:#fff;border:1px solid #ccc}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}::-moz-selection{background:#8b5cf666;color:#fff}::selection{background:#8b5cf666;color:#fff}
