/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.hidden{display:none}}:root{--ink:#17211c;--muted:#758079;--line:#dde3de;--paper:#f5f4ef;--card:#fffefa;--green:#176b4d;--green-soft:#e9f4ee;--amber:#bd6c09;--amber-soft:#fff3df;--navy:#16253a}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{background:var(--paper);margin:0;font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh}.app-content{max-width:1560px;margin-left:230px;padding:34px 42px 100px}.topbar{justify-content:space-between;align-items:center;max-width:1320px;margin:0 auto 26px;display:flex}.eyebrow{letter-spacing:.19em;color:#8d9690;margin:0 0 5px;font-size:10px;font-weight:800;line-height:1.2}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.04em;margin:0;font-size:27px}h2{letter-spacing:-.035em;margin:0;font-size:22px}.top-actions{align-items:center;gap:10px;display:flex}.icon-button,.avatar{border:1px solid var(--line);cursor:pointer;background:#ffffffbf;border-radius:50%;width:42px;height:42px;font-weight:800}.avatar{background:var(--green);color:#fff;border:0;font-size:12px}.account-button{border:1px solid var(--line);cursor:pointer;text-align:left;background:#ffffffc7;border-radius:13px;align-items:center;gap:9px;padding:5px 11px 5px 5px;display:flex}.account-button>span{background:var(--green);color:#fff;border-radius:10px;place-items:center;width:32px;height:32px;font-size:9px;font-weight:900;display:grid}.account-button>div{gap:1px;display:grid}.account-button strong{font-size:10px}.account-button small{color:#8b948e;font-size:8px}.account-button:hover{background:#fff;border-color:#b7c9bf}.desktop-rail{color:#eef5f0;z-index:20;background:#16231d;flex-direction:column;width:230px;padding:30px 20px;display:flex;position:fixed;inset:0 auto 0 0}.rail-brand{align-items:center;gap:11px;margin:0 12px 46px;font-size:22px;display:flex}.rail-brand span{color:#15563f;background:#e9f3ed;border-radius:12px;place-items:center;width:39px;height:39px;font-family:serif;font-size:23px;font-weight:900;display:grid}.desktop-rail>button{color:#99aaa1;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;grid-template-columns:25px 1fr auto;align-items:center;gap:9px;margin:3px 0;padding:12px 14px;display:grid}.desktop-rail>button span{font-size:20px}.desktop-rail>button small{font-size:14px}.desktop-rail>button i{opacity:0;font-style:normal}.desktop-rail>button.active{color:#fff;background:#264236}.desktop-rail>button.active i{opacity:1}.rail-account{border-top:1px solid #35483e;align-items:center;gap:10px;margin-top:auto;padding:20px 8px 0;display:flex}.rail-account>span{color:#1d5e46;background:#dceae2;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:900;display:grid}.rail-account div{display:grid}.rail-account strong{font-size:12px}.rail-account small{color:#82948a;margin-top:3px;font-size:10px}.page-stack{gap:22px;max-width:1320px;margin:auto;display:grid}.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr);gap:20px;display:grid}.portfolio-card,.decision-card,.thesis-card,.summary-strip,.holdings-panel,.journal-header,.timeline-panel,.review-hero,.review-grid article,.review-body>article{background:var(--card);border:1px solid var(--line);border-radius:17px;box-shadow:0 8px 28px #1b2d240a}.portfolio-card{min-height:335px;padding:24px 26px 19px;overflow:hidden}.card-head{justify-content:space-between;gap:20px;display:flex}.label{color:#78827c;letter-spacing:.02em;font-size:11px;font-weight:700;display:block}.hero-value{letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:40px;display:block}.data-note{color:#929a95;margin-top:4px;font-size:9px;display:block}.snapshot-badge{background:var(--green-soft);color:var(--green);cursor:pointer;border:1px solid #cfe2d6;border-radius:999px;align-self:flex-start;padding:6px 9px;font-size:9px;font-weight:800}.snapshot-badge:disabled{cursor:wait;opacity:.65}.quote-status{color:#79837d;align-items:center;gap:6px;margin-top:10px;font-size:9px;display:flex}.quote-status i{background:#b8bdb9;border-radius:50%;width:7px;height:7px}.quote-status.online i{background:#2e9b6d;box-shadow:0 0 0 3px #e4f4ec}.quote-status.fallback{color:#a06a23}.quote-status.fallback i{background:#d49338}.filter-pills{background:#f1f2ee;border-radius:9px;align-items:flex-start;gap:4px;padding:3px;display:flex}.filter-pills button{color:#747d77;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:11px}.filter-pills button.active{color:var(--green);background:#fff;font-weight:800;box-shadow:0 2px 8px #00000014}.return-row{align-items:center;gap:12px;margin-top:8px;display:flex}.return-row span{color:#808983;font-size:12px}.return-row strong{color:var(--green);font-size:16px}.total-return-row{background:#f0f6f2;border-radius:11px;justify-content:space-between;align-items:end;gap:16px;margin-top:13px;padding:12px 14px;display:flex}.total-return-row>div{gap:3px;display:grid}.total-return-row span{font-size:11px;font-weight:800}.total-return-row small{color:#7d8881;font-size:8px}.total-return-row>strong{text-align:right;white-space:nowrap;font-size:20px}.total-return-row>strong small{margin-left:4px;font-size:10px}.return-breakdown{gap:20px;padding:9px 14px 0;display:flex}.return-breakdown span{color:#7d8781;font-size:9px}.return-breakdown strong{margin-left:4px}.period-return-panel{background:#fbfcf9;border:1px solid #dfe6e1;border-radius:13px;margin-top:13px;overflow:hidden}.period-return-tabs{background:#f0f2ee;grid-template-columns:repeat(4,1fr);padding:4px;display:grid}.period-return-tabs button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;gap:4px;padding:9px 10px;display:grid}.period-return-tabs button span{color:#7b857e;font-size:9px}.period-return-tabs button strong{font-variant-numeric:tabular-nums;font-size:12px}.period-return-tabs button.active{background:#fff;box-shadow:0 2px 9px #142d2214}.period-return-tabs button.active span{color:var(--green);font-weight:800}.period-return-detail{grid-template-columns:1fr auto;align-items:end;gap:10px 18px;padding:14px;display:grid}.period-return-detail>div:first-child{gap:3px;display:grid}.period-return-detail>div:first-child>span{color:#79847d;font-size:9px}.period-return-detail>div:first-child>strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:24px}.period-return-detail>div:first-child>small{color:#8b948e;font-size:8px}.period-return-detail>p{color:#7d8781;border-top:1px dashed #e0e5e1;grid-column:1/-1;align-items:center;gap:6px;margin:0;padding-top:10px;font-size:8px;display:flex}.period-return-detail>p i{background:#2e9b6d;border-radius:50%;width:6px;height:6px}.period-return-detail>p.partial i{background:#d49338}.return-mini-chart{align-items:end;gap:4px;height:52px;display:flex}.return-mini-chart i{opacity:.84;background:linear-gradient(#54a481,#1c7655);border-radius:3px 3px 1px 1px;width:7px;min-height:6px;display:block}.period-return-empty{color:#7d8781;padding:14px;font-size:9px}.gain-panel{border-top:1px solid #e6e9e6;margin-top:18px;padding-top:14px}.gain-panel-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.gain-panel-head>div:first-child{gap:3px;display:grid}.gain-panel-head strong{font-size:11px}.gain-panel-head small{color:#949c97;font-size:8px}.table-scroll{overflow-x:auto}.table-head{background:#f6f7f3;border-top:1px solid #e1e5e1;border-bottom:1px solid #d9dfda;align-items:center;gap:12px;min-width:max-content;padding:9px 4px;display:grid}.table-head>span{color:#7d8781;padding:0 3px;font-size:9px}.sortable-head button{color:#6f7973;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:3px;font-size:9px;font-weight:800;display:flex}.sortable-head button i{color:#a0a8a3;font-style:normal}.sortable-head[aria-sort=ascending] button,.sortable-head[aria-sort=descending] button,.sortable-head[aria-sort=ascending] button i,.sortable-head[aria-sort=descending] button i{color:var(--green)}.sortable-head.align-right button{justify-content:flex-end;width:100%}.sortable-head button:focus-visible{border-radius:4px;outline:2px solid #7fb59d}.gain-table-head{border-bottom:1px solid #e2e7e3;grid-template-columns:minmax(70px,.65fr) minmax(100px,1.5fr) 88px;align-items:center;gap:10px;padding:0 0 7px;display:grid}.gain-table-head>span{color:#7d8781;font-size:9px}.mini-switch{background:#f0f2ef;border-radius:8px;padding:2px;display:flex}.mini-switch button{color:#7d8680;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 8px;font-size:8px}.mini-switch button.active{color:var(--green);background:#fff;font-weight:800;box-shadow:0 1px 5px #00000014}.gain-list{gap:9px;max-height:330px;margin-top:12px;padding-right:5px;display:grid;overflow:auto}.gain-row{grid-template-columns:minmax(70px,.65fr) minmax(100px,1.5fr) 88px;align-items:center;gap:10px;display:grid}.gain-row>span{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.gain-row>strong{text-align:right;font-variant-numeric:tabular-nums;font-size:10px}.gain-track{background:#edf0ed;border-radius:99px;height:7px;overflow:hidden}.gain-track i{border-radius:99px;height:100%;display:block}.positive-bar{background:#2e8a65}.negative-bar{background:#c85b54}.gain-row>strong.unavailable{color:#9ba39e}.truthful-empty{color:#7f8982;background:#f8f9f6;border:1px dashed #d5ddd7;border-radius:10px;margin-top:12px;padding:15px;font-size:10px;line-height:1.55}.decision-card{flex-direction:column;padding:24px;display:flex}.section-title{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.section-title .label{margin-bottom:5px}.section-title h2{font-size:18px}.count{color:#6e7771;background:#eef1ee;border-radius:50%;place-items:center;width:27px;height:27px;font-size:12px;font-weight:800;display:grid}.decision-row{cursor:pointer;text-align:left;background:0 0;border:0;border-top:1px solid #e6e9e6;grid-template-columns:38px 1fr auto 8px;align-items:center;gap:11px;padding:16px 0;display:grid}.decision-row span:nth-child(2){gap:3px;display:grid}.decision-row strong{font-size:14px}.decision-row small{color:#818a84;font-size:10px}.decision-row>i{color:#9aa19d;font-style:normal}.ticker{color:#fff;background:#2d4b3e;border-radius:50%;flex:none;place-items:center;width:37px;height:37px;font-size:13px;font-weight:900;display:grid}.ticker.blue{background:#1650a4}.ticker.red{background:#c71928}.status{white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:10px}.status.buy{color:var(--green);background:var(--green-soft);border:1px solid #cde6d8}.status.watch{color:var(--amber);background:var(--amber-soft);border:1px solid #f1d7ae}.status.review{color:#6a6f84;background:#f0f1f6;border:1px solid #dadde8}.decision-empty{margin:8px 0 16px}.more-decisions{color:var(--green);text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #e6e9e6;padding:12px 0;font-size:10px;font-weight:800}.primary-action{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:12px 16px;font-size:12px;font-weight:800;box-shadow:0 7px 20px #176b4d29}.decision-card .primary-action{margin-top:auto}.primary-action.compact{width:auto;padding:11px 15px}.thesis-section{padding-top:5px}.section-heading{justify-content:space-between;align-items:end;margin:0 2px 14px;display:flex}.section-heading>button{color:#66716a;cursor:pointer;background:0 0;border:0;font-size:11px}.section-heading>button span{margin-left:6px}.thesis-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.thesis-card{min-width:0;padding:18px;transition:transform .2s,box-shadow .2s}.thesis-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px #1b2d2414}.asset-head{align-items:center;gap:10px;display:flex}.asset-head>div{min-width:0}.asset-head h3{white-space:nowrap;margin:0 0 2px;font-size:16px}.asset-head>div>span{color:#88908b;font-size:10px}.asset-head button{border:1px solid var(--line);cursor:pointer;color:#7c8580;background:#fff;border-radius:8px;width:30px;height:30px;margin-left:auto}.metrics{border-top:1px solid #e6e9e6;border-bottom:1px solid #e6e9e6;grid-template-columns:1.15fr 1fr .9fr;gap:10px;margin:15px 0;padding:13px 0;display:grid}.metrics>div{gap:3px;display:grid}.metrics span,.metrics small{color:#89918c;font-size:9px}.metrics strong{letter-spacing:-.02em;font-size:14px}.positive{color:var(--green)!important}.rule-box{background:#f6f6f2;border-radius:10px;grid-template-columns:1fr 1.2fr 1fr;align-items:center;gap:8px;padding:10px;display:grid}.rule-box>span{color:#748079;font-size:10px;font-weight:800}.rule-box>div{display:grid}.rule-box small{color:#8c948f;font-size:8px}.rule-box strong{margin-top:2px;font-size:10px}.price-rail{margin:18px 1px 14px}.rail-labels{text-align:center;color:#858d88;grid-template-columns:1fr 1fr 1fr;font-size:8px;display:grid}.rail-track{background:#d9ddda;border-radius:99px;height:5px;margin-top:6px;position:relative}.rail-track .buy-zone,.rail-track .sell-zone{border-radius:99px;height:5px;position:absolute;top:0}.buy-zone{background:#168053;width:28%;left:10%}.sell-zone{background:#d6931b;width:25%;right:8%}.rail-track b{background:#fff;border:3px solid;border-radius:50%;width:12px;height:12px;position:absolute;top:-4px;transform:translate(-50%)}.rail-track em{white-space:nowrap;font-size:8px;font-style:normal;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.thesis-note{border-top:1px dashed #dfe4df;padding-top:11px}.thesis-note>span{color:#7c8580;font-size:9px;font-weight:800}.thesis-note p{margin:4px 0;font-size:10px;line-height:1.55}.thesis-note small{color:#9a7460;font-size:8px}.summary-strip{grid-template-columns:repeat(4,1fr);padding:22px 26px;display:grid}.summary-strip>div{border-right:1px solid var(--line);gap:5px;padding-left:22px;display:grid}.summary-strip>div:first-child{padding-left:0}.summary-strip>div:last-child{border:0}.summary-strip span{color:#7e8781;font-size:10px}.summary-strip strong{font-size:22px}.summary-strip small{color:#919993;font-size:8px}.data-toolbar{background:#eaf3ed;border:1px solid #cfe2d6;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.data-toolbar h2{font-size:18px}.data-toolbar p:not(.eyebrow){color:#637268;margin:7px 0 0;font-size:10px}.data-toolbar>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.data-toolbar>div>button:not(.primary-action){cursor:pointer;background:#ffffffb8;border:1px solid #c6d7cc;border-radius:9px;padding:10px 12px;font-size:10px;font-weight:700}.holdings-panel,.timeline-panel{padding:24px}.holding-table,.closed-table{display:block}.holding-table-head,.holding-table article{grid-template-columns:minmax(170px,1.45fr) .7fr .8fr .8fr .9fr .9fr 54px;min-width:900px}.holding-table article,.closed-table article{border-bottom:1px solid #e6e9e6;align-items:center;gap:12px;padding:15px 4px;display:grid}.holding-table article>div:not(.asset-head),.closed-table article>div:not(.asset-head){gap:3px;display:grid}.holding-table article>div>strong,.closed-table article>div>strong{font-size:10px}.closed-table-head,.closed-table article{grid-template-columns:minmax(170px,1.3fr) 86px 86px 90px 96px 70px 70px 100px 74px;min-width:1040px}.closed-table article>div:nth-last-child(2)>strong{gap:2px;display:grid}.closed-table article>div:nth-last-child(2)>strong small{font-size:8px}.edit-position{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:7px 10px;font-size:9px}.negative{color:#bb4b45!important}.closed-table .incomplete{color:#9b6c2b;font-weight:700}.adjusted-badge{color:var(--green);vertical-align:middle;background:#e8f3ed;border-radius:5px;margin-left:4px;padding:2px 5px;font-size:7px;font-style:normal;display:inline-block}.row-actions{grid-auto-flow:column;gap:5px!important;display:flex!important}.row-actions button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:6px 8px;font-size:8px}.row-actions button.danger{color:#b74b44;background:#fff8f7;border-color:#efd0cc}.journal-header{background:var(--navy);color:#fff;grid-template-columns:1fr auto;gap:18px;padding:29px;display:grid;position:relative;overflow:hidden}.journal-header:after{content:"";border:1px solid #ffffff1a;border-radius:50%;width:240px;height:240px;position:absolute;top:-100px;right:-60px}.journal-header p:not(.eyebrow){color:#aab6c6;margin:7px 0 0;font-size:12px}.journal-kpis{grid-column:1/-1;gap:12px;display:flex}.journal-kpis>span{background:#ffffff14;border:1px solid #ffffff1a;border-radius:10px;min-width:150px;padding:12px 18px;display:grid}.journal-kpis small{color:#9eabba;font-size:9px}.journal-kpis strong{color:#ff7567;margin-top:4px;font-size:20px}.timeline-panel{background:#f8f7f2}.timeline{margin-top:20px;padding-left:20px}.timeline article{border-left:2px solid #d9dfdb;padding:0 0 18px 33px;position:relative}.timeline article:last-child{border-left-color:#0000}.timeline>article>i{color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-style:normal;font-weight:900;display:grid;position:absolute;top:0;left:-17px}.buy-dot{background:#cf594f}.review-dot{background:#30938e}.timeline-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:17px}.timeline-card>div:first-child{align-items:center;gap:8px;display:flex}.timeline-card time{color:#6f7973;font-size:11px}.timeline-card>div>b{color:#b94c44;background:#f7e7e5;border-radius:4px;padding:4px 6px;font-size:9px}.timeline-card h3{margin:9px 0;font-size:17px}.timeline-card h3 span{color:#8f9892;background:#f0f2ef;border-radius:5px;padding:4px 6px;font-size:10px}.timeline-card p{margin:5px 0;font-size:11px;line-height:1.55}.timeline-card .trade-line{color:#cf594f}.timeline-card>small{color:#855f4d;margin-top:9px;font-size:9px;display:block}.records-toolbar{justify-content:space-between;gap:14px;display:flex}.trade-ledger,.decision-ledger{margin-top:18px;display:block}.trade-ledger-head,.trade-ledger article{grid-template-columns:90px 50px minmax(140px,1.2fr) 70px 80px 90px 70px 100px;min-width:900px}.decision-ledger-head,.decision-ledger article{grid-template-columns:90px 55px minmax(140px,1fr) 70px 90px 70px minmax(180px,1.4fr);min-width:850px}.trade-ledger article,.decision-ledger article{border-bottom:1px solid #e1e5e1;align-items:center;gap:12px;padding:13px 4px;display:grid}.trade-ledger time,.trade-ledger span,.trade-ledger>article>small,.decision-ledger time,.decision-ledger span{color:#6f7973;font-size:10px}.trade-ledger article>div,.decision-ledger article>div{gap:3px;display:grid}.trade-ledger article>div strong,.decision-ledger article>div strong{font-size:11px}.trade-ledger article>div small,.decision-ledger article>div small{color:#8b948e;font-size:9px}.decision-ledger article>b{color:var(--green);font-size:9px}.decision-ledger article>p{color:#5f6963;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:10px;overflow:hidden}.trade-type{border-radius:999px;justify-self:start;padding:5px 9px;font-size:9px}.trade-type.buy{color:#176b4d;background:#e4f3eb}.trade-type.sell{color:#b74b44;background:#f8e8e6}.trade-type.dividend{color:#9c681b;background:#fff0d7}.review-hero{color:#fff;background:#102c22;grid-template-columns:1fr auto;gap:20px;padding:29px;display:grid}.review-hero>button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:9px;align-self:start;padding:9px 12px;font-size:10px}.review-score{grid-column:1/-1;align-items:center;gap:18px;display:flex}.score-ring{background:radial-gradient(circle,#102c22 57%,transparent 59%),conic-gradient(#6fcf9b 0 83%,#284b3d 83%);border-radius:50%;place-items:center;width:88px;height:88px;display:grid;position:relative}.score-ring strong{font-size:27px}.score-ring small{color:#91a99f;font-size:7px;position:absolute;bottom:17px}.review-score p{margin:0;font-size:13px;line-height:1.6}.review-score span{color:#78d4a3}.review-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.review-grid article{gap:5px;padding:18px;display:grid}.review-grid span,.review-grid small{color:#828c85;font-size:9px}.review-grid strong{font-size:22px}.review-body{grid-template-columns:1.2fr .8fr;gap:18px;display:grid}.review-body>article{padding:22px}.discipline-list p{border-top:1px solid #e6e9e6;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;margin:0;padding:13px 0;display:grid}.discipline-list i{color:#bd6c09;background:#fff1dd;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid}.discipline-list i.done{background:var(--green-soft);color:var(--green)}.discipline-list span{display:grid}.discipline-list span strong{font-size:11px}.discipline-list span small{color:#87908a;margin-top:3px;font-size:9px}.discipline-list>b{font-size:12px}.review-note{background:#fff9ed!important;border-color:#efddbd!important}.review-note>span{color:#a16e29;font-size:9px;font-weight:800}.review-note h3{margin:10px 0;font-size:18px;line-height:1.4}.review-note p{color:#716657;font-size:11px;line-height:1.7}.review-note button{color:#9d661d;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:800}.floating-add,.mobile-nav{display:none}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:90;background:#111a158c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fffefa;border-radius:18px;width:min(520px,100%);max-height:90vh;padding:24px;overflow:auto;box-shadow:0 25px 90px #00000047}.wide-modal{width:min(690px,100%)}.modal-head{justify-content:space-between;align-items:start;display:flex}.modal-head>button{cursor:pointer;background:#f0f1ed;border:0;border-radius:50%;width:32px;height:32px;font-size:20px}.modal form{gap:13px;margin-top:20px;display:grid}.modal label{color:#6d7771;gap:6px;font-size:10px;font-weight:700;display:grid}.modal input,.modal select,.modal textarea{color:var(--ink);background:#fff;border:1px solid #d8ded9;border-radius:9px;outline:none;padding:11px}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#58a384;box-shadow:0 0 0 3px #e8f3ed}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-hint{color:#8b776c;margin:0;line-height:1.5;font-size:9px!important}.modal-actions{justify-content:flex-end;gap:8px;margin-top:5px;display:flex}.modal-actions>button:not(.primary-action){border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:10px 14px}.primary-action:disabled{opacity:.55;cursor:wait}.import-body{gap:15px;margin-top:20px;display:grid}.template-link{color:var(--green);cursor:pointer;background:0 0;border:0;justify-self:start;font-size:10px;font-weight:800}.dropzone{text-align:center;cursor:pointer;background:#f3f8f5;border:1px dashed #9fb9aa!important;border-radius:13px!important;padding:28px!important}.dropzone input{opacity:0;pointer-events:none;position:absolute}.dropzone strong{color:var(--green);font-size:14px}.dropzone span{color:#7b8880;font-size:9px}.import-preview{background:#f5f5f1;border-radius:10px;gap:7px;padding:12px;display:grid}.import-preview strong{font-size:10px}.import-preview span{color:#67736c;font-size:9px}.replace-option{cursor:pointer;background:#fafbf8;border:1px solid #e2e7e2;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex!important}.replace-option input{width:16px;height:16px;margin-top:2px;padding:0}.replace-option span{gap:3px;display:grid}.replace-option strong{color:var(--ink);font-size:11px}.replace-option small{color:#768079;font-size:9px;line-height:1.45}.toast{color:#fff;z-index:100;background:#173c2e;border-radius:11px;padding:13px 17px;font-size:11px;animation:.25s ease-out toast-in;position:fixed;bottom:28px;right:28px;box-shadow:0 12px 40px #0003}.toast.error{background:#8f3734}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)}}.calculation-preview{background:#f0f6f2;border:1px solid #d5e6dc;border-radius:11px;gap:4px;padding:14px;display:grid}.calculation-preview span{color:#718078;font-size:9px}.calculation-preview strong{font-size:22px}.calculation-preview small{color:#8a948e;font-size:8px}.danger-modal{width:min(430px,100%)}.delete-summary{background:#f7f6f2;border-radius:11px;gap:4px;margin:20px 0 14px;padding:14px;display:grid}.delete-summary strong{font-size:15px}.delete-summary span,.delete-summary small{color:#7d8781;font-size:9px}.danger-action{color:#fff;cursor:pointer;background:#b94b45;border:0;border-radius:9px;padding:10px 14px;font-size:11px;font-weight:800}.danger-action:disabled{opacity:.55;cursor:wait}.auth-loading{color:#66736b;background:#f5f4ef;place-content:center;justify-items:center;gap:12px;min-height:100vh;display:grid}.auth-loading span{background:var(--green);color:#fff;border-radius:17px;place-items:center;width:54px;height:54px;font-family:serif;font-size:29px;font-weight:900;display:grid;box-shadow:0 12px 35px #176b4d38}.auth-loading p{letter-spacing:.05em;font-size:11px}.login-page{background:#fffefa;grid-template-columns:minmax(420px,.95fr) minmax(480px,1.05fr);min-height:100vh;display:grid}.login-story{color:#fff;background:#173429;flex-direction:column;justify-content:space-between;padding:46px 9%;display:flex;position:relative;overflow:hidden}.login-story:before,.login-story:after{content:"";pointer-events:none;border:1px solid #ffffff14;border-radius:50%;position:absolute}.login-story:before{width:520px;height:520px;top:-190px;right:-260px}.login-story:after{width:310px;height:310px;bottom:-120px;left:-160px}.login-brand{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.login-brand span{color:#176b4d;background:#f0f5ef;border-radius:13px;place-items:center;width:43px;height:43px;font:900 25px serif;display:grid}.login-brand strong{letter-spacing:.08em;font-size:22px}.story-copy{z-index:1;max-width:560px;position:relative}.story-copy .eyebrow{color:#8bb29f}.story-copy h1{letter-spacing:-.055em;margin:17px 0 24px;font-family:Songti SC,STSong,serif;font-size:clamp(42px,5vw,68px);line-height:1.24}.story-copy>p:last-child{color:#b7c8c0;max-width:470px;font-size:13px;line-height:1.9}.story-card{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0e;border:1px solid #ffffff21;border-radius:16px;max-width:460px;padding:19px 21px;position:relative}.story-card>span{letter-spacing:.16em;color:#82b19a;font-size:9px;font-weight:800}.story-card blockquote{margin:12px 0 15px;font-family:Songti SC,serif;font-size:19px}.story-card small{color:#839a8f;font-size:9px}.login-panel{place-items:center;padding:45px;display:grid}.login-form-wrap{width:min(400px,100%)}.login-form-wrap>h2{margin-top:12px;font-family:Songti SC,serif;font-size:38px}.login-subtitle{color:#7c8780;margin:9px 0 34px;font-size:12px}.login-form-wrap form{gap:20px;display:grid}.login-form-wrap form>label{color:#536058;gap:8px;font-size:11px;font-weight:800;display:grid}.login-form-wrap input{background:#fff;border:1px solid #d9e0db;border-radius:11px;outline:none;width:100%;height:48px;padding:0 14px}.login-form-wrap input:focus{border-color:#509474;box-shadow:0 0 0 4px #eaf4ee}.password-field{position:relative}.password-field input{padding-right:58px}.password-field button{color:#65736b;cursor:pointer;background:#f3f5f2;border:0;border-radius:7px;height:34px;padding:0 10px;font-size:9px;position:absolute;top:7px;right:7px}.login-options{color:#849087;justify-content:space-between;align-items:center;gap:15px;font-size:9px;display:flex}.login-options label{cursor:pointer;align-items:center;gap:7px;display:flex}.login-options input{width:14px;height:14px;accent-color:var(--green)}.login-error{color:#a84540;background:#fff6f5;border:1px solid #f0ceca;border-radius:9px;margin:-6px 0 0;padding:10px 12px;font-size:10px}.login-submit{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:11px;height:49px;font-size:12px;font-weight:900;box-shadow:0 11px 28px #176b4d2e}.login-submit:hover{background:#125c41}.login-submit:disabled{opacity:.6;cursor:wait}.login-form-wrap footer{color:#89928d;border-top:1px solid #e7ebe8;align-items:center;gap:7px;margin-top:34px;padding-top:18px;font-size:9px;display:flex}.login-form-wrap footer i{width:17px;height:17px;color:var(--green);background:#e7f3ec;border-radius:50%;place-items:center;font-size:9px;font-style:normal;display:grid}.users-page{gap:18px}.users-hero{color:#fff;background:#163226;border-radius:17px;justify-content:space-between;align-items:center;gap:24px;padding:29px;display:flex;position:relative;overflow:hidden}.users-hero:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:260px;height:260px;position:absolute;top:-100px;right:14%}.users-hero .eyebrow{color:#79a58f}.users-hero h2{font-size:25px}.users-hero p:not(.eyebrow){color:#9fb5aa;margin:8px 0 0;font-size:11px}.users-hero .primary-action{z-index:1;color:#17563f;box-shadow:none;white-space:nowrap;background:#f2f6f2;position:relative}.users-panel{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:24px;box-shadow:0 8px 28px #1b2d240a}.users-summary{gap:8px;margin-bottom:20px;display:flex}.users-summary>div{background:#f8f8f4;border:1px solid #e1e6e2;border-radius:11px;gap:3px;min-width:120px;padding:12px 15px;display:grid}.users-summary strong{font-size:20px}.users-summary span{color:#7d8781;font-size:9px}.user-table-head,.user-row{grid-template-columns:minmax(190px,1.3fr) minmax(135px,.8fr) 90px 90px minmax(145px,.8fr) 60px;align-items:center;gap:12px;min-width:860px;display:grid}.user-table-head{background:#f5f6f2;border-bottom:1px solid #dfe4e0;padding:10px 12px}.user-table-head span{color:#76817a;font-size:9px;font-weight:800}.user-row{border-bottom:1px solid #e8ebe8;padding:14px 12px}.user-row:last-child{border-bottom:0}.user-identity{align-items:center;gap:11px;display:flex}.user-identity>i{width:38px;height:38px;color:var(--green);background:#e6f1ea;border-radius:11px;place-items:center;font-size:10px;font-style:normal;font-weight:900;display:grid}.user-identity>span{gap:3px;display:grid}.user-identity strong{font-size:11px}.user-identity small,.user-row time,.user-phone{color:#89938d;font-size:9px}.user-identity em{color:#6f7d75;background:#eef2ef;border-radius:4px;margin-left:7px;padding:3px 5px;font-size:7px;font-style:normal}.role-badge,.user-status{border-radius:999px;padding:5px 8px;font-size:8px;display:inline-flex}.role-badge.admin{color:#9a6316;background:#fff0d9}.role-badge.member{color:#596773;background:#eef1f4}.user-status.active{color:#176b4d;background:#e6f3eb}.user-status.disabled{color:#888f8a;background:#f1f1ef}@media (width<=1050px){.app-content{margin-left:190px;padding:26px 24px 100px}.desktop-rail{width:190px}.thesis-grid,.hero-grid{grid-template-columns:1fr}}@media (width<=720px){body{background:#f7f6f1}.desktop-rail{display:none}.app-content{margin:0;padding:20px 14px 105px}.topbar{margin-bottom:17px}.topbar .eyebrow{display:none}h1{font-size:23px}.account-button>div{display:none}.account-button{border-radius:50%;padding:4px}.icon-button{width:36px;height:36px}.hero-grid{gap:14px}.portfolio-card,.decision-card,.thesis-card,.holdings-panel,.timeline-panel,.journal-header,.review-hero,.review-body>article{border-radius:14px}.portfolio-card{min-height:0;padding:19px 17px}.hero-value{font-size:33px}.card-head,.gain-panel-head{align-items:flex-start}.gain-row,.gain-table-head{grid-template-columns:68px 1fr 75px;gap:7px}.decision-card{padding:19px}.decision-row{grid-template-columns:36px 1fr auto}.decision-row>i{display:none}.primary-action{padding:12px}.section-heading{align-items:flex-start;gap:12px;display:grid}.thesis-grid{gap:13px}.thesis-card{padding:16px}.thesis-card:hover{transform:none}.summary-strip{grid-template-columns:1fr 1fr;padding:18px}.summary-strip>div{border:0;padding:10px!important}.summary-strip strong{font-size:18px}.data-toolbar{padding:18px;display:grid}.data-toolbar>div:last-child{justify-content:flex-start}.holdings-panel{padding:17px}.table-scroll{margin-right:-17px;padding-right:17px}.edit-position{justify-self:end}.filter-pills{overflow:auto}.journal-header{grid-template-columns:1fr;padding:21px}.journal-header .primary-action{grid-row:3}.journal-kpis{grid-column:auto}.timeline-panel{padding:17px}.records-toolbar{display:grid}.review-grid{grid-template-columns:1fr 1fr}.review-body{grid-template-columns:1fr}.review-hero{padding:22px}.mobile-nav{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-top:1px solid var(--line);z-index:50;background:#fffffcf0;grid-template-columns:repeat(4,1fr);height:72px;padding:7px 10px 10px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav.has-admin{grid-template-columns:repeat(5,1fr)}.mobile-nav button{color:#768079;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.mobile-nav button span{height:24px;font-size:20px}.mobile-nav button small{font-size:9px}.mobile-nav button i{display:none}.mobile-nav button.active{color:var(--green);font-weight:900}.floating-add{background:var(--green);color:#fff;z-index:55;cursor:pointer;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:55px;height:55px;display:flex;position:fixed;bottom:84px;right:17px;box-shadow:0 10px 26px #176b4d59}.floating-add span{font-size:22px;line-height:17px}.floating-add small{font-size:8px}.toast{text-align:center;bottom:86px;left:14px;right:14px}.form-grid{grid-template-columns:1fr 1fr}.modal{padding:20px}.metrics strong{font-size:13px}.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:28px}.login-form-wrap>h2{font-size:34px}.users-hero{padding:22px;display:grid}.users-hero .primary-action{justify-self:start}.users-panel{padding:17px}.users-summary{overflow:auto}.users-summary>div{min-width:100px}.user-table-head,.user-row{grid-template-columns:175px 130px 80px 80px 135px 55px}.total-return-row{align-items:flex-start}.total-return-row>strong{font-size:17px}.period-return-tabs button{padding:8px 7px}.period-return-tabs button strong{font-size:10px}.period-return-detail>div:first-child>strong{font-size:21px}.return-mini-chart{height:44px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
