:root{
  --app-primary:#08bfd4;
  --app-primary-dark:#009ab4;
  --app-accent:#0aa978;
  --app-danger:#e15760;
  --app-surface:#fff;
  --app-background:#f6f9fc;
  --app-ink:#17222d;
  --app-muted:#778596;
  --app-border:#dfe6ed;
  --app-radius:14px;
  --app-space:1;
}
*{box-sizing:border-box}
html{background:var(--app-background)}
body{background:linear-gradient(145deg,#eef8fc 0,var(--app-background) 42%,#fff5fa 100%)!important;color:var(--app-ink)!important;align-items:flex-start}
button,input,select{font:inherit}
button{cursor:pointer}
.app-shell{width:min(100%,1180px)!important;max-width:1180px!important;min-height:100dvh!important;margin:0 auto!important;padding:72px 0 94px!important;background:var(--app-background)!important;border:0!important;border-radius:0!important;box-shadow:0 15px 55px #1d4f7014!important;overflow:visible!important}
.app-page{min-height:calc(100dvh - 166px);background:var(--app-background)!important}
.app-topbar{position:fixed;z-index:20;top:0;left:50%;transform:translateX(-50%);width:min(100%,1180px);height:72px;padding:0 clamp(16px,3vw,30px);display:flex;align-items:center;justify-content:space-between;background:#ffffffed;border-bottom:1px solid var(--app-border);backdrop-filter:blur(16px)}
.brand-button{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:0;text-align:left;color:var(--app-ink)}
.app-brand-logo{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--app-primary),var(--app-primary-dark));color:#fff;display:grid;place-items:center;font-size:17px;font-weight:800;overflow:hidden;box-shadow:0 7px 18px color-mix(in srgb,var(--app-primary) 25%,transparent)}
.app-brand-logo img{width:100%;height:100%;object-fit:cover}
.brand-button strong,.brand-button small{display:block}.brand-button strong{font-size:15px}.brand-button small{font-size:9px;color:var(--app-muted);margin-top:2px;letter-spacing:.4px}
.topbar-actions{display:flex;align-items:center;gap:9px}.connection-status{font-size:10px;color:#087c5b;background:#ebfbf5;border:1px solid #b7ead8;border-radius:20px;padding:6px 10px}.connection-status.warning{color:#a16a08;background:#fff9e8;border-color:#f1dfaa}.connection-status.error{color:#a52a35;background:#fff0f1;border-color:#edc0c5}.admin-open{width:36px;height:36px;border:1px solid var(--app-border);border-radius:10px;background:#fff;color:#647184;font-size:16px}

.market-browser{background:transparent!important;padding:clamp(18px,3vw,32px)!important;border:0!important}.browser-heading{margin-bottom:16px!important}.browser-heading small{color:var(--app-primary-dark)!important;font-size:9px!important}.browser-heading h1{font-size:clamp(23px,4vw,32px)!important;color:var(--app-ink)!important;margin-top:5px!important}.browser-heading>span{background:#fff!important;border:1px solid var(--app-border)!important;color:var(--app-muted)!important;border-radius:20px!important;padding:7px 11px!important;font-size:10px!important}
.emitter-search,.insight-search-row label,.live-page-head label{height:46px!important;background:#fff!important;border:1px solid #d8e1e9!important;border-radius:12px!important;box-shadow:0 5px 18px #31536f0a!important}.emitter-search:focus-within,.insight-search-row label:focus-within,.live-page-head label:focus-within{border-color:var(--app-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--app-primary) 14%,transparent)!important}.emitter-search input,.insight-search-row input,.live-page-head input{color:var(--app-ink)!important;font-size:13px!important}
.live-strip{background:#fff;border:1px solid var(--app-border);border-radius:12px;padding:7px 10px;margin-top:10px}.live-strip>span{color:var(--app-primary-dark)!important}.live-strip>span i{background:var(--app-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--app-primary) 20%,transparent)!important}.live-quote{border-color:#e4e9ee!important;background:#f9fbfd!important}
.data-health-strip{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin:10px 0!important}.data-health-strip span{background:#fff!important;border:1px solid var(--app-border)!important;border-radius:20px!important;padding:6px 9px!important;color:var(--app-muted)!important;font-size:9px!important}
.sector-strip{gap:7px!important;padding:5px 0 12px!important}.sector-strip button,.trend-switch button{background:#fff!important;border:1px solid var(--app-border)!important;color:#667386!important;border-radius:9px!important;font-size:10px!important;padding:8px 11px!important}.sector-strip button.active,.trend-switch button.active{background:#17222d!important;border-color:#17222d!important;color:#fff!important}.trend-switch{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:2px 0 16px!important}.trend-switch button[data-trend="uptrend"].active{background:#eafaf4!important;color:#067b59!important;border-color:#a8e2cb!important}.trend-switch button[data-trend="downtrend"].active{background:#fff0f1!important;color:#ad303c!important;border-color:#edbac0!important}.trend-switch button[data-trend="risk"].active{background:#fff8e6!important;color:#986606!important;border-color:#ecd99e!important}
.emitter-meta{margin:5px 1px 10px!important}.emitter-meta strong{font-size:13px!important;color:var(--app-ink)!important}.emitter-meta span{font-size:10px!important;color:var(--app-muted)!important}
.emitter-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(92px,auto))!important;gap:10px!important}.emitter-card{height:auto!important;min-height:92px!important;padding:12px!important;background:#fff!important;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;box-shadow:0 5px 16px #2347610a!important;justify-content:space-between!important}.emitter-card:hover{transform:translateY(-2px);border-color:var(--app-primary)!important;box-shadow:0 10px 24px #23476114!important}.emitter-card strong{color:var(--app-ink)!important;font-size:13px!important}.emitter-card small{font-size:9px!important;color:var(--app-muted)!important;white-space:normal!important;line-height:1.3!important}.emitter-card[data-trend="uptrend"]{background:#f5fdfa!important;border-color:#bde9d7!important}.emitter-card[data-trend="downtrend"],.emitter-card.risk-buy{background:#fff7f8!important;border-color:#efc6ca!important}.emitter-card .quote-row{font-size:10px!important;margin-top:8px!important}.emitter-card .quote-row b.uptrend{color:var(--app-accent)!important}.emitter-card .quote-row b.downtrend{color:var(--app-danger)!important}
.pagination{margin-top:17px!important}.pagination>button,.pagination #page-numbers button{border-color:var(--app-border)!important;background:#fff!important;color:#5f6e80!important;border-radius:9px!important}.pagination #page-numbers button.active{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}

.page-toolbar{min-height:60px;padding:14px clamp(18px,3vw,30px)!important;background:#fff!important;border-bottom:1px solid var(--app-border)!important;color:var(--app-ink)!important}.page-toolbar button{color:var(--app-primary-dark)!important}.page-toolbar strong{font-size:16px!important}.insight-search-row,.live-page-head{background:transparent!important;padding:18px clamp(18px,3vw,30px)!important}.insight-search-row{display:grid!important;grid-template-columns:1fr 210px!important;gap:10px!important}.insight-search-row select{height:46px!important;border:1px solid var(--app-border)!important;border-radius:12px!important;background:#fff!important;color:var(--app-ink)!important;padding:0 12px!important}.insight-results{padding:0 clamp(18px,3vw,30px)!important}.detail-heading{background:transparent!important;padding:14px clamp(18px,3vw,30px) 0!important}.detail-heading span{color:var(--app-primary-dark)!important}.detail-heading strong{color:var(--app-ink)!important}
.status-tabs{background:transparent!important;border-color:var(--app-border)!important;padding:12px clamp(18px,3vw,30px) 0!important;grid-template-columns:repeat(5,1fr)!important}.status:nth-child(4),.status:nth-child(5){grid-row:auto!important;grid-column:auto!important}.status-tabs:after{grid-row:2!important}.status{color:#7a8796!important}.status.active{color:var(--app-ink)!important}.status.active:after{background:var(--app-primary)!important;height:3px!important}.status b{background:var(--app-primary)!important}
#insight-page main{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);gap:18px;padding:18px clamp(18px,3vw,30px) 30px!important;align-items:start}.filters{grid-column:1/-1!important;margin:0!important}.filters .filter,.select-filter select{height:38px!important;border:1px solid var(--app-border)!important;border-radius:9px!important;background:#fff!important;color:#647184!important;font-size:10px!important;box-shadow:none!important}.filters .filter.primary{background:#17222d!important;color:#fff!important;border-color:#17222d!important}.chart-panel{grid-column:1!important;position:sticky;top:90px;background:#17222d!important;border-radius:var(--app-radius)!important;margin:0!important;box-shadow:0 14px 34px #14283b1f!important}.plan-card{grid-column:2!important;background:#fff!important;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;box-shadow:0 8px 28px #25496310!important;color:var(--app-ink)!important}.empty-state{grid-column:1/-1!important}
.stock-header{padding:17px!important}.stock-logo{background:#e9fafd!important;color:var(--app-primary-dark)!important;overflow:hidden}.symbol-line h1,.stock-header{color:var(--app-ink)!important}.symbol-line mark{background:#e7faf3!important;color:#087c5b!important}.strength{color:var(--app-muted)!important}.strength b{color:#536173!important}.strength mark{background:#fff8dc!important;color:#986a08!important}
.market-structure{border-radius:10px!important}.market-structure.uptrend{background:#ecfbf5!important;border-color:#b5e6d2!important;color:#087957!important}.market-structure.downtrend{background:#fff1f2!important;border-color:#edbec3!important;color:#ac3440!important}.market-structure.sideways{background:#f5f7f9!important;border-color:#dce2e8!important;color:#647184!important}
.market-commentary{margin-inline:17px!important;background:#f8fbfd!important;border:1px solid var(--app-border)!important;border-radius:11px!important;color:var(--app-ink)!important}.market-commentary header strong,.market-commentary p{color:var(--app-ink)!important}.market-commentary a{color:var(--app-primary-dark)!important}.market-commentary mark{background:#e8fafd!important;color:var(--app-primary-dark)!important}
.money-flow{background:#f5fdfa!important;border-color:#bce8d6!important;color:#087859!important;border-radius:11px!important}.section-title button{color:var(--app-primary-dark)!important}.section-title i{background:var(--app-accent)!important}.pivot{background:#fffaf0!important;border-color:#eedda7!important;color:#89620e!important}.flow-detail span{background:#fff!important;color:var(--app-ink)!important;border:1px solid var(--app-border)!important}
.signals{border-color:var(--app-border)!important}.signals span{box-shadow:none!important;border-color:#dce3e9!important}.signals .volume{color:#b94750!important}.signals .reclaim,.signals .macd{color:#078c83!important}.trade-levels strong{color:var(--app-ink)!important}.trade-levels .stop strong{color:var(--app-danger)!important}.trade-levels .ratio strong,.trade-levels .ratio span{color:#a5740c!important}.targets article{background:#e7faf3!important;color:#087858!important}.targets strong{color:#086c51!important}.advice,.expectation{color:#966908!important}.card-actions button,#detail-button,.confirm-track-button{background:linear-gradient(135deg,var(--app-primary),var(--app-primary-dark))!important;color:#fff!important;border:0!important;box-shadow:0 7px 17px color-mix(in srgb,var(--app-primary) 24%,transparent)!important}.card-actions strong{color:var(--app-primary-dark)!important}
.insight-plan-feed{background:transparent!important;padding:14px clamp(18px,3vw,30px)!important}.feed-plan,.ongoing-emitter-card{background:#fff!important;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;color:var(--app-ink)!important;box-shadow:0 7px 22px #2549630c!important}.feed-plan *,.ongoing-emitter-card *{border-color:var(--app-border)}.feed-structure,.feed-flow{border-radius:10px!important}.feed-actions button{border-radius:9px!important}.delete-plan{color:#b73642!important;border-color:#e7b8bd!important;background:#fff5f6!important}

.live-page-head{padding-bottom:12px!important}.live-page-head h1{color:var(--app-ink)!important;font-size:clamp(22px,4vw,30px)!important}.live-page-head p{color:var(--app-muted)!important}.live-page-list{padding:0 clamp(18px,3vw,30px) 30px!important;display:grid!important;gap:8px!important}.big-alert-row{background:#fff!important;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;color:var(--app-ink)!important;box-shadow:0 5px 18px #2549630a!important}.big-alert-row:hover{border-color:var(--app-primary)!important}.big-alert-title strong{color:var(--app-ink)!important}.big-tag{background:#ddf8ec!important;color:#087858!important}.big-tag.sell{background:#ffe6e8!important;color:#b3323e!important}.big-tag.neutral{background:#eef1f4!important;color:#687487!important}.percent-tag{background:#e9fafd!important;color:var(--app-primary-dark)!important}.big-alert-meta,.big-alert-price small{color:var(--app-muted)!important}.indicator-link{color:var(--app-primary-dark)!important}.value-box{background:#f1fcf8!important;border-color:#b9e8d5!important;color:#07845f!important}.value-box.sell{background:#fff3f4!important;border-color:#edc3c8!important;color:#b43a45!important}.big-indicator-detail{background:#f7fafc!important;border-color:var(--app-border)!important;color:#536173!important}.live-back{background:#fff!important;border:1px solid var(--app-border)!important;color:var(--app-primary-dark)!important;border-radius:9px!important}

.journal-page{background:transparent!important;padding:20px clamp(18px,3vw,30px) 34px!important}.journal-header h1,.journal-portfolio h2,.journal-evaluation h2{color:var(--app-ink)!important}.journal-header small,.journal-portfolio small,.journal-evaluation small{color:var(--app-muted)!important}.journal-header select{background:#fff!important;color:var(--app-ink)!important;border:1px solid var(--app-border)!important;border-radius:9px!important}.journal-summary,.signal-eval-summary{gap:10px!important}.journal-summary article,.journal-portfolio,.journal-chart-card,.journal-evaluation,.journal-insight{background:#fff!important;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;color:var(--app-ink)!important;box-shadow:0 7px 22px #2549630b!important}.journal-summary strong,.portfolio-total strong,.journal-chart-card strong{color:var(--app-primary-dark)!important}.journal-summary article:nth-child(1) strong{color:var(--app-accent)!important}.portfolio-active-row,.journal-row,.signal-eval-row{background:#fff!important;border-color:var(--app-border)!important;color:var(--app-ink)!important}.portfolio-active-row.loss .portfolio-row-pnl strong,.portfolio-total .loss,.journal-row-return.loss{color:var(--app-danger)!important}.portfolio-row-pnl strong,.journal-row-return{color:var(--app-accent)!important}.journal-chart{background:#fbfdfe!important;border:1px solid #e7ebef!important;border-radius:10px!important}.journal-insight-icon{background:#e9fafd!important;color:var(--app-primary-dark)!important}

.bottom-nav{position:fixed!important;z-index:19!important;left:50%!important;bottom:0!important;transform:translateX(-50%)!important;width:min(100%,1180px)!important;max-width:1180px!important;height:78px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;background:#ffffffef!important;border-top:1px solid var(--app-border)!important;border-radius:0!important;box-shadow:0 -8px 25px #1b415a0b!important;backdrop-filter:blur(16px)!important}.bottom-nav button{color:#8793a1!important;font-size:9px!important;gap:5px!important;min-width:0!important}.bottom-nav button.active{color:var(--app-primary-dark)!important}.bottom-nav button.active i{filter:none!important}.bottom-nav button.active:after{content:"";position:absolute;top:0;width:32px;height:3px;border-radius:0 0 3px 3px;background:var(--app-primary)}.bottom-nav i{font-size:18px!important}.bottom-nav button b{background:#17222d!important}
.toast{top:82px!important;background:#17222d!important;color:#fff!important;box-shadow:0 8px 25px #17222d2a!important}.toast.error{background:#a93641!important}
dialog{background:#fff!important;color:var(--app-ink)!important;border:1px solid var(--app-border)!important;border-radius:18px!important;box-shadow:0 24px 80px #18334935!important}dialog::backdrop{background:#14223173!important;backdrop-filter:blur(4px)}dialog .close{color:#6e7b8b!important}.dialog-grid{background:#f7f9fb!important;border:1px solid var(--app-border)!important}.feature-row{background:#fff!important;border-color:var(--app-border)!important;color:var(--app-ink)!important}.feature-primary{background:var(--app-primary)!important;color:#fff!important}.position-sizing input,.position-sizing select,.track-confirm-dialog input{background:#fff!important;color:var(--app-ink)!important;border-color:var(--app-border)!important}.portfolio-live,.position-result,.portfolio-risk,.portfolio-targets{background:#f8fafc!important;border-color:var(--app-border)!important;color:var(--app-ink)!important}

.admin-dialog{width:min(92vw,720px)!important;max-height:88dvh;padding:0!important;overflow:auto}.admin-dialog>header{padding:23px 25px 16px;border-bottom:1px solid var(--app-border)}.admin-dialog>header small{color:var(--app-primary-dark);font-size:9px;font-weight:800;letter-spacing:1.4px}.admin-dialog>header h2{margin:5px 0 4px}.admin-dialog>header p{margin:0;color:var(--app-muted);font-size:11px}.admin-dialog form{padding:18px 25px 24px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-section{border:1px solid var(--app-border);border-radius:12px;padding:14px;display:grid;gap:10px;align-content:start}.admin-section:first-child{grid-row:span 2}.admin-section h3{font-size:12px;margin:0 0 2px}.admin-section label{font-size:10px;color:#667386;display:grid;gap:5px}.admin-section input:not([type="color"]),.admin-section select{height:39px;border:1px solid #d7e0e8;border-radius:8px;background:#fff;color:var(--app-ink);padding:0 10px;min-width:0}.admin-upload input{height:auto!important;padding:8px!important}.admin-upload span{font-size:9px;color:var(--app-muted)}.admin-color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.admin-color-grid input{width:100%;height:34px;border:1px solid var(--app-border);border-radius:7px;background:#fff;padding:3px}.admin-logo-preview{display:flex;align-items:center;gap:10px}.admin-logo-preview>span{width:48px;height:48px;border-radius:12px;background:linear-gradient(145deg,var(--app-primary),var(--app-primary-dark));color:#fff;display:grid;place-items:center;overflow:hidden;font-weight:800}.admin-logo-preview img{width:100%;height:100%;object-fit:cover}.admin-logo-preview button,.admin-dialog footer button{border:1px solid var(--app-border);background:#fff;color:#667386;border-radius:8px;padding:8px 10px;font-size:10px}.admin-dialog footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.admin-dialog footer .admin-save{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:#fff!important}.admin-section output{float:right;color:var(--app-ink)}

body[data-density="compact"]{--app-space:.82}body[data-density="compact"] .emitter-card{min-height:78px!important;padding:9px!important}body[data-density="compact"] .big-alert-row{padding-block:8px!important}body[data-density="compact"] .journal-summary article{padding:11px!important}
.emitter-card{position:relative}.quality-mark{position:absolute;right:9px;top:9px;font-size:7px;border-radius:10px;padding:3px 6px}.quality-mark.valid{background:#e8faf3;color:#087958}.quality-mark.partial{background:#fff7df;color:#94660a}.emitter-card.data-partial{border-style:dashed!important}

@media(max-width:820px){
  .app-shell{max-width:680px!important}.app-topbar,.bottom-nav{max-width:680px!important}
  #insight-page main{grid-template-columns:1fr!important}.chart-panel,.plan-card{grid-column:1!important}.chart-panel{position:relative;top:auto}.status-tabs{grid-template-columns:repeat(3,1fr)!important}.status:nth-child(4),.status:nth-child(5){grid-row:2!important}.status:nth-child(4){grid-column:1!important}.status:nth-child(5){grid-column:2!important}.status-tabs:after{grid-row:3!important}.journal-summary{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .app-shell{padding-top:64px!important}.app-topbar{height:64px;padding-inline:14px}.app-brand-logo{width:34px;height:34px}.brand-button small{display:none}.connection-status{max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-browser{padding:16px 14px 24px!important}.trend-switch{grid-template-columns:repeat(2,minmax(0,1fr))!important}.emitter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important}.emitter-card{min-height:92px!important}.insight-search-row{grid-template-columns:1fr!important;padding-inline:14px!important}.page-toolbar,.live-page-head,.insight-results,.detail-heading,.insight-plan-feed{padding-inline:14px!important}#insight-page main{padding:14px!important}.filters{gap:6px!important}.select-filter,.select-filter.wide{flex:1 1 45%!important}.select-filter select{max-width:none!important;width:100%!important}.stock-header{grid-template-columns:42px 1fr 72px!important}.live-page-list{padding-inline:14px!important}.big-alert-row{grid-template-columns:38px 1fr auto!important;padding:10px!important}.big-alert-price{min-width:82px!important}.big-alert-price .value-box{display:none!important}.journal-page{padding:16px 14px 28px!important}.journal-summary{grid-template-columns:1fr!important}.bottom-nav{height:72px!important}.bottom-nav button{font-size:8px!important}.bottom-nav i{font-size:16px!important}.admin-dialog form{grid-template-columns:1fr!important;padding:14px}.admin-section:first-child{grid-row:auto}.admin-dialog footer{grid-column:1}.admin-dialog>header{padding:20px 18px 14px}
}
@media(max-width:370px){.emitter-grid{grid-template-columns:1fr!important}.trend-switch{grid-template-columns:1fr!important}.connection-status{display:none}.bottom-nav span{font-size:7px}.big-alert-row{grid-template-columns:34px 1fr!important}.big-alert-price{grid-column:2!important;text-align:left!important}.admin-color-grid{grid-template-columns:1fr}}
