.pulse{border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:14px;background:linear-gradient(135deg,var(--panel),var(--panel2));padding:20px;margin-bottom:16px}.pulse.positive{border-left-color:var(--green)}.pulse.negative{border-left-color:var(--red)}.pulse-top,.pulse-action,.opportunity-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.pulse-top{font-size:12px;color:var(--muted)}.pulse-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.pulse h1{margin:14px 0 3px;font-size:30px}.pulse-state{font-weight:800;color:var(--blue)}.pulse p{line-height:1.5}.pulse-facts{display:grid;gap:8px;align-content:center}.pulse-facts span{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px}.pulse-events{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px}.pulse-events span{background:var(--panel2);border-radius:7px;padding:7px 10px;font-size:12px}.pulse-action{border-top:1px solid var(--line);margin-top:13px;padding-top:13px}.opportunities{margin:17px 0}.quickfilters{display:flex;gap:6px;flex-wrap:wrap}.quickfilters button.active{background:var(--blue);color:#fff}.opportunity-table small{display:block;color:var(--muted);margin-top:3px}.opportunity-row{cursor:pointer}.opportunity-row.selected{background:color-mix(in srgb,var(--blue) 13%,transparent)}.risk-pill{font-size:10px;border:1px solid var(--line);padding:4px 6px;border-radius:5px}.risk-pill.ПЕРЕГРЕТ,.risk-pill.КРИТИЧЕСКИЙ{color:var(--red);border-color:var(--red)}.risk-pill.ПОВЫШЕННЫЙ{color:var(--amber);border-color:var(--amber)}.inline-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:14px;padding:12px 0}.inline-workspace .chartbox{height:440px}.inline-analysis{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:16px}.inline-analysis h2{font-size:17px;line-height:1.45}.good{color:var(--green)}.warn{color:var(--amber)}.event-strip{display:grid;grid-template-columns:250px 1fr;gap:20px}.event-list{display:flex;gap:8px;flex-wrap:wrap}.event-list span{background:var(--panel2);padding:8px;border-radius:7px;font-size:12px}.event-list strong{margin:0 7px}.component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.component{display:grid;gap:7px;border:1px solid var(--line);border-left:4px solid var(--muted);border-radius:9px;padding:14px;background:var(--panel)}.component.LONG{border-left-color:var(--green)}.component.SHORT{border-left-color:var(--red)}.component small{color:var(--muted)}.state-section{margin:18px 0}.state-two,.coin-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:14px 0}.risk-summary{display:flex;gap:12px;flex-wrap:wrap}.risk-summary>*{background:var(--panel2);padding:8px;border-radius:6px}.rsi-row{display:flex;gap:8px;flex-wrap:wrap}.rsi-row span{display:grid;background:var(--panel2);padding:8px 13px;border-radius:7px}.breadth-number{font-size:42px;font-weight:800}.breadth-number small{font-size:14px;color:var(--muted)}.breadth-bar{height:12px;background:var(--red);border-radius:8px;overflow:hidden}.breadth-bar i{display:block;height:100%;background:var(--green)}.breadth-legend{display:flex;justify-content:space-between;margin:10px 0}.market-history{display:grid}.market-history>div{display:grid;grid-template-columns:90px 120px 1fr;gap:12px;border-bottom:1px solid var(--line);padding:10px}.market-history time{color:var(--muted)}.coin-verdict{display:flex;justify-content:space-between;gap:25px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;padding:18px;margin-bottom:14px}.coin-verdict.positive{border-left-color:var(--green)}.coin-verdict.negative{border-left-color:var(--red)}.coin-verdict span,.coin-verdict small{display:block;color:var(--muted)}.coin-verdict>div:last-child{text-align:right}.coin-verdict>div:last-child b{font-size:18px}.coin-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,.7fr);gap:14px}.coin-chart{height:620px}.coin-side{display:grid;gap:14px;align-content:start}.coin-detail-grid{grid-template-columns:repeat(4,1fr)}@media(max-width:1250px){.component-grid,.coin-detail-grid{grid-template-columns:repeat(2,1fr)}.inline-workspace,.coin-workspace{grid-template-columns:1fr}}@media(max-width:800px){.pulse-grid,.state-two,.component-grid,.coin-detail-grid{grid-template-columns:1fr}.pulse-action,.opportunity-head,.coin-verdict{align-items:flex-start;flex-direction:column}.event-strip{grid-template-columns:1fr}.market-history>div{grid-template-columns:70px 90px 1fr}}

/* Complete light-theme surface and control palette. */
html[data-theme=light]{color-scheme:light}
html[data-theme=light] aside,html[data-theme=light] header{background:#f7fafc}
html[data-theme=light] button,html[data-theme=light] select,html[data-theme=light] input{background:#fff;color:var(--text);border-color:#b9cada}
html[data-theme=light] input::placeholder{color:#7b8da0}
html[data-theme=light] select option{background:#fff;color:var(--text)}
html[data-theme=light] button:hover{background:#e4effb;color:#123b62;border-color:#76aee2}
html[data-theme=light] button.active,html[data-theme=light] .quickfilters button.active,html[data-theme=light] nav button.active{background:var(--blue);color:#fff;border-color:var(--blue)}
html[data-theme=light] nav button{background:transparent;color:#33485e;border-color:transparent}
html[data-theme=light] nav button:hover{background:#e3edf7;color:#172536;border-color:#c3d3e2}
html[data-theme=light] nav button.active:hover{background:#176bc0;color:#fff}
html[data-theme=light] button:disabled,html[data-theme=light] input:disabled,html[data-theme=light] select:disabled{background:#e7edf3;color:#75869a;opacity:1;cursor:not-allowed}
html[data-theme=light] tr:hover td{background:#edf5fc}
html[data-theme=light] #toast{background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:0 8px 30px #17324d26}
html[data-theme=light] .badge{background:#e5edf5;color:#334b62;border:1px solid #c5d4e2}
html[data-theme=light] .badge.WATCH{background:#e8eef5;color:#354b61;border-color:#c6d3df}
html[data-theme=light] .badge.ALERT{background:#d9f5e9;color:#087653;border-color:#9dd9be}
html[data-theme=light] .badge.PRE_ALERT,html[data-theme=light] .badge.EARLY{background:#dceffc;color:#11689e;border-color:#a7d2ed}
html[data-theme=light] .badge.LATE,html[data-theme=light] .badge.INVALIDATED,html[data-theme=light] .badge.REJECT{background:#fde4e7;color:#b72f40;border-color:#efb2ba}

.heatmap-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.heatmap-summary article{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:16px 18px;border:1px solid var(--line);border-left:5px solid;border-radius:11px;background:var(--panel)}
.heatmap-summary article span{font-weight:800}.heatmap-summary article b{font-size:24px}.heatmap-summary article small{grid-column:1/-1;color:var(--muted)}
.heat-stat-long{border-left-color:var(--green)!important}.heat-stat-neutral{border-left-color:var(--muted)!important}.heat-stat-short{border-left-color:var(--red)!important}
.heatmap-legend{display:flex;gap:20px;margin:16px 0;font-weight:700}.heatmap-legend .long{color:var(--green)}.heatmap-legend .neutral{color:var(--muted)}.heatmap-legend .short{color:var(--red)}
.heatcell.long{background:#0d5f49;color:#f2fff9;border-color:#278c70}.heatcell.short{background:#71303d;color:#fff5f6;border-color:#a94d5e}.heatcell.neutral{background:#29455c;color:#f2f8fd;border-color:#466983}
.heatcell b,.heatcell span,.heatcell small{color:inherit}.heatcell:hover{filter:brightness(1.12)}
html[data-theme=light] .heatcell.long{background:#d8f3e8;color:#07563c;border-color:#92cfb7}
html[data-theme=light] .heatcell.short{background:#f9dfe3;color:#962839;border-color:#e5a5af}
html[data-theme=light] .heatcell.neutral{background:#e6edf4;color:#40566c;border-color:#bdccda}
html[data-theme=light] .heatcell:hover{filter:none;box-shadow:0 0 0 2px #2382e833}
@media(max-width:700px){.heatmap-summary{grid-template-columns:1fr}}

.scenario-table td{vertical-align:top}.scenario-table td small{display:block;max-width:190px;margin-top:4px;color:var(--muted);white-space:normal;line-height:1.25}
.scenario-badge{display:inline-block;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel2);font-size:11px;font-weight:800;white-space:nowrap}
.scenario-badge.EARLY,.scenario-badge.CONFIRMATION{color:#55bfff;border-color:#2878a5}.scenario-badge.ACCUMULATION_ZONE{color:#55c8ff;border-color:#2382e8;background:#123958}.scenario-badge.READY{color:#67f0b9;border-color:#20aa78;background:#0d4d3b}.scenario-badge.ACTIVE{color:#7ef5c8;border-color:#35e6a1}.scenario-badge.AVOID,.scenario-badge.INVALIDATED{color:#ff8f9a;border-color:#c94e5d;background:#542934}
.scenario-plan{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:14px}.scenario-plan>div{display:grid;align-content:start;gap:6px;border-right:1px solid var(--line);padding-right:12px}.scenario-plan>div:last-child{border-right:0}.scenario-plan span,.scenario-plan small{color:var(--muted)}.scenario-plan b:not(.scenario-badge){font-size:16px}
html[data-theme=light] .scenario-badge{background:#edf2f7;color:#425970;border-color:#c5d3df}
html[data-theme=light] .scenario-badge.EARLY,html[data-theme=light] .scenario-badge.CONFIRMATION{background:#e1f1fb;color:#14658f;border-color:#a5d0e7}
html[data-theme=light] .scenario-badge.ACCUMULATION_ZONE{background:#dceeff;color:#0e5eaa;border-color:#8fc1ed}
html[data-theme=light] .scenario-badge.READY,html[data-theme=light] .scenario-badge.ACTIVE{background:#daf4e8;color:#08724f;border-color:#91d4b8}
html[data-theme=light] .scenario-badge.AVOID,html[data-theme=light] .scenario-badge.INVALIDATED{background:#fbe2e6;color:#ad3040;border-color:#e4a4ad}

.brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0 10px 24px;overflow:hidden}
.brand-logo{width:200px;height:55px;display:flex;align-items:center;overflow:hidden}
.brand-logo img{display:block;width:200px;height:auto;max-height:58px;object-fit:contain;object-position:left center}
.brand-logo-light{display:none!important}
.brand>small{display:block;padding-left:14px;color:var(--muted);font-size:13px;letter-spacing:.02em}
html[data-theme=light] .brand-logo-dark{display:none!important}
html[data-theme=light] .brand-logo-light{display:block!important}
@media(max-width:1050px){.brand{height:64px;padding:0 4px 18px;align-items:center}.brand-logo{display:block!important;width:48px;height:48px}.brand-logo img{display:block!important;width:176px;max-width:none;height:auto;object-fit:none;transform:translateX(-13px)}html[data-theme=light] .brand-logo-dark{display:none!important}html:not([data-theme=light]) .brand-logo-light{display:none!important}.brand>small{display:none}}

.watch-star{border:0;background:transparent!important;color:#ffc247!important;font-size:22px;line-height:1;padding:2px 7px;margin-right:5px;box-shadow:none!important}
.watch-star:hover{transform:scale(1.12)}.watch-star.selected{color:#ffb000!important}
.watch-add{display:grid;grid-template-columns:1fr minmax(220px,360px) auto;align-items:center;gap:14px;margin-bottom:14px}.watch-add h2,.watch-add p{margin:0}.watch-add p{margin-top:4px}
.watch-table td{vertical-align:middle}.empty-state{text-align:center!important;padding:45px!important;color:var(--muted)}
html[data-theme=light] .watch-star{color:#a56b00!important}
@media(max-width:750px){.watch-add{grid-template-columns:1fr}.watch-add button{width:100%}}
@media(max-width:1000px){.scenario-plan{grid-template-columns:repeat(2,1fr)}.scenario-plan>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px}}
.direction-badge{display:inline-flex;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:800;letter-spacing:.03em;background:var(--panel-2);color:var(--muted)}
.direction-badge.POSSIBLE_LONG,.direction-badge.EARLY_LONG{background:rgba(38,190,133,.14);color:#20a875}.direction-badge.CONFIRMED_LONG{background:#14845f;color:#fff}
.direction-badge.POSSIBLE_SHORT,.direction-badge.EARLY_SHORT{background:rgba(229,72,88,.14);color:#df4050}.direction-badge.CONFIRMED_SHORT{background:#c83d4b;color:#fff}
.direction-summary{display:grid;grid-template-columns:1fr .6fr 2fr;gap:18px;align-items:center}.direction-summary span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
.direction-hypotheses{display:grid;grid-template-columns:1fr 1fr;gap:24px}.hypothesis-list>div{display:grid;grid-template-columns:110px 1fr;gap:8px;padding:7px 0;border-top:1px solid var(--line)}.hypothesis-list span{color:var(--muted);font-size:12px}.hypothesis-list b{font-size:12px;line-height:1.45}
.direction-table td:nth-child(3){min-width:260px;white-space:normal;line-height:1.35}
@media(max-width:900px){.direction-summary,.direction-hypotheses{grid-template-columns:1fr}}
#authUser{color:var(--muted);font-size:13px;font-weight:700}#logoutForm{margin:0}#logoutForm button{padding:8px 11px}
