.cw{--cw-panel:var(--card,#151c24);color:var(--text,#dee6ed);font-size:13px;min-width:0}
.cw button,.cw select,.cw input{font-family:inherit;box-sizing:border-box;border:1px solid var(--border,#344252);background:var(--bg,#0c1218);color:var(--text,#dee6ed);border-radius:5px;min-height:38px;padding:8px 10px;font-size:13px}
.cw button{cursor:pointer}.cw button:disabled{opacity:.45;cursor:not-allowed}.cw button:focus-visible{outline:2px solid var(--gold,#e5c47c);outline-offset:2px}
.cw-account{display:flex;flex-wrap:wrap;gap:10px 24px;padding:12px 16px;background:var(--cw-panel);border:1px solid var(--border);border-radius:8px;margin-bottom:10px}
.cw-account>div{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--text-muted)}.cw-account strong{font-size:14px;color:var(--text)}.cw-sim{font-size:10px;letter-spacing:1px;color:var(--gold)}
.cw-main{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:10px;min-height:680px;height:80vh}
.cw-chart-panel{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--cw-panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}
.cw-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px;border-bottom:1px solid var(--border)}.cw-toolbar strong{margin-inline-end:auto}.cw-toolbar select{width:auto;max-width:160px}
.cw-plot{position:relative;flex:1;min-height:0}#cwCanvas,#cwLines{position:absolute;inset:0}#cwLines{pointer-events:none;overflow:hidden}#cwEmpty{position:absolute;inset:40% 20px auto;text-align:center;pointer-events:none;color:var(--text-muted)}
.cw-chart-note{font-size:10px;padding:8px 12px;color:var(--text-muted);border-top:1px solid var(--border)}
.cw-ticket{overflow:auto;display:flex;flex-direction:column;gap:12px;background:var(--cw-panel);border:1px solid var(--border);border-radius:8px;padding:14px}.cw-ticket h2{font-size:16px;margin:0}.cw-muted{font-size:11px;line-height:1.6;color:var(--text-muted);margin:0}
.cw-ticket label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--text-muted)}.cw-ticket input,.cw-ticket select{width:100%;min-width:0}.cw-presets,.cw-order-buttons{display:flex;gap:6px}.cw-presets>*{flex:1;min-width:0}.cw-order-buttons>*{flex:1;font-weight:700}.cw .cw-buy{background:#16844e;color:white}.cw .cw-sell{background:#bc354d;color:white}.cw-quote{display:flex;flex-direction:column;gap:4px}.cw-quote span{font-size:11px;color:var(--text-muted)}.cw-quote strong{font-size:24px}
#cwStatus{font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:var(--gold);min-height:18px;margin:0}
.cw-progress{display:flex;flex-wrap:wrap;gap:24px;padding:16px;border:1px solid var(--border);margin-top:10px;border-radius:8px}.cw-progress>div{display:flex;flex-direction:column;gap:6px;flex:1;min-width:150px}.cw-progress span{color:var(--text-muted);font-size:11px}.cw-progress progress{width:100%;height:6px;accent-color:var(--gold)}
.cw-positions{margin-top:10px;padding:14px;border:1px solid var(--border);border-radius:8px}.cw-positions summary{cursor:pointer;padding:6px 0}.cw-position{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--border)}.cw-position>span{margin-inline-end:auto}.cw-positive{color:#16ad77!important}.cw-negative{color:#ed5b75!important}.cw-attribution{font-size:10px;color:var(--text-muted);padding:12px 0;line-height:1.6}.cw-attribution a{color:var(--gold)}
.cw-line{position:absolute;inset-inline-end:90px;display:flex;transform:translateY(-50%);border-radius:3px;pointer-events:auto;box-shadow:0 1px 4px #0008;white-space:nowrap}.cw .cw-line button{background:transparent;color:white;border:0;min-height:28px;padding:4px 8px;font-size:11px;border-radius:0;margin:0;touch-action:none}.cw .cw-line button+button{border-inline-start:1px solid #fff7;background:#d9e0e5;color:#18212b;font-size:16px}.cw-line[hidden]{display:none}
.cw-expanded{position:fixed;inset:0;z-index:100001;background:var(--bg,#0c1218);padding:10px;overflow:auto}.cw-expanded .cw-main{height:calc(100dvh - 110px)}body.cw-open{overflow:hidden}
.cw-edit{margin:auto;padding:24px;background:var(--card,#151c24);color:var(--text,#eee);border:1px solid var(--border,#394238);border-radius:12px;width:min(360px,calc(100vw - 32px))}.cw-edit::backdrop{background:#0009}.cw-edit label{display:flex;flex-direction:column;gap:8px;margin:16px 0}.cw-edit input,.cw-edit button{font:inherit;padding:10px;min-height:44px}.cw-edit form>div{display:flex;gap:10px;justify-content:flex-end}
@media(max-width:900px){.cw-main{grid-template-columns:minmax(0,1fr) 230px}.cw-toolbar strong{flex-basis:100%}}
@media(max-width:650px){.cw-main{display:flex;flex-direction:column;height:auto;min-height:0}.cw-chart-panel{height:640px;flex:none}.cw-ticket{overflow:visible}.cw button{min-height:44px}.cw .cw-line button{min-height:36px}.cw-line{inset-inline-end:70px}.cw-expanded .cw-main{height:auto}.cw-account{gap:12px}.cw-account>div{flex:1 1 100px}.cw-toolbar{gap:6px}.cw-toolbar button{font-size:11px;padding:8px}.cw-progress{gap:14px}}
/* Keep interactive order labels above the chart library's internally layered canvases. */
#cwCanvas{z-index:0}#cwLines{z-index:3}#cwEmpty{z-index:4}
.cw [hidden]{display:none!important}.ci-nav{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.ci-nav button[aria-pressed=true]{background:var(--gold);color:#111;font-weight:700}.ci-panel{padding:8px 0}.ci-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:12px 0 18px}.ci-heading h2,.ci-heading h3{margin:0}.ci-heading p,.ci-risk-form p{color:var(--text-muted);line-height:1.6;margin-top:8px;max-width:85ch}.ci-filters,.ci-risk-actions,.ci-locks{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:18px 0}.ci-filters label,.ci-risk-form label,.ci-locks label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--text-muted)}.ci-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.ci-card{border:1px solid var(--border);border-radius:12px;padding:22px;background:var(--cw-panel);min-width:0;margin-bottom:16px}.ci-cards .ci-card{margin:0;display:flex;flex-direction:column;gap:12px}.ci-card>span,.ci-card small{color:var(--text-muted);line-height:1.6}.ci-card>strong{font-size:26px;overflow-wrap:anywhere}.ci-card h3{margin:0 0 16px;font-size:15px}.ci-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ci-plot{width:100%;min-height:190px;color:var(--text-muted)}.ci-plot text{fill:currentColor;font-size:11px}.ci-bar{display:grid;grid-template-columns:110px minmax(30px,1fr) 90px;align-items:center;gap:8px;padding:8px 0;font-size:12px}.ci-bar meter{width:100%}.ci-bar strong{text-align:end}.ci-calendar{overflow-x:auto}.ci-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(75px,1fr));gap:6px;min-width:570px}.ci-calendar-grid>b{padding:10px;text-align:center}.ci-calendar-grid button{display:flex;flex-direction:column;align-items:start;gap:12px;padding:12px;min-height:110px}.ci-calendar-grid strong{font-size:12px}.ci-calendar-grid .ci-win{background:#159d6722}.ci-calendar-grid .ci-loss{background:#d9445722}.ci-table-wrap{overflow:auto}.ci-table-wrap table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}.ci-table-wrap th,.ci-table-wrap td{padding:12px;text-align:start;border-bottom:1px solid var(--border)}.ci-paging{display:flex;gap:16px;align-items:center;justify-content:end;margin-top:16px}.ci-risk-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:960px}.ci-risk-form input{width:100%}.ci-risk-form .ci-check{flex-direction:row;align-items:center}.ci-check input{width:auto}.ci-risk-form>p,.ci-risk-actions{grid-column:1/-1}.ci-risk-status{color:var(--gold);margin:16px 0}.ci-risk-live{line-height:1.7;margin:16px 0}.ci-empty{color:var(--text-muted);padding:20px 0;line-height:1.7}
@media(max-width:900px){.ci-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ci-two{grid-template-columns:1fr}}
@media(max-width:600px){.ci-cards,.ci-risk-form{grid-template-columns:1fr}.ci-card{padding:16px}.ci-filters>label{flex:1;min-width:130px}.ci-filters input{width:100%;min-width:0}.ci-bar{grid-template-columns:90px minmax(20px,1fr) 76px}.ci-heading{align-items:start}.ci-paging{justify-content:space-between;gap:6px}}
/* Compact terminal controls, with the same type family as the dashboard. */
.cw{font-family:inherit;line-height:1.5}.cw-main{grid-template-columns:minmax(0,1fr) 280px}
.cw-toolbar{gap:6px;padding:8px 12px}.cw-timeframes{display:flex;gap:2px;border-inline:1px solid var(--border);padding-inline:8px}
.cw .cw-timeframes button{border:0;background:transparent;padding:6px 10px;min-height:34px;font-weight:500}
.cw .cw-timeframes button[aria-pressed=true]{background:var(--border);color:var(--gold)}
.cw-ticket{padding:12px;gap:14px;border-radius:5px;background:var(--bg-card)}
.cw-ticket-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:0 0 12px;position:relative}
.cw-ticket-header:after{content:'';position:absolute;bottom:-1px;inset-inline-start:0;width:70px;height:2px;background:var(--gold)}
.cw-ticket-header h2{font-size:16px;font-weight:500}
.cw-ticket .cw-field{position:relative;margin-top:6px;gap:0}.cw-field>span{position:absolute;top:-8px;inset-inline-start:10px;background:var(--bg-card);padding:0 5px;font-size:10px;z-index:1}
.cw-ticket .cw-field :is(input,select){min-height:48px;background:transparent;border-color:var(--text-dim);font-size:15px;padding:12px;border-radius:5px}
.cw-presets{justify-content:center}.cw .cw-presets button{flex:0 1 36px;border-radius:50%;min-height:32px;padding:4px}
.cw-quote{flex-direction:row;align-items:center;justify-content:space-between;padding:10px 0;border-block:1px solid var(--border)}.cw-quote strong{font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}
.cw-order-buttons button{font-size:12px;text-transform:uppercase;min-height:40px}.cw-ticket .cw-muted{font-size:10px}.cw-ticket #cwRiskNotice:empty{display:none}
.ci-card{overflow:hidden}.ci-card h3{font-size:14px;font-weight:600;line-height:1.5}.ci-cards .ci-card>strong{font-size:23px;font-weight:600;line-height:1.35}
.ci-plot{display:block;width:100%;height:260px;min-height:0}.ci-calendar-summary{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--border);font-size:12px;line-height:1.7;color:var(--text-muted)}
.ci-table-wrap{max-width:100%}.ci-calendar-grid button{gap:8px;min-height:98px}.ci-heading{font-size:12px}.ci-heading h2{font-size:21px;font-weight:500}.ci-card .ci-heading{margin-top:0}
@media(max-width:900px){.cw-main{grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:650px){.cw-toolbar strong{font-size:12px}.cw-timeframes{padding-inline:4px}.cw .cw-timeframes button{min-height:44px}.cw-ticket{padding:16px}.ci-plot{height:190px}.ci-calendar-summary{max-width:100%;white-space:normal}}
.cw-toolbar{position:relative;overflow:visible}.cw-chart-panel{overflow:visible}.cw-plot{overflow:hidden}.cw-indicator-menu{position:relative;font-size:12px}.cw-indicator-menu summary{cursor:pointer;padding:10px;border:1px solid var(--border);border-radius:5px}.cw-indicator-menu>div{position:absolute;inset-inline-end:0;top:100%;z-index:20;width:280px;max-height:350px;overflow:auto;padding:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006}.cw-indicator-menu label{display:flex;align-items:center;gap:10px;padding:6px 0}.cw-indicator-menu input{min-height:18px;width:18px;accent-color:var(--gold)}.cw-indicator-menu p{font-size:11px;line-height:1.5;color:var(--text-dim);margin-top:10px}.cw-toolbar #cwTimezone{max-width:180px;font-size:11px}.cw-toolbar #cwInterval{max-width:110px;font-size:11px}
@media(max-width:650px){.cw-indicator-menu>div{position:fixed;inset:20% 16px auto;width:auto;max-height:60vh}.cw-toolbar #cwTimezone{max-width:150px}}
.ci-curve-summary{display:flex;flex-wrap:wrap;gap:16px 32px;margin:18px 0;color:var(--text-dim);font-size:11px}.ci-curve-summary span{display:flex;flex-direction:column;gap:6px}.ci-curve-summary strong{font-size:18px;color:var(--text);font-variant-numeric:tabular-nums}.ci-plot-note{font-size:11px;line-height:1.6;color:var(--text-dim);margin:8px 0 0}.ci-plot circle:focus{outline:2px solid var(--gold);stroke:var(--text);stroke-width:3}.ci-cards .ci-card>strong{overflow-wrap:normal}

/* Compact study picker: fixed header/footer, scrollable groups. */
.cw-indicator-menu>.cw-study-popover{width:300px;max-width:calc(100vw - 32px);max-height:min(440px,70dvh);padding:0;display:flex;flex-direction:column;overflow:hidden}
.cw-study-popover header,.cw-study-popover footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;flex-shrink:0}
.cw-study-popover header{border-bottom:1px solid var(--border)}
.cw-study-popover footer{border-top:1px solid var(--border);font-size:11px;color:var(--text-dim)}
.cw-study-popover .cw-study-list{overflow-y:auto;overscroll-behavior:contain;padding:10px 14px;min-height:0}
.cw-study-list fieldset{border:0;margin:0 0 12px;padding:0;min-width:0}
.cw-study-list legend{font-size:11px;font-weight:700;color:var(--text-dim);padding:4px 0;text-transform:uppercase;letter-spacing:.06em}
.cw-indicator-menu .cw-study-list label{min-height:36px;padding:4px 0;font-size:13px;line-height:1.35;cursor:pointer}
.cw-indicator-menu .cw-study-list input{width:16px;height:16px;min-height:16px;margin:0;flex:0 0 16px}
.cw-study-list small{margin-inline-start:auto;font-size:10px;color:var(--text-dim)}
.cw-study-list .cw-study-unavailable{cursor:default;color:var(--text-dim)}
.cw-indicator-menu .cw-study-list p{margin:4px 0 0;font-size:11px}
.cw-study-popover #cwStudiesClose{min-height:32px;padding:0 10px;font-size:20px}
.cw-study-popover #cwStudiesClear{font-size:12px;min-height:32px;padding:5px 8px}
@media(max-width:650px){.cw-indicator-menu>.cw-study-popover{inset:15% 16px auto;width:auto;max-height:70dvh}.cw-indicator-menu .cw-study-list label{min-height:44px}}

.cw-practice-notice{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;padding:16px 18px;border:1px solid var(--gold);border-inline-start-width:4px;border-radius:8px;background:var(--bg-card);color:var(--text)}
.cw-practice-notice[hidden]{display:none}.cw-practice-notice strong{color:var(--gold);font-size:15px}.cw-practice-notice span{font-size:12px;line-height:1.6}
