/* Local market workspace refinements. Load after styles.css. */
.market-indicator-picker{position:relative;flex:none;min-width:0;z-index:6}
.market-indicator-picker>.button{height:var(--control-height);min-height:var(--control-height);font-size:var(--text-sm);white-space:nowrap;line-height:1.5;}
#market-indicators-button{position:relative;min-width:0;width:100%;justify-content:flex-start;padding:8px 30px 8px 10px;border:1px solid #2c3849;border-radius:7px;background:#101721;color:#d3deea;transition:border-color .15s,box-shadow .15s}
.market-indicator-summary{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#market-indicators-button>svg{position:absolute;right:10px;top:50%;width:12px;height:12px;transform:translateY(-50%);pointer-events:none}
#market-indicators-button:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #62d3b216}
.market-indicators-panel{position:absolute;top:calc(100% + 8px);left:0;width:min(560px,calc(100vw - 48px));max-height:min(680px,calc(100dvh - 140px));overflow:auto;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 16px 50px #0006;color:var(--text);font-size:var(--text-sm)}
.market-indicators-panel[hidden]{display:none}
.market-indicator-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.market-indicator-heading h2{font-size:var(--text-lg);margin:0}
.market-indicator-heading .icon-button{font-size:var(--text-xl);width:30px;height:30px;flex:none}
.market-indicator-item{border-top:1px solid var(--line);padding:12px 0}
.market-indicator-choice{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);margin:0;cursor:pointer}
.market-indicator-choice input{width:16px;height:16px;flex:none;margin:0}
.market-indicator-choice small{font-size:var(--text-xs);color:var(--muted);margin-left:5px}
.market-indicator-params{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--form-gap);margin-top:12px}
.market-indicator-params .field{min-width:0;margin:0}
.market-indicator-params label,.market-indicator-params input{font-size:var(--text-sm)}
.market-indicator-params input{width:100%;min-width:0;height:var(--control-height);min-height:var(--control-height);box-sizing:border-box;line-height:1.5;padding:8px 12px;}
.market-indicator-params small,.market-indicator-formula,.market-indicators-hint,.market-indicator-error,.market-indicator-notice{font-size:var(--text-xs);line-height:var(--leading-help);color:var(--muted)}
.market-indicators-hint{margin:8px 0}.market-indicator-formula p{margin:8px 0 0}.market-indicator-formula summary{cursor:pointer}
.market-indicator-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.market-indicator-actions .button{font-size:var(--text-sm)}
.market-indicator-error{color:var(--red,#eb8f88);margin:8px 0}.market-indicator-notice{padding:0 24px 12px}
.market-indicators-panel :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:800px){.market-indicators-panel{position:fixed;inset:76px 12px auto;width:auto;max-height:calc(100dvh - 180px - env(safe-area-inset-bottom,0px))}.market-indicator-params{grid-template-columns:minmax(0,1fr)}}
/* The query form participates in the toolbar grid while the picker keeps its own form. */
.market-panel .market-toolbar{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;align-items:end;gap:var(--form-gap);padding:20px 24px 14px}
.market-toolbar>.market-stock-search{grid-column:1/-1;min-width:0;width:100%;max-width:340px}
.market-panel .market-stock-search>label,.market-panel .market-query-form .field>label,.market-panel .market-indicator-picker>label{display:block;font-size:var(--text-xs)!important;line-height:var(--leading-help);margin:0 0 var(--label-gap);font-weight:500;color:var(--muted)}
.market-panel .market-query-form{display:contents}
.market-panel .market-query-form>.field,.market-panel .market-query-form>.field.market-date{min-width:0;max-width:none;width:100%;margin:0;gap:0;}
.market-panel .market-query-form .field input,.market-panel .market-query-form .field select,.market-panel .market-search-input>input{height:var(--control-height);min-height:var(--control-height);font-size:var(--text-sm)!important;line-height:1.5;padding-top:8px;padding-bottom:8px;border-radius:7px}
.market-panel .market-query-form .field select{padding-left:10px!important;padding-right:30px!important;background-position:right 10px center}
.market-panel .market-query-form .field input[type="date"]{width:100%;padding-left:9px!important;padding-right:7px!important;font-variant-numeric:tabular-nums}
.market-query-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:var(--form-gap);min-width:0}
.market-panel .market-query-actions>.button{height:var(--control-height);min-height:var(--control-height);max-width:none;padding:0 12px;white-space:nowrap;font-size:var(--text-sm);box-sizing:border-box;line-height:1.5;}
.market-panel .market-pattern-button{gap:7px}
.market-pattern-button svg{flex:none}
.market-chart-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:9px 24px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.market-panel .market-chart-header .market-range-actions{justify-content:flex-end;gap:8px;padding:0;margin:0;flex:0 1 auto}
.market-panel .market-range-actions>button{min-height:var(--control-height-compact);padding:0 10px;border-radius:6px;font-size:var(--text-xs);line-height:1.5;height:var(--control-height-compact);box-sizing:border-box;}
.market-panel .market-range-actions>.market-reset-zoom{margin-left:0}
.market-panel #market-earlier{margin-right:auto}
.market-panel .market-stock-summary{flex:1 1 360px;min-width:0;min-height:28px;padding:0;border:0;justify-content:flex-start;align-items:center;text-align:left;gap:6px 16px}
.market-panel .market-stock-summary>.market-summary-identity{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;width:auto;gap:8px;margin:0;font-size:var(--text-lg)}
.market-panel .market-summary-identity small{margin:0;line-height:1.5}
.market-summary-quote{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px}
.market-summary-price{font-size:var(--text-xl);font-weight:500;line-height:1.4;font-variant-numeric:tabular-nums}
.market-summary-change,.market-summary-date{font-size:var(--text-xs);line-height:1.5}
.market-panel .market-flat{color:var(--text)}
.market-panel .market-chart-container{padding:0;isolation:isolate;background:#141c25}
.market-panel .market-candles{--market-base-height:590px;height:var(--market-base-height)}
.market-subchart-controls{position:absolute;top:352px;left:64px;z-index:2;display:flex;align-items:center;gap:3px;max-width:calc(100% - 144px);height:24px;font:var(--text-xs)/1.5 var(--font);color:#8095aa;white-space:nowrap}
.market-subchart-controls>button{flex:none;height:23px;padding:2px 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:#7d92a7;font:inherit;line-height:1.5}
.market-subchart-controls>button:hover{color:#bdd4c9;background:#83c6af0c}
.market-subchart-controls>button[aria-pressed="true"]{color:#a9d2c0;border-color:#3c584c;background:#2843364d}
.market-subchart-controls>button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.market-subchart-controls>span{margin-left:1px;color:#7d92a7;font-size:var(--text-xs)}
.market-panel .market-coverage{align-items:baseline;gap:6px 20px;padding-top:13px;padding-bottom:13px}
.market-panel .market-coverage em{display:block;margin-top:2px;color:#b4a47e;font-size:var(--text-xs);font-style:normal}
@media(min-width:1600px){.market-panel .market-toolbar{grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(120px,1fr)) auto}.market-toolbar>.market-stock-search{grid-column:auto;max-width:none}.market-panel .market-candles{--market-base-height:660px}}
@media(max-width:1250px){.market-panel .market-toolbar{grid-template-columns:repeat(5,minmax(0,1fr))}.market-toolbar>.market-stock-search{max-width:340px}.market-query-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:800px){.market-panel .market-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.market-toolbar>.market-stock-search{max-width:none}.market-query-actions>.button{flex:1}}
@media(max-width:800px){.market-panel .market-toolbar{padding:18px 20px 14px}.market-panel .market-range-actions{padding:0 20px 14px}.market-panel .market-candles{--market-base-height:520px}}
@media(max-width:560px){.market-panel .market-toolbar{padding:16px 16px 12px;}.market-panel .market-range-actions>button{font-size:var(--text-xs)}.market-panel #market-earlier{max-width:100%;margin-right:auto}.market-chart-header{padding:9px 16px}.market-panel .market-stock-summary{flex-basis:100%;gap:6px 12px}.market-panel .market-stock-summary>.market-summary-identity{font-size:var(--text-md)}.market-panel .market-chart-header .market-range-actions{width:100%}.market-panel .market-candles{--market-base-height:470px}.market-panel .market-coverage{padding:12px 16px}}
@media(max-width:340px){.market-panel .market-toolbar{padding-left:12px;padding-right:12px;}.market-panel .market-query-form .field input[type="date"]{padding-left:5px!important;padding-right:3px!important;font-size:var(--text-xs)!important}.market-panel .market-range-actions{padding-left:12px;padding-right:12px;gap:6px}.market-panel .market-range-actions>button{padding-left:8px;padding-right:8px}.market-panel .market-candles{--market-base-height:450px}}
@media(max-width:600px){.market-subchart-controls{left:50px;max-width:calc(100% - 114px);gap:2px}.market-subchart-controls>button{padding-left:5px;padding-right:5px}}

.market-panel .market-explanation{padding:16px 24px 18px;border-top:1px solid var(--line-soft)}
.market-explanation #market-coverage{padding:0;margin:0;border:0;gap:6px 20px;justify-content:flex-start}
.market-explanation #market-warnings{padding:8px 0 0}
.market-explanation #market-warnings>p{margin:0 0 6px;padding:0;border:0;background:none;color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-help)}
.market-explanation #market-warnings>p:last-child{margin-bottom:0}
@media(max-width:560px){.market-panel .market-explanation{padding:14px 16px 16px}}
