/* © SNDR FX 2026 — All rights reserved · проприетарный код, копирование запрещено */
.app{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100vw;background:var(--bg);position:relative;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0px)}.app::before{content: '';position:absolute;inset:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;z-index:0}.collapse-btn{position:fixed;top:6px;left:14px;z-index:130;width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--transition),filter var(--transition),transform var(--transition)}.collapse-btn:hover{color:var(--accent);transform:scale(1.1)}.collapse-btn:hover svg{filter:drop-shadow(0 0 6px var(--accent-glow))}.collapse-btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.collapse-btn .bl{transform-box:fill-box;transform-origin:center;transition:transform 0.28s var(--ease),opacity 0.18s ease}.collapse-btn:not(.collapsed) .bl1{transform:translateY(6px) rotate(45deg)}.collapse-btn:not(.collapsed) .bl2{transform:scaleX(0.15);opacity:0}.collapse-btn:not(.collapsed) .bl3{transform:translateY(-6px) rotate(-45deg)}.collapse-btn.collapsed .bl1,.collapse-btn.collapsed .bl2,.collapse-btn.collapsed .bl3{transform:none;opacity:1}@media (prefers-reduced-motion:reduce){.collapse-btn .bl{transition:none}}.header{position:relative;z-index:1;padding:6px 16px 6px 54px;padding-top:max(6px,env(safe-area-inset-top,0px));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:var(--header-bg);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);flex-shrink:0;min-height:40px}.header h1{font-family:var(--font-display);font-size:var(--fs-title);font-weight:var(--fw-title);letter-spacing:var(--ls-title);background:linear-gradient(135deg,var(--text-primary) 30%,var(--text-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transform:translateZ(0)}h1.logo-btn{cursor:pointer;user-select:none;transition:filter var(--transition),transform var(--transition),opacity var(--transition)}h1.logo-btn:hover{filter:brightness(1.35) drop-shadow(0 0 14px var(--accent-glow))}h1.logo-btn:active{transform:scale(0.97);opacity:0.9}.header h1 span{color:var(--accent);-webkit-text-fill-color:var(--accent);text-shadow:0 0 12px var(--accent-glow)}.header #gridTfBar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.header .header-status{display:flex;align-items:center;gap:8px}.header-left,.header .header-status{flex-wrap:wrap;min-width:0}.header [data-hblock]{-webkit-touch-callout:none}#logoBtn,#gridTfBar{cursor:grab}body.h-dragging,body.h-dragging *{user-select:none !important;-webkit-user-select:none !important}body.h-dragging{cursor:grabbing}.h-ghost{position:fixed !important;left:0 !important;top:0 !important;z-index:1000;pointer-events:none !important;margin:0 !important;opacity:0.95;box-shadow:0 8px 24px rgba(0,0,0,0.45);border-radius:8px;will-change:transform;transition:none !important}.h-placeholder{flex-shrink:0;align-self:stretch;box-sizing:border-box;border-radius:2px;background:var(--accent);box-shadow:0 0 8px var(--accent-glow,var(--accent));pointer-events:none}.h-placeholder.line-v{width:3px;min-width:3px;margin:3px 0}.h-placeholder.line-h{height:3px;min-height:3px;margin:0 3px}.header .h-shift{transition:transform 0.18s var(--ease)}@media (prefers-reduced-motion:reduce){.header .h-shift{transition:none}}.header #gridTfBar.in-flow{position:static;transform:none}.dock-edge{position:fixed;z-index:2000;pointer-events:none;background:var(--accent);border-radius:2px;box-shadow:0 0 6px var(--accent),0 0 16px var(--accent-glow,var(--accent));opacity:0;transition:opacity 0.12s ease}.dock-edge.hide{opacity:0}.dock-edge.show{opacity:1}.dock-edge.dock-top{left:0;right:0;top:0;height:4px}.dock-edge.dock-bottom{left:0;right:0;bottom:0;height:4px}.dock-edge.dock-left{top:0;bottom:0;left:0;width:4px}.dock-edge.dock-right{top:0;bottom:0;right:0;width:4px}#dockCaret{position:fixed;z-index:2001;pointer-events:none;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1;color:var(--accent);text-shadow:0 0 8px var(--accent-glow,var(--accent)),0 0 16px var(--accent-glow,var(--accent));opacity:0;transition:opacity 0.12s ease;transform:translate(-50%,-50%)}#dockCaret.show{opacity:1}@media (prefers-reduced-motion:reduce){.dock-edge{transition:none}}.header .dot,.header #statusText,.header .count{display:none !important}.header .header-status .dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);display:inline-block;transition:background var(--transition)}.header .header-status .dot.on{background:var(--accent);animation:pulse-dot 1.2s ease-in-out infinite}@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.3;transform:scale(0.7)}}.header .header-status .count{color:var(--text-secondary)}.form-btn,.theme-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:color var(--transition),border-color var(--transition),box-shadow var(--transition),background var(--transition),transform 0.08s var(--ease)}.form-btn:hover,.theme-btn:hover{color:var(--text-secondary);border-color:var(--border);background:var(--menu-hover);box-shadow:0 0 12px var(--accent-soft-2)}.form-btn:active,.theme-btn:active{transform:scale(0.96)}.form-btn svg,.theme-btn svg{display:block;width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}#settingsBtn svg{width:18px;height:18px}html[data-mode="dark"] .header .theme-btn,html[data-mode="dark"] .header .form-btn,html[data-mode="dark"] .header .avatar-btn,html[data-mode="dark"] #collapseBtn{color:#FFFFFF}html[data-mode="dark"] .header .theme-btn:hover,html[data-mode="dark"] .header .form-btn:hover,html[data-mode="dark"] .header .avatar-btn:hover{color:#FFFFFF}#settingsBtn svg{width:18px;height:18px}.form-letter{font-family:var(--font);font-size:15px;font-weight:700;line-height:1;user-select:none}.form-btn.on{background:var(--accent-soft);border-color:var(--accent-soft-2);color:var(--text-primary)}.header-left{display:flex;align-items:center;gap:10px;min-width:0}.chip-row{display:flex;align-items:center;gap:6px}.header .chip-row{order:10;margin-left:2px;flex-shrink:0}.chip{height:18px;min-width:18px;padding:0 7px 0 5px;gap:5px;border:1px solid var(--border);background:var(--surface);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);color:var(--text-secondary)}.chip:hover{border-color:var(--text-secondary);transform:translateY(-1px)}.chip:active{transform:translateY(0)}.chip.active{border-color:var(--text-secondary);background:var(--surface-hover);box-shadow:inset 0 1px 0 var(--sheen)}.chip-dot{width:8px;height:8px;border-radius:50%;display:block;transition:transform var(--transition)}.chip.active .chip-dot{transform:scale(1.35)}.chip-n{font-family:var(--font-mono);font-size:10px;font-weight:500;color:var(--text-secondary);line-height:1}.chip.active .chip-n{color:var(--text-primary)}.main{display:flex;flex:1;min-height:0;position:relative;z-index:1;flex-direction:row}.charts-panel{flex:1;padding:4px;overflow-y:auto;background:var(--panel-tint);min-width:0;display:flex;flex-direction:column}.sidebar{width:var(--sidebar-w,420px);min-width:var(--sidebar-w,420px);border-left:1px solid var(--border);background:var(--sidebar-bg);backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;position:relative}.sidebar-resizer{position:absolute;left:0;top:0;bottom:0;width:6px;cursor:col-resize;z-index:30;transition:background 0.08s ease}.sidebar-resizer:hover,.sidebar-resizer.dragging{background:linear-gradient(90deg,var(--accent-soft),transparent)}.sidebar.collapsed .sidebar-resizer{display:none}.sidebar.collapsed{width:0 !important;min-width:0 !important;border-left:none;opacity:0}.panel-tab{flex:0 0 14px;width:14px;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-left:1px solid var(--border);background:var(--sidebar-bg);color:var(--text-secondary);cursor:pointer;z-index:20;transition:color var(--transition),background var(--transition)}.panel-tab:hover{color:var(--accent);background:var(--surface-hover)}.panel-tab svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform 0.2s var(--ease)}.panel-tab.flip svg{transform:rotate(180deg)}.app[data-side="left"] .panel-tab{border-left:none;border-right:1px solid var(--border)}.app[data-side="left"] .panel-tab svg{transform:rotate(180deg)}.app[data-side="left"] .panel-tab.flip svg{transform:none}html[data-layout="mobile"] .panel-tab{display:none}@media (prefers-reduced-motion:reduce){.panel-tab svg{transition:none}}.coin-list-wrap{flex:1;overflow-y:auto;overflow-x:hidden;padding:4px 0 20px}#coinList.vc-wait,#chartGrid.vc-wait{opacity:.45;pointer-events:none;transition:opacity .12s}.coin-list{display:flex;flex-direction:column;gap:1px}@media (max-width:1512px){html:not([style*="--sidebar-w"]) .sidebar{width:340px;min-width:340px}}@media (max-width:900px){html:not([style*="--sidebar-w"]) .sidebar{width:280px;min-width:280px}}.app[data-header="bottom"] .header{order:10;border-bottom:none;border-top:1px solid var(--border)}.app[data-header="bottom"] .collapse-btn{top:auto;bottom:6px}.app.ws-full[data-header="bottom"] .header{border-top-color:transparent}.app[data-header="left"],.app[data-header="right"]{flex-direction:row}.app[data-header="left"] .header,.app[data-header="right"] .header{flex-direction:column;justify-content:space-between;align-items:center;gap:10px;min-height:0;max-height:none;width:46px;min-width:46px;max-width:46px;padding:44px 0 10px;border-bottom:none;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.app[data-header="left"] .header::-webkit-scrollbar,.app[data-header="right"] .header::-webkit-scrollbar{display:none}.app[data-header="left"] .header{order:-1;border-right:1px solid var(--border);border-left:1px solid transparent}.app[data-header="right"] .header{order:10;border-left:1px solid var(--border);border-right:1px solid transparent}.app[data-header="left"] .ws-viewport,.app[data-header="right"] .ws-viewport{min-width:0}.app[data-header="left"] .header-left,.app[data-header="right"] .header-left{flex-direction:column;gap:8px}.app[data-header="left"] .logo-btn,.app[data-header="right"] .logo-btn{font-size:0;line-height:0;background:none}.app[data-header="left"] .logo-btn::after,.app[data-header="right"] .logo-btn::after{content: "FX";font-size:13px;line-height:1.2;font-weight:700;letter-spacing:-0.2px;background:linear-gradient(135deg,var(--text-primary) 30%,var(--text-secondary));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.app[data-header="left"] .chip-row,.app[data-header="right"] .chip-row{flex-direction:column;gap:6px}.app[data-header="left"] .header-status .chip-row,.app[data-header="right"] .header-status .chip-row{order:-1}.app[data-header="left"] .chip,.app[data-header="right"] .chip{width:18px;height:18px;min-width:0;padding:0;gap:0;border-radius:50%}.app[data-header="left"] .chip-n,.app[data-header="right"] .chip-n{display:none}.app[data-header="left"] .header> #gridTfBar,.app[data-header="right"] .header> #gridTfBar{position:absolute;top:50%;left:0;right:0;width:max-content;max-width:calc(100% - 8px);margin:0 auto;transform:translateY(-50%);flex-direction:column}.app[data-header="left"] .header-status,.app[data-header="right"] .header-status{flex-direction:column;gap:6px}.app[data-header="left"] .form-btn,.app[data-header="right"] .form-btn,.app[data-header="left"] .theme-btn,.app[data-header="right"] .theme-btn{width:28px;height:28px;padding:0}.app[data-header="left"] .collapse-btn{top:6px;bottom:auto;left:9px}.app[data-header="right"] .collapse-btn{top:6px;bottom:auto;left:auto;right:9px}.app.ws-full[data-header="left"] .header,.app.ws-full[data-header="right"] .header{max-height:none;max-width:0;min-width:0;width:0;padding-left:0;padding-right:0;border-right-color:transparent;border-left-color:transparent}.app[data-side="left"] .main{flex-direction:row-reverse}.app[data-side="left"] .sidebar{border-left:none;border-right:1px solid var(--border)}.app[data-side="left"] .sidebar.collapsed{border-right:none}.app[data-side="left"] .sidebar-resizer{left:auto;right:0}.app[data-side="left"] .sidebar-resizer:hover,.app[data-side="left"] .sidebar-resizer.dragging{background:linear-gradient(270deg,var(--accent-soft),transparent)}@media (max-width:600px){html:not([style*="--sidebar-w"]) .sidebar{width:200px;min-width:200px}.charts-panel{padding:4px}}@media (max-height:900px){.header{padding:4px 16px 4px 54px;min-height:36px}.header h1{font-size:13px}.collapse-btn{top:4px;width:28px;height:28px}}