:root{color:#e6edf3;font-synthesis:none;text-rendering:optimizelegibility;--bg:#0b0f16;--panel:#0f1419;--card:#1a2230;--card-2:#151d29;--tile:#111926;--ink:#e6edf3;--mut:#9aa7b4;--weak:#6f7b89;--line:#2b3645;--line-2:#354252;--acc:#4ea1ff;--acc-2:#79b8ff;--acc-soft:#4ea1ff24;--good:#3fb950;--good-soft:#3fb95021;--bad:#f85149;--bad-soft:#f8514921;--warn:#d29922;--warn-soft:#d2992224;--sim:#a371f7;--sim-soft:#a371f729;--star:#f0b132;--radius:12px;--radius-sm:8px;--shadow:0 20px 60px #00000052;--shadow-card:0 12px 34px #0000003d;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--content-max:1180px;--touch:44px;background:#0b0f16;font-family:Inter,Pretendard Variable,Pretendard,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100dvh;margin:0}body{color:var(--ink);background:radial-gradient(circle at 18% -12%, #4ea1ff2e, transparent 34rem), radial-gradient(circle at 100% 12%, #a371f71f, transparent 32rem), var(--bg);font-size:14px;line-height:1.55;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:3px solid #4ea1ff6b}a{color:var(--acc-2)}h1,h2,h3,p{margin:0}svg{display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{width:100%;height:100dvh;color:var(--ink);background:0 0;flex-direction:column;display:flex;overflow:hidden}.topbar{z-index:30;border-bottom:1px solid var(--line);padding:max(14px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 12px max(18px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f1419eb;flex:none;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;font-size:1.02rem;font-weight:850}.screen{min-height:0;padding:18px max(18px, env(safe-area-inset-right)) 24px max(18px, env(safe-area-inset-left));-webkit-overflow-scrolling:touch;flex:auto;overflow:auto}.screen>*{width:min(100%, var(--content-max));margin-inline:auto}.simbar{width:min(100%, var(--content-max));border-radius:var(--radius-sm);color:#d7c4ff;background:var(--sim-soft);border:1px solid #a371f766;margin:0 auto 12px;padding:8px 12px;font-size:.82rem;font-weight:720}.nav.bottom-tabs{z-index:25;border-top:1px solid var(--line);padding:7px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));background:#0c1118;flex:none;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.bottom-tab{min-width:0;min-height:var(--touch);color:var(--mut);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;text-decoration:none;transition:color .15s,background .15s;display:flex}.bottom-tab.active{color:var(--acc);background:var(--acc-soft)}.app-shell--sim .bottom-tab.active{color:var(--sim);background:var(--sim-soft)}.gl,.bottom-tab svg,.more-row svg,.empty-state svg{width:22px;height:22px}.bottom-tab svg,.more-row svg,.empty-state svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.bottom-tab span:last-child{color:currentColor;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.68rem;font-weight:780;line-height:1.1;overflow:hidden}.account-switcher{flex:none;position:relative}.acct{border:1px solid var(--line);background:#0c1118;border-radius:999px;font-size:.78rem;font-weight:780;display:flex;overflow:hidden}.acct button{border:0;border-left:1px solid var(--line);min-height:36px;color:var(--mut);background:0 0;padding:6px 12px}.acct button:first-child{border-left:0}.acct button.on{color:#04121f;background:var(--acc)}.acct button.on.sim{color:#0b0312;background:var(--sim)}.acct .acct-more{color:var(--ink)}.account-switcher__menu{z-index:60;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);width:min(92vw,360px);box-shadow:var(--shadow);gap:10px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.account-switcher__active,.account-switcher__row,.account-switcher__actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.account-switcher__active{border-bottom:1px solid var(--line);padding-bottom:10px}.account-switcher__active span,.account-switcher__menu small{color:var(--mut);font-size:.75rem}.account-switcher__active strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-switcher__list,.account-switcher__edit,.account-switcher__create{gap:8px;display:grid}.account-switcher__row{align-items:stretch}.account-switcher__row>button:first-child{text-align:left;flex:auto;gap:2px;min-width:0;display:grid}.account-switcher__menu button,.account-switcher__menu input{min-height:var(--touch);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--tile);padding:9px 10px}.account-switcher__menu button.active{color:var(--acc-2);background:var(--acc-soft);border-color:#4ea1ff7a}.account-switcher__delete{color:var(--bad)!important}.account-switcher__add{width:100%;color:var(--acc-2)!important}.account-switcher__type{border-radius:var(--radius-sm);width:fit-content}.account-switcher__type button{border:0;border-left:1px solid var(--line)}.account-switcher__actions button{flex:1 1 0}.view.on{animation:.16s fade-in;display:block}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}h2.t,.page-header h1,.section-heading h2,.chart-panel__top h2,.card h2,.card h3{color:var(--ink);letter-spacing:-.01em}h2.t{margin:2px 0 12px;font-size:1.18rem;font-weight:840}.page-header,.section-heading,.chart-panel__top,.row,.asset-card__top,.strategy-card__top,.signal-card__top,.asset-holding-summary__header,.strategy-list-toolbar,.strategy-bulk-bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-header,.section-heading{margin-bottom:14px}.page-header p,.section-heading p,.chart-panel__top p,.mut,.empty-text,.notice,.metric span,.metric .k,dt,small{color:var(--mut)}.card,.metric,.notice,.empty-state,.chart-panel,.dashboard-etf,.cash-section,.holdings-section,.asset-card,.asset-group,.asset-detail-section,.asset-holding-summary,.strategy-unit-card,.strategy-mode,.strategy-card,.signal-card,.status-card,.etf-card,.etf-create,.etf-detail,.paper-account-card,.shortterm-symbol-card,.unit-archive-card,.backtest-runner,.backtest-history,.backtest-detail,.analysis-backtest-card,.settings-section,.report-card,.talk-panel,.upload-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);min-width:0;box-shadow:var(--shadow-card)}.card,.notice,.empty-state,.chart-panel,.dashboard-etf,.cash-section,.holdings-section,.asset-card,.asset-group,.asset-detail-section,.asset-holding-summary,.strategy-unit-card,.strategy-mode,.strategy-card,.signal-card,.status-card,.etf-card,.etf-create,.etf-detail,.paper-account-card,.shortterm-symbol-card,.unit-archive-card,.backtest-runner,.backtest-history,.backtest-detail,.analysis-backtest-card,.settings-section,.report-card,.talk-panel,.upload-card{padding:14px}.portfolio-screen,.assets-screen,.asset-detail-screen,.strategy-screen,.signals-screen,.backtest-screen,.settings-screen,.status-screen,.shortterm-screen,.paper-screen,.etf-screen,.report-screen,.reports-screen,.market-screen,.more-screen,.talk-screen,.upload-screen{min-height:100%}#v-home{gap:11px;display:grid}#v-home .card{margin:0}.total-panel{display:block}.total-panel__label{color:var(--mut);margin-bottom:2px;font-size:.82rem;display:block}.big,.total-panel strong{overflow-wrap:anywhere;color:var(--ink);font-family:var(--font-mono);letter-spacing:-.02em;font-size:clamp(2rem,7vw,4.2rem);font-weight:860;line-height:1.05;display:block}.total-panel__today{margin-top:4px;font-size:.86rem}.grid2,.summary-grid,.etf-metrics,.signal-metrics,.metric-grid,.asset-metrics,.backtest-run-summary,.shortterm-perf-summary,.strategy-param-grid,.strategy-unit-create__grid,.strategy-unit-edit-grid,.backtest-period-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.metric{background:var(--card);min-width:0;min-height:72px;box-shadow:none;gap:3px;padding:11px;display:grid}.metric .v,.metric strong,dd{overflow-wrap:anywhere;color:var(--ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:0;font-size:1.05rem;font-weight:780}.good,.tone-pos,.pos{color:var(--good)!important}.bad,.tone-neg,.neg{color:var(--bad)!important}.tone-neutral,.neutral{color:var(--mut)!important}.asset{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:11px;padding:11px 4px;display:flex}.asset,.market-asset__open,.more-row,.listrow,.ops-row,.history-row{min-height:var(--touch)}.asset:last-child{border-bottom:0}.asset__body{flex:auto;min-width:0}.asset__meta,.holdings-section__meta{color:var(--mut);font-size:.82rem}.seclabel,.search{color:var(--mut);letter-spacing:.05em;text-transform:uppercase;margin:14px 2px 6px;font-size:.76rem;font-weight:780}.asset-section,.asset-market{gap:10px;display:grid}.asset-section+.asset-section{margin-top:12px}.asset-list-card{padding-block:4px}.asset-detail-screen{gap:12px;display:grid}.asset-hub-header{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.asset-hub-header .t{margin-bottom:2px}.asset-hub-header__actions{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.asset-hub-section,.asset-hub-panel,.asset-hub-panel--chart{gap:12px;display:grid}.asset-detail-tabs{margin-bottom:0}.strategy-hero,.analysis-hero{margin-bottom:12px}.analysis-hero .primary-button,.analysis-hero .secondary-button{flex:none;text-decoration:none}.analysis-dashboard,.ops-menu,.analysis-backtest-card,.analysis-wizard-card{gap:12px;display:grid}.analysis-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.analysis-card-top h3{color:var(--ink);margin-top:8px;font-size:1.05rem}.analysis-card-top p{color:var(--mut)}.analysis-flow,.analysis-regime-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.analysis-regime-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-category-links{margin-top:0}.ops-list{gap:10px;display:grid}.listrow,.ops-row{border:1px solid var(--line);border-radius:var(--radius);min-width:0;color:var(--ink);background:var(--card);box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:13px;text-decoration:none;display:flex}.ops-row__copy{flex:auto;gap:2px;min-width:0;display:grid}.ops-row__copy strong{color:var(--ink)}.ops-row__copy span{overflow-wrap:anywhere;color:var(--mut);font-size:.82rem}.strategy-unit-card{gap:10px;display:grid}.strategy-unit-card__title{color:var(--ink);text-decoration:none}.strategy-unit-actions,.strategy-unit-badges,.strategy-unit-card__footer{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.strategy-unit-card__footer{justify-content:space-between}.strategy-unit-card__body{color:var(--ink);gap:10px;text-decoration:none;display:grid}.strategy-unit-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-unit-summary{color:var(--mut);font-size:.86rem}.strategy-unit-run-toggle{color:var(--mut);align-items:center;gap:7px;font-size:.82rem;font-weight:760;display:inline-flex}.strategy-unit-run-toggle input{width:auto}.step{gap:8px;margin:4px 0 14px;display:flex}.step div{background:var(--line);border-radius:999px;flex:1 1 0;height:4px}.step div.on{background:var(--acc)}.opt{border:1px solid var(--line);background:var(--tile);border-radius:10px;padding:12px}.opt.sel{border-color:var(--acc);background:var(--acc-soft)}.opt b{color:var(--ink);display:block}.opt>span{color:var(--mut);margin-bottom:8px;font-size:.82rem;display:block}.analysis-wizard-card .opt>span,.backtest-assets.opt>span{margin-bottom:8px}.strategy-wizard-step{color:var(--ink);align-items:center;gap:8px;margin:14px 0 8px;font-weight:800;display:flex}.strategy-wizard-step span{color:#04121f;background:var(--acc);width:24px;height:24px;font-family:var(--font-mono);border-radius:999px;place-items:center;font-size:.78rem;display:inline-grid}.market-toolbar{grid-template-columns:minmax(180px,1fr) auto auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.market-toolbar>*,.strategy-unit-card>*,.asset-hub-header>*,.analysis-hero>*,.strategy-hero>*,.row>*{min-width:0}.market-toggle,.market-sort-toggle{flex-wrap:wrap;gap:8px;display:flex}.market-asset{padding-left:0}.market-asset__open{min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:11px;padding:0;display:flex}.star{min-width:34px;color:var(--line-2);background:0 0;border:0;flex:none;padding:5px;font-size:1.2rem;line-height:1}.star.on{color:var(--star)}.market-pagination{color:var(--mut);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.ico{width:34px;height:34px;color:var(--acc);background:#22304a;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.86rem;font-weight:820;display:flex}.chip,.pill,.tone-pill,.live-indicator,.asset-group__badge,.account-context-label,.chart-status{border:1px solid var(--line);min-height:24px;color:var(--mut);background:var(--tile);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:3px 8px;font-size:.72rem;font-weight:760;display:inline-flex}.chip.long,.chip.on,.tone-pill.tone-pos{color:var(--good);background:var(--good-soft);border-color:#3fb9506b}.chip.short,.tone-pill.tone-neg{color:var(--bad);background:var(--bad-soft);border-color:#f851496b}.chip.wait{color:var(--warn);background:var(--warn-soft);border-color:#d2992270}.chip.rule{color:var(--acc-2);background:var(--acc-soft);border-color:#4ea1ff70}.holding-list,.cash-list,.strategy-list,.asset-list,.asset-group-list,.signal-list,.paper-performance-list,.status-grid,.reports-list,.more-list,.unit-archive-list,.backtest-layout,.backtest-history-list{gap:12px;display:grid}.portfolio-asset-list{margin-top:6px;display:block}.content-center,.login-screen,.app-shell--center{place-items:center;min-height:100%;padding:20px;display:grid}.login-card,.skeleton-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);width:min(100%,420px);box-shadow:var(--shadow);padding:22px}.skeleton-panel{gap:10px;display:grid}.skeleton-panel div,.skeleton-line{background:linear-gradient(90deg, var(--tile), var(--line), var(--tile));background-size:220% 100%;border-radius:999px;height:18px;animation:1.2s linear infinite shimmer;overflow:hidden}@keyframes shimmer{to{background-position:-220% 0}}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-width:0;color:var(--ink);background:#0d131c;padding:10px 11px}input::placeholder,textarea::placeholder{color:var(--weak)}label,.form-field,.asset-select,.strategy-param-field{color:var(--mut);gap:7px;font-size:.82rem;font-weight:720;display:grid}.form-grid,.trade-form-grid,.settings-grid,.asset-form,.strategy-unit-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.primary-button,.secondary-button,.danger-button,.pillbtn,.icon-button,.icon-text-button,.asset-open,.asset-delete,.back,.market-toggle button,.tabs button,.subtabs button,.strategy-category-nav button,.backtest-step-nav button,.interval-toggle button,.indicator-toggle,.nav-editor-row button{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--tile);padding:9px 12px;font-weight:760}.primary-button,.pillbtn,.market-toggle button.active,.tabs button.on,.subtabs button.on,.strategy-category-nav button.active,.backtest-step-nav button.active,.interval-toggle button.active,.indicator-toggle.active{border-color:var(--acc);color:#04121f;background:var(--acc)}.secondary-button,.pillbtn.ghost,.back{color:var(--acc-2);background:var(--acc-soft)}.danger-button,.asset-delete{color:var(--bad);background:var(--bad-soft)}.icon-button{place-items:center;width:38px;height:38px;padding:0;display:inline-grid}.icon-button svg,.icon-text-button svg{width:20px;height:20px}.tabs,.subtabs,.strategy-category-nav,.backtest-step-nav,.market-toggle,.interval-toggle,.indicator-toggle-list{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.tabs button,.subtabs button,.strategy-category-nav button,.backtest-step-nav button,.market-toggle button,.interval-toggle button,.indicator-toggle{flex:auto}.data-table-wrap,.table-scroll,.report-table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:auto}table,.data-table{border-collapse:collapse;width:100%;color:var(--ink)}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px}th{color:var(--mut);background:var(--tile);font-size:.78rem}.chart-stack{gap:8px;display:grid}.chart-canvas{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;height:320px;min-height:320px;max-height:320px;overflow:hidden}.chart-canvas--price{height:320px;min-height:320px;max-height:320px}.chart-canvas--volume{height:170px;min-height:170px;max-height:170px}.chart-legend,.vleg{color:var(--mut);flex-wrap:wrap;gap:10px;font-size:.75rem;display:flex}.chart-legend__buy{color:var(--good)}.chart-legend__sell{color:var(--bad)}.chart-legend__cvd{color:var(--acc-2)}.vdom-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);padding:14px}.vdom-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.vdom-panel__header h3,.vdom-chart-block__title strong{color:var(--ink)}.vdom-panel__header p,.vdom-muted,.vdom-chart-block__title span,.vdom-chart-block__title em{color:var(--mut)}.vdom-legend{color:var(--mut);flex-wrap:wrap;gap:10px;font-size:.75rem;display:flex}.vdom-legend span{align-items:center;gap:5px;display:inline-flex}.vdom-dot,.vdom-line{border-radius:999px;width:12px;height:3px;display:inline-block}.vdom-dot{border-radius:3px;height:9px}.vdom-dot--buy{background:var(--good)}.vdom-dot--sell{background:var(--bad)}.vdom-line--cum{background:var(--acc)}.vdom-line--roll{background:var(--warn)}.vdom-grid,.vdom-chart-block{gap:12px;display:grid}.vdom-chart-block{gap:6px}.vdom-chart-block__title{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.vdom-chart{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;height:240px;min-height:240px;overflow:hidden}.loader{border:3px solid var(--line);border-top-color:var(--acc);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;place-items:center;gap:10px;display:grid}.form-error,.error-text{color:var(--bad)}.success-text{color:var(--good)}.warning-text{color:var(--warn)}.viz-graph,.viz-panel,.mini-chart,.indicator-mini-chart,.vchart svg{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:100%}.indicator-mini-chart{height:auto}@media (width>=1180px){:root{--content-max:1280px}.holding-list,.asset-list,.strategy-list,.signal-list,.reports-list,.more-list,.unit-archive-list{grid-template-columns:repeat(3,minmax(0,1fr))}.asset-hub-section{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start}.asset-hub-panel--chart,.asset-detail-tabs{grid-column:1/-1}.analysis-flow{grid-template-columns:repeat(4,minmax(0,1fr))}.ops-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=760px){.topbar{padding-inline:28px}.screen{padding:24px 28px 34px}#v-home{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start}#v-home h2.t,#v-home .grid2{grid-column:1/-1}#v-home .grid2{grid-template-columns:repeat(4,minmax(0,1fr))}.holding-list,.asset-list,.strategy-list,.signal-list,.status-grid,.reports-list,.analysis-regime-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backtest-layout{grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr)}.vdom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1180px){.holding-list,.asset-list,.strategy-list,.signal-list,.reports-list,.more-list,.unit-archive-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=681px) and (width<=1179px){.screen>*,.simbar{width:min(100%,980px)}.asset-hub-section,.backtest-layout,#v-home{grid-template-columns:1fr}.analysis-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.market-toolbar{grid-template-columns:minmax(180px,1fr) auto}.market-sort-toggle{grid-column:1/-1}}@media (width<=680px){:root{--touch:46px}.topbar{padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left));flex-direction:column;align-items:stretch;gap:10px}.brand{font-size:.96rem}.screen{padding:12px max(12px, env(safe-area-inset-right)) 18px max(12px, env(safe-area-inset-left))}.nav.bottom-tabs{padding:6px max(6px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));gap:4px}.bottom-tab{border-radius:8px;min-height:50px}.bottom-tab svg{width:20px;height:20px}.bottom-tab span:last-child{font-size:.64rem}.account-switcher,.acct{width:100%}.acct button{flex:1 1 0}.account-switcher__menu{width:min(100%,100vw - 24px);max-height:calc(100vh - 150px);left:0;right:auto;overflow:auto}.grid2,.summary-grid,.etf-metrics,.signal-metrics,.metric-grid,.asset-metrics,.backtest-run-summary,.shortterm-perf-summary,.strategy-param-grid,.strategy-unit-create__grid,.strategy-unit-edit-grid,.backtest-period-grid,.form-grid,.trade-form-grid,.settings-grid,.asset-form,.strategy-unit-form{grid-template-columns:1fr}.card,.metric,.notice,.empty-state,.chart-panel,.dashboard-etf,.cash-section,.holdings-section,.asset-card,.asset-group,.asset-detail-section,.asset-holding-summary,.strategy-unit-card,.strategy-mode,.strategy-card,.signal-card,.status-card,.etf-card,.etf-create,.etf-detail,.paper-account-card,.shortterm-symbol-card,.unit-archive-card,.backtest-runner,.backtest-history,.backtest-detail,.analysis-backtest-card,.settings-section,.report-card,.talk-panel,.upload-card{padding:12px}.market-toolbar{grid-template-columns:1fr}.market-pagination,.asset-hub-header,.analysis-card-top,.strategy-unit-card__footer,.ops-row,.vdom-panel__header,.vdom-chart-block__title,.page-header,.analysis-hero,.section-heading,.chart-panel__top,.asset-card__top,.strategy-card__top,.signal-card__top,.asset-holding-summary__header,.strategy-list-toolbar,.strategy-bulk-bar{flex-direction:column;align-items:stretch}.analysis-flow,.analysis-regime-grid{grid-template-columns:1fr}.asset-hub-header__actions,.strategy-unit-actions,.strategy-unit-badges,.tabs,.subtabs,.strategy-category-nav,.backtest-step-nav,.market-toggle,.market-sort-toggle,.interval-toggle,.indicator-toggle-list{width:100%}.asset-hub-header__actions>*,.strategy-category-nav button,.backtest-step-nav button,.market-toggle button,.market-sort-toggle button,.tabs button,.subtabs button{flex:1 1 0}.chart-canvas,.chart-canvas--price{height:260px;min-height:260px;max-height:260px}.chart-canvas--volume{height:140px;min-height:140px;max-height:140px}}@media (width<=420px){.acct{font-size:.72rem}.acct button{padding-inline:8px}.bottom-tab{gap:2px}.bottom-tab span:last-child{font-size:.6rem}th,td{padding:8px}}
