/* TICK: a restrained indigo identity with separate light and dark palettes. */
/* Market browsing stays compact as the universe grows. */
.rank-name .listing-badge,.watch-name .listing-badge,.favorite-row .listing-badge{display:inline-block;font-size:9px;margin:0 0 0 5px;color:var(--accent);vertical-align:middle}.rank-name .listing-badge.warning,.watch-name .listing-badge.warning,.favorite-row .listing-badge.warning{color:var(--warning)}.home-sidebar .favorite-row.listing-new-row>span:last-child{text-align:left;flex:1}
@media(max-width:700px){.market-home .ranking-table table,.market-home .ranking-table tbody{display:block}.market-home .ranking-table tr{display:grid;grid-template-columns:minmax(0,1fr) 95px 67px 22px;column-gap:8px;align-items:center}.market-home .ranking-table tr:first-child:has(th){display:none}.market-home .ranking-table td{display:block;min-width:0;width:auto!important}.market-home .ranking-table td.desktop-cell{display:none}.market-home .ranking-table .rank-name strong{display:block;max-width:100%}.market-home .ranking-table .rank-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-home .rank-number{flex-shrink:0}}
.market-live{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:3px}.market-more{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px;border-top:1px solid var(--line);color:var(--accent)}.market-more small{color:var(--muted);font-size:11px}.market-empty{padding:24px!important;color:var(--muted);text-align:center}.listing-badge{display:inline-block;font-size:9px;font-weight:550;padding:2px 5px;margin-left:6px;border-radius:4px;background:var(--accent-bg);color:var(--accent);vertical-align:middle}.listing-badge.warning{background:var(--warning-bg);color:var(--warning)}.listing-warning{padding:12px;border-radius:8px;color:var(--warning)!important;background:var(--warning-bg);font-size:12px;line-height:1.7}.news-story{padding:13px 0;border-top:1px solid var(--line)}.news-story:first-child{border-top:0}.news-story>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.news-story time{font-size:10px;color:var(--muted);white-space:nowrap}.news-category{font-size:11px;color:var(--muted)}.news-story p{margin:5px 0!important;line-height:1.65!important;color:var(--text-secondary)!important;font-size:12px!important}.news-filters{display:flex;gap:6px;margin:4px 0 8px}.news-filters button{padding:5px 10px;border-radius:7px;color:var(--muted);font-size:11px}.news-filters button.active{background:var(--accent-bg);color:var(--accent)}.listing-section{margin-top:22px}.listing-section h3{font-size:15px;margin-bottom:8px}.listing-section h3 small{color:var(--muted);font-size:11px}.listing-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 0;border-bottom:1px solid var(--line);text-align:left}.listing-row>span:nth-child(2){display:grid;gap:3px;flex:1}.listing-row small{color:var(--muted);font-size:11px}.listing-row b{font-size:12px}.news-feed{max-height:55vh;overflow:auto;margin-top:16px}.home-layout .ranking-card{padding-bottom:0}.news-panel #news-list{max-height:450px;overflow:auto}.market-home .market-index-grid{margin-bottom:20px}.market-home .index-card{min-height:115px;padding:18px 20px}.market-home .index-card strong{font-size:24px}.market-home .index-card svg{max-width:92px;height:34px}.home-heading>div{display:grid}.market-home .home-sidebar .section-card{padding:20px}.market-home .home-sidebar .section-heading{margin-bottom:8px}
@media(max-width:700px){.market-home .index-card{min-height:104px;padding:14px 16px}.market-home .index-card strong{font-size:22px}.market-home .index-card svg{max-width:65px;height:28px}.market-home .market-index-grid{gap:10px;margin-bottom:16px}.market-home .home-sidebar{display:grid;grid-template-columns:minmax(0,1fr)}.market-live{font-size:11px}.ranking-card .section-heading>span{font-size:10px}.news-filters button{min-height:36px}.market-more{min-height:48px}.ranking-table .rank-name strong{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
:root {color-scheme:light;--bg:#f5f5f3;--panel:#fff;--panel2:#fafaf8;--soft:#f0f0ef;--line:#ececeb;--text:#252831;--text-secondary:#676b78;--muted:#747986;--muted-soft:#aeb2bc;--accent:#6755d8;--accent-bg:#efecfb;--focus:#bdb5ef;--green:var(--accent);--up:#df6357;--up-bg:#fdf0ed;--down:#527ad8;--down-bg:#edf2fb;--warning:#a37525;--warning-bg:#fff7e5;--toast-bg:#34313f;--short-bg:#686276;--surface-float:#ffffffed;--backdrop:#24233180;--shadow:#25283120;--shadow-soft:#25283109;--font:-apple-system,BlinkMacSystemFont,'Segoe UI','Apple SD Gothic Neo','Noto Sans KR',sans-serif;--mono:var(--font);--radius:16px}
:root[data-theme=dark] {color-scheme:dark;--bg:#10141b;--panel:#191e27;--panel2:#202631;--soft:#252c38;--line:#2b3341;--text:#edf0f5;--text-secondary:#b0b8c6;--muted:#919bac;--muted-soft:#69758a;--accent:#b0a3ff;--accent-bg:#302c4d;--focus:#71659f;--up:#ff8174;--up-bg:#3c2b30;--down:#8faeff;--down-bg:#293347;--warning:#e4c084;--warning-bg:#352f25;--toast-bg:#394355;--short-bg:#6c6684;--surface-float:#191e27f2;--backdrop:#0009;--shadow:#0004;--shadow-soft:#0002}
*{box-sizing:border-box}html{scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}button{border:0;background:none;color:inherit;cursor:pointer;touch-action:manipulation}button:hover{filter:brightness(.97)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{font-size:26px;letter-spacing:-1px}h2{font-size:18px;letter-spacing:-.5px}h3{font-size:18px;letter-spacing:-.5px}strong{font-weight:650}input,select{min-width:0;background:var(--soft);color:var(--text);border:1px solid transparent;border-radius:10px;padding:11px 12px;outline:0}input:focus,select:focus{background:var(--panel);border-color:var(--accent)}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{appearance:none}input[type=checkbox]{accent-color:var(--green)}input[hidden],select[hidden],[hidden]{display:none!important}
.up{color:var(--up)!important}.down{color:var(--down)!important}.neutral,.muted{color:var(--muted)}.muted{font-size:12px}.positive,.live-text{color:var(--green)}.mono{font-family:var(--font)}.eyebrow{display:block;margin-bottom:5px;color:var(--muted);font-size:12px;letter-spacing:0}.pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:7px;background:var(--accent-bg);color:var(--accent);font-size:11px;font-weight:550}.subtle-note{font-size:12px;line-height:1.75;color:var(--muted)}
.topbar{height:72px;padding:0 28px;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0;z-index:25}.brand{display:flex;align-items:center;gap:9px;font-size:25px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.brand-icon{transform:rotate(-7deg);display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--panel);border-radius:12px;width:34px;height:34px;font-size:24px;line-height:1}.brand-caption{display:block;font-size:9px;font-weight:450;letter-spacing:0;color:var(--muted);margin-top:-3px}.topbar nav{display:flex;align-items:center;height:100%;gap:27px}.topbar nav button{color:var(--text-secondary);font-size:14px;position:relative;padding:8px 0;white-space:nowrap;font-weight:550}.topbar nav button.active{color:var(--text);font-weight:700}.topbar nav svg{display:none;width:23px;height:23px}.header-end{margin-left:auto;display:flex;align-items:center;gap:14px}.header-search{display:flex;align-items:center;gap:12px;width:235px;padding:10px 13px;background:var(--soft);border-radius:10px;color:var(--muted);text-align:left;font-size:12px}.header-search>span:first-child{font-size:25px;line-height:15px}.header-search kbd{margin-left:auto;font-size:10px}.local-badge{display:none}.icon-button{display:flex;align-items:center;justify-content:center;width:34px;min-width:34px;height:34px;border-radius:10px;color:var(--muted);font-size:22px}.icon-button:hover{background:var(--soft)}.avatar{padding:8px 10px;border-radius:10px;background:var(--accent-bg);color:var(--accent);font-size:12px;font-weight:650;white-space:nowrap}
.ticker-strip{display:none}.accountbar{display:flex;align-items:center;gap:26px;padding:19px 28px;background:var(--bg);max-width:1700px;margin:0 auto}.accountbar>div{display:flex;flex-direction:column;gap:3px;white-space:nowrap}.accountbar>div>span{font-size:11px;color:var(--muted)}.accountbar>div>strong{font-size:17px;letter-spacing:-.4px}.accountbar>div:nth-child(2)>strong{font-size:24px}.account-title{display:none!important}.account-realized{display:none!important}.usd-account>strong{color:var(--accent)}.fx-link{color:var(--accent);padding:0 0 0 6px;font-size:11px}.accountbar .clock{display:grid;grid-template-columns:auto 30px 100px;gap:2px 7px;align-items:center;margin-left:auto}.clock>span{grid-column:1/4;font-size:11px}.clock strong{font-size:16px;font-weight:600}.clock select{padding:6px;font-size:11px;background:var(--soft)}.clock .icon-button{min-width:30px;width:30px;height:30px;font-size:14px}
main{max-width:1700px;margin:0 auto}.page{display:none}.page.active{display:block}.page-inner{padding:12px 28px 35px;max-width:1420px;margin:0 auto}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:12px 0 28px}.page-heading p{color:var(--muted);font-size:13px;margin-top:7px}.page-heading .card-actions{justify-content:flex-end}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat-card{background:var(--panel);border:0;border-radius:var(--radius);padding:22px}.stat-card>span{display:block;color:var(--muted);font-size:13px}.stat-card>strong{display:block;font-size:29px;letter-spacing:-1px;margin:8px 0}.stat-card>small{display:block;color:var(--muted);font-size:12px}.stat-card strong small{font-size:16px;font-weight:450}.two-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:start}.section-card{background:var(--panel);border:0;border-radius:var(--radius);padding:24px;margin-bottom:20px;min-width:0}.section-card p{font-size:13px;color:var(--muted);margin:7px 0 17px;line-height:1.8}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.text-button{color:var(--muted);font-size:12px}.action-button,.small-button{background:var(--soft);border:0;border-radius:9px;padding:10px 14px;font-size:13px;white-space:nowrap;min-height:38px}.action-button.primary{background:var(--accent);color:var(--panel);font-weight:600}.action-button.danger,.action-button.sell{color:var(--up);background:var(--up-bg)}.small-button{padding:7px 10px;font-size:12px;min-height:33px}.card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.card-actions input,.card-actions select{max-width:180px}.large-chart{height:170px;margin-top:20px}.large-chart svg{width:100%;height:100%}.detail-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.detail-row span{color:var(--muted)}.detail-row>div{min-width:0}.detail-row:last-child{border-bottom:0}
/* Home: index overview, ranking and a quieter personal side rail. */
.home-heading{display:flex;justify-content:space-between;align-items:center;margin:8px 0 24px}.home-heading h1{font-size:27px}.home-summary{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;margin-bottom:24px}.market-index-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.index-card{position:relative;text-align:left;padding:20px;border-radius:18px;background:var(--panel);min-width:0;overflow:hidden}.index-card>span{display:block;font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.index-card>strong{display:block;font-size:20px;letter-spacing:-.6px;margin:8px 0 4px;white-space:nowrap}.index-card>small{font-size:12px}.index-card svg{display:block;width:85%;height:30px;margin-top:14px}.home-account{display:flex;flex-direction:column;background:var(--accent-bg);padding:21px 24px;border-radius:18px}.home-account>span{font-size:12px;color:var(--text-secondary)}.home-account>strong{font-size:26px;letter-spacing:-1px;margin:4px 0}.home-account>small{font-size:12px}.home-account button{align-self:flex-start;color:var(--accent);font-size:13px;font-weight:600;padding:12px 0 0;margin-top:auto}.home-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}.ranking-card{padding:24px 20px}.ranking-tabs{display:flex;gap:24px;margin-bottom:18px;border-bottom:1px solid var(--line)}.ranking-tabs button{padding:0 0 13px;font-size:14px;color:var(--muted);position:relative}.ranking-tabs button.active{color:var(--text);font-weight:650}.ranking-tabs button.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--text)}.discover-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.discover-filters button{padding:7px 11px;border-radius:8px;background:var(--bg);color:var(--muted);font-size:12px}.discover-filters button.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.discover-sector{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted);margin-bottom:15px}.discover-sector select{margin-left:5px;font-size:12px;padding:7px}.rank-name{display:flex;gap:12px;align-items:center;text-align:left;padding:8px 0}.rank-name>span:last-child{min-width:0}.rank-name strong{font-size:14px;white-space:nowrap}.rank-name small{font-size:11px;color:var(--muted);display:block;margin-top:3px}.rank-number{width:17px;color:var(--muted);font-size:12px}.mini-logo,.asset-logo{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--accent-bg);color:var(--accent);border-radius:50%;font-size:11px;font-weight:650;width:34px;height:34px}.ranking-table td:nth-child(2),.ranking-table td:nth-child(3){font-size:13px;text-align:right;white-space:nowrap}.ranking-table th:nth-child(2),.ranking-table th:nth-child(3){text-align:right}.ranking-table svg{width:75px;height:30px}.watch-heart{color:var(--muted-soft);font-size:22px;min-width:32px;min-height:36px}.watch-heart.on{color:#d4b878}.ranking-note{margin:15px 0 0!important;font-size:11px!important}.favorite-row,.search-result{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 0}.favorite-row strong,.search-result strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.favorite-row small,.search-result small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.favorite-row>span:last-child,.search-result>span:last-child{text-align:right;font-size:12px}.home-news{padding:16px 0;border-bottom:1px solid var(--line)}.home-news:last-child{border-bottom:0}.home-news p{margin:8px 0!important;color:var(--text-secondary)!important;font-size:13px!important}.home-news small{font-size:11px;color:var(--muted-soft)}.next-goal h3{margin-top:12px}.market-map summary{font-size:15px;font-weight:600;cursor:pointer}.heatmap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:20px}.heat-tile{display:flex;flex-direction:column;justify-content:space-between;text-align:left;border-radius:12px;background:var(--bg);padding:14px;min-height:100px}.heat-tile small{font-size:10px;color:var(--muted)}.heat-tile strong{font-size:12px;margin:7px 0}.heat-tile span{font-size:16px;font-weight:600}
/* Stock detail: chart first, order beside it, a stable stock list on the right. */
.trade-shortcuts{display:flex;align-items:center;gap:8px;padding:0 28px 14px}.trade-shortcuts button{background:var(--line);color:var(--text-secondary);border-radius:8px;padding:7px 12px;font-size:12px;min-height:34px}.trade-shortcuts button[data-jump=order]{background:var(--accent-bg);color:var(--accent)}.trade-shortcuts b{color:var(--accent)}.trade-shortcuts>span{margin-left:auto;color:var(--muted);font-size:11px}.terminal-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px 265px;grid-template-rows:minmax(560px,auto) auto;gap:16px;padding:0 28px 25px;align-items:start}.panel{background:var(--panel);border:0;border-radius:var(--radius);min-width:0;overflow:hidden}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 14px}.panel-title h2{font-size:15px}.watch{grid-column:3;grid-row:1/4;display:flex;flex-direction:column;position:sticky;top:88px;max-height:calc(100dvh - 110px)}.search{display:flex;align-items:center;gap:7px;background:var(--soft);border-radius:10px;margin:0 14px 13px;padding:0 10px;color:var(--muted)}.search>span{font-size:24px}.search input{width:100%;font-size:12px;padding:10px 0;border:0;background:none}.search kbd{font-size:10px}.market-tabs{display:flex;gap:2px;padding:0 12px 12px}.market-tabs button{padding:7px 10px;font-size:11px;color:var(--muted);white-space:nowrap;border-radius:8px}.market-tabs button.active{color:var(--accent);background:var(--accent-bg);font-weight:650}.watch-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:0 14px 12px}.watch-tools>label{font-size:10px;color:var(--muted)}.watch-tools select{width:100%;font-size:11px;padding:7px 4px;margin-top:4px}.watch-tools>div{grid-column:1/3;display:flex;justify-content:space-between;align-items:center;gap:4px}.open-only{display:flex;gap:4px;align-items:center;font-size:10px;color:var(--muted)}.open-only input{margin:0}#refresh-ranking{font-size:10px;color:var(--muted);padding:5px 0}.list-labels{display:none}.watchlist{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--soft) transparent;min-height:0}.watch-row{display:grid;grid-template-columns:29px minmax(0,1fr) auto;gap:9px;align-items:center;width:100%;text-align:left;min-height:71px;padding:13px 14px;border:0}.watch-row .mini-logo{width:29px;height:29px;font-size:9px}.watch-row:hover{background:var(--panel2)}.watch-row.active{background:var(--accent-bg)}.watch-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watch-symbol{display:block;font-size:9px;font-weight:400;color:var(--muted);margin-top:3px}.watch-price{text-align:right;font-size:11px;white-space:nowrap}.watch-change{display:block;font-size:10px;margin-top:4px}.lock{font-size:9px;color:var(--muted)}.watch-foot{display:none}#clear-search{font-size:20px;padding:2px 4px}.chart-panel{grid-column:1;grid-row:1;display:flex;flex-direction:column;min-height:560px;align-self:stretch;position:relative}.instrument-header{padding:24px 24px 13px;display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.instrument-title{display:flex;align-items:center;gap:10px}.asset-logo{width:37px;height:37px}.instrument-title h1{font-size:18px;letter-spacing:-.6px}.instrument-title div>span{font-size:11px;color:var(--muted)}.instrument-title .icon-button{font-size:24px}.quote-group{display:flex;flex-direction:column;flex-basis:100%;padding-left:0}.quote-group strong{font-size:35px;font-weight:700;letter-spacing:-1.5px;line-height:1.25}.quote-group>span{font-size:13px;margin-top:7px}.instrument-stats{display:flex;flex-wrap:wrap;gap:18px;padding:0 24px 16px}.instrument-stats>div{font-size:11px;color:var(--text-secondary)}.instrument-stats span{margin-right:6px;color:var(--muted)}.market-details{margin:0 24px 4px;border-radius:9px;background:var(--panel2)}.market-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;cursor:pointer;list-style:none;font-size:11px}.market-details summary::-webkit-details-marker{display:none}#session-summary{color:var(--text-secondary)}.details-label{font-size:10px;color:var(--muted);white-space:nowrap}.details-label:after{content:' ＋'}.market-details[open] .details-label:after{content:' −'}.market-context{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11px;padding:10px 11px;color:var(--muted)}.regime{padding:3px 6px;border-radius:5px;background:var(--panel)}.live-micro{margin-left:auto;font-size:9px;color:var(--accent)}.session-strip{padding:0 11px 10px}.session-segments{display:flex;gap:5px}.session-segments>span{flex:1;background:var(--soft);border-radius:7px;padding:7px;font-size:10px;color:var(--muted)}.session-segments>span.active{background:var(--accent-bg);color:var(--accent)}.session-segments small{display:block;font-size:9px;margin-top:2px}.session-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;font-size:9px;margin-top:7px;color:var(--muted)}.session-note b{font-weight:400}.chart-range-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 24px 5px;flex-wrap:wrap}#chart-ranges{display:flex;gap:5px}#chart-ranges button{min-height:32px;padding:6px 12px;font-size:12px;color:var(--muted);border-radius:8px}#chart-ranges button.active{background:var(--soft);color:var(--text);font-weight:650}#chart-range-info{font-size:10px;color:var(--muted-soft)}.chart-toolbar{display:flex;align-items:center;gap:4px;padding:8px 20px;color:var(--muted);white-space:nowrap;overflow-x:auto}.chart-toolbar button{font-size:10px;padding:5px 6px;border-radius:6px;min-height:28px}.chart-toolbar button.active,.chart-toolbar button.on{color:var(--text-secondary);background:var(--soft)}.toolbar-divider{border-right:1px solid var(--line);height:14px;margin:0 4px}.fit-button{margin-left:auto;font-size:18px!important}.chart-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:9px;color:var(--muted);padding:3px 24px}.chart-legend .ma{color:#bf9847}.canvas-wrap{position:relative;flex:1;min-height:245px;margin:0 14px;overflow:hidden}canvas{display:block;position:relative;width:100%;height:100%;z-index:2}.chart-watermark{display:none}.chart-tooltip{display:none;position:absolute;z-index:3;pointer-events:none;top:8px;left:8px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 3px 14px var(--shadow-soft);font-size:11px;padding:8px}.chart-footer{padding:9px 20px;color:var(--muted-soft);font-size:10px;display:flex;justify-content:space-between;gap:10px}
.order-column{grid-column:2;grid-row:1/4;display:flex;flex-direction:column;gap:16px}.order-panel{order:0}.order-panel .panel-title{flex-wrap:wrap}.order-panel .panel-title h2{font-size:16px}.order-panel .panel-title span{font-size:10px}.direction-tabs{display:flex;gap:6px;padding:0 16px 12px}.direction-tabs button{flex:1;border-radius:9px;padding:10px 6px;min-height:38px;background:var(--soft);color:var(--muted);font-size:12px;white-space:nowrap}.direction-tabs button.active{background:var(--up-bg);color:var(--up);font-weight:650}.direction-tabs #sell-tab.active{background:var(--accent-bg);color:var(--accent)}.direction-tabs .short{font-size:11px}.holdings-shortcut{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:11px 17px;background:var(--panel2);font-size:10px;color:var(--muted)}.holdings-shortcut button{font-size:10px;color:var(--accent)}.fx-order-hint{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:11px 17px 0;font-size:11px;color:var(--text-secondary)}.fx-order-hint button{color:var(--accent);font-size:11px}#order-form{padding:16px}.order-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.order-controls label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted)}.order-controls select,.order-controls input{width:100%;padding:9px 7px;font-size:12px}.field{display:block;margin-top:18px;font-size:12px;color:var(--text-secondary)}.field>.muted{font-size:10px;float:right}.input-unit{display:flex;align-items:center;background:var(--soft);border-radius:11px;margin-top:7px;padding-right:12px}.input-unit input{flex:1;width:100%;padding:13px 10px;font-size:19px;background:none;border:0}.input-unit span{font-size:12px;color:var(--muted);white-space:nowrap}.amount-presets{display:flex;gap:7px;margin:9px 0 13px}.amount-presets button{flex:1;background:var(--soft);border-radius:7px;color:var(--muted);padding:7px 0;font-size:11px;min-height:32px}.advanced summary{padding:7px 0;font-size:11px;color:var(--muted);cursor:pointer}.advanced .order-controls{margin-top:9px}.order-estimates{display:flex;flex-direction:column;gap:8px;font-size:11px;padding:17px 0 0}.order-estimates>div{display:flex;justify-content:space-between;gap:9px}.order-estimates span{color:var(--muted)}.order-estimates b{font-weight:500}.order-guidance{font-size:11px;line-height:1.6;background:var(--panel2);color:var(--muted);border-radius:9px;padding:11px;margin:16px 0}.order-guidance.has-issue{background:var(--warning-bg);color:var(--warning)}.order-guidance button{display:block;color:var(--accent);font-weight:600;padding:7px 0 0;font-size:12px}.submit-order{display:block;width:100%;min-height:45px;padding:12px;border-radius:10px;background:var(--up);color:var(--panel);font-size:14px;font-weight:650}.submit-order.short{background:var(--short-bg)}.submit-order:disabled{background:var(--soft);color:var(--muted-soft);opacity:1}.order-note{font-size:10px;color:var(--muted-soft);margin-top:9px;text-align:center;line-height:1.6}#sell-picks{padding:16px}.sell-pick{padding:14px 0;border-bottom:1px solid var(--line)}.sell-pick strong{display:block;font-size:17px}.sell-pick strong small{font-size:10px;font-weight:400;color:var(--muted)}.sell-pick span{display:block;font-size:11px;color:var(--muted);margin-top:6px}.sell-pick>div:last-child{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.book-panel{order:1;padding-bottom:16px}.book-tabs{display:flex;gap:18px}.book-tabs button{font-size:13px;color:var(--muted)}.book-tabs button.active{color:var(--text);font-weight:650}.book-panel .panel-title .muted{font-size:9px}.book-labels,.book-row{display:grid;grid-template-columns:1fr 1fr 1fr;text-align:right;padding:0 16px;font-size:10px}.book-labels{color:var(--muted);margin-bottom:6px}.book-labels span:first-child,.book-row span:first-child{text-align:left}.book-row{width:100%;height:27px;align-items:center;position:relative;isolation:isolate}.book-row:before{position:absolute;content:'';top:1px;bottom:1px;right:0;width:var(--depth);background:var(--down-bg);z-index:-1}.book-row.bid:before{background:var(--up-bg)}.book-row span:last-child{color:var(--muted-soft)}.book-mid{display:flex;align-items:center;justify-content:space-between;padding:11px 16px}.book-mid strong{font-size:17px}.book-mid span{font-size:9px;color:var(--muted)}.book-pressure{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding:10px 16px 0}.tape-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;text-align:right;padding:5px 16px;font-size:11px}.tape-row>span:first-child{text-align:left}.tape-row small{font-size:10px;color:var(--muted)}
.positions-panel{grid-column:1;grid-row:2;min-height:230px}.news-panel{grid-column:1;grid-row:3}.bottom-tabs{display:flex;gap:20px;align-items:center;padding:0 22px;border-bottom:1px solid var(--line);overflow-x:auto;white-space:nowrap}.bottom-tabs button{font-size:13px;color:var(--muted);min-height:53px;position:relative}.bottom-tabs button.active{color:var(--text);font-weight:650}.bottom-tabs b{font-size:11px;color:var(--accent)}.bottom-tabs>span{margin-left:auto;font-size:12px}.positions-help{font-size:11px;color:var(--muted-soft);padding:12px 22px 0}.table-scroll{overflow:auto;scrollbar-width:thin}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{font-weight:400;color:var(--muted);font-size:11px;padding:12px 15px;border-bottom:1px solid var(--line)}td{padding:13px 15px;border-bottom:1px solid var(--line);color:var(--text-secondary)}td small{display:block;font-size:10px;color:var(--muted);margin-top:4px}td button:not(.rank-name):not(.watch-heart):not(.small-button){text-align:left}tr:last-child td{border-bottom:0}.ranking-table th,.ranking-table td{padding:9px 8px}.ranking-table td:first-child{padding-left:0}.ranking-table tr:hover{background:var(--panel2)}.news-panel #news-list{padding:0 20px 15px}.news-item{display:flex;align-items:start;gap:10px;padding:11px 0;border-top:1px solid var(--line);font-size:12px}.news-item time{color:var(--muted-soft);font-size:10px;white-space:nowrap}.tag{background:var(--soft);padding:2px 6px;border-radius:5px;color:var(--muted);font-size:10px;white-space:nowrap}.news-item p{color:var(--text-secondary)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 20px;color:var(--muted);gap:7px}.empty strong{font-size:14px;color:var(--text-secondary)}.empty p{font-size:12px;margin:0 0 6px}.empty-icon{font-size:26px;color:var(--muted-soft)}.empty button{color:var(--accent);font-size:12px}.live-dot,.local-badge i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:5px}.statusbar{max-width:1650px;margin:0 auto;display:flex;justify-content:space-between;gap:10px;padding:12px 28px 25px;font-size:10px;color:var(--muted-soft)}.statusbar em{font-style:normal;margin:0 6px}.market-paused #pace-label,.market-paused #session-summary{color:var(--warning)}
/* Portfolio, growth and secondary investment flows. */
.progress-track{height:7px;border-radius:6px;background:var(--soft);overflow:hidden;margin-top:13px}.progress-track div{height:100%;background:var(--accent)}.level-hero{display:flex;align-items:center;gap:18px}.level-number{display:flex;align-items:center;justify-content:center;width:76px;min-width:76px;height:76px;border-radius:22px;background:var(--accent-bg);color:var(--accent);font-size:35px;font-weight:700}.level-copy{flex:1;min-width:0}.level-copy h3{font-size:21px}.level-copy p{font-size:12px;margin:5px 0}.mission,.unlock-row,.bot-row,.property-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.mission>div{flex:1}.mission p{font-size:12px;margin:3px 0}.mission small{font-size:11px;color:var(--accent)}.unlock-row>span{color:var(--muted)}.bot-row small,.property-row small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.badge-row{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.onboarding{background:var(--accent-bg);border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.onboarding small{display:block;color:var(--text-secondary)}#reward-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--up);vertical-align:top;margin:2px 0 0 2px;visibility:hidden}
/* Dialogs reuse the same inputs and orders on both device classes. */
dialog{width:min(520px,calc(100vw - 32px));padding:24px;border:0;border-radius:22px;background:var(--panel);color:var(--text);max-height:85dvh;overflow:auto;box-shadow:0 20px 70px var(--shadow)}dialog::backdrop{background:var(--backdrop)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.modal-head h2{font-size:21px}.modal-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:20px}#modal-body label{display:block;font-size:13px;color:var(--muted);margin-bottom:14px}#modal-body label input,#modal-body label select{display:block;width:100%;margin-top:7px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.settings-row strong{font-size:13px}.settings-row p{font-size:11px;color:var(--muted);margin-top:4px}.settings-row button{font-size:12px;white-space:nowrap}.fx-wallets{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.fx-wallets>div{padding:16px;background:var(--soft);border-radius:12px}.fx-wallets span{display:block;font-size:12px;color:var(--muted)}.fx-wallets strong{display:block;margin-top:6px;font-size:22px}.fx-wallets>div:last-child strong{color:var(--accent)}.fx-quote{background:var(--accent-bg);border-radius:13px;padding:16px;margin:16px 0}.fx-quote>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;font-size:12px}.fx-quote span{color:var(--text-secondary)}.fx-quote strong{font-size:23px;color:var(--accent)}.fx-quote b{font-weight:500}#fx-submit{width:100%;min-height:45px}.option-box{padding:15px;background:var(--panel2);border-radius:10px;margin:12px 0}.option-box p{font-size:12px;color:var(--muted);margin-bottom:10px}.global-search-field{display:flex!important;align-items:center;gap:10px;border-radius:12px;background:var(--soft);padding:0 12px}.global-search-field>span{font-size:25px}.global-search-field input{margin:0!important;border:0;background:none;padding:14px 0;font-size:16px}.search-count{font-size:12px;color:var(--muted);margin-bottom:8px}#global-results{max-height:60dvh;overflow:auto}.search-result{padding:13px 4px;border-bottom:1px solid var(--line)}.search-result:hover{background:var(--panel2)}.search-result strong{font-size:14px}.search-result>span:last-child{font-size:13px}#toast{position:fixed;z-index:100;left:50%;bottom:30px;transform:translate(-50%,10px);padding:13px 20px;border-radius:13px;background:var(--toast-bg);color:var(--panel);font-size:13px;max-width:min(90vw,580px);opacity:0;pointer-events:none;transition:.15s;box-shadow:0 8px 25px var(--shadow)}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:var(--up)}.mobile-trade-dock{display:none}.sheet-handle{display:none}#order-sheet #order-panel{display:block;border-radius:0;overflow:visible}#order-sheet .holdings-shortcut{border-radius:10px}#order-sheet .panel-title{display:none}#order-sheet #order-form{padding:8px 0 0}#order-sheet .direction-tabs{padding:0 0 12px}#order-sheet #sell-picks{padding:8px 0}#order-sheet .fx-order-hint{padding-left:0;padding-right:0}
@media(min-width:1500px){.terminal-grid{grid-template-columns:minmax(0,1fr) 320px 285px}.chart-panel{min-height:630px}}
@media(max-width:1200px){.topbar{gap:25px;padding:0 20px}.topbar nav{gap:19px}.header-search{width:180px}.header-search kbd{display:none}.terminal-grid{grid-template-columns:minmax(0,1fr) 290px}.watch{grid-column:1/3;grid-row:4;position:static;max-height:none}.watchlist{display:flex;overflow:auto}.watch-row{width:190px;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto}.watch-row .mini-logo{display:none}.watch-tools{display:flex;align-items:end;gap:14px}.watch-tools>label{width:130px}.watch-tools>div{margin-left:auto;gap:14px}.watch .search{max-width:380px}.market-tabs{padding-bottom:7px}.home-layout{grid-template-columns:minmax(0,1fr) 265px}.home-summary{grid-template-columns:minmax(0,1fr) 265px}.market-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.index-card{padding:15px}.index-card svg{position:absolute;width:60px;right:14px;bottom:17px;margin:0}.home-account{justify-content:center}.accountbar{gap:22px}.accountbar>div:nth-child(5){display:none}.heatmap{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:950px){.topbar{gap:20px}.topbar nav{gap:18px}.header-search{width:36px;height:36px;padding:8px;background:var(--soft)}.header-search>span:nth-child(2){display:none}.header-end{gap:8px}.brand-caption{display:none}.accountbar{padding:16px 20px;gap:20px}.terminal-grid{padding:0 20px 25px;gap:12px;grid-template-columns:minmax(0,1fr) 275px}.trade-shortcuts{padding-left:20px;padding-right:20px}.instrument-header{padding:21px 18px 12px}.instrument-stats,.chart-range-bar{padding-left:18px;padding-right:18px}.market-details{margin-left:18px;margin-right:18px}.home-layout,.home-summary{grid-template-columns:1fr}.home-account{display:none}.home-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:16px}.home-sidebar .next-goal{display:none}.page-inner{padding-left:20px;padding-right:20px}.two-columns{gap:15px}.section-card{padding:20px}.quote-group strong{font-size:32px}.header-end .avatar{font-size:11px}.accountbar .clock{grid-template-columns:auto 27px 82px}.clock select{font-size:10px}.statusbar>span:last-child{display:none}}
@media(max-width:700px){
 html{scroll-padding-top:70px}body{background:var(--panel);font-size:15px}.topbar{height:60px;padding:0 20px;gap:12px;border-bottom:0}.brand{font-size:23px}.brand-icon{width:30px;height:30px;border-radius:10px;font-size:24px}.header-end{gap:9px}.header-search{background:none;width:32px;height:34px;font-size:15px}.topbar nav{position:fixed;bottom:0;left:0;right:0;height:calc(62px + env(safe-area-inset-bottom));padding:5px 10px env(safe-area-inset-bottom);background:var(--surface-float);border-top:1px solid var(--soft);display:flex;justify-content:space-around;gap:0;z-index:30;backdrop-filter:blur(16px)}.topbar nav button{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:2px;font-size:10px;color:var(--muted-soft)}.topbar nav svg{display:block}.topbar nav button.active{color:var(--text)}.header-end .icon-button{width:30px;min-width:30px;height:30px}.avatar{padding:6px 8px;font-size:11px}.brand-caption{display:none}
 .accountbar{padding:10px 20px 16px;background:var(--panel);display:flex;gap:10px;border-bottom:8px solid var(--bg);align-items:center}.accountbar>div:nth-child(3),.accountbar>div:nth-child(4),.accountbar>div:nth-child(5),.accountbar>div:nth-child(6){display:none!important}.accountbar>div:nth-child(2)>span{font-size:10px}.accountbar>div:nth-child(2)>strong{font-size:21px}.accountbar .clock{grid-template-columns:auto 29px;gap:1px 4px}.clock>span{grid-column:1/3;font-size:9px}.clock strong{font-size:12px}.clock select{grid-column:1/3;font-size:10px;padding:3px 5px;text-align:center}.clock .icon-button{width:25px;min-width:25px;height:25px;font-size:12px}
 .page-inner{padding:22px 20px 95px}.home-heading{margin:0 0 20px}.home-heading h1{font-size:25px}.home-heading>.action-button{display:none}.home-heading .eyebrow{font-size:12px}.home-summary{display:block;margin-bottom:26px}.market-index-grid{display:flex;overflow-x:auto;gap:10px;margin:0 -20px;padding:0 20px;scrollbar-width:none}.index-card{background:var(--bg);min-width:158px;flex-shrink:0;min-height:142px;padding:16px}.index-card>strong{font-size:20px}.index-card svg{position:static;width:80px;height:26px;margin-top:12px}.home-layout{display:flex;flex-direction:column;gap:0}.ranking-card{order:0;width:100%;border-radius:0;padding:0;margin:0 0 28px}.section-heading{margin-bottom:18px}.section-heading h2{font-size:20px}.ranking-tabs{gap:23px;margin-bottom:16px}.ranking-tabs button{font-size:14px;padding-bottom:11px}.discover-filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 13px;padding:0 20px;scrollbar-width:none}.discover-filters button{flex-shrink:0;min-height:34px;font-size:12px}.discover-sector{font-size:10px;margin-bottom:10px}.discover-sector select{font-size:13px;padding:7px;max-width:130px}.ranking-table{overflow-x:visible}.ranking-table table{table-layout:fixed;width:100%}.ranking-table th{display:none}.ranking-table .desktop-cell{display:none}.ranking-table td{padding:10px 0;border-bottom:0}.ranking-table td:first-child{width:50%}.ranking-table td:nth-child(2){width:24%;font-size:12px}.ranking-table td:nth-child(3){width:21%;font-size:12px}.ranking-table td:last-child{width:5%;text-align:right}.rank-name{gap:8px;width:100%;padding:4px 0}.rank-number{width:12px;font-size:11px}.rank-name .mini-logo{width:31px;height:31px;font-size:10px}.rank-name>span:last-child{overflow:hidden}.rank-name strong{font-size:13px;overflow:hidden;text-overflow:ellipsis}.rank-name small{font-size:10px;margin-top:3px}.watch-heart{font-size:18px;min-width:22px;padding:0;min-height:34px}.ranking-note{font-size:10px!important}.home-sidebar{display:flex;flex-direction:column;gap:0;width:100%;border-top:8px solid var(--bg);padding-top:25px}.home-sidebar .section-card{padding:0 0 24px;border-radius:0;margin-bottom:20px}.home-sidebar .section-card h2{font-size:20px}.favorite-row{padding:15px 0}.favorite-row strong{font-size:15px}.favorite-row>span:last-child{font-size:14px}.favorite-row small{font-size:12px}.home-news p{font-size:14px!important}.market-map{padding:20px 0;border-radius:0;border-top:8px solid var(--bg)}.heatmap{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.heat-tile{padding:12px;min-height:95px}.heat-tile strong{font-size:11px}.heat-tile span{font-size:15px}.option-desk{padding:0;border-radius:0}
 .trade-shortcuts{padding:12px 20px 0;gap:7px;background:var(--panel)}.trade-shortcuts button{font-size:11px;padding:6px 9px;min-height:32px}.trade-shortcuts button[data-jump=order],.trade-shortcuts button[data-jump=chart],.trade-shortcuts>span{display:none}.terminal-grid{display:flex;flex-direction:column;padding:0 0 180px;gap:0}.watch{display:none}.chart-panel{width:100%;border-radius:0;min-height:525px;order:0}.instrument-header{padding:22px 20px 12px;gap:10px}.instrument-title h1{font-size:18px}.instrument-title .icon-button{margin-left:auto}.quote-group strong{font-size:35px}.quote-group>span{font-size:14px}.instrument-stats{padding:0 20px 13px;gap:15px}.instrument-stats>div{font-size:10px}.instrument-stats>div:nth-child(4){display:none}.market-details{margin:0 20px 4px}.market-details summary{font-size:10px;padding:9px}.details-label{font-size:9px}.market-context{font-size:11px}.session-note{font-size:9px}.session-segments>span{font-size:10px}.chart-range-bar{padding:12px 20px 6px}.chart-toolbar{padding:6px 16px}.chart-toolbar button{min-height:32px;font-size:10px}.chart-legend{padding-left:20px;font-size:9px}.canvas-wrap{min-height:260px;margin:0 12px}.chart-footer{padding:7px 20px;font-size:9px}.chart-footer>span:first-child{display:none}.chart-tooltip{font-size:10px}.order-column{display:contents}.order-column>.order-panel{display:none}.book-panel{order:1;width:100%;border-radius:0;border-top:8px solid var(--bg);padding:7px 4px 17px}.book-labels,.book-row{font-size:12px;padding-left:18px;padding-right:18px}.book-row{height:33px}.book-tabs button{font-size:14px;min-height:32px}.book-mid strong{font-size:20px}.book-panel .panel-title .muted{font-size:10px}.book-pressure{font-size:11px}.tape-row{font-size:13px;height:34px}.positions-panel{order:2;width:100%;border-radius:0;border-top:8px solid var(--bg);min-height:230px}.positions-help{font-size:11px;padding:12px 20px 0}.bottom-tabs{padding:0 20px;gap:18px}.bottom-tabs button{font-size:13px;min-height:54px}.bottom-tabs>span{display:none}.positions-panel .table-scroll{padding:0 5px}.news-panel{order:3;width:100%;border-radius:0;border-top:8px solid var(--bg)}.news-item{font-size:13px}.news-item time{font-size:10px}.news-panel .panel-title h2{font-size:18px}
 .mobile-trade-dock{display:flex;position:fixed;bottom:calc(62px + env(safe-area-inset-bottom));left:0;right:0;z-index:29;flex-direction:column;gap:7px;background:var(--surface-float);border-top:1px solid var(--line);padding:9px 20px 12px;backdrop-filter:blur(12px)}.mobile-trade-dock>span{font-size:11px;color:var(--muted)}.mobile-trade-dock>div{display:flex;gap:10px}.mobile-trade-dock button{flex:1;min-height:48px;border-radius:12px;font-size:15px;font-weight:600}#dock-buy{background:var(--up);color:var(--panel)}#dock-sell{background:var(--accent-bg);color:var(--accent)}#dock-sell:disabled{background:var(--soft);color:var(--muted-soft);opacity:1}.sheet-open{overflow:hidden}
 #order-sheet{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:92dvh;border-radius:24px 24px 0 0;padding:10px 22px calc(25px + env(safe-area-inset-bottom));box-shadow:0 -10px 70px var(--shadow)}.sheet-handle{display:block;width:38px;height:4px;border-radius:4px;background:var(--line);margin:0 auto 16px}#order-sheet .modal-head{margin-bottom:18px}#order-sheet .modal-head h2{font-size:22px}#order-sheet .direction-tabs button{min-height:43px;font-size:14px}#order-sheet .holdings-shortcut{font-size:12px;padding:12px}#order-sheet .holdings-shortcut button{font-size:11px}#order-sheet .order-controls label{font-size:12px}#order-sheet select,#order-sheet input{font-size:16px;min-height:42px}#order-sheet .field{font-size:14px}#order-sheet .input-unit input{font-size:27px;padding:15px 13px}#order-sheet .amount-presets button{min-height:38px;font-size:12px}#order-sheet .order-estimates{font-size:13px}#order-sheet .order-guidance{font-size:12px}#order-sheet .submit-order{min-height:52px;font-size:16px}#order-sheet .advanced summary{font-size:12px}#order-sheet .sell-pick strong{font-size:20px}#order-sheet .sell-pick span{font-size:13px}#order-sheet .sell-pick button{min-height:43px}
 .page-heading{flex-wrap:wrap;align-items:start;gap:15px;margin:0 0 23px}.page-heading h1{font-size:27px}.page-heading p{font-size:13px}.page-heading .card-actions{justify-content:flex-start}.cards{grid-template-columns:1fr;gap:9px}.stat-card{background:var(--bg);padding:19px;border-radius:16px}.stat-card>strong{font-size:29px}.two-columns{grid-template-columns:1fr;gap:0}.section-card{padding:23px 0;border-radius:0;margin-bottom:15px}.section-card h3{font-size:20px}.section-card p{font-size:13px}.detail-row{font-size:13px;padding:14px 0}.card-actions input{max-width:145px}.level-number{min-width:65px;width:65px;height:65px;border-radius:18px;font-size:30px}.level-hero{gap:13px}.level-copy h3{font-size:18px}.level-copy p{font-size:11px}.unlock-row{font-size:12px;gap:8px}.mission{gap:8px}.mission strong{font-size:13px}.mission .action-button{padding:9px;font-size:11px}.mission small{font-size:10px}.bot-row,.property-row{font-size:12px}.bot-row small,.property-row small{font-size:10px}.statusbar{flex-wrap:wrap;font-size:9px;padding:0 20px 100px;gap:5px}.statusbar>span:first-child{display:none}body[data-page=trade] .statusbar{display:none}
 dialog:not(#order-sheet){padding:23px 20px;border-radius:20px;width:calc(100vw - 28px);max-height:88dvh}.modal-head h2{font-size:21px}#modal-body input,#modal-body select{font-size:16px;min-height:43px}.fx-wallets{gap:9px}.fx-wallets>div{padding:13px}.fx-wallets strong{font-size:21px}.fx-quote strong{font-size:24px}.global-search-field input{min-height:48px}.search-result{gap:11px}.search-result strong{font-size:14px}.search-result small{font-size:11px}.search-result>span:last-child{font-size:12px}.settings-row{gap:8px}.settings-row button{font-size:11px;padding:9px}#toast{bottom:calc(80px + env(safe-area-inset-bottom));font-size:13px}body[data-page=trade] #toast{bottom:calc(180px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){.accountbar,.topbar{padding-left:16px;padding-right:16px}.rank-name .mini-logo{width:26px;height:26px;font-size:9px}.rank-name{gap:5px}.rank-name strong{font-size:12px}.rank-name small{font-size:9px}.ranking-table td:nth-child(2),.ranking-table td:nth-child(3){font-size:11px}.page-inner{padding-left:16px;padding-right:16px}.discover-sector select{max-width:113px}.market-tabs button{padding:6px 8px}.quote-group strong{font-size:32px}.instrument-header{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Solid controls use readable foregrounds in each theme. */
:root{--on-accent:#fff}:root[data-theme=dark]{--on-accent:#131820}
.brand-icon,.action-button.primary,.submit-order,#dock-buy{color:var(--on-accent)}
#toast{color:#fff}.submit-order.short{color:#fff}
.portfolio-holdings .favorite-row{border-bottom:1px solid var(--line)}
.portfolio-holdings .favorite-row:last-child{border-bottom:0}

/* Executed volume is distinct from waiting order-book quantities. */
.execution-summary{margin:14px 16px 0;padding:13px 0 0;border-top:1px solid var(--line)}.execution-heading,.execution-value,.execution-volumes{display:flex;align-items:center;justify-content:space-between;gap:8px}.execution-heading{font-size:12px;font-weight:600}.execution-heading small{font-size:10px;color:var(--muted);font-weight:400}.execution-value{margin-top:5px}.execution-value strong{font-size:23px;letter-spacing:-.5px}.execution-value span{font-size:11px;color:var(--muted)}.execution-value span.up{color:var(--up)}.execution-value span.down{color:var(--down)}.execution-bar{height:5px;border-radius:3px;background:var(--down);overflow:hidden;margin:10px 0}.execution-bar span{display:block;height:100%;background:var(--up);width:50%;transition:width .1s linear}.execution-volumes{font-size:10px;flex-wrap:wrap;row-gap:4px}.execution-volumes b{font-weight:600}.execution-help{margin-top:9px;font-size:10px;color:var(--muted)}.execution-help summary{cursor:pointer;width:fit-content;padding:3px 0}.execution-help p{margin:6px 0 0;line-height:1.65;color:var(--text-secondary)}
@media(max-width:700px){.execution-summary{margin-left:18px;margin-right:18px;padding-top:15px}.execution-heading{font-size:13px}.execution-heading small,.execution-volumes,.execution-help{font-size:11px}.execution-value strong{font-size:26px}.execution-help summary{min-height:32px;display:flex;align-items:center}.execution-help summary:before{content:'ⓘ';margin-right:5px}}

/* Put market data ahead of introductory copy. */
.home-heading{margin:0 0 14px}.home-heading h1{font-size:19px;line-height:1.3;margin:0}.home-heading>.action-button{min-height:36px;padding:7px 12px;font-size:12px}.home-summary{gap:16px;margin-bottom:20px}.index-card{padding:15px 16px;border-radius:13px;min-height:110px}.index-card>strong{font-size:20px;margin:7px 0 3px}.index-card svg{position:absolute;right:14px;bottom:12px;width:65px;height:24px;margin:0}.index-card>small{display:block;padding-right:66px}.home-account{padding:15px 20px;border-radius:13px}.home-account>strong{font-size:24px}.ranking-note{color:var(--muted);font-size:10px!important}.ranking-note summary{cursor:pointer;min-height:30px;width:fit-content;display:flex;align-items:center}.ranking-note summary:before{content:'ⓘ';margin-right:5px}
@media(max-width:700px){.market-home{padding-top:16px}.home-heading{margin-bottom:12px}.home-heading h1{font-size:18px}.home-heading>.action-button{display:block;background:var(--soft);font-size:11px;min-height:34px}.market-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;margin:0;padding:0;gap:8px}.index-card{min-width:0;min-height:96px;background:var(--soft);padding:12px;border-radius:12px}.index-card>span{font-size:11px}.index-card>strong{font-size:18px;margin:7px 0 3px}.index-card>small{font-size:10px;padding-right:45px}.index-card svg{position:absolute;right:10px;bottom:12px;width:42px;height:20px;margin:0}.home-summary{margin-bottom:24px}.ranking-card .section-heading h2{font-size:18px}}
/* v0.9: a simple purchase flow and direct management of owned positions. */
.home-summary{grid-template-columns:minmax(0,1fr)}.accountbar{padding-top:12px;padding-bottom:12px}body[data-page=discover] .accountbar>div:nth-child(5){display:none}.trade-shortcuts button[data-jump=chart],.trade-shortcuts button[data-jump=order]{display:none}.order-panel #order-form>.order-controls{grid-template-columns:1fr}.order-panel #order-kind{font-size:12px;padding:10px}.order-wallet{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;padding:15px 0 0;color:var(--muted)}.order-wallet strong{color:var(--text-secondary);font-weight:600}.order-wallet+.field{margin-top:14px}.advanced{border-top:1px solid var(--line);margin-top:15px;padding-top:7px}.advanced summary{display:flex;justify-content:space-between;gap:6px;align-items:center;min-height:34px;font-size:12px;color:var(--text-secondary)}.advanced summary:before{content:'+';color:var(--muted)}.advanced[open] summary:before{content:'−'}.advanced summary span{margin-left:auto;font-size:9px;color:var(--muted)}.advanced-trade-controls{display:flex;align-items:end;gap:10px;margin:8px 0}.advanced-trade-controls>label{display:flex;flex-direction:column;gap:5px;flex:1;font-size:11px;color:var(--muted)}.advanced-trade-controls select{width:100%;padding:9px 7px;font-size:12px}.advanced-trade-controls button{flex:1;border-radius:9px;padding:10px 7px;font-size:11px;background:var(--soft);color:var(--muted)}.advanced-trade-controls button.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.estimate-total{font-size:13px}.estimate-total b{font-weight:650}.cost-details{font-size:10px;color:var(--muted)}.cost-details summary{cursor:pointer;min-height:28px;display:flex;align-items:center}.cost-details summary:before{content:'ⓘ';margin-right:5px}.cost-details p{margin:4px 0;color:var(--muted);font-size:10px}.cost-details>div{display:flex;justify-content:space-between;gap:8px;margin-top:5px}.order-guidance:not(.has-issue){background:none;padding:0;margin:12px 0;font-size:10px}.order-guidance.has-issue{margin:12px 0}.asset-holding-card{margin:0 22px 14px;padding:11px 13px;border-radius:10px;background:var(--accent-bg);display:flex;justify-content:space-between;align-items:center;gap:12px}.asset-holding-card>div{display:flex;flex-direction:column;gap:3px}.asset-holding-card span{font-size:10px;color:var(--muted)}.asset-holding-card strong{font-size:14px}.asset-holding-card strong small{font-size:10px;font-weight:400;color:var(--muted);margin-left:3px}.asset-holding-card button{font-size:12px;color:var(--accent);padding:9px 4px;font-weight:600}.holding-list{padding:0 20px 8px}.holding-card{padding:16px 0;border-bottom:1px solid var(--line);min-width:0}.holding-card:last-child{border-bottom:0}.holding-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.holding-name{display:flex;align-items:center;gap:10px;min-width:0;text-align:left;padding:0}.holding-name>span:last-child{min-width:0}.holding-name strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.holding-name small{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.holding-gain{flex-shrink:0;text-align:right}.holding-gain strong{font-size:14px}.holding-gain small{display:block;font-size:11px;margin-top:3px}.holding-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}.holding-bottom>span{color:var(--muted);font-size:10px}.holding-bottom>div{display:flex;gap:6px;flex-shrink:0}.holding-bottom .small-button{min-height:32px;font-size:11px;padding:6px 10px}.holding-sell{background:var(--accent-bg)!important;color:var(--accent)!important}.holding-closed{display:block;font-size:10px;margin-top:8px;color:var(--muted)}.portfolio-holdings .holding-list{padding:0}.search-group h3{font-size:12px;margin:16px 0 4px;color:var(--muted);font-weight:500}.search-all{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.search-all summary{cursor:pointer;padding:10px 0;font-size:12px;color:var(--accent)}
@media(max-width:700px){.accountbar{padding-top:8px;padding-bottom:10px}.asset-holding-card{margin:0 20px 12px;padding:10px 12px}.holding-list{padding:0 15px 10px}.holding-card{padding:16px 5px}.holding-name strong{font-size:14px}.holding-name small{font-size:11px}.holding-gain strong{font-size:14px}.holding-bottom>span{font-size:11px}.holding-bottom .small-button{min-height:38px;padding:8px 12px}.advanced summary{min-height:40px}.advanced summary span{font-size:10px}.order-wallet{font-size:12px}.order-panel #order-kind{min-height:42px;font-size:13px}.advanced-trade-controls button{min-height:40px}.search-all summary{min-height:42px}.portfolio-holdings .holding-card{padding-left:0;padding-right:0}}
@media(max-width:360px){.holding-name{gap:7px}.holding-name .mini-logo{width:28px;height:28px}.holding-name strong{font-size:12px}.holding-gain strong{font-size:12px}.holding-bottom>span{font-size:10px}.holding-bottom .small-button{padding-left:9px;padding-right:9px}}
/* Stock switching stays within reach of the chart on desktop and mobile. */
.trade-shortcuts{display:none!important}.stock-switcher{padding:0 28px 15px}.switcher-main{display:flex;align-items:center;gap:8px;margin-bottom:9px}.switcher-main button{min-height:34px;border-radius:8px;padding:6px 12px;font-size:12px;background:var(--panel);color:var(--text-secondary)}.switcher-main .stock-picker{background:var(--accent-bg);color:var(--accent);font-weight:600}.switcher-main select{min-height:34px;min-width:74px;padding:6px 9px;font-size:12px;background:var(--panel)}.switcher-arrows{display:flex;align-items:center;gap:6px;margin-left:auto}.switcher-arrows button{min-width:34px;font-size:20px;padding:1px 7px}.switcher-arrows span{min-width:40px;text-align:center;color:var(--muted);font-size:10px}.quick-stocks{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;position:relative;padding-bottom:3px}.quick-stock{display:flex;gap:6px;align-items:center;flex-shrink:0;padding:7px 11px;border-radius:9px;font-size:12px;background:var(--panel);color:var(--text-secondary);min-height:34px}.quick-stock>span{font-size:9px;color:var(--muted);font-weight:650}.quick-stock.active{background:var(--accent-bg);color:var(--accent);box-shadow:inset 0 0 0 1px var(--focus);font-weight:650}.quick-stock.active>span{color:var(--accent)}.switcher-empty{font-size:12px;color:var(--muted);padding:7px}.stock-search-filters{display:flex;gap:6px;margin:13px 0}.stock-search-filters button{min-height:35px;padding:7px 12px;border-radius:8px;background:var(--soft);color:var(--muted);font-size:12px}.stock-search-filters button.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.advanced-order-kind .order-controls{grid-template-columns:1fr;margin-top:8px}.advanced-order-kind .limit-field{margin-top:10px}
@media(max-width:950px){.stock-switcher{padding-left:20px;padding-right:20px}}
@media(max-width:700px){.stock-switcher{padding:12px 20px;background:var(--panel)}.switcher-main{gap:6px;margin-bottom:8px}.switcher-main button{font-size:11px;padding:6px 9px;min-height:36px}.switcher-main .switcher-back{padding-left:0;background:none}.switcher-main select{min-width:62px;padding:6px;font-size:11px}.switcher-arrows{gap:3px}.switcher-arrows button{font-size:20px;min-width:28px;padding:2px 5px}.switcher-arrows span{min-width:30px;font-size:9px}.quick-stocks{margin-right:-20px;padding-right:20px;scrollbar-width:none}.quick-stock{font-size:11px;min-height:35px;padding:7px 10px}.stock-search-filters button{padding:7px 10px}}
@media(max-width:360px){.stock-switcher{padding-left:16px;padding-right:16px}.switcher-main{gap:4px}.switcher-main .stock-picker{padding-left:7px;padding-right:7px}.switcher-main select{min-width:57px}.switcher-arrows button{min-width:24px}.switcher-arrows span{min-width:28px}}
/* Principal stays beside the value and the period uses real calendar weeks. */
.portfolio-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.holding-capital{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-top:11px;font-size:11px;color:var(--muted)}.holding-capital b{color:var(--text-secondary);font-weight:600;margin-left:4px}.asset-holding-values{display:flex;flex-wrap:wrap;align-items:center;gap:5px 13px}.asset-holding-values>span{white-space:nowrap}.asset-holding-values b{color:var(--text-secondary);font-size:12px;font-weight:600}.asset-holding-values strong{white-space:nowrap}.principal-note{font-size:10px;color:var(--muted)}.principal-note summary{cursor:pointer;padding:5px 0}.principal-note p{font-size:11px!important;margin-bottom:8px!important}.weekly-calendar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.week-cell{border:1px solid var(--line);background:var(--panel2);border-radius:11px;padding:13px;min-width:0}.week-cell.current{border-color:var(--focus);background:var(--accent-bg)}.week-cell>div{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:12px;font-weight:600}.week-cell>div small{font-size:9px;color:var(--accent);font-weight:400}.week-cell>small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.week-cell>strong{display:block;font-size:17px;margin-top:12px;overflow-wrap:anywhere}.weekly-navigation{display:flex;align-items:center;gap:12px}.weekly-navigation button{min-height:32px}.weekly-profit .weekly-note{font-size:10px;margin:12px 0 0}.weekly-legacy{font-size:11px;color:var(--muted);margin-top:12px}.weekly-legacy summary{cursor:pointer;min-height:30px}.weekly-legacy p{font-size:11px!important}
@media(max-width:700px){.portfolio-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:20px}.portfolio-summary .stat-card{padding:14px 12px}.portfolio-summary .stat-card>strong{font-size:clamp(16px,4.5vw,23px)}.portfolio-summary .stat-card>span{font-size:11px}.portfolio-summary .stat-card>small{font-size:9px}.weekly-calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.week-cell{padding:12px}.week-cell>strong{font-size:16px}.weekly-navigation{gap:9px}.weekly-navigation button{font-size:11px}.holding-capital{font-size:11px}.asset-holding-values{gap:4px 9px}.asset-holding-values>span{font-size:10px}.asset-holding-values b{font-size:11px}.asset-holding-card>button{flex-shrink:0}.asset-holding-card strong{font-size:13px}}
.profit-period{display:flex;gap:3px;background:var(--soft);padding:3px;border-radius:9px}.profit-period button{padding:5px 11px;min-height:30px;font-size:11px;color:var(--muted);border-radius:6px}.profit-period button.active{background:var(--panel);color:var(--text);font-weight:650}.calendar-month-nav{display:flex;justify-content:center;align-items:center;gap:16px}.calendar-month-nav button{min-height:32px;min-width:32px;border-radius:8px;background:var(--soft);font-size:22px}.calendar-month-nav strong{font-size:15px}.real-calendar-weekdays,.real-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.real-calendar-weekdays{margin:15px 0 8px;color:var(--muted);font-size:11px;text-align:center}.calendar-day{display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;border:1px solid var(--line);background:var(--panel2);border-radius:9px;padding:10px;min-height:74px;min-width:0}.calendar-day>span{font-size:11px;color:var(--muted)}.calendar-day strong{font-size:12px;white-space:nowrap}.calendar-day.today>span{color:var(--accent);font-weight:700}.calendar-day.selected{border-color:var(--focus);background:var(--accent-bg)}.calendar-day:disabled{opacity:.65;cursor:default}.calendar-day.outside{background:none;border-color:transparent;opacity:.25}.calendar-selection{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;padding:13px 0;border-top:1px solid var(--line);font-size:12px}.calendar-selection>span{color:var(--muted)}.calendar-selection strong{font-size:18px}.weekly-navigation{justify-content:flex-end;margin-bottom:8px}
@media(max-width:700px){.real-calendar-weekdays,.real-calendar-days{gap:4px}.calendar-day{min-height:62px;padding:7px 4px;border-radius:7px;gap:10px}.calendar-day>span{font-size:10px}.calendar-day strong{font-size:clamp(8px,2.3vw,11px);letter-spacing:-.3px}.calendar-selection{font-size:11px}.calendar-selection strong{font-size:16px}.profit-period button{min-height:32px;padding:5px 10px}}

.calendar-day strong{max-width:100%;overflow:hidden;text-overflow:ellipsis}

/* Account overview: keep amounts within their own grid and put trading first. */
.portfolio-page{max-width:1240px;padding-top:18px}
.portfolio-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.portfolio-heading h1{font-size:24px;letter-spacing:-.7px}
.portfolio-heading .action-button{min-height:42px}
.portfolio-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}
.portfolio-summary .stat-card{min-width:0;padding:20px 22px;border-radius:16px}
.portfolio-summary .portfolio-total{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;padding:26px 28px;background:var(--panel)}
.portfolio-total-main,.portfolio-wallets{min-width:0}
.portfolio-total-main>span{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}
.portfolio-total-main>span small{font-size:10px;color:var(--muted);background:var(--soft);padding:3px 6px;border-radius:5px}
.portfolio-total-main>strong{display:block;font-size:clamp(28px,3vw,38px);line-height:1.25;letter-spacing:-1.1px;margin:9px 0 12px;white-space:nowrap}
.reset-advanced{width:100%;min-height:36px;margin:8px 0;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:11px}.reset-advanced:disabled{opacity:.4;cursor:default}.advanced summary span{white-space:normal;text-align:right;line-height:1.5}input[aria-invalid=true]:not(:focus){border-color:var(--up)}button:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
@media(max-width:700px){.advanced-trade-controls button,.reset-advanced,#order-sheet .amount-presets button{min-height:44px}.advanced-trade-controls button{line-height:1.5}.advanced summary{min-height:44px}#order-sheet .modal-head{position:sticky;top:0;z-index:5;background:var(--panel);margin:0 -22px 14px;padding:12px 22px;border-bottom:1px solid var(--line)}#order-sheet .sheet-handle{width:100%;height:20px;margin:0 auto 2px;background:none;touch-action:none;cursor:grab}#order-sheet .sheet-handle::before{content:'';display:block;width:38px;height:4px;margin:4px auto;border-radius:4px;background:var(--line)}}
.portfolio-change{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;font-size:12px}
.portfolio-change>span{color:var(--muted)}
.portfolio-change strong{font-size:13px;white-space:nowrap}
.portfolio-change strong small{font-size:12px;font-weight:500}
.portfolio-total-help{margin-top:10px;font-size:11px;color:var(--muted);max-width:420px}
.portfolio-total-help summary{cursor:pointer;width:fit-content;padding:3px 0}
.portfolio-total-help p{font-size:11px;margin-top:5px;line-height:1.7}
.portfolio-wallets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:18px 20px;border-left:1px solid var(--line);padding-left:28px}
.portfolio-wallets>div{min-width:0}
.portfolio-wallets span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.portfolio-wallets strong{font-size:20px;letter-spacing:-.5px;white-space:nowrap}
.portfolio-wallets button{grid-column:1/-1;width:fit-content;background:var(--accent-bg);color:var(--accent);min-height:38px}
.portfolio-summary .portfolio-metric>strong{font-size:24px;line-height:1.3;letter-spacing:-.6px;white-space:nowrap;margin:8px 0 5px}
.portfolio-summary .portfolio-metric>small{font-size:11px;line-height:1.6}
.portfolio-page>.section-card,.portfolio-page>.two-columns>.section-card{border-radius:16px;padding:22px 24px}
.portfolio-page .section-heading{margin-bottom:12px}
.portfolio-page .portfolio-holdings .empty{padding:26px 0}
.portfolio-page .detail-row strong{font-size:13px;white-space:nowrap}
.portfolio-page .detail-row{flex-wrap:wrap}
.portfolio-page .large-chart{height:140px}
.portfolio-page .weekly-profit{margin-top:4px}
.portfolio-page .weekly-profit>.section-heading h3{font-size:18px}
body[data-page=portfolio] .accountbar{display:none}
@media(max-width:1050px) and (min-width:701px){
 .portfolio-summary .portfolio-total{grid-template-columns:minmax(0,1fr);gap:20px}
 .portfolio-wallets{border-left:0;border-top:1px solid var(--line);padding:18px 0 0;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:center;gap:16px}
 .portfolio-wallets button{grid-column:auto}
 .portfolio-summary .portfolio-metric>strong{font-size:21px}
}
@media(max-width:700px){
 .portfolio-page{padding-top:8px}
 .portfolio-heading{margin-bottom:16px}
 .portfolio-heading h1{font-size:23px}
 .portfolio-heading .action-button{font-size:12px;min-height:42px;padding:10px 13px}
 .portfolio-summary{grid-template-columns:minmax(0,1fr);gap:0;background:var(--panel);border-radius:18px;overflow:hidden;margin-bottom:16px}
 .portfolio-summary .portfolio-total{grid-column:auto;grid-template-columns:minmax(0,1fr);padding:20px 20px 16px;gap:12px;border-radius:0}
 .portfolio-total-main>strong{font-size:clamp(26px,7.5vw,34px)}
 .portfolio-change{font-size:11px;gap:5px 8px}
 .portfolio-change strong,.portfolio-change strong small{font-size:12px}
 .portfolio-wallets{border-left:0;border-top:1px solid var(--line);padding:14px 0 0;gap:10px}
 .portfolio-wallets strong{font-size:clamp(16px,4.3vw,20px)}
 .portfolio-wallets span{font-size:11px}
 .portfolio-wallets button{width:100%;min-height:42px}
 .portfolio-summary .portfolio-metric{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;border-radius:0;background:var(--panel);padding:11px 20px;border-top:1px solid var(--line)}
 .portfolio-summary .portfolio-metric>span{font-size:12px}
 .portfolio-summary .portfolio-metric>strong{font-size:18px;margin:0;letter-spacing:-.3px;text-align:right}
 .portfolio-summary .portfolio-metric>small{grid-column:1/-1;font-size:10px;margin-top:3px}
 .portfolio-page>.section-card,.portfolio-page>.two-columns>.section-card{padding:20px 16px;border-radius:16px;background:var(--panel);margin-bottom:16px}
 .portfolio-page .section-card h3{font-size:17px}
 .portfolio-page .weekly-profit>.section-heading{gap:8px}
 .portfolio-page .weekly-profit>.section-heading h3{font-size:17px}
 .portfolio-page .calendar-selection{align-items:flex-start;flex-wrap:wrap}
 .portfolio-page .calendar-selection strong{font-size:15px}
 .portfolio-page .portfolio-holdings .empty{padding:22px 0}
 .portfolio-page .large-chart{height:120px}
 .portfolio-page .detail-row{font-size:12px}
}
/* Unlocks remain visible, with an explicit reason and native disabled controls. */
.level-lock{display:inline-flex;align-items:center;gap:4px;margin-left:7px;padding:3px 6px;border-radius:6px;background:var(--soft);color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap;vertical-align:middle}
button[data-select]:disabled,button[data-news-asset]:disabled{cursor:not-allowed;opacity:.65}
button[data-select]:disabled:hover,button[data-news-asset]:disabled:hover{background:transparent;transform:none}
button[data-lock-label]::after{content:attr(data-lock-label);display:block;margin-top:5px;font-size:11px;color:var(--muted)}
.bankruptcy-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.bankruptcy-steps>div{display:flex;flex-direction:column;gap:8px;padding:15px 12px;border:1px solid var(--line);border-radius:14px;background:var(--soft);min-width:0}
.bankruptcy-steps small,.bankruptcy-steps span{font-size:12px;color:var(--muted)}
.bankruptcy-steps strong{font-size:15px}
.bankruptcy-steps .next{border-color:var(--accent)}
.bankruptcy-steps .used{opacity:.5}
.bankruptcy-review{padding:12px 18px;border-radius:14px;background:var(--soft);margin:18px 0}
.bankruptcy-review>div{display:flex;justify-content:space-between;gap:18px;padding:11px 0}
.bankruptcy-review span{color:var(--muted)}
.bankruptcy-warning{line-height:1.7;color:var(--text)}
.bankruptcy-confirm-actions{margin-top:22px;justify-content:flex-end}
.recovery-balance{display:block;font-size:30px;letter-spacing:-1px;margin:16px 0 8px;font-variant-numeric:tabular-nums}
.recovery-card .detail-row{gap:14px;flex-wrap:wrap;margin-top:10px}
.recovery-card .detail-row strong{font-size:13px}
.recovery-card .card-actions{margin-top:18px}
.recovery-card.overdue{border:1px solid var(--down)}
@media(max-width:700px){.bankruptcy-steps{gap:6px}.bankruptcy-steps>div{padding:12px 8px}.bankruptcy-steps strong{font-size:13px}.bankruptcy-steps span{font-size:11px}.bankruptcy-review{padding:10px 12px}.bankruptcy-review>div{gap:10px;font-size:13px}.bankruptcy-confirm-actions>button{flex:1;min-width:0;padding:13px 9px}.index-card .level-lock{font-size:10px;padding:2px 4px}}
.portfolio-debt-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;font-size:12px;color:var(--muted)}
.portfolio-debt-line button{white-space:nowrap;font-size:12px}

/* Progression and market liquidity */
.unlock-row{display:grid;grid-template-columns:56px minmax(0,1fr) 32px;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}
.unlock-row .pill{background:var(--soft);color:var(--muted);text-align:center;font-size:11px;padding:6px 8px}
.unlock-row.unlocked .pill{background:var(--accent-bg);color:var(--accent)}
.unlock-row strong{font-size:13px;font-weight:600;line-height:1.5;display:block;color:var(--text)}
.unlock-row small{font-size:11px;line-height:1.5;color:var(--muted);display:block;margin-top:4px}
.unlock-state{color:var(--muted);font-size:11px;text-align:right}.unlocked .unlock-state{color:var(--accent)}
.unlock-summary{padding:8px 0 15px}.unlock-summary>strong{font-size:18px;margin-left:12px}.unlock-summary p{margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.6}
.search-unlock-hint{display:flex;align-items:center;justify-content:space-between;margin:12px 0;font-size:11px;color:var(--muted)}
.discover-sector .unlock-help{margin-left:auto;white-space:nowrap;font-size:11px}.market-context .liquidity-label{color:var(--muted)}
.market-context .text-button{font-size:11px}.book-row,.tape-row{font-variant-numeric:tabular-nums;font-size:11px}.book-row>span,.tape-row>span{white-space:nowrap}
@media(max-width:700px){.unlock-row{grid-template-columns:51px minmax(0,1fr) 25px;gap:9px}.unlock-row strong{font-size:12px}.unlock-row small{font-size:10px}.unlock-summary>strong{font-size:16px}.discover-sector .unlock-help{font-size:10px}.book-row,.tape-row{font-size:11px}}

.rank-name .level-lock,.watch-name .level-lock,.search-result .level-lock{display:inline-flex;width:max-content;font-size:9px;margin-left:4px;margin-top:0;vertical-align:middle}.rank-name[disabled],.search-result[disabled]{opacity:.7}
/* v0.22: direction and every leverage step remain visible beside the order. */
.trade-choices{padding:14px 0 0}.choice-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 8px;font-size:12px;color:var(--text-secondary)}.choice-heading>span:last-child:not(:first-child){color:var(--muted);font-size:10px}.choice-heading strong{color:var(--accent)}.investment-direction,.order-kind-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.investment-direction button,.order-kind-buttons button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;border-radius:10px;background:var(--soft);border:1px solid transparent;padding:9px 5px;color:var(--text-secondary)}.investment-direction b,.order-kind-buttons b{font-size:12px}.investment-direction small,.order-kind-buttons small{font-size:10px;color:var(--muted)}.investment-direction #long-tab.active{background:var(--up-bg);color:var(--up);border-color:var(--up)}.investment-direction #short-tab.active{background:var(--down-bg);color:var(--down);border-color:var(--down)}.investment-direction .active small{color:inherit}.investment-direction button:disabled{opacity:.55;cursor:not-allowed}.order-kind-buttons button.active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.order-kind-buttons .active small{color:var(--accent)}.leverage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.leverage-grid button{min-height:44px;border:1px solid transparent;border-radius:8px;padding:5px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:var(--soft);color:var(--text-secondary)}.leverage-grid b{font-size:13px}.leverage-grid small{font-size:8px;min-height:10px;color:var(--muted);white-space:nowrap}.leverage-grid button.active{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.leverage-grid button.active small{color:var(--accent)}.leverage-grid button:disabled{opacity:.48;cursor:not-allowed}.leverage-impact{margin:8px 0 0;font-size:10px;color:var(--muted);line-height:1.65}.trade-choices .limit-field{margin-top:12px}.order-panel .advanced summary{font-size:12px}.order-panel .advanced summary span{font-size:10px}.order-panel .order-estimates .liquidation-line{color:var(--down);padding-top:7px}.order-panel .order-estimates .cost-line{font-size:10px;color:var(--muted)}.order-submit-area{position:sticky;bottom:0;background:var(--panel);padding:5px 0 1px;z-index:2}.order-panel #reset-advanced{margin:12px 0 8px}.order-panel .order-controls{gap:8px}.order-panel .order-controls input{min-width:0;width:100%}
@media(max-width:700px){#order-sheet .trade-choices{padding-top:0}.choice-heading{font-size:13px;margin-top:14px}.choice-heading>span:last-child:not(:first-child){font-size:11px}.investment-direction b,.order-kind-buttons b{font-size:14px}.investment-direction small,.order-kind-buttons small{font-size:11px}.investment-direction button,.order-kind-buttons button{min-height:56px}.leverage-grid{gap:6px}.leverage-grid button{min-height:48px}.leverage-grid b{font-size:15px}.leverage-grid small{font-size:10px;min-height:12px}.leverage-impact{font-size:11px}.order-submit-area{padding:8px 0 0;bottom:0}#order-sheet .order-controls input{min-height:44px}.order-panel .order-estimates .cost-line{font-size:12px}}
/* Keep the order action in sight while scrolling its settings. */
@media(min-width:701px){.order-panel{height:clamp(450px,calc(100dvh - 260px),760px);display:flex;flex-direction:column;min-height:0}.order-panel>.panel-title,.order-panel>.direction-tabs,.order-panel>.holdings-shortcut,.order-panel>.fx-order-hint{flex-shrink:0}.order-panel #sell-picks{overflow:auto;min-height:0}}
.order-panel #order-form{display:flex;flex-direction:column;min-height:0;flex:1;padding:0 16px 12px}.order-fields{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;flex:1;padding-right:4px}.order-submit-area{position:static;flex-shrink:0;padding:8px 0 0;border-top:1px solid var(--line)}.order-panel .order-submit-area #order-estimates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;padding:0}.order-panel .order-submit-area #order-estimates>div{display:flex;flex-direction:column;gap:2px;min-width:0;padding:0}.order-panel .order-submit-area #order-estimates span{font-size:10px}.order-panel .order-submit-area #order-estimates b{font-size:12px;overflow-wrap:anywhere}.order-panel .order-submit-area #order-guidance:not(.has-issue),.order-panel .order-submit-area #order-note{display:none}.order-panel .order-submit-area #submit-order{margin-top:9px}.order-panel .trade-choices>.choice-heading:first-child{margin-top:8px}.order-panel #sell-picks{flex:1}
@media(max-width:700px){#order-sheet[open]{display:flex;flex-direction:column;height:92dvh;overflow:hidden}#sheet-content{display:flex;flex-direction:column;flex:1;min-height:0}#order-sheet #order-panel{display:flex;flex-direction:column;flex:1;min-height:0;padding:0}#order-sheet #order-panel>.panel-title{display:none}#order-sheet #order-panel>.direction-tabs,#order-sheet #order-panel>.holdings-shortcut,#order-sheet #order-panel>.fx-order-hint{flex-shrink:0}#order-sheet #order-form{padding:0;min-height:0;flex:1}#order-sheet .order-fields{padding:0 5px 12px 0}#order-sheet .order-submit-area{padding:10px 0 0}#order-sheet .order-submit-area #order-estimates span{font-size:11px}#order-sheet .order-submit-area #order-estimates b{font-size:13px}#order-sheet #sell-picks{overflow:auto;min-height:0}.order-panel .trade-choices>.choice-heading:first-child{margin-top:8px}#order-sheet .modal-head{flex-shrink:0}#order-sheet .sheet-handle{flex-shrink:0}}
.order-panel .trade-choices>.choice-heading:first-child{display:none}.order-panel .trade-choices{padding-top:4px}.order-submit-area .order-wallet{padding:0;font-size:10px}.order-submit-area>.field{margin:7px 0 0;font-size:11px}.order-submit-area .input-unit input{font-size:21px;padding:9px 11px;min-height:42px}.order-submit-area .amount-presets{margin:6px 0 8px}.order-submit-area .amount-presets button{min-height:28px;padding:5px 0}.order-panel .order-submit-area #order-estimates{gap:4px 10px}.order-panel .order-submit-area #order-estimates .cost-line span{display:none}.order-panel .order-submit-area #order-estimates .cost-line b::before{content:'수수료 ';font-weight:400;font-size:10px}.order-panel .order-submit-area #order-estimates .cost-line b{font-size:10px}
@media(min-width:701px){.stock-switcher{display:flex;gap:14px;align-items:center}.switcher-main{margin:0;flex-shrink:0;gap:6px}.quick-stocks{flex:1;min-width:0;padding-bottom:0}.switcher-arrows{margin-left:2px}.order-panel{height:clamp(490px,calc(100dvh - 210px),790px)}}
@media(max-width:700px){#order-sheet .order-submit-area .input-unit input{font-size:23px;padding:10px 12px;min-height:46px}#order-sheet .order-submit-area .amount-presets{margin-bottom:9px}#order-sheet .order-submit-area .amount-presets button{min-height:40px}#order-sheet .order-submit-area .order-wallet{font-size:11px}#order-sheet .order-submit-area>.field{font-size:12px}#order-sheet .order-submit-area #order-estimates .cost-line b,#order-sheet .order-submit-area #order-estimates .cost-line b::before{font-size:11px}}
@media(min-width:701px){.order-panel .investment-direction button{min-height:42px;padding:6px 4px;gap:2px}.order-panel .investment-direction small{font-size:9px}.order-panel .choice-heading{margin:7px 0 5px;font-size:11px}.order-panel .leverage-grid button{min-height:34px;padding:3px 2px;gap:1px}.order-panel .leverage-grid small{font-size:9px}.order-panel .leverage-impact{font-size:9px;margin-top:5px;line-height:1.5}.order-panel .order-submit-area .order-wallet{display:none}.order-panel .order-submit-area>.field{margin-top:0;font-size:11px}.order-panel .order-submit-area .input-unit{margin-top:4px}.order-panel .order-submit-area .input-unit input{font-size:18px;min-height:38px;height:38px;padding:8px 10px}.order-panel .order-submit-area .amount-presets{margin:4px 0 6px}.order-panel .order-submit-area .amount-presets button{min-height:24px;padding:4px 0}.order-panel .order-submit-area #order-estimates span{font-size:9px;line-height:12px}.order-panel .order-submit-area #order-estimates b{font-size:11px;line-height:14px}.order-panel .order-submit-area #order-estimates .cost-line b{font-size:9px}.order-panel .order-submit-area #submit-order{min-height:40px;padding:11px;margin-top:7px}}
.order-panel .order-submit-area #order-estimates .cost-line{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}.order-panel .order-submit-area #order-estimates .cost-line span{display:block}.order-panel .order-submit-area #order-estimates .cost-line b::before{content:none}
.entry-legend{display:flex;flex-wrap:wrap;gap:7px;padding:0 22px 8px}.entry-chip{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:11px;color:var(--text-secondary);min-height:30px}.entry-chip i{width:13px;border-top:2px dashed var(--accent)}.entry-chip.short i{border-color:var(--warning)}.entry-chip b{color:var(--text);font-weight:600}.entry-chip small{font-size:9px;color:var(--muted)}.entry-chip:hover{background:var(--soft)}
@media(max-width:700px){.entry-legend{padding:0 16px 8px}.entry-chip{min-height:34px;flex-wrap:wrap}.entry-chip small{display:none}.chart-toolbar{flex-wrap:wrap;row-gap:6px}}
.order-settings-jump{flex-shrink:0;padding:6px 8px;min-height:30px;border-radius:7px;background:var(--soft);color:var(--accent);font-size:10px}.order-panel .panel-title{gap:8px;flex-wrap:wrap}.order-panel .panel-title h2{flex:1;min-width:0}.order-panel .panel-title .live-text{display:none}.direction-tabs #buy-tab.active{color:var(--accent);background:var(--accent-bg)}
@media(max-width:700px){#order-sheet .modal-head h2{flex:1;min-width:0;font-size:20px}#order-sheet .modal-head{gap:10px}.order-settings-jump{font-size:12px;min-height:40px;padding:8px 10px}}

.loan-card .recovery-balance{display:block;margin:8px 0;font-variant-numeric:tabular-nums}.loan-card.overdue{outline:1px solid var(--down)}.loan-card .principal-note{margin-top:16px}.loan-review{background:var(--soft);padding:0 14px;border-radius:12px;margin:14px 0}.loan-review .detail-row{align-items:flex-start}.loan-review strong{text-align:right;overflow-wrap:anywhere}.loan-review .detail-row:last-child strong{font-size:12px}#modal-form[data-operation="borrow"]>button{width:100%;min-height:44px}

/* Chart gestures stay inside the plot; vertical scrolling remains available. */
#chart{touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:crosshair}.chart-navigation{display:flex;align-items:center;gap:6px;padding:8px 20px 0}.chart-navigation button{min-width:36px;min-height:36px;border-radius:8px;background:var(--soft);color:var(--text-secondary);font-size:14px}.chart-navigation #chart-live{font-size:11px;padding:0 10px;color:var(--accent)}.chart-navigation #chart-expand{margin-left:auto;padding:0 10px;font-size:11px}.chart-footer #chart-time{font-variant-numeric:tabular-nums;text-align:right}body.chart-expanded{overflow:hidden}dialog#chart-fullscreen{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--bg);overflow:hidden}#chart-fullscreen-content{height:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#chart-fullscreen .chart-panel{height:100%;min-height:0;border-radius:0;overflow:hidden}#chart-fullscreen .canvas-wrap{min-height:100px}#chart-fullscreen #chart{touch-action:none}#chart-fullscreen-close{position:absolute;right:16px;top:calc(env(safe-area-inset-top) + 12px);z-index:8;min-height:40px;padding:0 12px;border-radius:9px;background:var(--soft);color:var(--text-secondary);font-size:12px}#chart-fullscreen .instrument-header{padding-right:90px}#chart-fullscreen .instrument-stats,#chart-fullscreen .market-details,#chart-fullscreen .asset-holding-card,#chart-fullscreen #chart-expand{display:none}
@media(max-width:700px){.chart-footer #chart-gesture-hint{display:block}.chart-navigation{padding:8px 12px 0}.chart-navigation button{min-width:44px;min-height:44px}.chart-footer{flex-direction:column;padding:8px 14px;gap:4px}.chart-footer #chart-time{text-align:left;line-height:1.5}#chart-fullscreen .quote-group strong{font-size:24px}#chart-fullscreen .quote-group{flex-basis:auto}#chart-fullscreen .instrument-header{padding-bottom:7px}#chart-fullscreen .chart-range-bar{padding-top:7px}#chart-fullscreen .chart-toolbar{padding-top:5px;padding-bottom:5px}#chart-fullscreen .chart-legend{padding-bottom:3px}#chart-fullscreen .entry-legend{padding-bottom:4px}#chart-fullscreen .chart-footer{padding-bottom:4px}}
/* News is readable at the point of use, without blocking order entry. */
.home-news{margin:0 0 20px}.home-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}.home-news .news-story{border-bottom:0;padding:4px 0}.home-news .news-story+.news-story{border-left:1px solid var(--line);padding-left:24px}.news-headline{display:block;width:100%;text-align:left;font-size:15px;font-weight:650;line-height:1.55;padding:8px 0;word-break:keep-all;overflow-wrap:anywhere}.news-headline:hover{text-decoration:underline;text-underline-offset:4px}.news-story .news-summary{font-size:12px;line-height:1.7;color:var(--text-secondary);margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-story-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.news-story time{white-space:nowrap}.news-story-actions .text-button{padding:5px 0}.instrument-news{margin:0 0 18px;padding:12px 16px;background:var(--accent-bg);border:1px solid var(--focus);border-radius:12px}.news-alert-heading{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--text-secondary)}.news-alert-heading>span{color:var(--accent);font-weight:650}.news-alert-heading>button{margin-left:auto;min-width:32px;min-height:32px;font-size:22px;line-height:1}.news-alert-open{display:flex;gap:16px;align-items:center;width:100%;padding:2px 0 4px;text-align:left}.news-alert-open strong{font-size:14px;line-height:1.6;flex:1;word-break:keep-all;overflow-wrap:anywhere}.news-alert-open>span{font-size:11px;white-space:nowrap;color:var(--accent)}.news-detail{font-size:14px;line-height:1.85}.news-detail-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;gap:12px}.news-detail h2{font-size:23px;line-height:1.5;margin:16px 0;word-break:keep-all;overflow-wrap:anywhere}.news-detail h3{font-size:15px;margin:24px 0 8px}.news-detail p{margin-bottom:16px;color:var(--text-secondary)}.news-facts{margin:20px 0;padding:16px;background:var(--soft);border-radius:12px;display:grid;gap:10px}.news-facts>div{display:flex;justify-content:space-between;gap:12px}.news-facts dt{color:var(--muted);font-size:12px}.news-facts dd{margin:0;font-weight:650}.price-limit-info{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;font-size:11px;color:var(--muted);margin:4px 0 10px}.price-limit-info b{font-weight:550;color:var(--text-secondary)}.price-limit-info>strong{color:var(--warning)}.price-limit-info .text-button{font-size:11px;padding:4px 0}.client-update{position:sticky;top:0;z-index:210;display:flex;justify-content:center;align-items:center;gap:16px;padding:10px 16px;background:var(--accent-bg);color:var(--text);font-size:13px}.client-update button{color:var(--accent);font-weight:650;padding:8px}
@media(max-width:700px){.home-news{padding:16px;margin-bottom:16px}.home-news-grid{grid-template-columns:minmax(0,1fr)}.home-news .news-story+.news-story{border-left:0;border-top:1px solid var(--line);padding:12px 0 0;margin-top:10px}.home-news .news-story:not(:first-child) .news-summary{display:none}.home-news .news-story:not(:first-child) .news-story-actions{display:none}.home-news .news-story:not(:first-child) .news-headline{font-size:13px}.home-news .news-story:first-child .news-headline{font-size:16px}.instrument-news{margin-bottom:14px;padding:10px 12px}.news-alert-open{display:block}.news-alert-open>span{display:block;margin-top:6px}.news-detail h2{font-size:20px}.price-limit-info{font-size:10px;gap:4px 9px}}
.chart-panel>.price-limit-info{padding:0 24px;font-size:12px}.chart-panel>.instrument-news{margin:16px 20px 0}.price-limit-info .text-button{font-size:12px}@media(max-width:700px){.chart-panel>.price-limit-info{padding:0 20px;font-size:11px}.price-limit-info .text-button{font-size:11px}.chart-panel>.instrument-news{margin:10px 12px 0}}
.market-home .home-news{padding:20px 24px}@media(max-width:700px){.market-home .home-news{padding:16px}}

/* Compact shared-market status on desktop and mobile. */
.market-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;padding:0 28px;background:var(--panel);border-bottom:1px solid var(--soft);font-size:12px;color:var(--muted)}.game-clock{display:flex;align-items:center;gap:9px}.game-clock time{font-variant-numeric:tabular-nums;letter-spacing:.3px;color:var(--text-secondary);font-weight:600;min-width:66px}.market-statusbar button{display:flex;align-items:center;gap:7px;padding:8px 0 8px 12px;min-height:36px;color:var(--text-secondary);font-size:12px}.market-statusbar button.is-offline .live-dot{background:var(--muted)}.market-statusbar button:disabled{cursor:default;color:var(--muted)}#offline-market-label{font-size:11px}#online-presence-list{list-style:none;padding:0;margin:16px 0 0;max-height:50dvh;overflow:auto}#online-presence-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 2px;border-bottom:1px solid var(--line)}#online-presence-list li span{overflow-wrap:anywhere}#online-presence-list small{color:var(--muted);white-space:nowrap}#online-presence-total{color:var(--muted);font-size:13px}@media(max-width:700px){.market-statusbar{padding:0 20px;min-height:36px;font-size:11px}.market-statusbar button{font-size:11px}.game-clock time{font-size:12px}}

.chart-performance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px 14px}.chart-performance>div>span{display:block;color:var(--muted);font-size:11px}.chart-performance strong{display:block;font-size:23px;letter-spacing:-.4px;margin-top:4px;font-variant-numeric:tabular-nums}.chart-performance strong small{font-size:12px;font-weight:500;margin-left:5px}.chart-performance-note{text-align:right;line-height:1.6}.chart-performance-note small{font-size:10px;color:var(--muted)}.chart-style-picker{display:flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:9px}.chart-toolbar{flex-wrap:wrap;overflow:visible;white-space:normal}.chart-toolbar .fit-button{font-size:11px!important;min-width:36px}#timeframes{display:flex;gap:3px}#timeframes[hidden]{display:none}.chart-style-picker button{min-width:37px}.chart-view-mode{color:var(--muted);font-size:11px;margin-right:auto}.chart-view-mode.historical{color:var(--accent);font-weight:600}.chart-navigation #chart-live{background:var(--accent-bg);font-weight:600}.chart-navigation #chart-expand{margin-left:0}.chart-navigation{flex-wrap:wrap}#chart:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}@media(max-width:700px){.chart-performance{padding:10px 20px 12px;align-items:flex-start;flex-wrap:wrap}.chart-performance strong{font-size:22px}.chart-performance-note{margin-left:auto}.chart-performance-note>span{max-width:155px;font-size:10px!important}.chart-toolbar{gap:6px}.chart-toolbar button{padding:6px 9px;min-height:36px;font-size:11px}.chart-toolbar #timeframes{width:100%;border-bottom:1px solid var(--soft);padding-bottom:8px}.chart-toolbar .toolbar-divider{display:none}.chart-legend{gap:7px 12px;padding-top:8px;font-size:10px}.chart-view-mode{font-size:10px}.chart-navigation #chart-live{padding:0 7px}.chart-navigation #chart-expand{padding:0 8px}#chart-fullscreen .chart-performance{padding-top:5px;padding-bottom:5px}#chart-fullscreen .chart-performance strong{font-size:18px}}
.market-statusbar{position:sticky;top:72px;z-index:24}html{scroll-padding-top:120px}@media(min-width:1201px){.watch{top:126px;max-height:calc(100dvh - 148px)}}@media(max-width:700px){.market-statusbar{top:60px}html{scroll-padding-top:104px}}

.exit-mode{display:flex;gap:6px;margin:12px 0}.exit-mode button{flex:1;min-height:38px;border-radius:10px;background:var(--bg);color:var(--muted);border:1px solid var(--line)}.exit-mode button.active{color:var(--accent);background:var(--accent-bg);border-color:var(--accent)}.exit-preview{font-size:12px;line-height:1.65;color:var(--muted);white-space:pre-line;margin:8px 0 2px;overflow-wrap:anywhere}

.holding-exits{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0;padding-top:8px;border-top:1px solid var(--line)}.holding-exits summary{cursor:pointer}.holding-exits div{padding-top:5px}

.test-notice{display:flex;align-items:center;gap:10px;padding:10px 28px;background:var(--accent-bg);color:var(--muted);font-size:12px;line-height:1.55}.test-notice strong{color:var(--accent);white-space:nowrap}.online-auth .test-notice{display:block;margin-top:20px;padding:14px;border-radius:12px;text-align:left}.online-auth .test-notice strong{display:block;margin-bottom:4px}.ma-settings{margin:8px 20px 12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}.ma-settings-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ma-settings-heading button{font-size:12px;color:var(--muted)}.ma-settings>label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.ma-settings select{max-width:70%;font-size:12px;padding:8px;border-radius:8px}.ma-settings fieldset{border:0;padding:12px 0 0;display:flex;gap:8px;flex-wrap:wrap}.ma-settings legend{font-size:12px;color:var(--muted)}.ma-settings fieldset label{display:flex;align-items:center;gap:5px;font-size:13px;min-height:38px;padding:0 10px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.ma-settings input{accent-color:var(--accent);width:16px;height:16px}.ma-settings p{font-size:12px;line-height:1.65;color:var(--muted);margin:12px 0}.ma-legend{display:flex;gap:8px 16px;flex-wrap:wrap;font-size:12px;margin:8px 20px}.ma-legend[hidden]{display:none}.ma-legend b{font-variant-numeric:tabular-nums;font-weight:500}.watch-heart{font-size:21px}@media(max-width:700px){.test-notice{padding:8px 16px;align-items:flex-start;font-size:11px}.ma-settings{padding:12px}.ma-settings fieldset{gap:5px}.ma-settings fieldset label{padding:0 8px}}

/* Toggle feedback stays visible on narrow screens. */
.entry-chip.on{border-color:var(--accent);background:var(--accent-bg)}.entry-chip.on small{color:var(--accent)}
.market-overview-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;font-size:12px}.market-overview-label span{font-size:11px;color:var(--muted)}.index-card>.index-role{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}
@media(max-width:700px){.entry-chip small{display:inline}.market-overview-label{margin-top:8px}.index-card{min-height:116px}}

.cash-breakdown{display:grid;gap:4px;margin-top:7px}.cash-breakdown small{display:flex;flex-wrap:wrap;gap:4px 8px;color:var(--muted);font-size:10px}.cash-breakdown b{color:var(--text-secondary);font-weight:500;font-variant-numeric:tabular-nums}.portfolio-wallets strong{overflow-wrap:anywhere}

/* One persistent interval row, with secondary controls disclosed over the plot. */
.chart-controls{position:relative;z-index:5;flex-shrink:0}.chart-toolbar{flex-wrap:nowrap;gap:10px;padding:6px 20px 10px}.chart-toolbar #timeframes{display:flex;flex:1;width:auto;gap:4px;padding:0;border:0}.chart-toolbar #timeframes button{min-height:40px;min-width:44px;font-size:12px;padding:7px 12px;white-space:nowrap}.chart-toolbar #timeframes button.active{background:var(--accent-bg);color:var(--accent);font-weight:650}.chart-toolbar #chart-options-toggle{flex-shrink:0;min-height:40px;padding:7px 12px;font-size:12px;white-space:nowrap;border:1px solid var(--line)}#chart-options-toggle[aria-expanded=true]{background:var(--accent-bg);color:var(--accent)}
.chart-options{position:absolute;top:100%;right:20px;z-index:6;width:min(420px,calc(100% - 40px));max-height: min(480px,55dvh);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 12px 38px #0004}.chart-options[hidden]{display:none}.chart-options-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}.chart-options-heading button{min-height:40px;padding:6px 10px;font-size:12px;color:var(--muted)}.chart-option-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.chart-option-row>span{font-size:12px;color:var(--muted);flex-shrink:0}.chart-option-row button{min-height:40px;padding:7px 12px;font-size:12px;border-radius:8px}.chart-option-row button.active,.chart-option-row button.on{background:var(--accent-bg);color:var(--accent)}.chart-option-row.indicators{display:block;border-top:1px solid var(--line);margin-top:6px}.chart-option-row.indicators>span{display:block;margin:4px 0 8px}.chart-option-row.indicators>div{display:flex;gap:6px;flex-wrap:wrap}.chart-options .ma-settings{margin:8px 0 0;padding:12px}.chart-options .ma-settings p{font-size:11px}.chart-options .ma-settings select{max-width:65%}
.chart-performance{padding:5px 24px 7px;gap:10px;align-items:center;flex-wrap:nowrap}.chart-performance>div:first-child{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.chart-performance>div>span{font-size:10px}.chart-performance strong{display:inline;font-size:15px;margin:0;letter-spacing:0}.chart-performance strong small{font-size:11px}.chart-performance-note{line-height:1.4;max-width:45%;flex-shrink:0}.chart-performance-note small{font-size:9px}.chart-range-bar{padding-top:8px;padding-bottom:3px;flex-wrap:nowrap}#chart-range-info{font-size:10px;text-align:right}.chart-readout-strip{display:flex;gap:12px;overflow-x:auto;white-space:nowrap;padding:3px 20px 6px;scrollbar-width:thin;flex-shrink:0}.chart-readout-strip .chart-legend{order:0;display:flex;flex-wrap:nowrap;gap:9px;padding:0;font-size:10px;align-items:center}.chart-readout-strip .ma-legend{order:1;flex-wrap:nowrap;gap:10px;margin:0;font-size:10px;align-items:center}.chart-readout-strip .ma-legend[hidden]{display:none}.chart-readout-strip b{font-variant-numeric:tabular-nums}.chart-panel>.canvas-wrap{min-height:340px}.chart-navigation{padding-top:6px}.chart-navigation #chart-fit{font-size:11px;padding:0 8px}.market-details .instrument-stats{padding:12px 11px 4px;gap:12px}
@media(max-width:700px){.chart-toolbar{gap:6px;padding:4px 14px 8px}.chart-toolbar #timeframes{gap:2px;min-width:0}.chart-toolbar #timeframes button{padding:6px 7px;flex:1;min-width:0;min-height:44px;font-size:12px}.chart-toolbar #chart-options-toggle{min-height:44px;padding:6px 9px;font-size:11px}.chart-options{right:14px;width:calc(100% - 28px);padding:12px}.chart-option-row button{min-height:44px}.chart-range-bar{padding:8px 16px 4px;gap:8px}#chart-ranges{gap:2px}#chart-ranges button{padding:6px 10px;min-height:36px}.chart-performance{padding:3px 16px 8px;gap:8px}.chart-performance strong{font-size:14px}.chart-performance>div:first-child{gap:3px 6px}.chart-performance-note{margin:0;font-size:9px}.chart-performance-note>span{font-size:9px!important}.chart-readout-strip{padding:2px 16px 7px}.chart-readout-strip .chart-legend{font-size:10px}.chart-panel>.canvas-wrap{min-height:320px;height:42dvh;flex:none}.chart-navigation{gap:4px}.chart-navigation button{min-width:36px;min-height:40px}.chart-navigation #chart-expand{font-size:10px}.chart-footer{font-size:9px;padding:5px 14px 8px;gap:2px}.instrument-header{padding-top:16px;padding-bottom:8px}.quote-group strong{font-size:30px}.quote-group>span{font-size:12px}.market-details{margin-top:3px}.entry-legend{padding-bottom:5px}}
#chart-fullscreen .chart-controls{flex-shrink:0}#chart-fullscreen .chart-panel>.canvas-wrap{flex:1;height:auto;min-height:120px}#chart-fullscreen .chart-performance strong{font-size:14px}#chart-fullscreen .chart-readout-strip{padding-bottom:4px}

.cash-breakdown em{font-style:normal;color:var(--accent);font-variant-numeric:tabular-nums}.currency-allocation{grid-column:1/-1;min-width:0}.allocation-heading{font-size:13px;font-weight:650}.allocation-heading small{font-weight:400;color:var(--muted);margin-left:6px}.allocation-bar{height:7px;display:flex;border-radius:8px;overflow:hidden;background:var(--line);margin:12px 0 16px}.allocation-bar i:first-child,.currency-dot.krw{background:var(--accent)}.allocation-bar i:last-child,.currency-dot.usd{background:#55bcb0}.allocation-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.portfolio-wallets .allocation-row span{margin:0;display:flex;align-items:center;gap:6px}.allocation-row b{font-weight:500;color:var(--text)}.currency-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.portfolio-wallets .allocation-row strong{font-size:17px;white-space:normal;text-align:right}.allocation-note{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 0;overflow-wrap:anywhere}
#chart-fullscreen #instrument-news,#chart-fullscreen #price-limit-info{display:none}

.news-related{display:grid;gap:10px;margin:10px 0 20px}.news-related button{text-align:left;white-space:normal;line-height:1.6}

/* Upcoming public disclosures sit beside news; trade controls stay unchanged. */
.home-agenda{margin:0 0 20px;padding:16px 0;border-bottom:1px solid var(--line)}
.home-agenda h3{font-size:14px;margin:0 0 10px}.home-agenda h3 small{font-size:12px;font-weight:400;color:var(--muted);margin-left:6px}
.home-agenda>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.disclosure-row{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;width:100%;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text)}
.disclosure-row>span{display:flex;flex-direction:column;min-width:0;gap:4px}.disclosure-row strong{font-size:13px}.disclosure-row small,.disclosure-row time{font-size:11px;color:var(--muted)}.disclosure-row time{max-width:46%;text-align:right;line-height:1.6}.disclosure-row small{overflow-wrap:anywhere}
.instrument-agenda{padding:10px 0;display:flex;gap:12px;align-items:center}.instrument-agenda[hidden]{display:none}.agenda-caption{font-size:12px;white-space:nowrap;color:var(--muted)}.instrument-agenda .disclosure-row{flex:1}.disclosure-date{font-weight:650}
@media(max-width:700px){.home-agenda>div{grid-template-columns:1fr;gap:6px}.instrument-agenda{gap:8px}.disclosure-row{padding:10px}.disclosure-row time{max-width:43%}}
.chart-card:fullscreen .instrument-agenda{display:none}

.company-facts{display:grid;grid-template-columns:1fr;gap:8px}.company-facts>div{min-width:0;align-items:baseline}.company-facts dt{word-break:keep-all}.company-facts dd{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:clamp(12px,3.4vw,14px)}
@media(max-width:700px){.instrument-agenda{flex-direction:column;align-items:stretch;gap:6px;padding:10px 12px}.instrument-agenda .agenda-caption{font-size:11px}.instrument-agenda .disclosure-row>span{flex:1}.instrument-agenda .disclosure-row{flex:auto}}
