:root{color-scheme:dark;--bg:#10100f;--panel:#151514;--line:#282826;--muted:#84847d;--text:#eae9e2;--lime:#d2f279;--serif:Manrope,'DM Sans',sans-serif;--sans:'DM Sans',sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;min-height:100vh}.shell{min-height:100vh;display:flex}.sidebar{width:246px;background:#131312;border-right:1px solid #222220;display:flex;flex-direction:column;padding:26px 15px 15px;flex-shrink:0}.brand{display:flex;align-items:center;gap:9px;margin:1px 10px 31px;font-family:var(--serif);font-size:18px;font-weight:800;letter-spacing:-.7px;color:#f3f2eb}.brand-mark{width:26px;height:26px;display:grid;place-items:center;color:var(--lime);font-size:25px}.brand-muted{color:#88877f;font-weight:400}.new-chat{height:39px;border:1px solid #353530;background:transparent;border-radius:7px;color:#e1e0d9;text-align:left;padding:0 11px;font:500 12px var(--sans);cursor:pointer}.new-chat:hover{border-color:#68685b}.new-chat span{font-size:17px;color:var(--lime);vertical-align:-1px;margin-right:8px}.side-label{font:10px var(--mono);letter-spacing:1.25px;color:#75756e;margin:34px 10px 13px}.side-item{font-size:12px;color:#c1c0b9;padding:10px;border-radius:6px;margin:1px 0;cursor:pointer}.side-item.selected{background:#22221f;color:#f2f0e7}.side-icon{display:inline-block;width:22px;color:var(--lime);font-size:15px}.side-item:nth-of-type(4) .side-icon{color:#e3a9ff}.sidebar-bottom{margin-top:auto;border-top:1px solid #262624;padding:14px 6px 3px;display:flex;align-items:center;gap:8px;color:#a19f97;font-size:11px}.status-dot{width:7px;height:7px;border-radius:50%;background:#d9aa58;box-shadow:0 0 8px #d9aa5855}.status-dot.online{background:#9bd461;box-shadow:0 0 8px #9bd46155}.icon-button{margin-left:auto;border:0;background:transparent;color:#92918a;font-size:15px;cursor:pointer}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:58px;border-bottom:1px solid #242422;display:flex;justify-content:space-between;align-items:center;padding:0 32px}.breadcrumb{font-size:11px;color:#8f8e87}.breadcrumb span{color:#51514b;padding:0 8px}.breadcrumb b{color:#dddcd5;font-weight:500}.top-right{display:flex;align-items:center;gap:14px}.local-pill{font:9px var(--mono);letter-spacing:1px;color:#a5a49b;border:1px solid #383833;border-radius:4px;padding:5px 7px}.local-pill i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lime);margin:0 5px 1px 0}.avatar{width:25px;height:25px;border-radius:50%;background:#2e3027;border:1px solid #45463c;color:#d3ed8c;font:11px var(--mono)}.workspace{width:min(810px,calc(100% - 50px));margin:0 auto;flex:1;display:flex;flex-direction:column;position:relative}.welcome{margin:auto 0 30px;padding-top:30px}.eyebrow{font:9px var(--mono);letter-spacing:1.4px;color:#a9aa9e;display:flex;align-items:center;gap:9px}.eyebrow-line{height:1px;width:23px;background:var(--lime)}h1{font:500 clamp(43px,6vw,68px)/1.07 var(--serif);letter-spacing:-3.8px;margin:22px 0 15px;color:#e7e6df}.accent{color:var(--lime)}.intro{color:#999890;font-size:13px;line-height:1.75;margin:0 0 31px}.mode-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:565px}.mode-card{height:68px;border:1px solid #30302c;background:#161615;border-radius:8px;display:flex;align-items:center;text-align:left;padding:0 13px;gap:12px;color:var(--text);cursor:pointer;transition:.15s}.mode-card:hover{border-color:#59594b;transform:translateY(-1px)}.mode-card.active{border-color:#838a61;background:#191a15}.card-icon{font-size:20px;width:30px;height:30px;border-radius:7px;display:grid;place-items:center}.chat-icon{background:#282924;color:#d4ef8c}.brain-icon{background:#2b222e;color:#e4b8ff}.card-text{display:flex;flex-direction:column;gap:5px}.card-text strong{font-size:11px;font-weight:600}.card-text small{font-size:10px;color:#929189}.card-arrow{margin-left:auto;color:#77776f;font-size:14px}.mode-card.active .card-arrow{color:var(--lime)}.suggestions-label{font:9px var(--mono);letter-spacing:1.2px;color:#77776f;margin:27px 0 11px}.suggestions{display:flex;gap:8px;flex-wrap:wrap}.suggestions button{background:transparent;border:1px solid #2d2d29;border-radius:20px;color:#a7a69d;font:10px var(--sans);padding:7px 11px;cursor:pointer}.suggestions button:hover{border-color:#666657;color:#e5e3da}.composer-wrap{margin:0 0 20px}.brainstorm-hint{font-size:10px;color:#c8b0d7;padding:0 0 10px 4px}.brainstorm-hint span{color:#ddaaff;padding-right:5px}.composer{border:1px solid #3a3a34;border-radius:10px;background:#181817;box-shadow:0 9px 35px #0003;padding:10px 12px 8px}.composer:focus-within{border-color:#666853}textarea{width:100%;resize:none;max-height:180px;border:0;outline:0;background:transparent;color:#edece5;font:13px/1.5 var(--sans);padding:5px 3px 12px}textarea::placeholder{color:#74736c}.composer-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #282825;padding-top:8px}.composer-tools{display:flex;align-items:center;gap:8px}.composer-spark{color:var(--lime);font-size:15px}.composer select{max-width:180px;background:#20201d;color:#d0cfc8;border:1px solid #34342f;border-radius:5px;padding:5px 23px 5px 7px;font:10px var(--sans);outline:0}.provider-count{font:9px var(--mono);color:#77766e}.send-area{display:flex;align-items:center;gap:12px}.enter-hint{font:9px var(--mono);color:#686860}.send-button{width:28px;height:27px;border:0;border-radius:6px;background:var(--lime);color:#1a1b14;font:bold 17px var(--sans);cursor:pointer}.send-button:disabled{opacity:.4;cursor:wait}.fine-print{text-align:center;color:#686860;font-size:9px;margin-top:9px}.conversation{padding:34px 1px 25px;overflow:auto;flex:1}.message{margin:0 0 25px;max-width:700px}.message.user{margin-left:auto;max-width:75%;border:1px solid #33332e;background:#1a1a18;border-radius:10px;padding:12px 15px;color:#e1e0da;line-height:1.55;white-space:pre-wrap}.message-head{display:flex;align-items:center;gap:8px;font-size:10px;color:#aaa99f;margin-bottom:8px}.message-head strong{color:#deddd5;font-weight:600}.message-body{font-size:13px;line-height:1.75;color:#d5d4cd;white-space:pre-wrap}.response-list{display:grid;gap:12px}.response-card{border:1px solid #32322d;background:#181817;border-radius:9px;padding:15px}.response-card.winner{border-color:#6e7850;box-shadow:0 0 0 1px #6e785033}.response-card.failed{opacity:.7}.response-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:10px;color:#aaa99f}.response-title strong{color:#e2e1d9;font-weight:600}.vote-tag{font:9px var(--mono);color:var(--lime)}.winner-box{margin:0 0 19px;border:1px solid #50573b;background:#1b1d16;border-radius:9px;padding:14px}.winner-label{font:9px var(--mono);letter-spacing:1px;color:var(--lime);margin-bottom:9px}.winner-box .message-body{color:#edeee4}.hidden{display:none!important}.loader{display:flex;align-items:center;gap:10px;color:#c5c4bb;font-size:11px;margin:0 0 15px;padding:0 3px}.loader-orb{color:var(--lime);font-size:17px;animation:spin 3s linear infinite}.dots{display:flex;gap:3px}.dots i{width:3px;height:3px;border-radius:50%;background:#a6a597;animation:pulse 1s ease infinite}.dots i:nth-child(2){animation-delay:.18s}.dots i:nth-child(3){animation-delay:.36s}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.2;transform:translateY(-2px)}}#settingsDialog{width:min(420px,calc(100% - 30px));background:#191918;border:1px solid #3b3b35;border-radius:12px;color:var(--text);padding:27px;box-shadow:0 20px 100px #000b}#settingsDialog::backdrop{background:#0009;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:16px;top:14px;border:0;background:transparent;color:#aaa;font-size:22px;cursor:pointer}.settings-symbol{color:var(--lime);font-size:24px}.settings-list{display:grid;gap:7px;margin:18px 0}.settings-row{display:flex;align-items:center;justify-content:space-between;background:#20201e;border-radius:6px;padding:10px;font-size:11px}.settings-state{font:9px var(--mono);color:#919087}.settings-state.ready{color:var(--lime)}#settingsDialog h2{font:600 21px var(--serif);margin:10px 0}#settingsDialog p,.settings-foot{font-size:11px;line-height:1.7;color:#a09f97}code{font:10px var(--mono);color:#deddd4;background:#252522;padding:2px 4px;border-radius:3px}.settings-foot{border-top:1px solid #30302c;padding-top:13px}
@media(max-width:760px){.sidebar{width:54px;padding:18px 7px 12px;align-items:center}.brand{margin:1px 0 27px}.brand>span:last-child,.new-chat:not(span),.side-label,.side-item:not(.selected),.side-item.selected{font-size:0}.new-chat{width:37px;padding:0;text-align:center;font-size:0!important}.new-chat span{font-size:20px!important;margin:0}.side-item{width:38px;height:38px;padding:10px 11px;overflow:hidden}.side-icon{font-size:16px}.sidebar-bottom{width:100%;justify-content:center;padding:13px 0}.sidebar-bottom #connectionLabel,.icon-button{display:none}.topbar{padding:0 17px}.workspace{width:calc(100% - 34px)}.welcome{padding-top:15px}h1{letter-spacing:-2.5px}.mode-cards{grid-template-columns:1fr}.mode-card{height:60px}.suggestions{gap:6px}.suggestions button{font-size:9px}.enter-hint{display:none}.composer select{max-width:135px}.conversation{padding-top:22px}}

.vote-rationales{border-top:1px solid #3a3d30;margin-top:17px;padding-top:13px}.rationale-heading,.alternatives-heading{font:9px var(--mono);letter-spacing:1px;color:#b8c68d;margin-bottom:9px}.ballot-list{display:grid;gap:8px}.ballot-item{border:1px solid #34362d;border-radius:7px;background:#191a16;padding:9px 10px}.ballot-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px}.ballot-head strong{color:#e4e3da;font-weight:600}.ballot-head span{color:#a8ae8a;font-size:9px}.ballot-item p,.no-rationales{margin:6px 0 0;color:#c0bfb6;font-size:11px;line-height:1.55}.alternatives{display:grid;gap:7px;margin:0 0 17px}.alternatives-heading{margin:1px 0 2px;color:#85857c}.response-details{border:1px solid #33332e;border-radius:8px;background:#171716;overflow:hidden}.response-details[open]{border-color:#494941}.response-details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;color:#d1d0c8;font-size:11px}.response-details summary::-webkit-details-marker{display:none}.response-details summary::after{content:'+';color:var(--lime);font:16px var(--sans);order:3}.response-details[open] summary::after{content:'−'}.response-details summary strong{font-weight:600}.alternative-meta{margin-left:auto;color:#88877f;font:9px var(--mono)}.alternative-body{border-top:1px solid #2d2d29;padding:12px 13px}.winner-box{padding:16px}
.ballot-item .ballot-suggestion{color:#a9b88a;border-top:1px solid #303229;padding-top:6px}

/* Readability: prioritize conversation content while keeping labels secondary. */
body{font-size:15px}
.new-chat,.side-item{font-size:13px}
.side-label{font-size:11px}
.sidebar-bottom{font-size:12px}
.breadcrumb{font-size:12px}
.local-pill{font-size:10px}
.intro{font-size:15px}
.card-text strong{font-size:13px}
.card-text small{font-size:12px}
.suggestions button{font-size:12px}
.brainstorm-hint{font-size:12px}
textarea{font-size:15px}
.composer select{font-size:12px}
.provider-count,.enter-hint{font-size:10px}
.fine-print{font-size:10px}
.message.user{font-size:15px}
.message-head{font-size:12px}
.message-body{font-size:15px;line-height:1.8}
.response-title{font-size:12px}
.vote-tag{font-size:10px}
.winner-label{font-size:10px}
.loader{font-size:12px}
.settings-row{font-size:12px}
#settingsDialog p,.settings-foot{font-size:13px}
code{font-size:11px}
.rationale-heading,.alternatives-heading{font-size:10px}
.ballot-head{font-size:12px}
.ballot-head span{font-size:11px}
.ballot-item p,.no-rationales{font-size:13px;line-height:1.65}
.response-details summary{font-size:13px}
.alternative-meta{font-size:10px}
.history-list{display:grid;gap:4px;max-height:280px;overflow:auto;margin:0 2px;padding-right:2px}.history-entry{display:grid;gap:5px;width:100%;border:1px solid transparent;border-radius:6px;background:transparent;color:#d2d1ca;padding:9px 8px;text-align:left;cursor:pointer}.history-entry:hover,.history-entry.active{background:#20201d;border-color:#33332e}.history-prompt{font:12px/1.45 var(--sans);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-meta{font:10px var(--mono);color:#89887f}.history-empty{padding:5px 8px;color:#77766e;font-size:11px;line-height:1.5}.history-label{margin-top:25px}.history-list::-webkit-scrollbar{width:4px}.history-list::-webkit-scrollbar-thumb{background:#3a3a35;border-radius:4px}
@media(max-width:760px){.suggestions button{font-size:11px}.response-details summary{font-size:12px}.message.user{max-width:88%}.history-label,.history-list{display:none}}
.trading-icon{background:#202a21;color:#a8e29a}
.mode-cards{grid-template-columns:repeat(3,minmax(0,1fr));max-width:810px}
.trading-panel{width:100%;padding:32px 1px 24px;overflow:auto;flex:1}
.trading-heading,.trades-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}
.trading-heading h2{font:500 34px/1.15 var(--serif);letter-spacing:-1px;margin:15px 0 7px}
.trading-heading p{font-size:12px;color:#999890;margin:0}
.refresh-button{border:1px solid #393a32;background:#1a1b17;border-radius:6px;color:#d8d9cd;padding:9px 12px;font:11px var(--sans);cursor:pointer}
.refresh-button:disabled{opacity:.55;cursor:wait}
.trading-error{margin-top:16px;padding:12px;border:1px solid #66413c;border-radius:7px;color:#f0b9a9;background:#261b19;font-size:12px;line-height:1.5}
.market-card,.position-card{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid #373832;background:#191a17;border-radius:10px;padding:20px;margin-top:24px}
.market-card>div,.position-card>div:first-child{display:flex;flex-direction:column;gap:8px}
.metric-label{font:9px var(--mono);letter-spacing:1px;color:#929389}
.metric-label b{color:#d9dacd;font-weight:500}
#tradingPrice{font:500 34px var(--serif);color:#eeeeE6;letter-spacing:-1px}
.market-sma strong{font:500 20px var(--serif);color:#dedfd4}
.market-sma>span:last-child,.position-card small{font-size:10px;color:#898a80}
.market-btc-reference strong{font:500 20px var(--serif);color:#dedfd4}
.market-btc-reference small{font-size:10px;color:#898a80;line-height:1.5}
.signal-tag{display:inline-flex;align-self:flex-start;border-radius:20px;padding:5px 9px;font-size:10px;background:#24251e;color:#c9caaf}
.signal-tag.buy{background:#1e2a20;color:#a5dc9f}.signal-tag.sell{background:#30211f;color:#efb1a2}
.trading-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:10px}
.trading-metrics article{min-width:0;border:1px solid #30312b;background:#171816;border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:9px}
.trading-metrics article strong{font:500 15px var(--serif);color:#e5e5dc;overflow-wrap:anywhere}
.positive{color:#a9dd98!important}.negative{color:#eea89c!important}
.position-card{margin-top:10px}.position-card>div:first-child strong{font:500 17px var(--serif);color:#e5e5dc}
.trade-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.trade-actions button{border-radius:6px;padding:10px 12px;font:11px var(--sans);cursor:pointer}
.buy-button{border:1px solid #526546;background:#273323;color:#c0e5a9}.sell-button{border:1px solid #63423c;background:#2a201e;color:#f0b7a9}
.trade-actions button:disabled{opacity:.4;cursor:not-allowed}
.trades-section{margin-top:26px}.trades-heading h3{font:500 17px var(--serif);color:#e1e1d8;margin:0}.trades-heading>span{font-size:10px;color:#888980}
.trades-list{margin-top:10px;border:1px solid #30312c;border-radius:8px;overflow:hidden}
.trades-list>p{font-size:11px;color:#8c8d83;padding:12px;margin:0}
.trade-row{display:grid;grid-template-columns:90px 1fr 140px;gap:8px;align-items:center;padding:11px 13px;border-bottom:1px solid #2b2c27;font-size:11px;color:#c8c9bf}
.trade-row:last-child{border-bottom:0}.trade-row span:last-child{text-align:right}.trade-buy{color:#a9dc98}.trade-sell{color:#edaa9b}
.trade-reason{grid-column:2/4;color:#a7a89e;font-size:10px;line-height:1.45}.journal-link{font-size:10px;color:#b7cda8;text-decoration:underline;text-underline-offset:3px}.journal-link:hover{color:#e2f1d8}
.position-row{padding:15px 16px;border-bottom:1px solid #2b2c27;background:#181917}.position-row:last-child{border-bottom:0}.position-row-heading{display:flex;align-items:center;gap:10px;margin-bottom:13px}.position-row-heading>strong{font:600 13px var(--mono);color:#e3e3d9}.position-badge{border:1px solid #354532;border-radius:20px;padding:4px 7px;color:#a9d69a;font:8px var(--mono);letter-spacing:.35px}.dust-badge{border-color:#51472f;color:#e4c27b}.position-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px 18px}.position-fact{display:flex;flex-direction:column;gap:4px;min-width:0}.position-fact>span{font:9px var(--mono);letter-spacing:.35px;color:#85867d}.position-fact>strong{font:500 12px var(--sans);color:#d4d4cb;overflow-wrap:anywhere}.position-fact>strong.positive,.position-fact>strong.negative{font-weight:600}
.position-row.dust-row{padding:9px 16px}.position-row.dust-row .position-row-heading{margin:0}
.dust-group>summary{padding:12px 15px;cursor:pointer;list-style:none;color:#e4c27b;font:10px var(--mono);letter-spacing:.4px}.dust-group>summary::-webkit-details-marker{display:none}.dust-group>summary::before{content:'▸';display:inline-block;width:18px;color:#b7a16b}.dust-group[open]>summary{border-bottom:1px solid #2b2c27}.dust-group[open]>summary::before{content:'▾'}.dust-list .position-row{background:#151614}
.trading-disclaimer{text-align:center;color:#77786e;font-size:10px;line-height:1.6;margin:16px 0 0}
@media(max-width:760px){.mode-cards{grid-template-columns:1fr;max-width:none}.trading-panel{padding-top:22px}.market-card,.position-card{align-items:flex-start;flex-direction:column}.trading-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.trade-actions{justify-content:flex-start}.trade-row{grid-template-columns:68px 1fr auto;font-size:10px}.position-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.position-row{padding:13px}.trading-heading h2{font-size:29px}}
.login-screen{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:22px;background:radial-gradient(ellipse at 50% 10%,#25271f 0,#10100f 62%)}.login-card{width:min(390px,100%);display:flex;flex-direction:column;border:1px solid #36372f;border-radius:12px;background:#181917;padding:27px;box-shadow:0 24px 90px #0008}.login-brand{margin:0 0 20px}.login-card h1{font:500 27px var(--serif);letter-spacing:-.6px;margin:0 0 8px}.login-card>p{font-size:12px;line-height:1.6;color:#99998f;margin:0 0 21px}.login-card label{font-size:10px;color:#c9c9be;margin:0 0 6px}.login-card input{height:40px;margin:0 0 15px;padding:0 10px;border:1px solid #3b3c35;border-radius:6px;background:#111210;color:#f1f0e9;font:13px var(--sans);outline:none}.login-card input:focus{border-color:#838a61}.login-card button{height:40px;margin-top:3px;border-radius:6px;font:600 12px var(--sans);cursor:pointer}.login-card button:disabled{opacity:.55;cursor:wait}.login-error{margin:0 0 13px;color:#f0aaa0;font-size:11px;line-height:1.5}.logout-button{border:1px solid #383932;border-radius:5px;background:transparent;color:#c9c9bf;padding:6px 9px;font:10px var(--sans);cursor:pointer}.logout-button:hover{border-color:#696b58;color:#f0f0e8}
