/* Workspace styles shared by all routes. */
[hidden]{display:none!important}
body{font-family:Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
button,input,select,textarea{font-family:inherit}a{color:inherit}button:disabled{opacity:.55}:focus-visible{outline:2px solid #7ca82c;outline-offset:4px}
.location-bar{position:sticky;top:0;z-index:4;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 35px;font-size:11px;color:var(--muted)}
.location-bar b{color:var(--ink);margin-left:8px}.location-bar>.brand,#mobile-menu-button{display:none}
.page-top{padding-top:35px}.page-section{scroll-margin-top:85px;padding-top:24px;margin-bottom:65px}#dashboard{padding-top:0}.page-section+.page-section{border-top:1px solid var(--line);padding-top:40px}
.overview-grid{margin-top:28px}.source-note,#news-status{color:var(--muted);font-size:12px;line-height:1.7}
.balance-card .text-action{margin-top:24px}.traction-grid .text-action{display:inline-block;margin-top:20px}.text-action{text-decoration:none;line-height:1.6}
.traction-grid p,.trade-note,#greeting,#profile-name{overflow-wrap:anywhere}.section-heading{align-items:center;gap:18px}
.pulse-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pulse-card{text-align:left;background:var(--card);color:var(--ink);border:1px solid var(--line);padding:20px;transition:transform .2s,border-color .2s;min-width:0}.pulse-card:hover{transform:translateY(-3px);border-color:#85b23e}.pulse-card strong{display:block;font-size:26px;letter-spacing:-1px;margin:14px 0}.pulse-card p{color:var(--muted);font-size:12px;line-height:1.6;min-height:58px}
.empty-state{padding:35px 18px;text-align:center;color:var(--muted)}.empty-state>span{font-size:35px;color:#7ba832}.empty-state p{font-size:12px;line-height:1.7}
.calendar-panel{margin-top:28px;border:1px solid var(--line);background:var(--card);padding:24px;scroll-margin-top:80px}.calendar-controls,.news-filters{display:flex;flex-wrap:wrap;gap:6px}.calendar-controls button,.news-filters button{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:9px 13px;font-size:12px}.news-filters button.active{background:var(--soft-lime);border-color:#82a938}
.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-week{font-size:10px;color:var(--muted);padding-bottom:10px;text-align:center}.calendar-day{min-height:92px;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:10px;text-align:left;display:flex;flex-direction:column;gap:7px;min-width:0}.calendar-day b{font-size:clamp(9px,1vw,13px);overflow-wrap:anywhere}.calendar-day span{font-size:11px}.calendar-day small{font-size:9px;color:var(--muted)}.calendar-day.selected{outline:2px solid #88b832;outline-offset:-2px}.calendar-day.today span{text-decoration:underline;text-underline-offset:4px}.calendar-day.positive{background:var(--soft-lime)}.calendar-day.negative{background:color-mix(in srgb,var(--red) 16%,var(--paper))}
#day-detail{margin-top:24px}#day-detail h3{font-size:14px}.trade-entry{border-bottom:1px solid var(--line)}.trade-entry .trade-row{border:0;list-style:none}.trade-entry summary::-webkit-details-marker{display:none}.trade-entry[open]{background:color-mix(in srgb,var(--soft-lime) 40%,transparent)}.trade-entry>p{padding:0 12px}.trade-row>div{min-width:0;overflow-wrap:anywhere}.trade-note{white-space:pre-wrap;font-size:12px;line-height:1.7}.metric-grid small{font-size:10px;color:var(--muted)}#portfolio .equity-card{margin-top:26px}
.impact-toggle{display:block;margin:18px 0 24px;color:var(--muted);font-size:12px}.impact-toggle input{accent-color:#87b936}.news-grid{row-gap:32px}.news-grid article{padding:20px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.news-grid article:hover{padding-left:20px}.news-grid h3{overflow-wrap:anywhere}.news-grid .source-link{margin-top:auto;font-size:12px;text-underline-offset:4px}.ai-label{font-size:10px;color:var(--ink);margin-bottom:8px}.news-method{margin-top:30px;border-top:1px solid var(--line);padding:20px 0;font-size:12px;line-height:1.8;color:var(--muted)}.news-method summary{color:var(--ink);font-weight:bold}
.legal-page{min-height:70vh;max-width:780px;font-size:15px;line-height:1.85}.legal-page h1{font-size:40px;letter-spacing:-1.5px;line-height:1.2}.legal-page p{color:var(--muted)}.legal-page>.text-action{display:inline-block;margin:30px 0}.legal-page form{margin-top:20px}.product-footer{gap:20px;flex-wrap:wrap}.product-footer nav{display:flex;gap:18px}.product-footer a{text-decoration:none}.profile{cursor:pointer}
dialog{max-height:calc(100dvh - 30px);overflow-y:auto}.chart-line,.chart-fill{animation:none;stroke-dasharray:none;stroke-dashoffset:0;opacity:1}.trade-row .grade{font-size:10px}.share-card{background:#27372b;color:#edf2e9}.share-card>p{color:#d1ddcb;font-size:13px;line-height:1.6}
@media(max-width:1000px){.pulse-grid{grid-template-columns:repeat(2,1fr)}.card-head{flex-wrap:wrap;gap:14px}}
@media(max-width:610px){.location-bar{padding:12px 15px}.location-bar>.brand{display:flex;font-size:12px}.location-bar>span{font-size:9px}.location-bar b{display:block;margin:2px 0 0}#mobile-menu-button{display:block;background:none;border:0;font-size:21px;color:var(--ink)}.rail{padding-top:65px}.rail nav{margin-top:28px}.rail .profile{display:flex}.rail-bottom{margin-bottom:20px}.page-section{margin-bottom:36px}.page-section+.page-section{padding-top:28px}.calendar-panel{padding:12px}.calendar-controls{margin-top:12px}.calendar-day{min-height:72px;padding:5px 3px;gap:7px}.calendar-grid,.calendar-week{gap:3px}.calendar-day small{font-size:8px}.pulse-card{padding:14px}.pulse-card strong{font-size:22px}.pulse-card p{font-size:11px}.news-section .section-heading>button,.section-heading>.action-button{margin-top:18px}.product-footer nav{flex-wrap:wrap}.legal-page h1{font-size:32px}}
