:root{--bg:#0a0c10;--surface:#0f1217;--card:#13171e;--card-hi:#181d26;--border:#212833;--border-hi:#2d3644;--text:#e6ebf2;--text2:#9aa6b8;--text3:#5f6b7c;--accent:#5b8cff;--accent-dim:#1a2a4d;--up:#2ebd85;--up-dim:#0e2f23;--down:#f0616d;--down-dim:#3a151a;--warn:#e8b04b;--warn-dim:#3a2c10;--radius:10px;--side:224px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,select,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}code,.mono{font-family:var(--mono);font-size:.92em}.num{font-variant-numeric:tabular-nums}.up{color:var(--up)}.down{color:var(--down)}.muted{color:var(--text2)}.small{font-size:12px}.text-bad{color:var(--down)}.foot-line{line-height:1.6}.hint{vertical-align:middle;margin-left:4px;display:inline-flex}.hint-button{border:1px solid var(--border);background:var(--card);width:24px;height:24px;color:var(--text2);cursor:pointer;touch-action:manipulation;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.hint-button:hover,.hint-button[aria-expanded=true]{border-color:var(--border-hi);color:var(--text);background:var(--card-hi)}.hint-note{z-index:1000;overflow-wrap:anywhere;border:1px solid var(--border-hi);border-radius:var(--radius);background:var(--card);width:340px;max-width:min(340px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text2);box-shadow:0 8px 24px var(--bg);padding:12px 14px;font-size:12px;font-weight:400;line-height:1.6;position:fixed;top:16px;left:16px;overflow:auto}.hint-note>*+*{margin-top:8px}.login-page{justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:360px;padding:36px 32px}.login-logo{text-align:center;margin-bottom:32px}.login-logo h1{color:var(--text);letter-spacing:.12em;font-size:30px;font-weight:800}.login-logo p{color:var(--text3);margin-top:4px;font-size:12px}.form-group{margin-bottom:14px}.form-label{color:var(--text2);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-input{background:var(--card);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .15s}.form-input:focus{border-color:var(--accent);outline:none}.form-input::placeholder{color:var(--text3)}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:20px;padding:11px;font-size:14px;font-weight:600;transition:opacity .15s;display:flex}.btn-primary:hover:not(:disabled){opacity:.88}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.login-error{background:var(--down-dim);border:1px solid var(--down);color:var(--down);text-align:center;border-radius:8px;margin-top:14px;padding:10px 12px;font-size:12px}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app{grid-template-columns:var(--side) minmax(0, 1fr);min-height:100dvh;display:grid}.side{height:100dvh;padding:calc(20px + env(safe-area-inset-top)) 14px calc(20px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:24px;display:flex;position:sticky;top:0}.brand{color:var(--text);letter-spacing:.12em;align-items:center;gap:10px;padding:0 8px;font-weight:800;display:flex}.brand:hover{text-decoration:none}.brand-mark{background:var(--accent);color:#fff;letter-spacing:0;border-radius:8px;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.side nav{flex-direction:column;gap:2px;display:flex}.nav-item{color:var(--text2);border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-weight:500;display:flex}.nav-short{display:none}.nav-item:hover{background:var(--card);color:var(--text);text-decoration:none}.nav-item[aria-current=page]{background:var(--accent-dim);color:var(--text)}.nav-item[aria-current=page] svg{color:var(--accent)}.side-foot{flex-direction:column;gap:10px;margin-top:auto;padding:0 8px;display:flex}.ghost{border:1px solid var(--border);color:var(--text2);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;display:inline-flex}.ghost:hover{color:var(--text);border-color:var(--border-hi)}.pulse{color:var(--text2);align-items:center;gap:8px;font-size:12px;display:inline-flex}.pulse:before{content:"";background:var(--text3);border-radius:50%;flex-shrink:0;width:8px;height:8px}.pulse.good:before{background:var(--up);box-shadow:0 0 0 3px var(--up-dim)}.pulse.warn:before{background:var(--warn);box-shadow:0 0 0 3px var(--warn-dim)}.pulse.bad:before{background:var(--down);box-shadow:0 0 0 3px var(--down-dim)}.main{min-width:0;padding:calc(28px + env(safe-area-inset-top)) calc(32px + env(safe-area-inset-right)) calc(48px + env(safe-area-inset-bottom)) 32px;width:100%;max-width:1360px}.top{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.top h1{letter-spacing:-.01em;font-size:24px;font-weight:700}.top p{color:var(--text2)}.top-side{flex-shrink:0;align-items:center;gap:10px;display:flex}.top-side .pulse,.top-install,.top-logout{display:none}.page{flex-direction:column;gap:16px;display:flex}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.span-2{grid-column:1/-1}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:16px 18px}.card>*+*{margin-top:12px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.card-head h2,.section-title{font-size:15px;font-weight:600}.section-title{color:var(--text2);margin:8px 0 10px}details.card>summary{cursor:pointer;font-weight:600}.tag{background:var(--card-hi);border:1px solid var(--border);color:var(--text2);white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;display:inline-flex}.tag.good{color:var(--up);background:var(--up-dim);border-color:#0000}.tag.warn{color:var(--warn);background:var(--warn-dim);border-color:#0000}.tag.bad{color:var(--down);background:var(--down-dim);border-color:#0000}.banner{border-radius:var(--radius);background:var(--accent-dim);color:#c8d6ff;padding:9px 14px;font-size:13px}.banner.warn{background:var(--warn-dim);color:var(--warn)}.alert{border-radius:var(--radius);border:1px solid var(--down);background:var(--down-dim);color:#ffc9ce;padding:10px 14px}.alert.warn{border-color:var(--warn);background:var(--warn-dim);color:#f5d99c}.loading,.empty{color:var(--text2);padding:8px 0}.loading{text-align:center;padding:40px 0}.stats{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;display:grid;overflow:hidden}.card .stats{border-radius:8px}.stat{background:var(--card);flex-direction:column;gap:2px;min-width:0;padding:14px 16px;display:flex}.stat-label{color:var(--text2);font-size:12px}.stat-value{letter-spacing:-.01em;font-size:22px;font-weight:650}.stat-sub{color:var(--text3);font-size:12px}.stats.compact .stat-value{font-size:17px}.scroll{margin-left:-18px;margin-right:-18px;padding:0 18px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--text3);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 10px 8px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--border);vertical-align:top;padding:9px 10px}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}tbody tr:last-child td{border-bottom:none}.r{text-align:right;white-space:nowrap}.scroll td{white-space:nowrap}td .sub{color:var(--text3);font-size:12px;display:block}tr.selected td{background:var(--card-hi)}tr.detail td{background:var(--surface);white-space:normal;padding:12px 14px}tr.detail td>*{max-width:min(100%,100vw - 72px);position:sticky;left:14px}button.link{text-align:left;cursor:pointer;color:var(--text);background:0 0;border:none}button.link strong{color:var(--accent)}.facts{grid-template-columns:max-content 1fr;gap:6px 16px;font-size:13px;display:grid}.facts dt{color:var(--text2)}.gauge+.gauge{margin-top:14px}.gauge-head{justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.gauge-head span:last-child{color:var(--text2)}.bar{background:var(--card-hi);border-radius:999px;height:6px;overflow:hidden}.bar span{border-radius:inherit;min-width:2px;height:100%;display:block}.bar .good{background:var(--up)}.bar .warn{background:var(--warn)}.bar .bad{background:var(--down)}.gauge small{color:var(--text3);margin-top:4px;font-size:12px;display:block}.gauge small.text-bad{color:var(--down)}.quote{flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.quote strong{font-size:18px}.quote span{font-size:12px}.chart{width:100%;height:240px;overflow:hidden}.chart svg{display:block}.chart .grid{stroke:var(--border);stroke-width:1px}.chart text{fill:var(--text3);font-variant-numeric:tabular-nums;font-size:11px}.c-up{stroke:var(--up);fill:var(--up)}.c-down{stroke:var(--down);fill:var(--down)}.lvl line{stroke-dasharray:4 4;stroke-width:1px}.lvl text{fill:#fff}.lvl .lvl-label{font-size:10px}.lvl-entry line{stroke:var(--accent)}.lvl-entry rect,.lvl-entry .lvl-label{fill:var(--accent)}.lvl-stop line{stroke:var(--down)}.lvl-stop rect,.lvl-stop .lvl-label{fill:var(--down)}.lvl-target line{stroke:var(--up)}.lvl-target rect{fill:#1f8f63}.lvl-target .lvl-label{fill:var(--up)}.lvl-last line{stroke:var(--text3)}.lvl-last rect{fill:var(--border-hi)}.chart-empty{height:240px;color:var(--text3);place-items:center;display:grid}.decisions{flex-direction:column;gap:6px;display:flex}.decision{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 12px}.decision summary{cursor:pointer;align-items:center;gap:10px;list-style:none;display:flex}.decision summary::-webkit-details-marker{display:none}.decision summary .muted{margin-left:auto;font-size:12px}.decision dl{gap:2px;margin-top:10px;font-size:13px;display:grid}.decision dt{color:var(--text3);margin-top:6px;font-size:12px}.decision a{margin-top:10px;font-size:13px;display:inline-block}.dot{background:var(--text3);border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot.good{background:var(--up)}.timeline{font-size:13px;list-style:none}.timeline li{border-bottom:1px solid var(--border);grid-template-columns:8px 110px 36px 1fr;align-items:baseline;gap:10px;padding:6px 0;display:grid}.timeline li:last-child{border-bottom:none}.timeline .dot{align-self:center}.timeline .num{font-size:12px}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex;overflow:auto hidden}.tabs a{color:var(--text2);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px}.tabs a:hover{color:var(--text);text-decoration:none}.tabs a[aria-current=page]{color:var(--text);border-bottom-color:var(--accent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{border:1px solid var(--border);background:var(--card);color:var(--text2);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:13px}.chips button[aria-pressed=true]{background:var(--accent-dim);border-color:var(--accent);color:var(--text)}.filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.filters label{color:var(--text2);flex-direction:column;gap:4px;font-size:12px;display:flex}.filters select{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:6px 10px}.filters small{flex:1;min-width:200px}.lessons{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-items:start;gap:16px;display:grid}.lesson h3{font-size:15px;font-weight:600;line-height:1.4}.lesson p{color:var(--text2);font-size:13px}.lesson blockquote{border-left:2px solid var(--accent);color:var(--text);padding:2px 0 2px 12px;font-size:13px}.lesson cite{color:var(--text3);margin-top:4px;font-size:12px;font-style:normal;display:block}.lesson details summary{cursor:pointer;color:var(--text2);font-size:13px}.lesson ul,details.card ul{color:var(--text2);margin:8px 0 0 18px;font-size:13px}.source{margin-top:6px;font-size:12px}.reading{list-style:none}.reading li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:grid}.reading li:last-child{border-bottom:none}.tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.tile>*+*{margin-top:6px}.tile-head{justify-content:space-between;gap:8px;font-size:13px;display:flex}.tile-head .muted{font-size:11px}.tile-price{justify-content:space-between;align-items:baseline;display:flex}.tile-price span:first-child{font-size:20px;font-weight:650}.tile-price span:last-child{font-size:13px}.spark{width:100%;height:36px;display:block}.spark path{fill:none;stroke-width:1.5px;vector-effect:non-scaling-stroke}.spark.up path{stroke:var(--up)}.spark.down path{stroke:var(--down)}.spark-empty{height:36px;display:block}.tile small{font-size:11px;display:block}button.primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-weight:600}button.primary:hover:not(:disabled){opacity:.9}button:disabled{opacity:.5;cursor:not-allowed}.ghost.danger{color:var(--down);border-color:var(--down)}.warn-text{color:var(--warn)}.stat-value .unit{color:var(--text3);font-size:12px;font-weight:500}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar .primary{margin-left:auto}.toolbar select,.search,.editor input,.editor select,.editor textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;min-width:0;padding:7px 10px}.editor input:focus,.editor select:focus,.editor textarea:focus,.search:focus{border-color:var(--accent);outline:none}.search{width:160px}.editor{border-color:var(--border-hi)}.fields{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;display:grid}.editor label{color:var(--text2);flex-direction:column;gap:4px;font-size:12px;display:flex}.editor textarea{resize:vertical;font:inherit}.editor input::placeholder,.editor textarea::placeholder,.search::placeholder{color:var(--text3)}.editor input[type=datetime-local]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{color:var(--text2);cursor:pointer;background:0 0;border:none;padding:6px 16px;font-weight:600}.seg button.long[aria-pressed=true]{background:var(--up-dim);color:var(--up)}.seg button.short[aria-pressed=true]{background:var(--down-dim);color:var(--down)}.upload{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.upload label.ghost{color:var(--text2);cursor:pointer;flex-direction:row;font-size:13px}.upload .shot{flex-basis:100%}.actions{gap:10px;margin-top:12px;display:flex}.shot{border:1px solid var(--border);border-radius:8px;max-width:100%;max-height:360px;display:block}.shot-wait{width:240px;height:140px;color:var(--text3);place-items:center;font-size:12px;display:grid}table.journal tr.row{cursor:pointer}table.journal tr.row:hover td{background:var(--card-hi)}table.journal .tag+.tag{margin-left:4px}.entry-detail{white-space:normal;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.entry-detail .note{white-space:pre-wrap}.idea-detail{white-space:normal;gap:12px;display:grid}.idea-detail .note{white-space:pre-wrap}.idea-detail label{color:var(--text2);flex-direction:column;gap:4px;font-size:12px;display:flex}.idea-detail textarea,.idea-detail select{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;resize:vertical;border-radius:8px;min-width:0;padding:7px 10px}.idea-detail .tag{margin-left:6px}.alert.small{font-size:12px}.empty-state{text-align:center;padding:36px 18px}.empty-state>*+*{margin-top:10px}.section-title+.card.empty{margin-top:0}.checks{gap:4px;margin-top:8px;font-size:13px;list-style:none;display:grid}.checks li{grid-template-columns:16px 1fr auto;align-items:baseline;gap:8px;display:grid}.checks li.ok>:first-child{color:var(--up)}.checks li.no>:first-child{color:var(--down)}.checks li.no>:nth-child(2){color:var(--text)}.ledger{list-style:none}.ledger li{border-bottom:1px solid var(--border)}.ledger li:last-child{border-bottom:none}.ledger-row{text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:8px 110px 36px 1fr auto;align-items:center;gap:10px;width:100%;padding:8px 0;font-size:13px;display:grid}.ledger-row:hover{color:var(--text);background:var(--card-hi)}.ledger-detail{padding:4px 0 12px 18px}.dot.warn{background:var(--warn)}.position h3{font-size:15px}.track{background:linear-gradient(90deg, var(--down-dim), var(--card-hi) 30%, var(--up-dim));border-radius:999px;height:8px;position:relative}.track-fill{border-right:2px solid var(--text);position:absolute;inset:0 auto 0 0}.track-entry{background:var(--accent);width:2px;position:absolute;top:-3px;bottom:-3px}.track-labels{justify-content:space-between;font-size:12px;display:flex;margin-top:6px!important}.rules p{max-width:900px}.method summary{cursor:pointer}.method ol{color:var(--text2);gap:4px;margin:10px 0 0 20px;font-size:13px;display:grid}.strategy-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.card.strategy{text-align:left;cursor:pointer;color:var(--text);flex-direction:column;align-items:flex-start;gap:4px;display:flex}.card.strategy>*+*{margin-top:0}.card.strategy.active{border-color:var(--accent);background:var(--card-hi)}.card.strategy b.up{color:var(--up)}.card.strategy b.down{color:var(--down)}table.heat td.heat-3{background:#2ebd8547}table.heat td.heat-2{background:#2ebd8529}table.heat td.heat-1{background:#2ebd8512}table.heat td.heat-n{background:#f0616d24}table.heat td{padding-left:10px;padding-right:10px}table.heat tr.total td{border-top:1px solid var(--border-hi);font-weight:600}.chart .line{fill:none;stroke:var(--accent);stroke-width:1.6px}.chart .baseline{stroke:var(--text3);stroke-dasharray:3 4}.chart .band{fill:#0000}.chart .band-1{fill:#5b8cff0f}.chart .band-2{fill:#e8b04b0f}.chart .band-label{fill:var(--text3);font-size:10px}.mk{stroke:var(--bg);stroke-width:1px}.mk-long,.mk-dot.mk-long{fill:var(--up);background:var(--up)}.mk-short,.mk-dot.mk-short{fill:var(--down);background:var(--down)}.mk-win,.mk-dot.mk-win{fill:#9be8c8;background:#9be8c8}.mk-loss,.mk-dot.mk-loss{fill:#f7b0b6;background:#f7b0b6}.mk-dot{border-radius:50%;width:8px;height:8px;margin:0 4px 0 10px;display:inline-block}.legend .mk-dot:first-child{margin-left:0}.small-value{font-weight:500;font-size:13px!important}@media (width<=1080px){.grid{grid-template-columns:minmax(0,1fr)}}@media (width<=860px){.app{grid-template-columns:minmax(0,1fr)}.side{z-index:10;height:auto;padding:6px calc(8px + env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) calc(8px + env(safe-area-inset-left));border-right:none;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f1217f0;position:fixed;inset:auto 0 0}.brand,.side-foot{display:none}.side nav{scrollbar-width:none;flex-direction:row;justify-content:space-between;overflow-x:auto}.side nav::-webkit-scrollbar{display:none}.nav-item{text-align:center;white-space:nowrap;flex-direction:column;flex:1 1 0;gap:2px;min-width:0;padding:6px 4px;font-size:10.5px}.nav-item .nav-long{display:none}.nav-item .nav-short{display:inline}.nav-item[aria-current=page]{background:0 0}.main{padding:calc(16px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(84px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left))}.top{align-items:flex-start}.top h1{font-size:20px}.top p{font-size:13px}.top-side .pulse,.top-install,.top-logout{display:inline-flex}.top-side .pulse{gap:0;font-size:0}.card{padding:14px}.scroll{margin-left:-14px;margin-right:-14px;padding:0 14px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value{font-size:18px}.chart,.chart-empty{height:200px}.lessons{grid-template-columns:minmax(0,1fr)}.timeline li{grid-template-columns:8px auto 1fr;row-gap:2px}.timeline li>:nth-child(4){grid-column:2/-1}.facts{grid-template-columns:minmax(0,1fr);gap:0}.facts dd{margin-bottom:8px}.entry-detail{grid-template-columns:minmax(0,1fr)}.ledger-row{grid-template-columns:8px auto 1fr;row-gap:2px}.ledger-row>:nth-child(4),.ledger-row>:nth-child(5){grid-column:2/4}.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar .primary{width:100%;margin-left:0}.search{flex:1}}.filters .fg{color:var(--text2);flex-direction:column;gap:4px;font-size:12px;display:flex}.ohlc{min-height:1.5em}.struct-chart{touch-action:pan-y;height:auto}.struct-chart svg{cursor:crosshair}.struct-chart .zz{stroke:var(--text3);stroke-width:1px;opacity:.8}.struct-chart .warm{fill:var(--warn-dim);opacity:.45}.struct-chart .carry{stroke-width:1.4px;stroke-dasharray:5 4;opacity:.55}.struct-chart .carry-up{stroke:var(--up)}.struct-chart .carry-down{stroke:var(--down)}.struct-chart .carry-broken{stroke:var(--warn);stroke-dasharray:none;opacity:.9}.struct-chart .carry-live{opacity:1}.struct-chart .mark{font-size:10.5px;font-weight:700}.struct-chart .mark-up,.struct-chart .mark-up text{fill:var(--up)}.struct-chart .mark-down,.struct-chart .mark-down text{fill:var(--down)}.struct-chart .msb text{font-size:10.5px;font-weight:700}.struct-chart .cross{stroke:var(--border-hi);stroke-width:1px}.pan{width:100%;accent-color:var(--accent)}.legend{flex-wrap:wrap;gap:4px 16px;display:flex}.legend .lg:before{content:"";vertical-align:middle;border-top:2px solid var(--text3);width:14px;height:0;margin-right:6px;display:inline-block}.legend .lg-up:before{border-color:var(--up)}.legend .lg-down:before{border-color:var(--down)}.legend .lg-carry:before{border-top-style:dashed;border-color:var(--warn)}.legend .lg-msb:before{border-top-style:solid;border-color:var(--warn)}.method .method-body{color:var(--text2);flex-direction:column;gap:8px;max-width:78ch;margin-top:10px;display:flex}.macro-bar .search{width:190px}.macro-note{border-left:3px solid var(--accent)}.macro-note p:not(.small){max-width:78ch;font-size:15px;line-height:1.65}.macro-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:600}.macro-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:10px 0;display:flex}.macro-head h2{font-size:17px;font-weight:650}.macro-num{font-family:var(--mono);color:var(--text3);font-size:11px}.macro-tiles{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.macro-tile{padding:12px 14px}.macro-label{color:var(--text2);font-size:12px;font-weight:600}.macro-tile .tile-price span:first-child{font-size:19px}.macro-tile .tile-price span:last-child{white-space:nowrap;font-size:12px}.macro-tile .spark,.macro-tile .spark-empty{height:28px}.macro-cal>*+*{margin-top:0}.macro-cal-row{border-bottom:1px solid var(--border);grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 0;display:grid}.macro-cal-row:last-child{border-bottom:none}.macro-foot{line-height:1.6}@media (width<=560px){.macro-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.macro-tile .tile-price{flex-direction:column;align-items:flex-start;gap:2px}.macro-bar .search{width:150px}}.dot.bad{background:var(--down)}.dot.info{background:var(--accent)}.ledger-label strong{font-weight:650}.ledger-curve{width:100%;height:120px;display:block}.ledger-curve path{fill:none;stroke-width:1.8px;vector-effect:non-scaling-stroke}.ledger-curve .base{stroke:var(--border-hi);stroke-dasharray:4 4;vector-effect:non-scaling-stroke}div.ledger-curve{color:var(--text3);place-items:center;font-size:13px;display:grid}.ledger-event{color:var(--text);grid-template-columns:8px 104px 44px 1fr auto;align-items:baseline}.ledger-event .sub{color:var(--text3);font-size:12px;display:block}.ledger-event .dot{align-self:start;margin-top:6px}.ledger-event:disabled{cursor:default;color:var(--text);opacity:1}.ledger-event:disabled:hover{background:0 0}.ledger-page td .tag{margin-top:4px}.ledger-page details>summary{cursor:pointer}.ledger-pending{border-top:1px solid var(--border);gap:6px;padding-top:12px;display:grid}.ledger-pending h3{color:var(--text2);font-weight:500}.ledger-errors{gap:4px;margin-top:8px;list-style:none;display:grid}@media (width<=560px){.ledger-event{grid-template-columns:8px 88px 40px 1fr}.ledger-event>.r{grid-column:4}}.health-line{color:var(--text3);overflow-wrap:anywhere}.health-line>span{max-width:100%;display:inline-block}.overview-macro .card-head .macro-kicker{margin:0}.overview-quotes{background:var(--border);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1px;list-style:none;display:grid;overflow:hidden}.overview-quotes li{background:var(--card);flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.overview-quotes li .muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.overview-block+.overview-block{border-top:1px solid var(--border);padding-top:14px}.overview-block>*+*{margin-top:10px}.overview-list{list-style:none}.overview-list li{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"what r""detail detail";align-items:center;gap:2px 12px;padding:8px 0;display:grid}.overview-list li:first-child{border-top:none}.overview-list li>:first-child{flex-wrap:wrap;grid-area:what;align-items:center;gap:6px;display:flex}.overview-list li>:nth-child(2){grid-area:detail}.overview-list li>:nth-child(3){text-align:right;grid-area:r}.ticker{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.tick{background:var(--card);flex-direction:column;gap:1px;min-width:0;padding:10px 14px;display:flex}.tick-asset{color:var(--text2);font-size:12px;font-weight:600}.tick-price{font-size:17px;font-weight:650}.tick-foot{background:var(--surface);text-align:right;grid-column:1/-1;padding:4px 14px}@media (width<=860px){.ticker{grid-template-columns:repeat(3,minmax(0,1fr))}}.overview-calendar{list-style:none}.overview-calendar li{grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 0;display:grid}.overview-summary{color:var(--text2)}.overview-summary.clamped{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.overview-macro p.overview-summary{font-size:14px}.overview-list li.seen a{color:var(--text)}.shared-note+.shared-note{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.shared-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.shared-text{overflow-wrap:anywhere;max-width:78ch;margin:10px 0;line-height:1.55}.shared-text.clamped{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.shared-past{margin-top:14px}.shared-past>summary{cursor:pointer;color:var(--text2);font-size:13px}.shared-past-row{margin-top:12px}.shared-past-row p{color:var(--text2);max-width:78ch;margin:6px 0 0;font-size:13px}.struct-chart .ext line{stroke-width:1px;stroke-dasharray:2 3}.struct-chart .ext rect{opacity:.16}.struct-chart .ext-tag{font-size:10px}.struct-chart .lvl-last .ext-tag{fill:var(--text)}.struct-chart .ext-out{fill:var(--text2);paint-order:stroke;stroke:var(--card);stroke-width:3px;stroke-linejoin:round;font-size:10px}.struct-chart .ext-entry_zone rect{fill:var(--accent)}.struct-chart .ext-invalidation line{stroke:var(--down)}.struct-chart .ext-invalidation rect{fill:var(--down)}.struct-chart .ext-target line{stroke:var(--up)}.struct-chart .ext-target rect{fill:var(--up)}.struct-chart .ext-key_level line{stroke:var(--accent);opacity:.7}.struct-chart .ext-key_level rect{fill:var(--accent);opacity:.1}.legend .lg-ext:before{border-top-style:dotted;border-color:var(--accent)}.struct-chart .ext-entry_zone line{stroke:var(--accent)}.board-net{align-items:center;gap:8px;display:inline-flex}.board-spark{width:56px;height:20px}.board-spark path{fill:none;stroke-width:1.8px;vector-effect:non-scaling-stroke}.board-spark .base{stroke:var(--border-hi);stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.board-sample{min-width:88px}.board-sample .meter{background:var(--card-hi);border-radius:3px;height:6px;overflow:hidden}.board-sample .meter span{background:var(--accent);height:100%;display:block}.board-page .banner{margin-bottom:4px}.board-lock{vertical-align:middle;color:var(--text3);margin-left:6px;display:inline-flex}.board-locked svg{vertical-align:-2px}.board-page h3{color:var(--text2);margin:16px 0 8px;font-size:13px}table.board-compare{max-width:560px}table.board-compare.wide{max-width:820px}table.board tr.board-baseline td{color:var(--text2);border-top:1px dashed var(--border-hi)}table.board tr.board-baseline td:first-child{padding-left:20px}.board-controls{gap:10px;margin-bottom:12px;display:grid}.board-controls .actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.board-confirm{border:1px solid var(--border-hi);border-radius:8px;gap:8px;padding:12px;display:grid}.board-confirm label{color:var(--text2);flex-direction:column;gap:4px;font-size:12px;display:flex}.board-confirm textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;resize:vertical;border-radius:8px;padding:7px 10px}.board-reason{white-space:pre-wrap;max-width:360px}button.ghost.small{padding:3px 8px;font-size:12px}.vitrin{border:1px solid var(--border);background:radial-gradient(120% 140% at 0% 0%, #2ebd8517, transparent 55%), radial-gradient(90% 120% at 100% 100%, #5b8cff14, transparent 60%), var(--card);border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px;padding:22px 24px;display:grid}.vitrin-main{flex-direction:column;gap:10px;min-width:0;display:flex}.vitrin-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text2);align-items:center;gap:10px;font-size:11px;display:flex}.vitrin-live{background:var(--up-dim);color:var(--up);letter-spacing:.08em;border-radius:999px;align-items:center;gap:6px;padding:2px 9px;display:inline-flex}.vitrin-live .pulse{background:var(--up);border-radius:50%;width:7px;height:7px;animation:2s infinite vitrin-pulse;box-shadow:0 0 #2ebd8599}@keyframes vitrin-pulse{70%{box-shadow:0 0 0 7px #2ebd8500}to{box-shadow:0 0 #2ebd8500}}.vitrin-value{letter-spacing:-.03em;color:var(--text);font-size:52px;font-weight:700;line-height:1.05}.vitrin-value.up,.vitrin-value.down{background:linear-gradient(110deg, var(--text) 10%, var(--tint) 45%, var(--text) 80%);color:#0000;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite vitrin-shine}.vitrin-value.up{--tint:var(--up)}.vitrin-value.down{--tint:var(--down)}@keyframes vitrin-shine{0%,to{background-position:100% 0}50%{background-position:0 0}}.vitrin-chips{flex-wrap:wrap;gap:6px;display:flex}.vitrin-chips .chip{border:1px solid var(--border);color:var(--text2);background:#ffffff0a;border-radius:999px;padding:3px 10px;font-size:12px}.vitrin-chips .chip.up{color:var(--up);background:var(--up-dim);border-color:#0000}.vitrin-chips .chip.down{color:var(--down);background:var(--down-dim);border-color:#0000}.vitrin-foot{color:var(--text3);font-size:12px}.vitrin-chart{border:1px solid var(--border);background:#00000038;border-radius:10px;flex-direction:column;gap:10px;min-width:0;padding:14px 16px 10px;display:flex}.vitrin-bars{flex:1;align-items:stretch;gap:4px;min-height:130px;display:flex}.vitrin-day{flex-direction:column;flex:1 1 0;min-width:0;display:flex}.vitrin-col{flex:1;position:relative}.vitrin-col:after{content:"";border-top:1px dashed var(--border);position:absolute;top:50%;left:0;right:0}.vitrin-col .bar{z-index:1;border-radius:3px;position:absolute;left:18%;right:18%}.vitrin-col .bar.up{background:linear-gradient(to top, #2ebd858c, var(--up));bottom:50%}.vitrin-col .bar.down{background:linear-gradient(to bottom, #f0616d8c, var(--down));top:50%}.vitrin-col .bar.open{background:0 0;border:1px dashed}.vitrin-col .bar.open.up{color:var(--up)}.vitrin-col .bar.open.down{color:var(--down)}.vitrin-col .bar.zero{background:var(--text3);opacity:.5;height:2px;top:calc(50% - 1px)}.vitrin-label{height:16px;color:var(--text3);text-align:center;white-space:nowrap;font-size:10px}@media (prefers-reduced-motion:reduce){.vitrin-value.up,.vitrin-value.down,.vitrin-live .pulse{animation:none}}table.board-trades{border-collapse:separate;border-spacing:0 6px}table.board-trades tbody td{vertical-align:middle;background:var(--tint-bg,var(--card-hi));border:none}table.board-trades th:first-child{padding-left:14px}table.board-trades th:last-child,table.board-trades tbody td:last-child{padding-right:14px}table.board-trades tbody td:first-child{box-shadow:inset 3px 0 0 var(--tint-edge,var(--border-hi));border-radius:8px 0 0 8px;padding-left:14px}table.board-trades tbody td:last-child{border-radius:0 8px 8px 0}table.board-trades tr.t-up{--tint-bg:#2ebd8512;--tint-grad:linear-gradient(90deg, #2ebd851f, #2ebd8508);--tint-edge:var(--up)}table.board-trades tr.t-down{--tint-bg:#f0616d12;--tint-grad:linear-gradient(90deg, #f0616d1f, #f0616d08);--tint-edge:var(--down)}table.board-trades tr.t-open{--tint-bg:#e8b04b12;--tint-grad:linear-gradient(90deg, #e8b04b1f, #e8b04b08);--tint-edge:var(--warn)}.side-pill{letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:1px 7px;font-size:10.5px;font-weight:650;display:inline-block}.side-pill.long{color:var(--up);background:var(--up-dim)}.side-pill.short{color:var(--down);background:var(--down-dim)}table.board-trades .t-net{font-size:14px;font-weight:650}@media (width<=860px){.vitrin{grid-template-columns:minmax(0,1fr);padding:18px}.vitrin-value{font-size:42px}}@media (width<=560px){table.board-trades,table.board-trades tbody{display:block}table.board-trades thead{display:none}table.board-trades tbody tr{background:var(--tint-grad,var(--card-hi));box-shadow:inset 3px 0 0 var(--tint-edge,var(--border-hi));border-radius:10px;grid-template-columns:1fr 1fr;gap:6px 12px;margin-bottom:8px;padding:12px 14px;display:grid}table.board-trades tbody td,table.board-trades tbody td:first-child,table.board-trades tbody td:last-child{box-shadow:none;text-align:left;background:0 0;border-radius:0;padding:0;display:block}table.board-trades tbody td{order:2}table.board-trades tbody td.t-asset{order:0}table.board-trades tbody td.t-outcome{text-align:right;order:1}table.board-trades tbody td[data-label]:before{content:attr(data-label);color:var(--text3);font-size:11px;display:block}}.views-thread{flex-direction:column;gap:10px;max-height:min(60vh,640px);padding:4px 2px;display:flex;overflow-y:auto}.views-msg{border:1px solid var(--border);background:var(--card-hi);border-radius:12px;flex-direction:column;gap:4px;max-width:min(78%,620px);padding:10px 12px;display:flex}.views-msg.owner{background:var(--accent-dim);border-color:#0000;border-bottom-right-radius:4px;align-self:flex-end}.views-msg.agent{border-bottom-left-radius:4px;align-self:flex-start}.views-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.views-body{white-space:pre-wrap;overflow-wrap:anywhere}.views-reply{color:var(--text2)}.views-reply b{color:var(--text);font-weight:600}.link-btn{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0}.views-compose{flex-direction:column;gap:8px;display:flex}.views-compose textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:8px;min-height:72px;padding:9px 11px}.views-compose textarea:focus{border-color:var(--accent);outline:none}.views-compose textarea::placeholder{color:var(--text3)}.views-compose-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}@media (width<=560px){.views-msg{max-width:92%}}.idea-chart{gap:4px;min-width:0;display:grid}.idea-chart .legend{margin:0}.idea-chart-wait{height:220px}.struct-chart .pin line{stroke:var(--text2);stroke-width:1px;stroke-dasharray:3 3}.struct-chart .pin circle{stroke:var(--card);stroke-width:1.5px}.struct-chart .pin text{paint-order:stroke;stroke:var(--card);stroke-width:3px;stroke-linejoin:round;font-size:10.5px;font-weight:700}.struct-chart .pin-neutral text,.struct-chart .pin-neutral circle{fill:var(--text2)}.struct-chart .pin-accent text,.struct-chart .pin-accent circle{fill:var(--accent)}.struct-chart .pin-up text,.struct-chart .pin-up circle{fill:var(--up)}.struct-chart .pin-down text,.struct-chart .pin-down circle{fill:var(--down)}
