/* Generated by tools/build_ui.py; do not edit this bundle directly. */

/* ui_sources/legacy/01-app.css */
@font-face{font-family:Vazirmatn;src:url("/static/fonts/Vazirmatn.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--bg:#0b1119;--panel:#111a25;--line:#24303e;--text:#e3eaf1;--muted:#8b9aae;--green:#52dfba;--red:#ff7b89;--amber:#e9c57b;--blue:#74adf7;--font:Vazirmatn,Tahoma,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.85 var(--font)}[hidden]{display:none!important}button,input,select{font:inherit}button,a,input,select,canvas{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--green)}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{font-size:1.4375rem;font-weight:600}h2{font-size:1.125rem;font-weight:600}h3{font-size:0.875rem;font-weight:600}small{font-weight:400}input,select{color:var(--text);background:#0e1621;border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:44px;max-width:100%}input:focus,select:focus{border-color:#436558}input[type=checkbox]{min-height:0;width:14px;height:14px;accent-color:var(--green)}.muted{color:var(--muted)}.mono{font-family:var(--font);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:embed}.eyebrow{font-size:0.875rem;letter-spacing:1.8px;color:var(--muted);font-weight:600}.row,.row-between{display:flex;gap:12px;align-items:center}.row-between{justify-content:space-between}.button,.icon-button{border:1px solid var(--line);border-radius:8px;background:#16212d;color:var(--text);padding:8px 14px;min-height:44px;white-space:nowrap;transition:background .15s}.button:hover,.icon-button:hover{background:#223143}.button.primary{background:var(--green);color:#09271f;font-weight:700;border-color:var(--green)}.button.quiet{background:transparent}.button.compact{padding:5px 8px;font-size:0.875rem}.icon-button{padding:4px 12px;font-size:1.25rem;min-width:38px}.badge{display:inline-flex;align-items:center;font-size:0.875rem;border:1px solid #344453;padding:2px 8px;border-radius:5px;line-height:1.8;white-space:normal;color:var(--muted)}.badge.amber{background:#30291b;color:var(--amber);border-color:#57482b}.badge.green{color:var(--green);background:#12332b;border-color:#225542}.badge.red{color:var(--red);background:#351f2a;border-color:#57313a}.positive{color:var(--green)}.negative{color:var(--red)}.warning{color:var(--amber)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.divider{height:1px;background:var(--line);margin:22px 0}.text-link{color:var(--green);font-size:0.875rem;display:block;margin-top:22px}.section-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:26px 0 13px}.section-heading .muted{font-size:0.875rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.shell{display:grid;grid-template-columns:246px minmax(0,1fr);min-height:100vh}.sidebar{background:#0e1620;border-inline-end:1px solid var(--line);padding:28px 17px;display:flex;flex-direction:column;gap:20px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:10px;line-height:1.25;font:0.875rem/1.2 Vazirmatn,Tahoma,sans-serif;direction:ltr}.brand b{display:block;font-weight:400;color:#afbdc9}.brand small{display:block;color:var(--muted);font:0.875rem/2.6 var(--font)}.brand em{font-style:normal;letter-spacing:1px;font-size:0.875rem;color:var(--green);margin-inline-start:auto}.section-label{margin-top:17px}.navigation{display:grid;gap:6px}.nav-button{background:transparent;border:1px solid transparent;min-height:46px;border-radius:8px;color:var(--muted);display:flex;align-items:center;gap:12px;padding:10px 14px;text-align:start;font-size:0.875rem}.nav-button>span:first-child{font-size:1.1875rem;line-height:1}.nav-button.active{background:#15352e;border-color:#234a3d;color:#b7f4df}.nav-button:hover{color:var(--text)}.sidebar-watch{flex:1;min-height:180px}.sidebar-watch>input{width:100%;margin:14px 0 12px;font-size:0.875rem;background:var(--bg)}.market-list{display:grid;gap:2px;max-height:48vh;overflow:auto}.market-button{display:flex;align-items:center;width:100%;gap:10px;border:0;border-radius:8px;background:transparent;color:var(--text);padding:10px 8px;min-height:50px}.market-button:hover,.market-button.selected{background:#1a2734}.market-button strong{display:block;font-size:0.875rem;font-weight:600}.market-button small{display:block;font-size:0.875rem;color:var(--muted)}.market-button .market-price{margin-inline-start:auto;font:0.875rem/1.5 var(--font)}.mini-coin{width:29px;height:29px;border-radius:50%;background:#253548;display:flex;align-items:center;justify-content:center;color:#bdccde;font:600 0.875rem Arial}.sidebar-bottom{border-top:1px solid var(--line);display:flex;gap:12px;padding-top:18px}.sidebar-bottom strong{font-size:0.875rem;display:block;font-weight:500}.sidebar-bottom small{font-size:0.875rem;color:var(--muted);display:block}.manual-dot{width:8px;height:8px;background:var(--green);border-radius:50%;margin-top:8px;box-shadow:0 0 12px #52dfba38}
.workspace{min-width:0;padding:0 30px}.topbar{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.header-actions{display:flex;align-items:center;gap:9px}.header-actions>span{font-size:0.875rem;margin-inline-end:10px}.notice{background:#15251f;border:1px solid #2c4939;color:#b9d6c4;font-size:0.875rem;padding:9px 14px;border-radius:7px;margin-top:18px}.notice.demo{background:#302817;color:var(--amber);border-color:#5c4a28}.error-banner{background:#39222c;border:1px solid #613743;color:#ffb1b9;padding:12px 16px;border-radius:8px;margin-top:12px}.overview-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:24px 0 20px;border-bottom:1px solid var(--line)}.overview-strip>div{border-inline-end:1px solid var(--line);padding-inline-start:12px}.overview-strip>div:last-child{border:0}.overview-strip span{color:var(--muted);font-size:0.875rem;display:block;margin-bottom:4px}.overview-strip strong{font-size:0.9375rem;font-weight:500;display:block}.overview-strip small{font-size:0.875rem;color:var(--muted)}.symbol-header{display:flex;justify-content:space-between;align-items:center;padding:26px 0 22px;gap:12px}.coin-icon{width:44px;height:44px;background:#3d3020;color:#e7be7d;display:flex;justify-content:center;align-items:center;border-radius:50%;font:700 1.3125rem Arial}.symbol-header h2{font:600 1.4375rem/1.7 var(--font);letter-spacing:-1px}.symbol-header h2 span{color:var(--muted);font-size:1.0rem;font-weight:400}.symbol-header .muted{font-size:0.875rem}.quote{text-align:end;direction:ltr}.quote strong{font:600 1.625rem/1.5 var(--font);display:block}.quote span{font-size:0.875rem;display:block}.analysis-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px}.chart-toolbar{padding:12px 13px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.timeframes{display:flex;gap:3px;direction:ltr;overflow:auto;max-width:100%}.tf-button{border:0;background:transparent;color:var(--muted);min-width:37px;min-height:38px;padding:4px 7px;border-radius:5px;font:0.875rem var(--font)}.tf-button.active{color:var(--green);background:#1b3a32}.chart-toolbar>.row{gap:4px}.chart-options{display:flex;gap:10px;overflow:auto;padding:10px 14px;font-size:0.875rem;direction:ltr;white-space:nowrap}.chart-options label{display:inline-flex;align-items:center;gap:3px;min-height:30px;cursor:pointer}.chart-quality{font-size:0.875rem;padding:0 16px;color:var(--amber)}.chart-legend{height:31px;padding:3px 16px;font-size:0.875rem;color:var(--muted);overflow:hidden;white-space:nowrap}.canvas-wrap{height:410px;position:relative;direction:ltr}canvas{display:block;width:100%;height:100%;touch-action:pan-y pinch-zoom}.chart-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted);pointer-events:none}.chart-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:9px 15px;font-size:0.875rem;color:var(--muted)}.chart-footer select{padding:3px 5px;min-height:36px;font:0.875rem/1.6 Arial}.chart-footer .row{gap:6px}.decision-panel{padding:21px 19px}.decision-panel h3{margin-bottom:12px}.decision-title{font-size:1.25rem;font-weight:500;margin:20px 0 10px;line-height:1.6}.decision-copy{color:var(--muted);font-size:0.875rem;line-height:2.1}.reason-list{padding-inline-start:17px;margin:12px 0;color:var(--muted);font-size:0.875rem}.metric-row{display:flex;gap:10px;justify-content:space-between;padding:8px 0;border-bottom:1px solid #202d3a;font-size:0.875rem}.metric-row>span:first-child{color:var(--muted)}.metric-row>span:last-child{text-align:end}.plan-block{background:#0c151f;border:1px solid var(--line);border-radius:8px;padding:10px 13px;margin:12px 0}.plan-block .metric-row:last-child{border:0}.decision-panel .badge{font-size:0.875rem}.matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.frame-card{padding:17px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.frame-card h3{font:600 1.0rem/1.7 var(--font)}.frame-card .frame-role{font-size:0.875rem;color:var(--muted)}.frame-card .frame-trend{font-size:0.875rem;margin:13px 0}.frame-card .metric-row{font-size:0.875rem;padding:5px 0}.frame-card .frame-warning{font-size:0.875rem;color:var(--amber);margin-top:8px}.technical-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 17px;gap:0 25px}.technical-item{display:flex;justify-content:space-between;padding:12px 0;gap:10px;font:0.875rem/1.5 var(--font);border-bottom:1px solid var(--line)}.technical-item span:first-child{color:var(--muted)}.technical-item span:last-child{overflow-wrap:anywhere}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:0.875rem;white-space:nowrap}th{text-align:start;color:var(--muted);font-weight:400;font-size:0.875rem;background:#121e2a}td,th{padding:15px 17px;border-bottom:1px solid var(--line)}tbody tr:hover{background:#172432}.table-button{background:transparent;border:0;color:var(--green);font:600 0.875rem var(--font);min-height:38px}.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:17px 0}.signal-card{padding:20px}.signal-card h3{font-size:1.125rem}.signal-card .row-between{flex-wrap:wrap}.signal-card .muted{font-size:0.875rem}.signal-card .button{font-size:0.875rem;margin-top:13px}.signal-note{font-size:0.875rem;color:var(--amber);padding-top:10px}.signal-card.expired{opacity:.65}.empty-state{grid-column:1/-1;padding:50px 25px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.journal-form{padding:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:20px}.field{display:flex;flex-direction:column;gap:6px}.field>label{font-size:0.875rem;color:var(--muted)}.journal-form>button{align-self:end}.journal-form>p{grid-column:1/-1;font-size:0.875rem}.footer{margin:35px 0 20px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:0.875rem;color:var(--muted)}.footer b{color:var(--green);padding:0 6px}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 30%,#163127 0,transparent 55%)}.login-card{background:var(--panel);border:1px solid var(--line);padding:36px;border-radius:16px;width:min(420px,100%);display:grid;gap:14px}.login-card h1{margin-top:7px}.login-card p,.login-card label{font-size:0.875rem}.login-card #login-error{color:var(--red)}dialog{background:var(--panel);color:var(--text);border:1px solid #3a4d5c;border-radius:14px;max-width:650px;width:calc(100% - 32px);max-height:85vh;padding:25px}dialog::backdrop{background:#050a12cc}dialog .field{margin:13px 0}.event-row{padding:12px 0;border-bottom:1px solid var(--line);font-size:0.875rem}.method-content{max-width:850px;margin:40px auto;padding:30px}.method-content p,.method-content li{margin:12px 0;color:var(--muted)}.method-content h2{margin-top:25px}
.field{min-width:0}.field input{width:100%;min-width:0}
@media(min-width:1700px){.workspace{padding:0 50px}.canvas-wrap{height:480px}.analysis-grid{grid-template-columns:minmax(0,1fr) 325px}}
@media(max-width:1250px){.shell{grid-template-columns:210px minmax(0,1fr)}.workspace{padding:0 20px}.sidebar{padding:25px 13px}.analysis-grid{grid-template-columns:minmax(0,1fr)}.decision-panel{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.decision-panel>.row-between{grid-column:1/-1}.decision-panel .divider{display:none}.decision-panel>h3{grid-column:2;grid-row:2;margin-top:16px}.decision-panel>#liquidity{grid-column:2;grid-row:3}.decision-panel>#decision-content{grid-column:1;grid-row:2/5}.decision-panel>.text-link{grid-column:2}.technical-values{grid-template-columns:repeat(3,minmax(0,1fr))}.header-actions>span{display:none}.brand em{display:none}}
@media(max-width:850px){.shell{display:block}.sidebar{position:static;height:auto;padding:15px 18px;display:block;border-inline-end:0;border-bottom:1px solid var(--line)}.sidebar>.section-label,.sidebar-watch,.sidebar-bottom{display:none}.brand{width:max-content}.navigation{display:flex;gap:6px;margin-top:15px;overflow:auto}.nav-button{flex:1;justify-content:center;font-size:0.875rem;gap:5px;min-width:98px;padding:8px 6px}.nav-button>span:first-child{font-size:1.0rem}.workspace{padding:0 18px}.topbar{min-height:92px}.topbar .eyebrow{font-size:0.875rem}h1{font-size:1.25rem}.header-actions{gap:5px}.header-actions .button{padding:7px 10px;font-size:0.875rem}.overview-strip{gap:10px}.overview-strip>div{padding-inline-start:2px}.overview-strip strong{font-size:0.875rem}.matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.technical-values{grid-template-columns:repeat(2,minmax(0,1fr))}.signal-grid{grid-template-columns:1fr}.footer{flex-direction:column;gap:5px}.chart-toolbar{gap:4px}.timeframes{gap:0}.tf-button{min-width:34px;padding:3px 5px}}
@media(max-width:480px){.workspace{padding:0 12px}.sidebar{padding:13px 12px}.nav-button{min-width:80px;font-size:0.875rem}.nav-button>span:first-child{display:none}.header-actions #refresh{font-size:.875rem}.header-actions #refresh::after{content:'↻';font-size:1.1875rem}.header-actions #logout{font-size:0.875rem}.overview-strip{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:17px}.overview-strip>div:nth-child(2){border:0}.symbol-header h2{font-size:1.25rem}.quote strong{font-size:1.1875rem}.coin-icon{width:37px;height:37px}.symbol-header>.row{gap:8px}.decision-panel{display:block}.decision-panel .divider{display:block}.decision-panel>h3{margin-top:0}.chart-toolbar{flex-wrap:wrap}.timeframes{flex:1;min-width:190px}.chart-toolbar>.row{margin-inline-start:auto}.canvas-wrap{height:360px}.chart-options{gap:9px;padding-inline:10px}.chart-footer{flex-direction:column;align-items:stretch;gap:6px}.chart-footer>.row{justify-content:space-between}.technical-values{gap:0 14px;padding:8px 12px}.technical-item{font-size:0.875rem}.section-heading h2{font-size:1.0rem}.section-heading>.muted{max-width:130px;text-align:end;font-size:0.875rem}.frame-card{padding:12px}.matrix{gap:9px}.journal-form{padding:15px;gap:12px}.journal-form>button{grid-column:1/-1}.signal-card{padding:16px}}
/* Original logo variants are selected by theme.js, including before login. */
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px;direction:inherit;width:100%}.brand img{width:174px;height:auto;max-width:100%}.brand small{font:0.875rem/1.8 var(--font);color:var(--muted)}.login-brand img{width:220px;height:auto;max-width:calc(100% - 55px)}.theme-toggle{min-width:44px;font-size:1.1875rem;padding:6px 10px;line-height:1}.login-brand{gap:10px}.theme-toggle:focus-visible{outline-color:var(--blue)}
:root[data-theme=dark]{color-scheme:dark}
:root[data-theme=light]{color-scheme:light;--bg:#f4f6f9;--panel:#fff;--line:#d8e0e9;--text:#17283a;--muted:#526579;--green:#08785b;--red:#ba3149;--amber:#855c12;--blue:#2465af}
[data-theme=light] input,[data-theme=light] select{background:#f9fbfd}
[data-theme=light] .sidebar{background:#eef3f8}
[data-theme=light] .button,[data-theme=light] .icon-button{background:#edf2f7}
[data-theme=light] .button:hover,[data-theme=light] .icon-button:hover{background:#dce6ee}
[data-theme=light] .button.primary{background:var(--green);color:#fff}
[data-theme=light] .button.quiet{background:transparent}
[data-theme=light] .nav-button.active,[data-theme=light] .tf-button.active{background:#dcefe7;border-color:#b5d8ca;color:#126449}
[data-theme=light] .market-button:hover,[data-theme=light] .market-button.selected{background:#dfe9f1}
[data-theme=light] .mini-coin{background:#dae5ef;color:#344e68}
[data-theme=light] .notice{background:#e6f2eb;border-color:#c2decc;color:#27573c}
[data-theme=light] .notice.demo,[data-theme=light] .badge.amber{background:#fff3d7;border-color:#e2cc9a;color:var(--amber)}
[data-theme=light] .badge{border-color:#bac9d7}
[data-theme=light] .badge.green{background:#e0f3ea;border-color:#add2c1}
[data-theme=light] .badge.red,[data-theme=light] .error-banner{background:#fce8eb;border-color:#e6bdc5;color:#a62c40}
[data-theme=light] .plan-block{background:#f4f8fb}
[data-theme=light] .metric-row{border-color:var(--line)}
[data-theme=light] th{background:#edf3f8}
[data-theme=light] tbody tr:hover{background:#f0f5fa}
[data-theme=light] .coin-icon{background:#f6e8cd;color:#8b5e11}
[data-theme=light] .login-screen{background:radial-gradient(ellipse at 50% 30%,#d8eee5 0,transparent 60%)}
[data-theme=light] dialog{border-color:#c3d0dd}
@media(max-width:480px){.header-actions{gap:3px}.header-actions .theme-toggle{padding:5px;min-width:36px}.login-card{padding:25px}.brand img{width:160px}}
/* NTS uses the original symbol, with the new product name as accessible text. */
.brand-identity{display:flex;align-items:center;gap:8px;direction:ltr;min-width:0}.brand-identity img{width:35px;height:35px;flex-shrink:0;max-width:none}.brand-name{font:600 0.875rem/1.6 Vazirmatn,Tahoma,sans-serif;white-space:nowrap}.brand-name small{display:block;color:var(--muted);font:600 0.875rem/1.5 Vazirmatn,Tahoma,sans-serif;letter-spacing:2px;margin-top:3px}.login-brand{direction:ltr}.login-brand .brand-identity img{width:44px;height:44px;max-width:none}.login-brand .brand-name{font-size:0.9375rem;white-space:normal}.brand>.brand-identity{width:100%}.brand>.brand-identity .brand-name small{font:600 0.875rem/1.5 Vazirmatn,Tahoma,sans-serif}

/* Readable type, account layouts and mobile reflow — stage 8. */
html{font-size:16px}body{overflow-wrap:break-word}button:disabled{opacity:.55;cursor:default}
h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1rem}.eyebrow{letter-spacing:.04em}
small{font-size:.875rem}.brand-name{font-family:var(--font);font-size:1rem;white-space:normal}
.brand-name small,.brand>.brand-identity .brand-name small{font-family:var(--font);font-size:.875rem}
.brand,.brand-identity{min-width:0}.badge{white-space:normal}.mono,bdi,.money{font-variant-numeric:tabular-nums;unicode-bidi:isolate}
.header-actions{flex-wrap:wrap}.text-size-control select{min-width:4rem;padding:5px}.nav-button{font-size:.9375rem}
.chart-toolbar,.section-heading,.row-between{flex-wrap:wrap}.timeframes{min-width:0}.tf-button{min-height:44px;font-family:var(--font);font-size:.875rem}
.chart-options{font-size:.875rem}.chart-options label{min-height:44px}.chart-legend{height:auto;min-height:2.1rem;white-space:normal;overflow-wrap:anywhere;font-size:.8125rem}
.chart-quality{min-height:1.8em}.chart-footer select{font-family:var(--font);min-height:44px;font-size:.875rem}
.chart-empty{padding:20px;text-align:center}.metric-row{font-size:.875rem;min-width:0;flex-wrap:wrap}.metric-row>:last-child{overflow-wrap:anywhere;max-width:100%}
.frame-card{min-width:0}.technical-item{font-family:var(--font);font-size:.875rem;flex-wrap:wrap}.signal-card.expired{opacity:1}
.portfolio-controls{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.portfolio-controls label{display:grid;gap:6px}.portfolio-controls .checkbox-label{display:flex;align-items:center;min-height:44px}
.portfolio-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.asset-total{padding:20px}.asset-total strong{display:block;font-size:1.5rem;direction:ltr;text-align:start;overflow-wrap:anywhere}
.portfolio-notes{display:grid;gap:10px;margin:20px 0;font-size:.9375rem}.wallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin:20px 0}
.wallet-card,.fill-card{padding:20px;min-width:0}.small-note{font-size:.875rem;line-height:1.9}.wallet-card h3,.fill-card h3{direction:ltr;unicode-bidi:isolate}
.allocation-panel,.profit-panel{padding:22px}.allocation-row{display:grid;grid-template-columns:minmax(80px,1fr) auto;gap:8px;margin:14px 0}.allocation-row progress{grid-column:1/-1;width:100%;height:10px;accent-color:var(--green)}
.profit-panel p{margin:12px 0}.profit-panel details{margin:18px 0}.profit-panel summary{cursor:pointer;min-height:44px}.profit-chart{display:block;width:100%;max-height:200px;color:var(--green)}
.pagination{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:22px 0}
@media(min-width:1251px){.analysis-grid{grid-template-columns:minmax(0,1fr) 340px}}
@media(max-width:850px){.navigation{min-width:0}.nav-button{flex:0 0 auto;min-width:7rem}.topbar{flex-wrap:wrap;padding:18px 0}.header-actions{width:100%}.frame-card .row-between{gap:6px}.technical-values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.topbar h1{font-size:1.4rem}.header-actions #refresh{font-size:.875rem}.header-actions #refresh::after{content:none}.header-actions .theme-toggle{min-width:44px}.overview-strip strong{font-size:1rem}.portfolio-metrics{grid-template-columns:1fr}.journal-form{grid-template-columns:1fr}.technical-values{grid-template-columns:1fr}.matrix{grid-template-columns:1fr}.symbol-header{flex-wrap:wrap}.quote strong{font-size:1.35rem}.canvas-wrap{height:400px}.brand-identity img{width:35px}.login-card{padding:20px}.login-brand .brand-name{font-size:.9375rem}.chart-toolbar{display:block}.chart-toolbar>.row{margin-top:8px;justify-content:flex-end}.timeframes{max-width:100%}.allocation-panel,.profit-panel,.wallet-card,.fill-card{padding:16px}}


/* ui_sources/legacy/02-workspace.css */
/* NTS four-tab workspace, adapted from the user's NPM visual references. */
:root{--bg:#0b1220;--panel:#1b2738;--line:#2c394d;--text:#e4e9f2;--muted:#a0aec2;--green:#34d3a4;--red:#ff8794;--amber:#f2c56b}
:root[data-theme=light]{--bg:#edeff5;--panel:#fff;--line:#dfe3ee;--text:#111b2e;--muted:#52637c;--green:#007c60;--red:#b53049;--amber:#92500b}
html{scroll-padding-bottom:8rem}body{line-height:1.9}.shell{grid-template-columns:280px minmax(0,1fr);max-width:1920px;margin:auto;align-items:start}.sidebar{margin:28px 16px 0;height:auto;top:28px;position:sticky;padding:24px 18px;border:1px solid var(--line);border-radius:28px;background:var(--panel);overflow:visible;gap:22px}.sidebar-watch{display:none}.sidebar-bottom{margin-top:12px}.section-label{display:none}.brand-identity{gap:10px}.brand-identity img{width:46px;height:46px}.brand-name{font-size:1rem;font-weight:700;line-height:1.6}.brand small{font-size:.875rem}.navigation{gap:10px}.nav-button{min-height:64px;padding:12px 16px;border-radius:18px;font-size:1rem;gap:14px}.nav-icon{display:inline-flex!important;flex:0 0 27px;width:27px;height:27px}.nav-icon svg{width:100%;height:100%}.nav-button.active{color:var(--green);background:color-mix(in srgb,var(--green) 13%,var(--panel));border-color:transparent;font-weight:700}.workspace{padding:22px 28px 0;min-width:0}.topbar{border:0;min-height:110px;align-items:flex-start;flex-wrap:wrap;padding:12px 0 8px;gap:16px}.topbar .eyebrow{display:none}.topbar h1{font-size:1.85rem;font-weight:750}.header-actions{gap:8px;max-width:100%;margin-inline-start:auto}.header-actions>span{display:block}.button,.icon-button,input,select{border-radius:13px}.header-actions .button{font-size:.875rem}.notice{margin-top:4px;border-radius:14px;padding:10px 15px}.fold-toolbar{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;padding:18px 0 4px}.fold-toolbar .button{background:var(--panel);font-size:.875rem}.subnavigation{display:flex;flex-wrap:wrap;gap:10px;padding:16px 0 12px}.subnav-button{font:inherit;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:99px;min-height:48px;padding:8px 22px}.subnav-button.active{color:var(--green);background:color-mix(in srgb,var(--green) 12%,var(--panel));border-color:var(--green);font-weight:700}.overview-strip{border:0;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:16px 0}.overview-strip>div{padding:16px;background:var(--panel);border:1px solid var(--line)!important;border-radius:20px;min-width:0}.overview-strip strong{font-size:1.05rem;overflow-wrap:anywhere}.overview-strip span,.overview-strip small{font-size:.875rem}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.summary-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px;min-width:0}.summary-card>span{display:block;font-size:.875rem}.summary-value{display:block;font-size:1.4rem;font-weight:700;margin-top:10px;overflow-wrap:anywhere;unicode-bidi:plaintext}.fold-panel{display:block;background:var(--panel);border:1px solid var(--line);border-radius:24px;margin:16px 0;min-width:0;overflow:hidden}.fold-heading,.row-heading{display:flex;align-items:center;gap:14px;list-style:none;cursor:pointer;min-height:72px;padding:18px 22px;outline-offset:-4px}.fold-heading::-webkit-details-marker,.row-heading::-webkit-details-marker{display:none}.fold-heading:focus-visible,.row-heading:focus-visible,summary:focus-visible{outline:2px solid var(--green)}.fold-titles{flex:1;min-width:0}.fold-titles>strong{display:block;font-size:1.1rem}.fold-subtitle{display:block;color:var(--muted);font-size:.875rem;line-height:1.7;overflow-wrap:anywhere}.fold-chevron{color:var(--muted);font:1.5rem/1 var(--font);transition:transform .15s;flex-shrink:0}.fold-panel[open]>.fold-heading .fold-chevron,.row-details[open]>.row-heading>.fold-chevron{transform:rotate(180deg)}.fold-body{padding:0 20px 20px;min-width:0}.fold-body>.panel{border:0;background:transparent}.fold-body>.section-heading{margin-top:8px}.fold-body>p,.fold-body>div>p{margin:8px 0}.fold-body>.wallet-grid,.fold-body>.signal-grid{margin:0}.row-details{min-width:0}.row-heading{padding:15px 16px;gap:8px;min-height:66px}.row-heading>.row-between{flex:1;min-width:0}.row-heading h3{font-size:1rem}.row-body{padding:0 16px 16px}.wallet-card,.fill-card,.signal-card{padding:0;border-radius:18px;min-width:0}.row-body>.badge{margin:8px 0}.row-body>.muted{font-size:.875rem}.row-body .metric-row{padding:10px 0}.row-body .row-between{align-items:flex-start}.metric-row{font-size:.9375rem}.market-chips{display:flex;gap:10px;flex-wrap:wrap}.market-chip{font:600 .9375rem var(--font);min-height:44px;border:1px solid var(--line);border-radius:99px;background:var(--bg);color:var(--text);padding:8px 16px}.market-chip:hover{border-color:var(--green)}#dashboard-account{display:flex;flex-wrap:wrap;gap:12px}#dashboard-account .summary-card{flex:1;min-width:min(100%,220px)}#dashboard-account>p{flex-basis:100%}#dashboard-markets>p{margin-top:16px}.health-source{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:16px 0;border-bottom:1px solid var(--line)}.health-source>p,.health-source>small,.health-source>code{grid-column:1/-1;overflow-wrap:anywhere}.health-table{width:100%}.health-table td{vertical-align:top}.health-table td>small{display:block;white-space:normal}.view-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.view-controls>input{flex:1;min-width:min(100%,190px)}.view-controls>select{min-width:0}.column-picker{position:relative;padding:8px 12px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.column-picker>summary{min-height:28px;cursor:pointer}.column-picker .checkbox-label{display:flex;gap:8px;align-items:center;min-height:44px}.table-arrows{display:flex;gap:8px;justify-content:flex-end;margin:8px 0}.table-wrap{max-width:100%;border-radius:20px}.table-wrap th,.table-wrap td{font-size:.875rem;padding:12px}#watch-table table{min-width:780px}#watch-table .table-button{min-height:44px}#page-watch>.section-heading{margin-top:12px}.analysis-grid{align-items:start}.analysis-grid>.fold-panel{margin-top:0}.chart-card.panel{overflow:visible}.decision-panel{display:block!important}.decision-panel>.divider{display:block!important}.chart-toolbar{flex-wrap:wrap}.chart-options{flex-wrap:wrap}.chart-options label{font-size:.875rem}.canvas-wrap{height:420px}.symbol-header{padding-top:12px}.portfolio-metrics .asset-total{border-radius:22px}.portfolio-notes{font-size:.9375rem}.journal-form{margin-top:0}.footer{margin-bottom:25px}.login-screen,[data-theme=light] .login-screen{background:var(--bg)}.login-card{width:min(460px,100%);border-radius:28px;padding:32px;box-shadow:0 8px 30px #00000008}.login-card h1{font-size:1.6rem}.login-card>p{font-size:1rem}.login-card>.button{min-height:52px}.login-card input{min-height:52px;background:var(--bg)}[data-theme=light] .sidebar{background:var(--panel)}[data-theme=light] .nav-button.active{background:#e1efeb;color:var(--green)}[data-theme=light] th{background:#f5f6fa}[data-privacy=hidden] [data-private-graphic]{display:none!important}
@media(max-width:1250px){.shell{grid-template-columns:240px minmax(0,1fr)}.workspace{padding-inline:18px}.sidebar{padding:18px 12px;margin-inline:12px}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.header-actions{margin-inline-start:0}.analysis-grid{grid-template-columns:minmax(0,1fr)}.brand-identity{flex-wrap:wrap}.topbar{display:block}.header-actions{margin-top:14px}}
@media(max-width:850px){.shell{display:block}.sidebar{position:static;margin:0;padding:18px 18px 4px;border:0;border-radius:0;background:transparent!important;height:auto}.sidebar .brand-identity{flex-wrap:nowrap}.sidebar .brand-identity img{width:38px;height:38px}.sidebar .brand-name{font-size:.9375rem}.sidebar .brand>small,.sidebar-bottom{display:none}.navigation{position:fixed;z-index:30;inset-inline:0;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line);overflow:visible;box-shadow:0 -6px 18px #00000006}.nav-button{display:flex;flex-direction:column;justify-content:flex-start;gap:3px;min-width:0;width:100%;min-height:66px;padding:6px 2px;border:0;border-radius:16px;font-size:.8125rem;line-height:1.7;white-space:normal;overflow-wrap:anywhere}.nav-button>span:first-child{display:inline-flex!important}.nav-button .nav-icon{flex-basis:23px;width:24px;height:24px}.nav-button.active .nav-icon{color:var(--green)}.workspace{padding:0 16px calc(8rem + env(safe-area-inset-bottom,0px))}.topbar{min-height:0;padding-top:14px}.topbar h1{font-size:1.7rem}.header-actions{width:100%;gap:6px}.header-actions>span{display:none}.header-actions .button{padding:7px 10px}.fold-toolbar{padding-top:14px}.subnavigation{gap:7px}.subnav-button{padding:8px 17px;font-size:.9375rem;flex:1;min-width:0}.fold-heading{padding:16px;min-height:72px}.fold-body{padding:0 14px 16px}.fold-titles>strong{font-size:1.05rem}.summary-card{padding:16px}.summary-value{font-size:1.3rem}.overview-strip>div{padding:14px}.overview-strip strong{font-size:1rem}.view-controls>select{flex:1;max-width:100%;font-size:.9375rem}.footer{font-size:.8125rem}.brand{width:100%}.brand-identity .brand-name small{display:none}.chart-card .chart-toolbar{padding:0}.chart-options{padding-inline:0}.chart-toolbar>.row{justify-content:flex-end}.table-arrows{margin-top:12px}}
@media(max-width:700px){#watch-table table,.health-table{min-width:0;width:100%;display:block}#watch-table thead,.health-table thead{display:none}#watch-table tbody,.health-table tbody{display:grid;gap:14px}#watch-table tr,.health-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:12px}#watch-table td,.health-table td{border:0!important;padding:7px;white-space:normal;display:flex;flex-direction:column;align-items:flex-start;min-width:0;overflow-wrap:anywhere;font-size:.9375rem}#watch-table td::before,.health-table td::before{content:attr(data-label);font-size:.8125rem;color:var(--muted);font-family:var(--font);direction:inherit}#watch-table td:first-child,.health-table td:first-child{grid-column:1/-1}#watch-table{border:0;background:transparent;overflow:visible}.health-source{grid-template-columns:minmax(0,1fr)}.health-source>p,.health-source>small,.health-source>code{grid-column:1}.row-heading>.row-between{gap:7px}.column-picker{flex-basis:100%}.table-wrap td{font-size:.9375rem}}
@media(max-width:480px){.workspace{padding-inline:12px}.sidebar{padding-inline:12px}.topbar h1{font-size:1.65rem}.header-actions{gap:6px}.header-actions #privacy-toggle{flex-basis:100%;text-align:center}.header-actions #refresh{margin-inline-start:auto}.header-actions .theme-toggle{min-width:44px}.dashboard-metrics{gap:10px}.summary-card{padding:14px}.summary-value{font-size:1.1rem}.summary-card>span{font-size:.875rem}.overview-strip{gap:10px}.overview-strip>div{padding:12px}.fold-body{padding-inline:12px}.fold-heading{padding-inline:14px}.fold-panel{border-radius:22px}.portfolio-metrics{grid-template-columns:1fr}.portfolio-controls{gap:12px}.portfolio-controls>label{flex:1;min-width:min(100%,130px)}.matrix,.technical-values{grid-template-columns:minmax(0,1fr)}.signal-grid,.wallet-grid{grid-template-columns:minmax(0,1fr)}.market-chips{gap:8px}.market-chip{padding:8px 12px;font-size:.875rem}.canvas-wrap{height:360px}.health-table td{font-size:.875rem}.login-card{padding:24px}.login-brand .brand-name{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.watch-reason{display:block;max-width:250px;white-space:normal;font-size:.8125rem}.tether-reference{margin:16px 0}.tether-reference p{font-size:.875rem}.tether-reference .summary-value{font-size:1.25rem}

.selection-criteria{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:14px 18px;margin:16px 0}.selection-criteria>summary{min-height:44px;cursor:pointer;font-weight:600}.selection-criteria p{margin:12px 0;font-size:.9375rem}.research-observations{margin-top:18px;border-top:1px solid var(--line)}

/* Put the account result before descriptions and filters, and avoid repeating dashboard coverage. */
#page-portfolio>.portfolio-metrics{margin:18px 0}.overview-strip{grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 0 0}.overview-strip>div{background:transparent;border:0!important;padding:4px 8px}.overview-strip>div:nth-child(2){display:none}

/* Expanded text and long diagnostic codes must reflow inside reference cards. */
.tether-reference .button{white-space:normal;max-width:100%;overflow-wrap:anywhere}
.tether-reference p,.health-source code,.health-source bdi,#source-health .small-note{overflow-wrap:anywhere;word-break:break-word}

.asset-dialog{width:min(1050px,calc(100vw - 24px));max-width:1050px;padding:20px;border-radius:24px;overflow-x:hidden}.asset-dialog .canvas-wrap{height:440px;min-width:0}.asset-dialog .view-controls{min-width:0}.asset-dialog select{max-width:100%}.asset-dialog .fold-body{min-width:0}.asset-dialog p,.asset-dialog bdi,.asset-dialog summary{overflow-wrap:anywhere;word-break:break-word}.asset-dialog .button{white-space:normal;max-width:100%;min-height:44px}.asset-dialog .row-between{flex-wrap:wrap}.asset-dialog .chart-legend{font-size:.8125rem;direction:ltr}.asset-marker-info{padding:12px 0}.asset-dialog .metric-row{gap:12px;flex-wrap:wrap}.asset-dialog .metric-row>*{min-width:0}.wallet-card .row-body>.button{margin-top:12px}#account-activity select{max-width:100%}#account-activity .metric-row{flex-wrap:wrap;gap:12px}
@media(max-width:700px){.asset-dialog{padding:12px;max-height:92vh}.asset-dialog .canvas-wrap{height:390px}.asset-dialog .fold-body{padding:12px}.asset-dialog .fold-heading{padding:12px}.asset-dialog .metric-row{font-size:.875rem}}


/* ui_sources/legacy/03-design.css */
@font-face{font-family:Inter;src:url('/static/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+20A0-20CF,U+2190-21FF}
:root{--bg:#0a1420;--panel:#152234;--line:#2c394d;--text:#e4e9f2;--muted:#a0aec2;--green:#34d3a4;--red:#ff8794;--amber:#f2c56b;--brand:#51b0f3;--brand-ink:#0a1420;--blue:#7198f6;--control:#8293aa;--font:Inter,Vazirmatn,Tahoma,sans-serif;color-scheme:dark}
:root[data-theme=light]{--bg:#f4f6f9;--panel:#fff;--line:#d8e0e9;--text:#142334;--muted:#52637c;--green:#08785b;--red:#b53049;--amber:#92500b;--brand:#1d64bf;--brand-ink:#fff;--blue:#465bb3;--control:#62758b;color-scheme:light}
body{font-family:var(--font);line-height:1.85;background:var(--bg)}button,input,select,textarea{font-family:inherit}input,select,textarea{border-color:var(--control);max-width:100%}.mono,bdi,.money{font-family:Inter,Vazirmatn,sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}h1,h2,h3{line-height:1.6}h1{font-size:1.7rem}h2{font-size:1.15rem}h3{font-size:1rem}p{overflow-wrap:anywhere}.button.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.nav-button.active,.subnav-button.active{color:var(--brand);border-color:transparent;background:color-mix(in srgb,var(--brand) 13%,var(--panel))}.subnav-button.active{box-shadow:inset 0 -2px var(--brand)}
.shell{grid-template-columns:256px minmax(0,1fr);max-width:1920px}.sidebar{border-radius:22px;margin:20px 12px;top:20px;padding:20px 14px;background:var(--panel)!important}.workspace{padding:12px 26px}.nav-button{min-height:56px;border-radius:13px;padding:10px 14px}.nav-button span:last-child{white-space:normal}.sidebar-bottom{font-size:.875rem}.brand-name{font-size:.93rem}.sidebar .brand small{font-size:.8rem}.header-brand img{width:36px;height:36px;object-fit:contain}.topbar{position:sticky;top:0;z-index:35;min-height:88px;align-items:center;background:var(--bg);padding:10px 0;gap:12px;border-bottom:1px solid var(--line)}.topbar h1{font-size:1.5rem}.header-actions{align-items:center;gap:8px}.header-actions>.button{min-height:42px}.header-actions #clock-wrap{display:block}.header-actions #clock-wrap{cursor:default}#clock{display:block;direction:ltr;font-family:Inter,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.04em}#persian-date{display:block;font-size:.8rem;color:var(--muted)}#unread-count{font-family:Inter,sans-serif}#header-health{max-width:160px}#sidebar-collapse{align-self:end}.sidebar-collapsed .shell{grid-template-columns:88px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding:16px 8px}.sidebar-collapsed .sidebar .brand-name,.sidebar-collapsed .sidebar .brand>small,.sidebar-collapsed .nav-button>span:last-child,.sidebar-collapsed .sidebar-bottom{display:none}.sidebar-collapsed .nav-button{justify-content:center;padding:10px}.sidebar-collapsed .brand-identity img{width:36px;height:36px}.sidebar-collapsed .nav-icon{display:flex!important}.subnavigation{flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:8px;padding:16px 0;scrollbar-width:thin}.subnav-button{flex:0 0 auto;border-radius:10px;padding:8px 16px;min-height:44px;white-space:nowrap;font-size:.9rem}.fold-toolbar{padding:10px 0;gap:8px}.fold-panel{border-radius:18px;margin:14px 0}.fold-heading{min-height:58px;padding:14px 18px}.fold-body{padding:0 18px 18px}.overview-strip{font-size:.875rem}.home-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.home-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px;min-width:0;display:flex;flex-direction:column;gap:10px}.home-card:nth-child(-n+2){border-top:3px solid var(--brand);min-height:290px}.home-card h2{font-size:1.15rem}.home-card>.button{align-self:flex-start;margin-top:auto}.home-card p{font-size:.9rem}.home-card .metric-row{font-size:.95rem}.mini-history{display:block;width:100%;height:auto;max-height:130px;color:var(--brand);margin:12px 0}.view-controls{gap:12px}.view-controls>input,.view-controls>select{min-width:min(160px,100%);flex:1}.view-controls button{flex:0 0 auto}.market-context select{max-width:300px}.table-wrap{border:1px solid var(--line);border-radius:16px;overflow:auto}th{background:color-mix(in srgb,var(--brand) 7%,var(--panel))!important;color:var(--muted)}td{white-space:normal;overflow-wrap:anywhere}table{min-width:100%;background:var(--panel)}.desktop-signal-table table{min-width:950px}.desktop-asset-table table{min-width:720px}.desktop-signal-table~.pagination{margin:14px 0}#signal-cards,#portfolio-wallets{display:none}.token-icon{display:inline-grid;position:relative;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;color:var(--brand);background:color-mix(in srgb,var(--brand) 13%,var(--panel));font-size:.65rem;font-family:Inter,sans-serif}.token-icon img{position:absolute;inset:0;width:30px;height:30px}.token-icon.has-token-image{font-size:0}.coin-label{display:inline-flex;gap:9px;align-items:center}.coin-icon>.token-icon{width:38px;height:38px}.coin-icon>.token-icon img{width:38px;height:38px}.depth-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.depth-columns section{min-width:0}.notification-item{padding:18px 0;border-bottom:1px solid var(--line)}.notification-item.unread{border-inline-start:3px solid var(--brand);padding-inline-start:12px}.notification-item>button{margin:8px 0 0 8px}#notifications-dialog{max-width:560px}.empty-symbol{color:var(--muted);font-size:1.5rem}.empty-state{padding:24px 16px;min-height:110px}.empty-state .button{margin-top:12px}.metric-row>:last-child{min-width:0;overflow-wrap:anywhere}.chart-card:fullscreen,.chart-card.fullscreen-fallback{background:var(--panel);padding:18px;overflow:auto;width:100%;height:100%;border-radius:0}.chart-card.fullscreen-fallback{position:fixed;inset:0;z-index:9999}.chart-card:fullscreen .canvas-wrap,.chart-card.fullscreen-fallback .canvas-wrap{height:65vh;min-height:230px}.chart-card:fullscreen~*,.chart-card.fullscreen-fallback~*{visibility:hidden}.chart-options{flex-wrap:wrap;gap:14px}.chart-options label{display:flex;align-items:center;gap:7px;min-height:44px;min-width:80px}.chart-options input{width:20px;height:20px}#advanced-chart{padding:8px 12px;border-bottom:1px solid var(--line)}#advanced-chart>summary{cursor:pointer;min-height:36px}#advanced-timeframe{margin:10px 0;min-height:44px}.canvas-wrap{height:440px}.chart-footer{gap:12px}.tf-button{min-width:42px;min-height:42px;padding:6px;white-space:nowrap}.timeframes{gap:4px;flex-wrap:wrap}.table-button{color:var(--brand)}#report-start,#report-end{direction:ltr}.page-group{min-width:0}#page-settings>.page{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;margin:18px 0}#page-settings select{margin:12px 8px 12px 0}.checkbox-label{min-height:44px;display:flex;gap:10px;align-items:center}.checkbox-label input{width:20px;height:20px}.error-banner{position:relative;z-index:36}.login-screen{background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--brand) 9%,var(--bg)),var(--bg) 65%)}.login-card{border-radius:22px;padding:32px}.brand-identity{gap:10px}.notice{font-size:.85rem}.row-body .metric-row{gap:14px}#page-trade-performance table{min-width:850px}#trade-report-content,#signal-report-content,#signal-stats-content{overflow:auto;max-width:100%;min-width:0}
@media(min-width:851px){#signal-cards,#portfolio-wallets{display:none!important}}
@media(max-width:1250px){.header-actions{flex-wrap:wrap;justify-content:flex-end}.header-actions #language,.header-actions .text-size-control{display:none}.topbar{min-height:90px}.shell{grid-template-columns:228px minmax(0,1fr)}.workspace{padding:10px 20px}.topbar h1{font-size:1.25rem}.header-actions .button{font-size:.8rem}.header-actions{gap:6px}}
@media(max-width:850px){.shell,.sidebar-collapsed .shell{display:block}.sidebar{margin:0;padding:0;border:0;height:0;position:static}.sidebar>.brand,.sidebar-bottom,#sidebar-collapse{display:none}.navigation{position:fixed;z-index:60;bottom:0;inset-inline:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));margin:0;border-radius:0;background:var(--panel);border-top:1px solid var(--line);box-shadow:none;gap:0}.navigation .nav-button{display:flex;flex-direction:column;gap:4px;border:0;border-radius:12px;min-width:0;padding:7px 1px;min-height:58px;font-size:.7rem;line-height:1.5}.navigation .nav-icon{display:block!important;width:23px;height:23px;flex:0 0 23px}.navigation .nav-button>span:last-child,.sidebar-collapsed .navigation .nav-button>span:last-child{display:block}.workspace{padding:0 14px 110px}.topbar{padding:12px 0;gap:8px;min-height:90px;align-items:center;flex-wrap:wrap}.header-brand img{width:30px;height:30px}.topbar>div:first-of-type{flex:1}.topbar h1{font-size:1.2rem}.header-actions{width:100%;justify-content:flex-start;gap:6px;margin:0}.header-actions .button{min-height:38px;font-size:.75rem;padding:7px 10px}.header-actions #clock-wrap{margin-inline-end:auto;order:-1}.header-actions .theme-toggle,.header-actions .text-size-control,.header-actions #language{display:none}.header-actions #clock{font-size:.85rem}#persian-date{display:none}#header-health{max-width:none;font-size:.7rem}.header-compact .topbar>div:first-of-type,.header-compact .header-brand{display:none}.header-compact .topbar{min-height:58px;padding:8px 0}.home-overview{grid-template-columns:1fr;gap:14px}.home-card{padding:18px}.home-card:nth-child(-n+2){min-height:235px}.desktop-signal-table,.desktop-asset-table,.desktop-signal-table~.pagination{display:none}#signal-cards,#portfolio-wallets{display:grid}.subnavigation{gap:7px;padding:12px 0}.subnav-button{font-size:.85rem;padding:8px 14px}.depth-columns{grid-template-columns:1fr}.depth-columns table{font-size:.8rem}.depth-columns td,.depth-columns th{padding:10px 8px}.canvas-wrap{height:370px}.chart-toolbar{gap:8px}.tf-button{font-size:.8rem;min-width:36px;min-height:40px}.chart-toolbar>.row{flex-wrap:wrap;gap:6px}.chart-card:fullscreen .canvas-wrap,.chart-card.fullscreen-fallback .canvas-wrap{height:64vh}.notice{font-size:.8rem;padding:10px 12px}.fold-heading{padding:13px 15px}.fold-body{padding:0 14px 16px}.home-card .metric-row{font-size:.9rem}.coin-icon{width:34px;height:34px}.footer{padding-bottom:20px}.metric-row{align-items:flex-start;flex-wrap:wrap}.metric-row>:first-child{flex:1;min-width:100px}.metric-row>:last-child{max-width:100%}.asset-dialog .metric-row{flex-wrap:wrap}.view-controls>input,.view-controls>select{width:100%;min-width:0}.table-wrap td{overflow-wrap:anywhere}.subnavigation{scrollbar-width:none}.row-heading{padding:14px}.text-size-control{max-width:90px}.brand-identity .brand-name{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

[data-theme=light] .navigation .nav-button.active,[data-theme=dark] .navigation .nav-button.active,.navigation .nav-button.active .nav-icon{color:var(--brand);background:color-mix(in srgb,var(--brand) 13%,var(--panel));border-color:transparent}[data-theme] .button.primary{background:var(--brand);color:var(--brand-ink)}.tf-button.active,[data-theme=light] .tf-button.active{color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--panel));border-color:var(--brand)}

#notification-bell,#settings-open{display:inline-flex;align-items:center;justify-content:center;gap:5px}#notification-bell svg,#settings-open svg{flex-shrink:0}[aria-busy=true]{min-height:130px}[aria-busy=true]::before{content:'';display:block;height:70px;border-radius:12px;background:linear-gradient(100deg,var(--line),var(--panel),var(--line));opacity:.6}#home-assets,#home-performance{min-height:230px}

@media(max-width:850px){.navigation .nav-button>span:last-child{overflow-wrap:anywhere;max-width:100%}.workspace{padding-bottom:calc(7rem + env(safe-area-inset-bottom,0px))}.navigation{align-items:stretch}}@media(pointer:coarse){.button,.icon-button,input,select{min-height:44px}.tf-button{min-height:44px}}

html{scroll-padding-top:calc(var(--header-height,120px) + 16px)}main button,main select,main summary{scroll-margin-block:16px}

.table-scroll{overflow-x:auto;max-width:100%;min-width:0}.table-arrows{display:flex;gap:8px}.table-arrows .icon-button{min-height:44px;min-width:44px}#page-settings .button{max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}

#detail-dialog{position:fixed;top:0;bottom:0;right:0;left:auto;margin:0;width:min(620px,100vw);height:100dvh;max-height:100dvh;max-width:100vw;border-radius:0;padding:24px;overflow:auto}#detail-dialog>.row-between{position:sticky;top:-24px;background:var(--panel);z-index:2;padding:12px 0}.wallet-card .row-between{gap:10px}#header-health{white-space:normal;line-height:1.5}@media(max-width:850px){#detail-dialog{width:100vw;padding:18px}}

/* Stage 13 review: compact summaries, a quiet empty state and settings-only utilities. */
.home-overview{gap:16px;margin:16px 0}
.home-card{padding:18px 20px;gap:14px}
.home-card:nth-child(-n+2){min-height:0}
#home-assets,#home-performance{min-height:0}
.home-card-content{display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}
.home-card-content>.button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.home-card-content>.metric-row{margin:0;padding:7px 0}
.home-card>.button{margin-top:2px}
.home-card p{line-height:1.8}
.home-card .mini-history{max-height:88px;margin:2px 0 0}
.home-signal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:12px 14px;flex:1;border-radius:14px;background:color-mix(in srgb,var(--brand) 4%,var(--panel))}
.home-signal-empty svg{width:36px;height:36px;padding:7px;box-sizing:content-box;border-radius:50%;color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,var(--panel))}
.home-signal-empty strong{font-size:1rem;font-weight:500}
.home-signal-empty p{max-width:32ch}
.has-empty-signals>.warning{font-size:.8rem;text-align:center}
.settings-appearance-controls{display:flex;flex-wrap:wrap;align-items:end;gap:18px;margin:18px 0}
.setting-field{display:flex;flex-direction:column;gap:8px;min-width:0;max-width:100%}
#page-settings .setting-field select{margin:0;min-height:44px}
.setting-field>.button{min-height:44px;align-self:flex-start}
@media(max-width:850px){.home-card{padding:16px;gap:12px}.home-overview{gap:12px}.home-signal-empty{padding:16px 12px}.topbar{display:flex}.header-actions{gap:8px}.header-actions #privacy-toggle{flex-basis:auto}.settings-appearance-controls{align-items:stretch}.setting-field{flex:1 1 130px}}

/* Final UI refinement: minimal identity, clearer hierarchy and stable financial columns. */
:root{--radius-card:18px;--radius-control:11px;--space-card:18px}
.button,.icon-button,input,select{border-radius:var(--radius-control)}
.button.primary{font-weight:600}
.login-screen{position:fixed;inset:0;min-height:100dvh;display:flex;align-items:center;justify-content:center;overflow:auto;padding:24px;background:var(--bg)}
.login-card{position:relative;display:flex;flex-direction:column;gap:18px;margin:auto;width:min(420px,100%);max-width:100%;padding:54px 32px 32px;border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:0 16px 55px #0000000c}
.login-identity{display:flex;flex-direction:column;align-items:center;gap:18px;margin:0 0 12px;text-align:center}
.login-identity img{object-fit:contain;width:72px;height:72px}
.login-identity h1{font:650 1.25rem/1.5 Inter,Vazirmatn,sans-serif;letter-spacing:-.025em;max-width:100%}
.login-card .login-theme{position:absolute;inset-block-start:12px;inset-inline-end:12px;width:42px;height:42px;min-height:42px;padding:0}
.login-card>input,.login-card>button[type=submit]{width:100%;min-height:50px;margin:0}
#login-error{margin:0;font-size:.875rem;line-height:1.8}#login-error:empty{display:none}
.sidebar{gap:18px;padding:20px 14px;border-radius:var(--radius-card)}
.sidebar .brand{margin-bottom:6px}.sidebar .brand-identity{gap:12px}.sidebar .brand-identity img{width:42px;height:42px}.sidebar .brand-name{font-size:.875rem;line-height:1.6}.sidebar .brand-name small{font-size:.75rem;letter-spacing:.16em}
.nav-button{min-height:52px;gap:12px;padding:10px 14px;border-radius:12px}.navigation{gap:7px}.nav-button.active{box-shadow:inset -3px 0 var(--brand)}
.topbar{min-height:76px}.topbar h1{font-size:1.4rem}.notice{padding:8px 12px;font-size:.8rem;line-height:1.7;border-radius:11px}
.fold-toolbar{padding:8px 0;gap:8px}.fold-toolbar .button{min-height:38px;padding:6px 12px}
.subnavigation{padding:12px 0;gap:8px}.subnav-button{font-size:.875rem;padding:8px 14px;min-height:42px}
.fold-panel{border-radius:var(--radius-card);margin:12px 0}.fold-heading{padding:12px 16px;min-height:54px}.fold-titles>strong{font-size:1rem}.fold-subtitle{font-size:.8rem}.fold-body{padding:0 16px 16px}
.home-overview{gap:14px}.home-card{border-radius:var(--radius-card)}.home-card p{font-size:.875rem}
.signal-controls{display:grid;grid-template-columns:minmax(180px,1.25fr) repeat(3,minmax(130px,1fr));align-items:end;gap:12px;padding:14px 16px;margin:10px 0 14px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel)}
.filter-field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:.8rem}.filter-field input,.filter-field select{width:100%;min-width:0;max-width:100%;font-size:.95rem;min-height:44px}
.desktop-signal-table table{min-width:1100px;table-layout:auto}.desktop-signal-table th{font-size:.85rem;font-weight:500;white-space:nowrap}.desktop-signal-table td{padding:11px 13px;font-size:.95rem;line-height:1.7;vertical-align:middle}.table-value{display:inline-block;direction:ltr;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}.table-levels{display:flex;flex-direction:column;gap:2px;align-items:flex-start;min-width:112px}.desktop-signal-table .coin-label{min-width:130px}.desktop-signal-table td:nth-child(6){min-width:70px}.desktop-signal-table td:nth-child(7){min-width:112px}.desktop-signal-table .button{min-height:40px;padding:6px 12px}
#dialog-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:1.15rem}.detail-symbol{direction:ltr;white-space:nowrap}.detail-direction{font-size:.9rem;color:var(--muted)}
.signal-detail-content{display:flex;flex-direction:column;gap:14px}.signal-detail-content>.badge{align-self:flex-start}.signal-detail-content .detail-disclaimer{margin:0;font-size:.8rem;line-height:1.7;color:var(--muted)}
.signal-plan{padding:14px 16px;margin:0;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 50%,var(--panel))}.signal-plan>.metric-row{padding:9px 0;gap:14px;margin:0}.signal-plan .metric-row>:first-child{font-size:.85rem}.signal-plan .metric-row>:last-child{font-variant-numeric:tabular-nums}.signal-plan .plan-entry>:last-child{font-weight:600;font-size:1.05rem}.signal-plan .plan-cost{font-size:.85rem}.signal-plan .plan-reward>:last-child{font-weight:600}.signal-plan .metric-row:last-child{border-bottom:0}
.signal-timing{display:grid;gap:8px}.signal-timing .metric-row{margin:0;padding:6px 0;font-size:.875rem}
.position-scenario{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--brand) 3%,var(--panel))}.position-scenario>h3,.position-scenario>.scenario-result,.position-scenario>p{grid-column:1/-1}.position-scenario .field{min-width:0;display:flex;flex-direction:column;gap:6px}.position-scenario .field label{font-size:.85rem}.position-scenario input{width:100%;min-width:0}.position-scenario>.button{justify-self:start}.position-scenario>p{margin:0;font-size:.8rem;color:var(--muted)}.scenario-result:empty{display:none}.signal-detail-content .signal-events{margin:0}
.portfolio-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.asset-total{padding:16px;border-radius:var(--radius-card);display:flex;flex-direction:column;gap:12px;min-width:0}.asset-total>span{font-size:.8rem}.asset-total .money{font-size:1.15rem;margin:0;line-height:1.8;overflow-wrap:anywhere}
#portfolio-intro{font-size:.875rem;color:var(--muted);margin:8px 0}#portfolio-status{font-size:.8rem;line-height:1.8;margin:6px 0 12px}.portfolio-controls{padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-card);gap:18px;margin:12px 0;align-items:end}.portfolio-controls label>span{font-size:.8rem}.portfolio-controls select{font-size:.95rem}#portfolio-notes{padding:0 4px;margin:10px 0 16px}#portfolio-notes p{font-size:.8rem;line-height:1.8;margin:5px 0}.desktop-asset-table th{font-size:.85rem}.desktop-asset-table td{padding:13px;font-size:.95rem}.asset-total,.portfolio-controls{box-shadow:0 2px 10px #00000003}
.market-context{margin:10px 0 14px}.symbol-picker{display:flex;gap:12px;align-items:center;min-width:0;font-size:.875rem}.symbol-picker select{width:250px;max-width:100%;font-family:Inter,sans-serif;font-variant-numeric:tabular-nums}.symbol-header{margin:16px 0}.analysis-grid{grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}.analysis-grid>.fold-panel{margin:0}.analysis-grid .chart-card,.analysis-grid .decision-panel{border:0;border-radius:0;background:transparent}.analysis-grid .decision-panel{padding:4px 0 0;box-shadow:none}.decision-panel .divider{margin:14px 0}.decision-panel .decision-title{font-size:1.1rem;margin:12px 0}.decision-panel .decision-copy,.decision-panel .signal-note,.decision-panel .reason-list{font-size:.85rem;line-height:1.8}.decision-panel .signal-plan{padding:12px}.decision-panel .plan-entry>:last-child{font-size:1rem}.decision-panel .signal-plan .metric-row{flex-wrap:wrap;gap:5px}.decision-panel .signal-plan .metric-row>:first-child{flex-basis:100%}.decision-panel .signal-plan .metric-row>:last-child{max-width:100%;overflow-wrap:anywhere}.decision-panel .row-between>.eyebrow{display:none}.canvas-wrap{height:460px}.chart-toolbar{padding:12px 4px;gap:10px}#advanced-chart{padding:8px 0}.chart-footer{font-size:.8rem}#page-analysis>.section-heading{margin-top:20px}
[data-theme=light] .panel,[data-theme=light] .fold-panel{box-shadow:0 2px 12px #14233404}[data-theme=light] .signal-plan{background:#f7f9fc}
@media(min-width:851px){.topbar>.header-brand{display:none}}
@media(max-width:1150px){.signal-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-grid{grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:850px){.workspace{padding-inline:14px}.topbar{min-height:74px}.topbar h1{font-size:1.15rem}.navigation .nav-button{font-size:.8rem;min-height:62px;line-height:1.55;padding:7px 2px}.navigation .nav-button.active{box-shadow:none}.portfolio-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.asset-total{padding:13px;gap:9px}.asset-total .money{font-size:1rem}.portfolio-controls{gap:12px;padding:12px}.signal-controls{padding:12px;gap:10px}.filter-field{font-size:.8rem}.filter-field input,.filter-field select{font-size:.875rem;padding:9px 10px}.signal-plan{padding:12px}.signal-plan .metric-row{flex-wrap:wrap;gap:6px}.signal-plan .metric-row>:first-child{flex-basis:100%}.signal-plan .metric-row>:last-child{max-width:100%;overflow-wrap:anywhere}.position-scenario{grid-template-columns:1fr;padding:14px}.position-scenario>.button{min-height:44px}.analysis-grid{grid-template-columns:minmax(0,1fr)}.symbol-picker{width:100%}.symbol-picker select{flex:1;min-width:0;width:auto}.canvas-wrap{height:380px}.notice{padding:8px 10px;font-size:.78rem}.login-card{padding:54px 24px 26px}.login-identity h1{font-size:1.15rem}.home-card{padding:16px}.home-card-content{gap:9px}.home-signal-empty{padding:12px}.home-signal-empty svg{width:30px;height:30px}}
@media(max-width:380px){.login-screen{padding:18px}.login-card{padding-inline:20px}.login-identity h1{font-size:1.1rem}.signal-controls{grid-template-columns:minmax(0,1fr)}}

/* Header controls stay usable on narrow screens; the clock is display-only. */
.header-actions #header-theme{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:1.25rem;line-height:1;flex-shrink:0}
.header-clock{cursor:default}

/* All seven primary intervals remain directly reachable in one touch row. */
@media(max-width:700px){.timeframes{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain}.tf-button{flex-shrink:0}}

/* Keep both Tehran clock and compact Persian date visible on mobile. */
@media(max-width:850px){.header-actions #clock-wrap{display:flex!important;align-items:center;gap:8px}#persian-date{display:block;white-space:nowrap;font-size:.7rem}}

/* Phase 2: chart-first market analysis with four compact, data-backed summaries. */
.analysis-grid{display:block;}
.analysis-grid>.fold-panel{width:100%;margin:0 0 16px;}
.analysis-grid .chart-card{display:block;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel);padding:clamp(12px,2vw,24px);}
.analysis-grid .canvas-wrap{height:clamp(360px,52vw,620px);min-height:300px;}
.technical-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 20px;}
.technical-summary .summary-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;min-height:116px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel);}
.technical-summary .summary-label,.technical-summary small{font-size:.82rem;color:var(--muted);}
.technical-summary .summary-value{font-size:1rem;line-height:1.6;overflow-wrap:anywhere;}
.technical-summary small{line-height:1.6;}
#summary-status[data-state="blocked"],#summary-trend[data-state="bearish"]{color:var(--negative,#c43b4d)}
#summary-trend[data-state="bullish"],#summary-status[data-state="current"]{color:var(--positive,#087f5b)}
#summary-status[data-state="pending"],#summary-trend[data-state="mixed"]{color:var(--muted);}
.decision-panel{margin:0 0 18px;}
@media(max-width:850px){.technical-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0 16px}.technical-summary .summary-card{min-height:104px;padding:12px}.analysis-grid .canvas-wrap{height:min(108vw,480px);min-height:300px}.analysis-grid .chart-card{padding:10px}.decision-panel{padding:14px}}
@media(max-width:380px){.technical-summary{grid-template-columns:minmax(0,1fr)}}

/* Phase 4: shared accessibility tokens, comfortable targets and text reflow. */
:root{--positive:var(--green);--negative:var(--red);--focus:var(--brand);--touch-target:44px}
:where(button,.button,.icon-button,.tf-button,.subnav-button,select){min-height:var(--touch-target)}
.header-actions>.button,.header-actions .button,.desktop-signal-table .button,.login-card .login-theme,.tf-button,#advanced-chart>summary{min-height:var(--touch-target)}
.icon-button,.tf-button,.login-card .login-theme,#settings-open{min-width:var(--touch-target)}
.header-brand{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.text-link{display:flex;align-items:center;min-height:44px;max-width:100%;white-space:normal}
:where(button,a,input,select,textarea,summary,canvas,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.fold-heading:focus-visible,.row-heading:focus-visible,[role=region]:focus-visible,main:focus-visible{outline-offset:-4px}
:where(button,a,input,select,summary,canvas,[tabindex]){scroll-margin-block-start:calc(var(--header-height,120px) + 12px);scroll-margin-block-end:8rem}
.skip-link{position:fixed;top:8px;inset-inline-start:12px;z-index:10000;max-width:calc(100vw - 24px);padding:10px 18px;border-radius:var(--radius-control);background:var(--brand);color:var(--brand-ink);transform:translateY(-160%)}
.skip-link:focus{transform:none}
.chart-legend{height:auto;min-height:31px;line-height:1.8;white-space:normal;overflow:visible;overflow-wrap:anywhere;unicode-bidi:isolate}
.chart-footer{flex-wrap:wrap}.chart-footer .row{max-width:100%;min-width:0;flex-wrap:wrap}.chart-footer select{min-width:0;max-width:100%;min-height:44px}
.chart-data-alternative{margin:12px 0;max-width:100%;font-size:.875rem}
.chart-data-alternative>summary{cursor:pointer;min-height:44px;padding:8px 4px}
.chart-data-alternative .table-scroll{border:1px solid var(--line);border-radius:12px}
.chart-data-alternative table{min-width:640px;direction:ltr;font-variant-numeric:tabular-nums}
.chart-data-alternative caption{color:var(--muted);text-align:start;padding:8px}
.chart-data-alternative td{white-space:nowrap;overflow-wrap:normal}
.chart-data-markers{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.chart-data-markers .button{max-width:100%;white-space:normal}
.metric-row>bdi,.table-value{unicode-bidi:isolate;direction:ltr}
.header-clock{max-width:100%;flex-wrap:wrap}
.subnav-button{min-height:44px}
.sidebar .brand{min-height:44px}
.header-tall .topbar{position:relative;top:auto}
@media(max-width:850px){.sidebar{padding:0;border:0;border-radius:0;background:transparent!important}.header-actions .button{min-height:44px}.tf-button{min-width:44px;min-height:44px}.header-actions #clock-wrap{flex-wrap:wrap}.home-card .button{white-space:normal;max-width:100%}#health-scope{flex:1 1 100%;width:100%}}
@media(max-height:500px){.topbar{position:relative;top:auto}.sidebar{position:relative;top:auto}}
@media(forced-colors:active){:where(button,a,input,select,summary,canvas,[tabindex]):focus-visible{outline-color:Highlight}.button,.tf-button,.nav-button,.subnav-button{border:1px solid ButtonText}.nav-button.active,.subnav-button.active,.tf-button.active{border:2px solid Highlight}}

/* Transparent NTS artwork: light ink on dark, original navy on light. */
[data-brand]{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;object-fit:contain}
.login-identity img[data-brand=vertical]{width:min(100%,280px);height:auto;aspect-ratio:512/300;padding:0;border-radius:0}
.login-identity{gap:0}
.sidebar .brand-identity img[data-brand=horizontal]{width:100%;height:auto;aspect-ratio:3/1;max-width:210px;padding:0;border-radius:0}
.header-actions #header-theme{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;flex-shrink:0}

/* Compact live source/execution note; preview and error banners remain distinct. */
#notice:not(.demo){margin:6px 0 4px;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.875rem;line-height:1.6;box-shadow:none}
#notice:empty{display:none}

/* Prospective paper evidence keeps labels intact inside its own scroll region. */
.validation-panel{padding:16px}.validation-panel h3{margin:0 0 12px;font-size:1.05rem;line-height:1.8}.validation-panel table{min-width:480px;table-layout:auto}.validation-panel th,.validation-panel td{white-space:nowrap;word-break:normal;overflow-wrap:normal}.validation-panel p{line-height:1.9}
.learning-panel table{min-width:640px;table-layout:auto}.learning-panel th,.learning-panel td{white-space:nowrap;word-break:normal;overflow-wrap:normal}.learning-panel p{line-height:1.9}

/* Clarity: current opportunities lead; private values retain masking and exact details. */
#home-signals{grid-column:1/-1;border-top:3px solid var(--brand)}#home-signals .home-signal-empty{min-height:0;padding:8px 0;align-items:flex-start;text-align:start}#home-signals-content{gap:.65rem}.home-entry-summary{padding:.6rem;border:1px solid var(--line);border-radius:10px}.home-market-history>summary,#portfolio-notes summary,.wallet-exact>summary{min-height:44px;padding-block:.5rem;cursor:pointer;color:var(--brand)}.portfolio-primary-total{grid-column:1/-1}.portfolio-primary-total .money{font-size:1.75rem;font-weight:750}.asset-market-value{font-weight:750}.wallet-exact .metric-row{line-height:1.8}#notification-bell{font-size:.875rem}.home-card .home-signal-empty p{margin:.3rem 0}
.allocation-layout{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:1.5rem;align-items:center}.allocation-donut{min-width:0}.allocation-donut>svg{width:100%;max-width:280px;display:block;margin:auto}.allocation-segment{cursor:pointer}.allocation-segment:hover{filter:brightness(1.15)}.donut-center{fill:var(--text);font:600 17px var(--font)}.donut-basis{fill:var(--muted);font:14px var(--font)}.allocation-legend{display:grid;gap:.45rem;min-width:0}.allocation-key{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:.65rem;background:var(--bg);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:.65rem;min-height:48px;font:inherit;cursor:pointer;text-align:start;min-width:0}.allocation-key>svg{width:18px;height:18px}.allocation-key>small{grid-column:2/-1}.allocation-key>bdi{font-weight:700}.allocation-key:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.allocation-basis{font-size:.9rem;line-height:1.9}
@media(max-width:760px){.allocation-layout{grid-template-columns:minmax(0,1fr);gap:1rem}.allocation-donut>svg{max-width:250px}}
/* Desktop density: reduce whitespace rather than shrinking readable base text. */
@media(min-width:851px){.workspace{padding:10px 18px}.home-overview{gap:12px}.home-card{padding:14px;gap:8px}#home-signals{grid-column:auto}.home-card-content{gap:7px}.home-card p{margin-block:.35rem}.fold-heading{padding:10px 14px;min-height:48px}.fold-body{padding:0 14px 12px}.table-wrap th,.table-wrap td{padding:8px 10px;line-height:1.55;font-size:.9375rem}.asset-total,.summary-card{padding:12px}.portfolio-primary-total{grid-column:auto}.portfolio-primary-total .money{font-size:1.5rem}.overview-strip>div{padding:12px}.workbench-aside,.workbench-main{padding:12px}.workbench-controls{gap:.6rem}.workbench-chart .canvas-wrap{height:400px}.waiting-card{padding:.65rem}.waiting-list{gap:.6rem}.topbar{gap:8px}.subnavigation{padding-block:10px}}


/* ui_sources/legacy/04-signal-detail.css */
.decision-tabs{display:flex;gap:.4rem;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:.65rem;margin:1rem 0}
.decision-tab{font:inherit;min-height:44px;padding:.55rem .9rem;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer}
.decision-tab[aria-selected=true]{border-color:var(--brand);font-weight:700;background:var(--bg)}
.decision-tab:focus-visible,.decision-panel:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.decision-panel{min-width:0;font-size:1rem;line-height:1.8}
.decision-panel[hidden]{display:none!important}
.decision-panel h3{font-size:1rem;margin:1rem 0 .5rem}
.decision-panel li{margin:.4rem 0}
.decision-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.decision-frame{display:flex;flex-direction:column;gap:.35rem;padding:.7rem;border:1px solid var(--line);border-radius:10px}
.decision-verdict{padding:.8rem;border:1px solid var(--line);border-radius:12px;line-height:1.7}
.decision-panel .signal-note{font-size:.92rem;overflow-wrap:anywhere}
@media(max-width:480px){.decision-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.decision-tab{padding:.6rem .3rem}.decision-metrics{grid-template-columns:1fr}.decision-panel .signal-plan{grid-template-columns:1fr}}


/* ui_sources/legacy/05-signal-workbench.css */
.signal-workbench{margin:1rem 0 1.5rem;min-width:0}
.workbench-controls{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1rem}.workbench-controls select{min-height:44px;max-width:100%}
.workbench-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}.workbench-summary>.metric-row{display:flex;flex-direction:column;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1rem}
.workbench-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1rem;align-items:start}
.workbench-aside,.workbench-main{min-width:0;padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.workbench-aside h2,.workbench-main h2{font-size:1.15rem}.workbench-market-list{display:flex;flex-direction:column;gap:.5rem;max-height:600px;overflow-y:auto;margin-top:.7rem}
.workbench-market{display:flex;flex-direction:column;text-align:start;gap:.35rem;padding:.8rem;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:12px;cursor:pointer;font:inherit;min-height:44px}.workbench-market.selected{border-color:var(--brand);box-shadow:inset 3px 0 var(--brand)}
.workbench-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin:1rem 0}.workbench-chart{min-width:0;background:var(--bg);border-radius:12px;padding:.8rem}.workbench-chart-tools{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.6rem}.workbench-chart-tools select{min-height:44px}.workbench-chart .canvas-wrap{height:420px}.workbench-chart canvas{width:100%;height:100%;touch-action:pan-y;display:block}.workbench-chart:fullscreen,.workbench-fullscreen{background:var(--bg);padding:1rem;overflow:auto}.workbench-fullscreen{position:fixed;inset:0;z-index:1000}.workbench-chart:fullscreen .canvas-wrap,.workbench-fullscreen .canvas-wrap{height:70vh}.workbench-details{margin-top:1rem}.footer{flex-wrap:wrap;gap:.8rem}#app-version{font-size:.85rem;overflow-wrap:anywhere}
@media(max-width:1100px){.workbench-body{grid-template-columns:210px minmax(0,1fr)}.workbench-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.workbench-body{grid-template-columns:1fr}.workbench-aside{padding:.8rem}.workbench-market-list{max-height:210px}.workbench-controls{display:grid;grid-template-columns:1fr 1fr}.workbench-controls label:first-child{grid-column:1/-1}.workbench-controls select{width:100%;min-width:0}.workbench-matrix{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-chart .canvas-wrap{height:340px}.workbench-main{padding:.8rem}.workbench-summary>.metric-row{padding:.8rem;font-size:.9rem}}

.scenario-result{grid-column:1/-1;min-width:0}.manual-form-guide{padding:.8rem;margin-block:.7rem;border:1px solid var(--line);border-radius:12px}.manual-route{font-size:1rem;line-height:1.8}.manual-form-guide .metric-row{gap:1rem;flex-wrap:wrap}.manual-form-guide bdi,.manual-form-guide .mono{overflow-wrap:anywhere}
.workbench-market{flex:0 0 auto;min-height:110px}.workbench-market>*{flex-shrink:0}.decision-verdict{display:block}.decision-verdict>small{display:block;margin-top:.5rem}

#app-version{display:flex;gap:.8rem;flex-wrap:wrap}.version-part{display:inline-flex;align-items:baseline;gap:.3rem;flex-wrap:wrap}
.signal-workbench :is(h2,strong,small,span,p,bdi){overflow-wrap:anywhere;min-width:0}.workbench-controls .filter-field{min-width:0}.workbench-chart-tools>*{max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}.workbench-controls{min-width:0}.workbench-controls select{min-width:0}.workbench-matrix>*{min-width:0}.screening-path{padding:.7rem 1.2rem;line-height:1.9}
.signal-workbench button{white-space:normal;overflow-wrap:anywhere;max-width:100%;min-width:0}
@media(max-width:760px){.workbench-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

.signal-opportunities{padding:1rem;margin-bottom:1rem;border:1px solid var(--brand);border-radius:16px;background:var(--panel);min-width:0}
.opportunity-heading{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.opportunity-heading h2{margin:0;font-size:1.15rem;line-height:1.8}.opportunity-heading button{min-height:44px}
.opportunity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.opportunity-card{padding:1rem;border:1px solid var(--line);border-radius:12px;min-width:0;background:var(--bg);display:flex;flex-direction:column;gap:.65rem}.opportunity-card>strong{font-size:1.1rem;direction:ltr;text-align:start}.opportunity-modes{display:flex;flex-wrap:wrap;gap:.4rem}.opportunity-levels{display:grid;grid-template-columns:1fr;gap:.4rem}.opportunity-levels>div{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;flex-wrap:wrap}.opportunity-levels bdi{direction:ltr;font-size:.95rem}.opportunity-grid>.warning{grid-column:1/-1}.opportunity-card>button{align-self:flex-start;min-height:44px}
.workbench-list-controls{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.4rem;align-items:center}.workbench-list-controls>span{text-align:center;font-size:.85rem}.workbench-list-controls .button{min-height:48px;padding:.5rem .65rem}.workbench-list-controls button:disabled{opacity:.4;cursor:default}
.workbench-market-list{max-height:384px;scrollbar-width:none;overscroll-behavior:contain}.workbench-market-list::-webkit-scrollbar{display:none}.workbench-main{scroll-margin-top:calc(var(--header-height,100px) + 16px)}
@media(max-width:760px){.opportunity-grid{grid-template-columns:minmax(0,1fr)}.signal-opportunities{padding:.8rem}.workbench-market-list{max-height:228px}.workbench-list-controls .button{min-width:72px}.opportunity-heading{align-items:flex-start}.opportunity-levels bdi{max-width:100%;overflow-wrap:anywhere}}
.opportunity-grid{max-height:440px;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain;padding:2px}.opportunity-grid::-webkit-scrollbar{display:none}#opportunity-scroll-controls{margin-bottom:.7rem}#opportunity-scroll-controls[hidden]{display:none}
@media(max-width:760px){.opportunity-grid{max-height:360px}.opportunity-card{padding:.8rem}}

.decision-overview,.waiting-section{padding:1rem;margin-bottom:1rem;border:1px solid var(--line);border-radius:16px;background:var(--panel);min-width:0}.decision-overview h2,.waiting-section h2{margin:0 0 .5rem;font-size:1.15rem}.decision-partition{font-weight:600;line-height:1.9}.decision-overview .workbench-summary{margin:1rem 0}.decision-overview .workbench-summary>.metric-row{padding:.8rem;background:var(--bg)}.decision-performance{display:flex;flex-direction:column;gap:.4rem;padding-top:.8rem;margin-top:.8rem;border-top:1px solid var(--line)}.decision-performance p{margin:.2rem 0}.decision-performance a{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center}.timeframe-roles{padding:.8rem;border-inline-start:3px solid var(--brand);line-height:1.9;background:var(--panel);border-radius:8px}.waiting-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:.7rem}.waiting-card{padding:.9rem;border:1px solid var(--line);border-radius:12px;min-width:0;background:var(--bg)}.waiting-primary{line-height:1.9;font-weight:600}.waiting-card .row-between{flex-wrap:wrap;gap:.5rem}.waiting-card button{min-height:44px}.waiting-card small{display:block;line-height:1.8}.condition-steps{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0}.condition-steps>li{padding:.35rem .55rem;border:1px solid var(--line);border-radius:7px;font-size:.95rem;line-height:1.65}.step-passed{color:var(--green);border-color:currentColor!important}.step-blocked{font-weight:700;color:var(--text);background:var(--panel)}.step-not_reached{color:var(--muted)}.decision-help{margin-top:1rem}.waiting-card details>summary{cursor:pointer;min-height:44px;padding-block:.5rem}.waiting-section [hidden]{display:none}.waiting-list>.warning{grid-column:1/-1}
@media(max-width:1100px){.waiting-list{grid-template-columns:repeat(3,minmax(0,1fr))}.waiting-card .row-between{align-items:flex-start}}
@media(max-width:760px){.waiting-list{grid-template-columns:minmax(0,1fr)}.decision-overview,.waiting-section{padding:.8rem}.decision-overview .workbench-summary{gap:.5rem}.decision-performance{font-size:1rem}.waiting-card{padding:.8rem}.condition-steps>li{font-size:.95rem}.timeframe-roles{font-size:1rem}}

.decision-overview .signal-note,.waiting-section .signal-note{color:var(--muted)}.decision-overview [data-state=healthy]{color:var(--green)}.decision-overview [data-state=unknown]{color:var(--amber)}
.condition-values{margin:.6rem 0;padding-inline-start:1.25rem;line-height:1.9;font-size:1rem}.condition-values li{margin-block:.25rem;overflow-wrap:anywhere}
.decision-frame{display:flex;flex-direction:column;gap:.4rem;padding:.7rem;border:1px solid var(--line);border-radius:10px;min-width:0}.matrix-explanation{line-height:1.9;margin-block:.6rem 1rem}.decision-verdict details>summary{cursor:pointer;padding-block:.5rem;min-height:44px}.blocker-pairs{padding-inline-start:1.2rem;line-height:1.9}.blocker-pairs li{margin-block:.55rem}.workbench-market span{line-height:1.8}#workbench-selected-symbol:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
.decision-diagnostics>summary,.selected-technical>summary{cursor:pointer;min-height:48px;padding-block:.65rem;color:var(--brand);font-weight:600}.decision-plain-summary{line-height:1.9;font-weight:600}.decision-diagnostics>summary{font-size:.95rem}.decision-verdict{margin-bottom:1rem}.selected-technical{margin-top:.8rem;border-block:1px solid var(--line)}.selected-technical-body{padding-block:.6rem}.signal-opportunities #opportunity-status{font-size:1.05rem;line-height:1.9;color:var(--text);font-weight:600}.waiting-technical>summary{font-size:.95rem;color:var(--brand)}
/* Minimal signal view: current opportunity, chart and optional disclosures. */
.signal-workbench>.monitoring-fold,.signal-workbench>.waiting-fold{margin-block:.65rem;border:1px solid var(--line);border-radius:10px;background:var(--panel);padding-inline:.8rem}.signal-workbench>.monitoring-fold>summary,.signal-workbench>.waiting-fold>summary,.pairs-fold>summary{cursor:pointer;min-height:44px;padding-block:.65rem;font-weight:600}.waiting-fold .waiting-section{border:0;padding:.5rem 0;margin:0}.waiting-fold .waiting-section>h2,.waiting-fold .waiting-section>p{display:none}.monitoring-fold .decision-overview{border:0;padding:.5rem 0}.workbench-body{display:flex;flex-direction:column}.workbench-body>*{width:100%;min-width:0}.workbench-market-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.workbench-market{min-height:90px;padding:.65rem}.workbench-controls .filter-field:first-child{grid-column:auto}.workbench-controls{margin-bottom:.5rem}.workbench-controls label[hidden],.workbench-chart-tools [hidden]{display:none!important}.signal-opportunities{padding:.8rem;margin-bottom:.5rem}.signal-opportunities h2{font-size:1.05rem}.signal-opportunities #opportunity-status{font-size:1rem;margin-block:.5rem;line-height:1.75}.compact-monitoring-counts{font-size:.9rem;line-height:1.7}.decision-verdict{margin-bottom:.6rem}.decision-verdict .signal-note{margin-block:.4rem}.signal-opportunities .opportunity-heading{gap:.3rem}.pairs-fold>h2{display:none}.signal-workbench .decision-help>button{margin:.6rem}
@media(max-width:760px){.workbench-market-list{display:flex}.workbench-main{padding:.75rem}.workbench-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.workbench-chart{padding:.55rem}.workbench-chart .canvas-wrap{height:360px}.workbench-chart-tools{gap:.35rem}.workbench-chart-tools .button{padding:.4rem .6rem}.signal-opportunities{padding:.7rem}}
.signal-opportunities[data-empty=true]{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .8rem;padding:.55rem .8rem}.signal-opportunities[data-empty=true]>.opportunity-heading,.signal-opportunities[data-empty=true] #opportunity-list:empty,.opportunity-heading[hidden]{display:none!important}.signal-opportunities[data-empty=true] #opportunity-status{margin:.2rem 0}.signal-opportunities[data-empty=true] .compact-monitoring-counts{margin:.2rem 0;color:var(--muted)}.workbench-main .decision-verdict{padding:.5rem .65rem}.workbench-main .decision-verdict>p{margin:.2rem 0}.workbench-main .decision-verdict:empty{display:none}
@media(min-width:851px){.workbench-main{padding:12px}.workbench-chart .canvas-wrap{height:380px}.workbench-chart-tools{margin-bottom:.4rem}.signal-workbench>.waiting-fold>summary{padding-block:.45rem}.signal-workbench>.waiting-fold{margin-block:.45rem}}


/* ui_sources/system.css */
/* NTS UI system: one scale, compact desktop, readable mobile. */
:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--radius-control:7px;--radius-card:11px;--bg:#0c1320;--panel:#121d2e;--line:#28364c;--text:#e7edf8;--muted:#a1aec5;--brand:#95b3fb;--brand-ink:#0b1730;--green:#56dfb7;--red:#ff91a2;--amber:#e8c47a;--control:#7e90af;color-scheme:dark}
:root[data-theme=light]{--bg:#f3f6fb;--panel:#fff;--line:#dbe3ef;--text:#19283f;--muted:#5a6b84;--brand:#365fc4;--brand-ink:#fff;--green:#096e58;--red:#b32f49;--amber:#8a5b10;--control:#8292aa;color-scheme:light}
html{scroll-padding-top:calc(var(--header-height,70px) + 12px)}body{font-size:1rem;line-height:1.7}h1{font-size:1.25rem;letter-spacing:-.025em}h2{font-size:1.05rem}h3{font-size:1rem}button,input,select,textarea{font:inherit}.button,.icon-button,input,select,textarea{border-radius:var(--radius-control);box-shadow:none}.button,.icon-button{font-size:.9rem}.button.quiet{background:var(--panel);border:1px solid var(--line)}.button.primary{background:var(--brand);color:var(--brand-ink)}:is(button,a,input,select,summary,canvas):focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.shell{grid-template-columns:220px minmax(0,1fr);max-width:1920px;min-height:100dvh}.workspace{padding:10px 20px 20px;min-width:0}.sidebar{position:sticky;top:12px;margin:12px 8px 12px 12px;padding:16px 12px;min-height:calc(100dvh - 24px);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none;gap:18px}.sidebar .brand{padding:0 2px 16px;border-bottom:1px solid var(--line)}.sidebar .navigation{gap:5px}.sidebar .nav-button{min-height:44px;padding:8px 10px;gap:10px;font-size:.925rem;border-radius:7px}.sidebar .nav-icon{width:22px;height:22px;flex-basis:22px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;font-size:.825rem;line-height:1.8}.nav-button.active,.subnav-button.active{color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--panel));box-shadow:inset -3px 0 var(--brand)}
.topbar{min-height:58px;padding:6px 0;gap:10px;border-bottom:1px solid var(--line);background:var(--bg)}.topbar h1{font-size:1.2rem;margin:0;font-weight:750}.header-actions{gap:6px}.header-actions>.button{min-height:36px;padding:5px 9px;font-size:.825rem}.header-actions #header-theme{min-width:38px;min-height:36px;font-size:1.1rem}.header-actions #header-health{font-size:.8rem}.header-actions #clock-wrap{min-width:126px;margin-inline:4px}#clock{font-size:.85rem}#persian-date{font-size:.75rem}.notice:not(.demo){margin-block:5px 0;padding:3px 0;min-height:0;border:0;border-radius:0;color:var(--muted);background:transparent;font-size:.825rem}.notice.demo{border-radius:7px;font-size:.8rem;padding:6px 10px}.subnavigation{padding:5px 0 8px;gap:4px;border-bottom:1px solid var(--line);margin-bottom:12px}.subnav-button{min-height:38px;padding:6px 13px;font-size:.875rem;border:0;border-radius:6px;background:transparent;color:var(--muted)}.subnav-button.active{box-shadow:inset 0 -2px var(--brand)}
.page>.section-heading{gap:10px;margin-block:10px}.section-heading h2{margin:0}.panel,.home-card,.fold-panel,.summary-card,.asset-total,.signal-card{border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none}.fold-panel{margin-block:10px}.fold-heading{min-height:46px;padding:10px 12px}.fold-titles>strong{font-size:1rem}.fold-subtitle{font-size:.825rem}.fold-body{padding:0 12px 12px}.panel{padding:14px}.metric-row{gap:12px;padding-block:6px;line-height:1.6}.metric-row>:first-child{color:var(--muted)}.badge{border-radius:5px;font-size:.8rem;padding:3px 7px}.empty-state{min-height:0;padding:16px;line-height:1.8}.warning,.error-banner{line-height:1.8}
.home-overview{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;margin-block:14px}.home-card{padding:16px;gap:10px;min-height:0}.home-card:nth-child(-n+2){min-height:0}.home-card h2{font-size:1.05rem;margin:0}#home-signals{grid-column:auto;border-top:2px solid var(--brand)}.home-card-content{gap:7px}.home-card .home-signal-empty{padding:4px 0;gap:6px}.home-card .home-signal-empty strong{font-size:1.05rem}.home-card p{font-size:.925rem;margin-block:4px}.home-card>.button{min-height:36px;font-size:.875rem}.home-card .metric-row{font-size:.95rem}.home-market-history{border-top:1px solid var(--line);padding-top:4px}.home-card .mini-history{max-height:75px}.home-entry-summary{border-radius:7px;padding:8px}
.portfolio-metrics{gap:10px;margin-block:12px}.asset-total{padding:12px}.asset-total>span{font-size:.875rem}.asset-total .money{font-size:1.15rem;line-height:1.5;display:block}.portfolio-primary-total .money{font-size:1.65rem;font-weight:750}.portfolio-controls{padding:8px 0;margin-block:8px;gap:12px;align-items:center}.portfolio-controls label{font-size:.9rem}.portfolio-notes{font-size:.875rem;line-height:1.8;margin-block:8px}.portfolio-status{font-size:.875rem}.allocation-layout{grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:20px}.allocation-donut>svg{max-width:240px}.allocation-key{padding:8px 10px;min-height:40px;font-size:.95rem;border-radius:7px}.allocation-basis{font-size:.825rem}.table-wrap{border-radius:8px}.table-wrap th{font-size:.8rem;color:var(--muted);font-weight:600}.table-wrap td{font-size:.925rem}.table-wrap th,.table-wrap td{padding:8px 10px;line-height:1.55;vertical-align:middle}.table-wrap tbody tr:hover{background:color-mix(in srgb,var(--brand) 5%,var(--panel))}.table-wrap .button,.table-wrap .table-button{min-height:32px;font-size:.875rem;padding:4px 8px}.table-arrows{gap:6px}.table-arrows .button{min-height:34px}.view-controls{gap:10px;margin-block:10px}.view-controls input,.view-controls select{min-height:36px;font-size:.925rem}
.market-context{padding:0;margin-block:8px}.symbol-header{padding-block:8px;gap:12px}.symbol-header h2{font-size:1.15rem}.quote strong{font-size:1.35rem}.symbol-subtitle{font-size:.825rem}.analysis-grid{gap:12px}.chart-card.panel{padding:10px}.chart-toolbar{gap:8px;padding:0}.chart-toolbar .row{gap:5px}.tf-button{min-height:34px;min-width:40px;padding:5px 8px;font-size:.85rem;border-radius:6px}.chart-options{gap:8px}.chart-options label{min-height:36px;font-size:.875rem}.chart-card .canvas-wrap{height:clamp(320px,53vh,500px)}.chart-legend{font-size:.8rem;line-height:1.6}.chart-footer{font-size:.825rem;padding-top:8px}.chart-footer select{min-height:34px;font-size:.875rem}.technical-summary{gap:10px;margin-block:12px}.summary-card{padding:12px}.summary-label{font-size:.825rem}.summary-value{font-size:1.05rem;line-height:1.65;margin-top:5px}.technical-summary small{font-size:.8rem}.frame-card{padding:12px}.frame-trend{font-size:1rem}.technical-item{padding:10px}
.signal-workbench{margin-block:10px}.signal-opportunities{border-radius:var(--radius-card);border-color:var(--line);background:var(--panel)}.signal-opportunities[data-empty=true]{padding:8px 12px}.signal-opportunities #opportunity-status{font-size:1rem;line-height:1.7}.compact-monitoring-counts{font-size:.85rem}.signal-workbench>.waiting-fold,.signal-workbench>.monitoring-fold{margin-block:8px;border-radius:8px;background:var(--panel);padding-inline:10px}.signal-workbench>details>summary,.pairs-fold>summary{font-size:.925rem;min-height:40px;padding-block:8px}.workbench-controls{gap:8px;margin-block:8px}.workbench-controls label{font-size:.825rem;gap:4px}.workbench-controls select{min-height:36px;padding:5px 9px;font-size:.95rem}.workbench-body{gap:10px}.workbench-main,.workbench-aside{padding:12px;border-radius:var(--radius-card)}.workbench-main h2{font-size:1.05rem;margin-bottom:6px}.workbench-main .decision-verdict{padding:6px 8px;margin-bottom:8px;border-radius:7px;font-size:.925rem}.workbench-chart{padding:8px;border-radius:8px}.workbench-chart .canvas-wrap{height:clamp(340px,54vh,520px)}.workbench-chart-tools{gap:5px;margin-bottom:6px}.workbench-chart-tools .button,.workbench-chart-tools select{min-height:34px;font-size:.85rem;padding:5px 9px}.workbench-market{padding:9px;min-height:84px;border-radius:7px;font-size:.925rem}.workbench-market small{font-size:.8rem}.waiting-card{padding:10px;border-radius:8px}.waiting-primary{font-size:.925rem;line-height:1.75}.condition-values{font-size:.925rem;line-height:1.8}.condition-steps>li{font-size:.825rem;padding:4px 7px}.opportunity-card{border-radius:8px;padding:12px;gap:8px}.opportunity-levels bdi{font-size:1rem}.decision-performance{font-size:.925rem}.selected-technical>summary{font-size:.925rem}
.footer{padding-block:12px;margin-block:12px;font-size:.825rem;color:var(--muted)}#app-version{font-size:.75rem;gap:10px}.login-card{border-radius:16px;border:1px solid var(--line);box-shadow:0 16px 55px #00000012}.login-card input,.login-card>.button{min-height:48px}.login-card h1{font-size:1.35rem}.notification-item{padding-block:12px}.settings-appearance-controls{gap:12px}#page-settings>.page{padding:16px;border-radius:var(--radius-card)}
@media(min-width:851px){.portfolio-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio-primary-total{grid-column:auto}.header-brand{display:none}.button,.icon-button,input,select{min-height:36px}}
@media(min-width:851px) and (max-width:1150px){.shell{grid-template-columns:190px minmax(0,1fr)}.workspace{padding-inline:14px}.sidebar{padding:12px 8px}.sidebar .nav-button{font-size:.9rem}.portfolio-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){
  .shell{display:block}.sidebar{position:static;top:auto;min-height:0;height:0;margin:0;padding:0;border:0}.sidebar>.brand,.sidebar-bottom{display:none}.workspace{padding:0 12px calc(6rem + env(safe-area-inset-bottom,0px))}.topbar{padding:8px 0;min-height:0;gap:6px}.topbar h1{font-size:1.125rem}.header-brand{display:block}.header-brand img{width:30px;height:30px}.header-actions{gap:5px;justify-content:flex-start}.header-actions>.button{min-height:44px;padding:6px 8px;font-size:.8rem}.header-actions #header-theme{min-height:44px;min-width:44px}.header-actions #clock-wrap{min-width:120px;margin-inline:0}#clock{font-size:.825rem}#persian-date{display:block;font-size:.7rem}.subnavigation{padding:5px 0;margin-bottom:8px}.subnav-button{min-height:44px;font-size:.825rem;padding:7px 11px}.notice:not(.demo){font-size:.75rem;line-height:1.7;padding-block:2px}.navigation{min-height:64px}.navigation .nav-button{min-height:56px;padding:6px 2px;font-size:.75rem}.navigation .nav-icon{width:22px;height:22px}.navigation .nav-button.active{box-shadow:none}.home-overview{grid-template-columns:minmax(0,1fr);gap:10px;margin-block:10px}.home-card{padding:13px}.home-card h2{font-size:1rem}.home-card>.button{min-height:44px}.portfolio-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portfolio-primary-total{grid-column:1/-1}.portfolio-primary-total .money{font-size:1.65rem}.portfolio-controls{gap:8px}.portfolio-controls select{min-height:44px}.portfolio-controls label{font-size:.875rem}.asset-total{padding:11px}.asset-total .money{font-size:1.05rem}.allocation-layout{grid-template-columns:minmax(0,1fr);gap:14px}.allocation-donut>svg{max-width:240px}.allocation-key{min-height:48px}.fold-heading{min-height:48px;padding:10px 11px}.fold-body{padding:0 10px 10px}.fold-titles>strong{font-size:1rem}.fold-subtitle{font-size:.8rem}.view-controls input,.view-controls select,.table-arrows .button{min-height:44px}.symbol-header{padding-block:6px}.quote strong{font-size:1.2rem}.chart-card.panel{padding:8px}.tf-button{min-height:44px;min-width:44px;font-size:.825rem}.chart-card .canvas-wrap{height:360px}.chart-options label{min-height:44px}.chart-footer select{min-height:44px}.technical-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.summary-card{padding:10px}.summary-value{font-size:1rem}.workbench-controls select{min-height:44px}.workbench-main,.workbench-aside{padding:10px}.workbench-chart{padding:5px}.workbench-chart .canvas-wrap{height:360px}.workbench-chart-tools .button,.workbench-chart-tools select{min-height:44px;padding:6px 8px;font-size:.875rem}.signal-workbench>details>summary,.pairs-fold>summary{min-height:44px}.workbench-market-list{display:flex}.workbench-list-controls .button{min-height:44px}.workbench-controls{gap:8px}.waiting-card{padding:10px}.condition-values{font-size:.95rem}.condition-steps>li{font-size:.875rem}.footer{padding-block:10px}.login-card{padding:28px 22px}.login-card h1{font-size:1.3rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

#ui-update-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;margin-block:8px;border:1px solid var(--brand);border-radius:8px;background:var(--panel);font-size:.875rem}#ui-update-banner[hidden]{display:none}#ui-update-banner .button{min-height:36px}.loaded-ui-version{color:var(--muted)}@media(max-width:850px){#ui-update-banner{flex-wrap:wrap}#ui-update-banner .button{min-height:44px}}
.performance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:1px solid var(--line);border-radius:var(--radius-card);padding:14px;background:var(--panel);margin-block:10px}.performance-summary>h3,.performance-summary>p{grid-column:1/-1;margin:0}.performance-summary .metric-row{display:flex;flex-direction:column;align-items:flex-start;padding:8px;border-inline-start:2px solid var(--line);gap:5px}.performance-summary .metric-row>bdi{font-size:1.15rem;font-weight:700}.signal-publication-history>.metric-row,.signal-publication-history>.table-scroll,.signal-publication-history>p,.validation-panel>.metric-row,.validation-panel>.table-scroll,.validation-panel>p{margin-inline:12px}.validation-panel>.fold-panel{margin-inline:12px}@media(max-width:850px){.performance-summary{grid-template-columns:minmax(0,1fr);padding:12px}.performance-summary .metric-row{flex-direction:row;align-items:center;justify-content:space-between}.performance-summary .metric-row>bdi{font-size:1.05rem}}

.home-entry-summary .metric-row{font-size:.825rem;padding-block:2px;border:0}.home-entry-summary>.button{min-height:32px;padding:3px 8px;font-size:.825rem}.home-card-content>#home-signals-refresh{justify-self:start;min-height:32px;padding:3px 8px;font-size:.825rem}@media(max-width:850px){.home-entry-summary>.button,.home-card-content>#home-signals-refresh{min-height:44px}}
/* Dynamic reports use table-scroll; wallet summary cards also carry panel. */
.portfolio-metrics .asset-total{border-radius:var(--radius-card);gap:8px}.portfolio-controls{padding:8px 12px}:is(.table-wrap,.table-scroll) th{font-size:.8rem;color:var(--muted);font-weight:600}:is(.table-wrap,.table-scroll) td{font-size:.925rem}:is(.table-wrap,.table-scroll) th,:is(.table-wrap,.table-scroll) td{padding:8px 10px;line-height:1.55;vertical-align:middle}:is(.table-wrap,.table-scroll) .button{min-height:32px;font-size:.875rem;padding:4px 8px}@media(max-width:850px){:is(.table-wrap,.table-scroll) .button{min-height:44px}}
/* Official returns preserve source, period and reporting currency. */
.official-returns{scroll-margin-top:calc(var(--header-height,70px) + 12px)}.returns-controls{display:flex;flex-wrap:wrap;gap:10px;margin-block:12px}.returns-controls label{display:grid;gap:4px;flex:1 1 140px;min-width:0;font-size:.875rem}.returns-controls select{max-width:100%;min-width:0}.returns-coverage,.returns-latest,.returns-unavailable{border:1px solid var(--line);border-radius:8px;padding:12px;margin-block:10px}.returns-coverage[data-complete=false]{border-inline-start:3px solid var(--amber)}.official-returns>details{border-top:1px solid var(--line);padding-block:6px}.official-returns summary{min-height:44px;padding-block:8px;cursor:pointer}.official-returns p{font-size:.875rem;line-height:1.8}.returns-chart{display:block;width:100%;max-height:200px;background:var(--bg);border-radius:7px}.returns-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-block:10px}.returns-calendar-grid>strong{text-align:center;font-size:.8rem}.returns-day{display:flex;flex-direction:column;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:6px;min-height:65px;padding:6px;font-size:.8rem;overflow-wrap:anywhere}.returns-day bdi{font-size:.72rem}.returns-day.loss{border-top:2px solid var(--red)}.returns-day.gain{border-top:2px solid var(--green)}.returns-day.no-report{color:var(--muted)}.returns-table td{white-space:nowrap}.returns-methods h3{margin-block:10px 4px}html[data-privacy=hidden] .official-returns [data-private]{color:var(--muted)}#portfolio-open-returns{align-self:start;min-height:32px;font-size:.825rem;padding:4px 8px}@media(max-width:850px){.returns-controls label{flex-basis:100%}.returns-controls select,#portfolio-open-returns{min-height:44px}.returns-calendar-grid{gap:3px}.returns-day{padding:3px;min-height:70px}.returns-day bdi{font-size:.65rem}}

.returns-day{min-height:54px;text-align:center;align-items:center;justify-content:center;cursor:pointer;font-size:.875rem}.returns-day bdi{font-size:1rem;line-height:1.3}.returns-day[aria-pressed=true]{outline:2px solid var(--brand);outline-offset:1px}.returns-day-details:not(:empty){border:1px solid var(--line);border-radius:7px;padding:10px;margin-block:8px}@media(max-width:850px){.returns-day{font-size:.875rem;min-height:54px;padding:3px}.returns-day bdi{font-size:1rem}}

