/* Shared palette + defaults for the main app. */
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;--ink:#262626;--canvas:#f5f5f5;--accent:#484848;--accent-hover:#333333;--surface-muted:#f2f2f2;--navy:var(--ink);--teal:var(--accent);--mint:#e8e8e8;--muted:#707070;--border:#e2e2e2;--positive:#237848;--red:#b4414a;--shadow:0 16px 60px #00000014}
*{box-sizing:border-box}body{margin:0;font-size:16px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:var(--teal)}button{border:0}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.25;letter-spacing:-1px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:16px}p{line-height:1.6}small,.small{font-size:13px}input,select,textarea{min-width:0;width:100%;border:1px solid #dedede;border-radius:8px;padding:11px 12px;background:white;color:var(--navy)}input:focus,select:focus,textarea:focus{border-color:var(--teal);outline:2px solid #60606020}input[type=checkbox]{width:auto}label{display:block;font-size:14px;font-weight:600}label input,label select,label textarea{margin-top:7px;font-weight:400}label .hint{display:block;font-weight:400;margin-top:6px;color:var(--muted);line-height:1.45;font-size:13px}.muted{color:var(--muted)}.positive{color:var(--positive)}.negative{color:var(--red)}.nowrap{white-space:nowrap}.loading{display:grid;place-items:center;height:100vh}.icon{width:20px;height:20px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.logo{display:flex;align-items:center;gap:11px;font-size:27px;font-weight:680;letter-spacing:-1px}.logo img{height:38px;width:38px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;font-weight:650;color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:10px 16px;min-height:42px;border-radius:8px;font-weight:600;font-size:14px;line-height:1.3;background:white;color:var(--navy);border:1px solid #dedede;text-decoration:none;white-space:nowrap}.btn:hover{background:#f5f5f5;border-color:#b3b3b3}.btn.primary{background:var(--teal);border-color:var(--teal);color:white}.btn.primary:hover{background:var(--accent-hover)}.btn.danger{color:var(--red);border-color:#e7bec3}.btn.subtle{border-color:transparent;background:transparent}.btn.icon-only{padding:9px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:5px 9px;background:#f0f0f0;color:#606060;border-radius:5px;font-size:12px;font-weight:600;white-space:nowrap}.badge.teal{background:#f0f0f0;color:#606060}.badge.amber{background:#fff3d8;color:#8a6214}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:var(--navy);color:white;display:flex;flex-direction:column;padding:30px 18px 18px;z-index:10}.sidebar .logo{padding:0 12px}.sidebar .logo img{background:#ffffff0b}.workspace-label{margin:34px 14px 12px;font-size:11px;letter-spacing:1.7px;color:#a3a3a3;font-weight:650}.nav{display:flex;flex-direction:column;gap:5px}.nav button{background:transparent;border-radius:8px;display:flex;align-items:center;gap:12px;color:#c2c2c2;text-align:left;padding:13px 14px;font-size:14px;font-weight:500}.nav button:hover{color:white;background:#ffffff08}.nav button.active{background:#404040;color:#e8e8e8}.nav .icon{width:19px;height:19px}.nav button[data-tab=chat]{margin-top:15px;border-top:1px solid #ffffff12;border-radius:0 0 8px 8px;padding-top:19px}.sidebar-bottom{margin-top:auto;padding-top:30px}.local-note{padding:15px;margin:0 7px 15px;background:#ffffff05;border:1px solid #ffffff0d;border-radius:8px;line-height:1.5;color:#a3a3a3;font-size:12px}.local-note strong{display:block;color:#dedede;font-size:13px;font-weight:500;margin-bottom:4px}.user{display:flex;align-items:center;gap:10px;padding:12px 9px;border-top:1px solid #ffffff12}.avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;background:#e8e8e8;color:#525252;border-radius:50%;font-size:12px;font-weight:700}.user span{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:14px}.user button{margin-left:auto;color:#b3b3b3;background:transparent;padding:5px}.main{grid-column:2;min-width:0}.topbar{height:76px;padding:0 38px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:18px}.breadcrumb{font-size:14px;color:#707070;display:flex;align-items:center;gap:12px}.breadcrumb strong{font-weight:500;color:#525252}.topbar-right{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:13px}.topbar .btn{padding:8px 11px;min-height:34px}.content{max-width:1560px;margin:0 auto;padding:33px 38px 45px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:27px}.page-head p{color:var(--muted);font-size:14px;margin-top:7px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.stat{background:white;border:1px solid var(--border);padding:21px 22px;border-radius:11px;min-width:0}.stat .label{display:flex;justify-content:space-between;align-items:center;color:#707070;font-size:13px;margin-bottom:15px;gap:8px}.stat .label .icon{width:17px;height:17px;color:#a3a3a3}.stat .value{font-size:29px;font-weight:620;letter-spacing:-1px;font-variant-numeric:tabular-nums;line-height:1.25;overflow-wrap:anywhere}.stat .foot{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.5}.stat.featured{background:var(--navy);border-color:var(--navy);color:white}.stat.featured .label,.stat.featured .label .icon{color:#c2c2c2}.stat.featured .foot{color:#c2c2c2}.grid-two{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(290px,1fr);gap:23px;margin-bottom:25px}.panel{border:1px solid var(--border);border-radius:11px;background:white;min-width:0;overflow:hidden}.panel-head{padding:23px 24px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-head p{font-size:13px;color:var(--muted);margin-top:5px}.panel-body{padding:22px 24px}.panel+.panel.full{margin-top:23px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{padding:13px 20px;font-size:11px;text-transform:uppercase;letter-spacing:.65px;color:#707070;font-weight:650;background:#f8fafb;border-top:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap}td{padding:16px 20px;border-bottom:1px solid #f0f0f0;white-space:nowrap}tr:last-child td{border-bottom:0}td strong{font-weight:600}td .muted{font-size:12px;margin-top:4px}td.number,th.number{text-align:right;font-variant-numeric:tabular-nums}.row-actions{display:flex;gap:6px;justify-content:flex-end}.row-actions button{padding:5px;color:#707070;background:transparent;border-radius:5px}.row-actions button:hover{background:#f5f5f5;color:var(--teal)}.row-actions .icon{width:16px;height:16px}.symbol{display:flex;gap:11px;align-items:center}.symbol-square{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border:1px solid #e8e8e8;background:#f5f5f5;border-radius:8px;font-size:12px;font-weight:750;color:#707070}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;padding:42px 25px;min-height:220px}.empty .empty-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#f5f5f5;color:var(--teal);margin-bottom:16px}.empty h3{margin-bottom:7px}.empty p{font-size:14px;max-width:390px;color:var(--muted);margin-bottom:20px}.empty .btn{margin-top:0}.banner{display:flex;align-items:flex-start;gap:16px;border:1px solid #dedede;background:#f5f5f5;padding:22px 24px;border-radius:11px;margin-bottom:25px}.banner .icon{color:#606060;margin-top:2px}.banner h3{margin-bottom:5px}.banner p{font-size:14px;color:#707070}.banner .actions{margin-left:auto;flex-shrink:0;align-self:center}.notice{padding:13px 16px;border:1px solid #e9d8b1;background:#fff9eb;border-radius:8px;color:#8b692b;font-size:13px;line-height:1.6;margin-bottom:18px}.notice.info{border-color:#e8e8e8;background:#f5f5f5;color:#707070}.section-gap{margin-top:24px}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:21px;flex-wrap:wrap}.toolbar select{width:auto;min-width:190px;background:white;font-size:14px}.toolbar input{width:auto;font-size:14px}.toolbar .push{margin-left:auto}.portfolio-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:24px}.portfolio-card{padding:23px;border:1px solid var(--border);border-radius:11px;background:white}.portfolio-card.selected{border-color:#949494;box-shadow:0 0 0 1px #949494}.portfolio-card header{display:flex;justify-content:space-between;align-items:center;gap:12px}.portfolio-card h3{font-size:17px;margin-top:16px}.portfolio-card .amount{font-size:27px;font-weight:630;letter-spacing:-.6px;margin:13px 0 6px}.portfolio-card .card-foot{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--muted)}.donut{width:154px;height:154px;border-radius:50%;display:grid;place-items:center;position:relative;margin:6px auto 25px}.donut:before{content:"";position:absolute;inset:20px;border-radius:50%;background:white}.donut-center{position:relative;text-align:center}.donut-center strong{display:block;font-size:24px}.donut-center span{font-size:12px;color:var(--muted)}.legend{display:flex;flex-direction:column;gap:12px}.legend-row{display:flex;align-items:center;gap:9px;font-size:13px}.legend-row strong{margin-left:auto;font-weight:550}.swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.chart{width:100%;height:auto;display:block;overflow:visible}.chart text{font-family:inherit;fill:#707070;font-size:12px}.chart-shell{padding:28px 23px 13px;min-height:250px}.chart-legend{display:flex;justify-content:center;gap:22px;padding:5px 10px 20px;color:var(--muted);font-size:12px}.chart-legend span{display:flex;gap:7px;align-items:center}.bars{display:flex;flex-direction:column;gap:18px}.bar-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:8px}.bar-track{height:7px;background:#f5f5f5;border-radius:4px}.bar-fill{height:100%;border-radius:4px;background:#828282}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.form-grid>*{min-width:0}.form-grid .full-width{grid-column:1/-1}.field-note{font-size:13px;color:var(--muted);line-height:1.6;margin-top:12px}.form-error{color:var(--red);background:#fff1f2;border-radius:7px;padding:11px 13px;font-size:14px;line-height:1.5;margin-bottom:15px}.form-error:empty{display:none}.form-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:23px;margin-top:25px;border-top:1px solid var(--border)}dialog{width:min(650px,calc(100% - 32px));max-height:90vh;border:0;border-radius:14px;padding:27px 30px;box-shadow:var(--shadow);color:var(--navy)}dialog::backdrop{background:#18181877;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:23px}.modal-head h2{font-size:23px}.modal-head button{background:transparent;color:var(--muted)}.modal-section{border-top:1px solid var(--border);margin-top:23px;padding-top:20px}.modal-section h3{margin-bottom:16px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#303030;color:white;padding:13px 22px;border-radius:10px;box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:50;transition:.2s;max-width:90%;font-size:14px}.toast.visible{transform:translate(-50%,0);opacity:1}.auth{min-height:100vh;display:grid;grid-template-columns:46% 54%;background:white}.auth-brand{background:var(--navy);color:white;padding:55px 65px;display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-brand .logo{font-size:30px}.auth-copy{margin:auto 0;max-width:440px;padding:80px 0}.auth-copy .eyebrow{color:#b3b3b3;margin-bottom:24px}.auth-copy h1{font-size:49px;font-weight:560;line-height:1.16;letter-spacing:-2px}.auth-copy p{color:#c2c2c2;margin-top:24px;font-size:16px;max-width:340px}.auth-features{display:flex;gap:24px;color:#d1d1d1;font-size:12px;margin-top:35px;flex-wrap:wrap}.auth-features span{display:flex;align-items:center;gap:8px}.auth-features .icon{width:17px;height:17px}.auth-footer{color:#707070;font-size:12px}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:48px}.auth-form{width:100%;max-width:365px}.auth-form h2{font-size:29px;letter-spacing:-.8px}.auth-form>p{font-size:14px;color:var(--muted);margin-top:12px;margin-bottom:30px}.auth-form label{margin-top:19px}.auth-form .keep-signed-in{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px;font-weight:500}.auth-form .keep-signed-in input{margin:0;accent-color:var(--teal);flex-shrink:0}.auth-form .keep-signed-in-note{margin:5px 0 0 24px;font-size:12px;line-height:1.4;color:var(--muted)}.auth-form .btn{width:100%;margin-top:26px}.auth-form .field-note{font-size:12px;margin-top:23px}.auth-decoration{height:93px;display:flex;align-items:flex-end;gap:10px;margin-top:40px;max-width:280px}.auth-decoration i{display:block;flex:1;border-radius:3px 3px 0 0;background:linear-gradient(#b3b3b355,#94949408)}.projection-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px}.projection-controls{padding:23px}.projection-controls label+label{margin-top:20px}.projection-controls h3{margin-bottom:22px}.projection-controls button{margin-top:22px;width:100%}.projection-controls .field-note{font-size:12px}.projection-highlight{padding:23px;display:flex;justify-content:space-between;gap:14px}.projection-highlight .value{font-size:29px;font-weight:630;letter-spacing:-1px;margin-top:9px}.projection-highlight select{width:125px;font-size:14px;align-self:center}.tax-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.tax-estimator{display:flex;gap:25px;align-items:flex-end;flex-wrap:wrap}.tax-estimator label{max-width:220px}.tax-result{padding-left:26px;border-left:1px solid var(--border)}.tax-result strong{font-size:26px;display:block;margin-top:7px}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:24px;min-height:610px}.chat-panel{display:flex;flex-direction:column;min-height:590px}.chat-messages{flex:1;max-height:570px;overflow-y:auto;padding:27px;display:flex;flex-direction:column;gap:20px}.chat-welcome{padding:45px 15px;max-width:540px;margin:auto;text-align:center}.chat-welcome .chat-orb{width:58px;height:58px;border:1px solid #e8e8e8;border-radius:16px;display:grid;place-items:center;background:#f5f5f5;color:var(--teal);margin:0 auto 22px}.chat-welcome h2{font-size:23px;margin-bottom:12px}.chat-welcome p{font-size:14px;color:var(--muted)}.chat-suggestions{display:grid;gap:9px;margin-top:25px}.chat-suggestions button{padding:12px 16px;border-radius:7px;text-align:left;background:white;border:1px solid var(--border);font-size:13px;color:#606060}.chat-suggestions button:hover{border-color:#a3a3a3;background:#fafafa}.chat-message{display:flex;gap:12px;font-size:14px;line-height:1.75}.chat-message .message-content{padding:14px 17px;background:#f5f5f5;border-radius:0 10px 10px;max-width:90%;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message.user-message{justify-content:flex-end}.chat-message.user-message .message-content{background:#f0f0f0;border-radius:10px 0 10px 10px}.chat-composer{border-top:1px solid var(--border);padding:19px 23px}.chat-composer form{display:flex;gap:10px;align-items:flex-end}.chat-composer textarea{resize:vertical;min-height:48px;max-height:180px;font-size:14px}.chat-composer p{font-size:11px;color:var(--muted);margin-top:10px}.chat-context{padding:23px;height:fit-content}.chat-context h3{margin-bottom:17px}.context-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #f0f0f0;font-size:13px}.context-row span{color:var(--muted)}.chat-context .field-note{font-size:12px;margin-top:20px}.footer-note{margin-top:24px;font-size:12px;color:#707070;line-height:1.6}.error-page{padding:70px;text-align:center}.mobile-brand{display:none}
@media(min-width:1600px){.content{padding-top:42px}.stat .value{font-size:33px}.grid-two{grid-template-columns:2.1fr 1fr}}
@media(max-width:1200px){.shell{grid-template-columns:205px 1fr}.sidebar{width:205px;padding-inline:12px}.content{padding:27px 25px}.topbar{padding:0 25px}.stat{padding:18px}.stat .value{font-size:25px}.stat-grid{gap:12px}.grid-two{grid-template-columns:1.65fr 1fr;gap:17px}.portfolio-cards{grid-template-columns:repeat(2,1fr)}.chat-layout{grid-template-columns:minmax(0,1fr) 235px}.auth-brand{padding:40px}.auth-copy h1{font-size:40px}}
@media(max-width:980px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}.allocation-body{display:flex;gap:35px;align-items:center}.allocation-body .donut{margin:0;flex-shrink:0}.allocation-body .legend{flex:1}.projection-layout{grid-template-columns:1fr}.projection-controls form{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.projection-controls label+label{margin-top:0}.projection-controls button{margin-top:0}.projection-controls .field-note{grid-column:1/-1}.chat-layout{grid-template-columns:1fr}.chat-context{display:none}.banner{flex-wrap:wrap}.banner .actions{margin-left:36px}.tax-controls{grid-template-columns:1fr 1fr}.auth{grid-template-columns:40% 60%}.auth-brand{padding:33px}.auth-copy h1{font-size:34px;letter-spacing:-1px}.auth-features{display:none}.auth-form-side{padding:35px}}
@media(max-width:700px){.shell{display:block}.sidebar{position:static;width:100%;padding:17px 15px 0}.sidebar>.logo{font-size:23px;padding:0 5px}.sidebar .logo img{width:30px;height:30px}.workspace-label,.sidebar-bottom{display:none}.nav{flex-direction:row;overflow-x:auto;gap:3px;margin-top:17px;padding-bottom:10px}.nav button{padding:10px;white-space:nowrap;font-size:13px;gap:6px}.nav button .icon{width:16px}.nav button[data-tab=chat]{margin-top:0;border:0;border-radius:8px;padding-top:10px}.topbar{height:59px;padding:0 19px}.breadcrumb{display:none}.topbar-right{width:100%;justify-content:space-between;font-size:12px}.content{padding:24px 17px 35px}.page-head{align-items:flex-start;margin-bottom:22px;gap:12px}.page-head h1{font-size:26px}.page-head .actions{justify-content:flex-end}.page-head .btn{padding:9px 11px;font-size:12px;min-height:37px}.page-head p{font-size:13px;max-width:260px}.stat-grid{gap:10px;margin-bottom:19px}.stat{padding:17px 15px}.stat .label{font-size:12px;margin-bottom:12px}.stat .value{font-size:24px}.stat .label .icon{display:none}.stat .foot{font-size:11px}.grid-two{gap:19px}.panel-head{padding:20px 19px 0}.panel-body{padding:20px 19px}.panel-head h2{font-size:17px}.panel-head .btn{font-size:12px;padding:7px 9px;min-height:34px}.portfolio-cards{grid-template-columns:1fr}.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .full-width{grid-column:auto}.projection-controls form{grid-template-columns:1fr 1fr}.projection-controls label{font-size:12px}.projection-controls button{align-self:end}.projection-controls .field-note{grid-column:1/-1}.tax-controls{grid-template-columns:1fr}.tax-estimator{gap:20px}.tax-result{padding-left:0;border:0}.auth{display:block}.auth-brand{padding:25px}.auth-copy,.auth-footer{display:none}.auth-form-side{padding:45px 25px}.auth-form{max-width:390px}.banner{padding:19px}.banner .actions{margin-left:0}.banner>.icon{display:none}.banner p{font-size:13px}.chart-shell{padding:22px 15px 10px}.allocation-body{gap:23px}.allocation-body .donut{width:125px;height:125px}.donut:before{inset:17px}.donut-center strong{font-size:21px}dialog{padding:23px}.toolbar{gap:10px}.toolbar select{min-width:0;max-width:100%;flex:1}.toolbar .push{margin-left:0}.chat-messages{padding:18px}.chat-composer{padding:16px}.chat-welcome{padding:25px 0}.chat-message .message-content{max-width:94%}.chat-panel{min-height:550px}.projection-highlight{padding:20px}.projection-highlight .value{font-size:24px}}
.sidebar{overflow-y:auto}.sidebar>.logo,.sidebar>.workspace-label,.sidebar>.nav,.sidebar-bottom{flex-shrink:0}
.fyie-brand{gap:11px;align-items:center;letter-spacing:0}.fyie-brand picture{display:flex;flex-shrink:0}.fyie-brand img{width:48px!important;height:48px!important;image-rendering:auto;object-fit:contain;background:none!important;flex-shrink:0}.fyie-brand strong{font-size:27px;font-weight:720;letter-spacing:1px;display:block;line-height:1.1}.fyie-brand span{display:block;font-size:11px;line-height:1.55;color:#c2c2c2;font-weight:450;letter-spacing:.1px;margin-top:6px}.sidebar .workspace-label{margin-top:27px}.auth-brand-label{font-size:12px;letter-spacing:1.7px;color:#b3b3b3;font-weight:600}.auth-identity{margin:auto 0;padding:48px 0;text-align:center}.auth-identity img{width:192px;height:192px;object-fit:contain;image-rendering:auto}.auth-identity h1{font-size:63px;letter-spacing:5px;font-weight:720;margin-top:24px;color:white}.auth-identity p{font-size:17px;font-weight:400;letter-spacing:.3px;color:#d1d1d1;margin-top:14px;line-height:1.7}.auth-brand .auth-footer{display:flex;align-items:center;gap:8px;font-size:13px;color:#c2c2c2;justify-content:center}.auth-brand .auth-footer .icon{width:17px;height:17px}.data-freshness{display:flex;align-items:center;gap:32px;flex-wrap:wrap;padding:16px 20px;margin:-4px 0 23px;background:#f0f0f0;border:1px solid #e8e8e8;border-radius:9px}.data-freshness>div{display:flex;flex-direction:column;gap:5px}.data-freshness .freshness-main{display:flex;flex-direction:row;gap:11px;align-items:center;margin-right:auto}.freshness-main .icon{color:var(--teal);width:21px;height:21px}.data-freshness span{font-size:11px;color:#707070;display:block;font-weight:550;letter-spacing:.1px;margin-bottom:4px}.data-freshness strong{font-size:12px;color:#525252;font-weight:500;display:block;line-height:1.5}.freshness-main span{font-size:12px;color:#525252}.freshness-main strong{font-size:13px;font-weight:600}.freshness-note{font-size:12px;color:#707070;flex-basis:100%}.auth .field-note .icon{vertical-align:middle;width:17px;height:17px}
@media(max-width:980px){.data-freshness{gap:19px}.data-freshness .freshness-main{flex-basis:100%}.auth-identity img{width:128px;height:128px}.auth-identity h1{font-size:50px}.auth-identity p{font-size:15px}.auth-brand-label{font-size:10px}.auth-brand .auth-footer{font-size:11px;align-items:flex-start}}
@media(max-width:700px){.sidebar .fyie-brand{padding:0 5px}.fyie-brand img{width:32px!important;height:32px!important}.fyie-brand strong{font-size:22px}.fyie-brand span{font-size:10px;line-height:1.4;margin-top:4px}.fyie-brand span br{display:none}.fyie-brand span br:after{content:' '}.auth-brand{padding:22px 25px}.auth-brand-label,.auth-brand .auth-footer{display:none}.auth-identity{padding:0;margin:0;display:grid;grid-template-columns:64px 1fr;column-gap:15px;text-align:left;align-items:center}.auth-identity img{width:64px;height:64px;grid-row:1/3}.auth-identity h1{font-size:30px;letter-spacing:2px;margin:0}.auth-identity p{font-size:11px;margin:5px 0 0;line-height:1.6}.data-freshness{padding:15px;gap:14px;margin-bottom:20px}.data-freshness>div{flex-basis:100%}.data-freshness>div:not(.freshness-main){padding-left:32px}.data-freshness strong{font-size:12px}.freshness-note{padding-left:32px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Honor hidden even when a component normally uses flex or grid. */
[hidden]{display:none!important}
.portfolio-select{display:block;width:100%;background:transparent;color:inherit;text-align:left;padding:12px 0 0;border-radius:6px}.portfolio-select:hover h3,.table-link:hover{color:var(--teal)}.portfolio-select:focus-visible{outline:2px solid var(--teal)}.portfolio-open{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--teal);font-weight:600;margin-top:17px}.portfolio-open .icon{width:15px;height:15px}.portfolio-card.selected{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal)}.table-link{background:transparent;color:var(--navy);font-weight:650;text-align:left;padding:4px 0;text-decoration:underline;text-decoration-color:#d1d1d1;text-underline-offset:4px}.selectable-row{cursor:pointer}.selectable-row:hover{background:#fafafa}.holdings-panel{margin-top:24px}.holdings-head{align-items:flex-start;padding-bottom:18px}.holdings-search{padding:0 24px;margin-bottom:18px}.holdings-search input{max-width:340px}.projection-views{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:23px;padding:5px;border:1px solid var(--border);border-radius:10px;width:fit-content;background:#f0f0f0}.projection-views .btn{background:transparent;border-color:transparent}.projection-views .btn.selected{background:white;border-color:#dedede;box-shadow:0 1px 3px #26262610;color:var(--teal)}.custom-tax-tables{margin-top:25px}.custom-tax-tables>summary{cursor:pointer;padding:20px 24px;font-size:14px;font-weight:600}.custom-tax-content{padding:0 24px 24px}.custom-tax-content .page-head{margin-top:10px}.custom-tax-content h1{font-size:23px}.custom-tax-content .panel{margin-top:20px}
@media(max-width:700px){.holdings-head{flex-direction:column}.holdings-search{padding:0 18px}.custom-tax-content{padding:0 16px 18px}.custom-tax-tables>summary{padding:18px 16px}.projection-views .btn{font-size:13px;padding:9px 12px}.market-history .market-value-chart text{font-size:20px}}

.projection-chart-shell{position:relative;padding:14px 16px 20px;min-width:0}.projection-chart-svg{display:block;width:100%;height:auto;overflow:hidden}.projection-chart-svg text{fill:#707070;font-size:var(--projection-font,11px)}/* Allow vertical page scrolling over projection charts. */
.projection-hit{cursor:crosshair;touch-action:pan-y}.projection-hit:focus{outline:none}.projection-hit:focus-visible{outline:2px solid #707070}.projection-tooltip{position:absolute;right:25px;top:25px;background:#303030;color:#fafafa;padding:13px 16px;border-radius:10px;max-width:calc(100% - 40px);width:310px;font-size:12px;pointer-events:none;box-shadow:0 4px 18px #30303025}.projection-tooltip>div{display:flex;justify-content:space-between;gap:16px;margin-top:9px}.projection-tooltip>div strong{white-space:nowrap}.projection-help{font-size:11px;color:#707070;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:7px 0}.projection-tooltip[hidden],.projection-clear[hidden]{display:none}.projection-clear{font-size:11px!important;min-height:25px!important;padding:3px 7px!important}@media(max-width:700px){.projection-tooltip{position:static;margin:8px 0;width:auto;max-width:none}.projection-chart-shell{padding:12px 8px}}
.chat-citation{color:#606060;text-decoration:underline;text-underline-offset:3px;font-weight:600;overflow-wrap:anywhere}.chat-citation:focus-visible{outline:2px solid #707070;outline-offset:3px}

/* Long explanatory copy is collapsed by default throughout the interface. */
.fyie-explanation{overflow-wrap:anywhere;font-size:12px;font-weight:400;color:var(--muted);line-height:1.6;margin:8px 0 12px;min-width:0}
.fyie-explanation>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;font:inherit;color:inherit;width:fit-content;max-width:100%;padding:4px 0;min-width:0}
.fyie-explanation>summary::-webkit-details-marker{display:none}
.fyie-explanation>summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fyie-explanation>summary::after{content:"";width:5px;height:5px;flex:0 0 5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);margin:0 3px 0 0}
.fyie-explanation[open]>summary::after{transform:rotate(45deg);margin-top:-3px}
.fyie-explanation>summary:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:3px}
.fyie-explanation[open]>summary{margin-bottom:6px}
.fyie-explanation[open]>:not(summary){display:block!important;margin:0!important;padding:0!important;border:0!important;font:inherit;color:inherit;line-height:inherit}
.panel>.fyie-explanation:not(.fyie-explanation-layout){margin:12px 24px}.panel-head .fyie-explanation{margin:4px 0 0}
.fyie-explanation.fyie-explanation-layout{margin:8px 0 12px;padding-top:0;padding-bottom:0}
.fyie-explanation.fyie-settings-provider-note{margin-top:16px;padding-top:12px}
@media(max-width:700px){.panel>.fyie-explanation:not(.fyie-explanation-layout){margin-left:19px;margin-right:19px}}
.tax-stat .fyie-explanation{font-size:11px;margin:0}.tax-stat-accent .fyie-explanation{color:#d1d1d1}
.fyie-explanation.full-width{grid-column:1/-1}.fyie-explanation a{color:inherit}
.fyie-explained-field{min-width:0}.fyie-explained-field.full-width{grid-column:1/-1}
.fyie-explained-field>.fyie-explanation{margin:6px 0 0}
form>.fyie-explained-field+label,form>label+.fyie-explained-field,form>.fyie-explained-field+.fyie-explained-field{margin-top:20px}

.fyie-explanation:not([open])>:not(summary){display:none!important}
.fyie-explained-field:has(>label[hidden]){display:none!important}
.stat.featured .fyie-explanation{color:#d1d1d1}
.expense-stat:last-child .fyie-explanation,.nw-stat-accent .fyie-explanation,.nw-current-hero .fyie-explanation{color:#d1d1d1}

/* Keep account access within the portrait navigation flow. */
.user .account-link{margin-left:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;color:#e8e8e8;font-size:14px;min-height:44px}
.user .sign-out{min-width:44px;min-height:44px;display:grid;place-items:center;flex-shrink:0}
.stat.featured .positive,.tax-stat-accent .positive,.nw-stat-accent .positive,.nw-current-hero .positive{color:#9dddac}
.stat.featured .negative,.tax-stat-accent .negative,.nw-stat-accent .negative,.nw-current-hero .negative{color:#ffb4b4}
@media(max-width:700px){
 .sidebar-bottom{display:block;padding-top:6px;margin-top:0}
 .sidebar-bottom>nav,.sidebar-bottom>.creator-credit{display:none}
 .sidebar-bottom .user{padding:5px 0;gap:8px}
 .sidebar-bottom .user .account-link{flex:1}
 .sidebar-bottom .user .sign-out{margin-left:auto}
}

/* Monte Carlo keeps computation off the NAS and controls compact. */
.mc-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end}
.mc-controls label{display:grid;gap:8px;font-size:13px}
.mc-controls .btn{min-height:42px}
.mc-controls input,.mc-controls select{min-width:0;width:100%}
.mc-controls+p{margin-top:16px}
#mc-status{min-height:18px;margin:8px 0 0}
.mc-method{margin-top:24px}
.mc-method>summary{padding:20px 24px;font-size:13px;color:#666;cursor:pointer}
.mc-method p{font-size:13px;color:#666;line-height:1.65;margin:0 0 14px}
.mc-histogram{display:grid;gap:8px}
.mc-bin{display:grid;grid-template-columns:minmax(110px,1fr) minmax(40px,1fr) 44px;align-items:center;gap:8px;font-size:11px;color:#666}
.mc-bin>div{height:14px;background:#f0f0f0;border-radius:3px;overflow:hidden}
.mc-bin i{display:block;height:100%;background:#747474;min-width:2px}
.mc-bin strong{text-align:right;font-size:11px;font-weight:500}
@media(max-width:700px){.mc-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mc-controls label:first-child{grid-column:1/-1}.mc-controls select{min-width:0;width:100%}.mc-bin{grid-template-columns:minmax(90px,1.1fr) minmax(35px,1fr) 38px}}
.mc-stats{margin-top:24px}.mc-range{display:inline-block;font-size:22px;line-height:1.3}.mc-stats .stat{container-type:inline-size}.mc-stats .value{overflow-wrap:normal}.mc-money{white-space:nowrap;font-size:clamp(16px,15cqi,30px)}.mc-range .mc-money{font-size:clamp(15px,12cqi,22px)}
@media(max-width:700px){.mc-range{font-size:19px}}
.mc-results{display:grid;gap:24px;margin:24px 0}
.mc-results>.stat-grid{margin:0}
.mc-results .chart-legend{flex-wrap:wrap;gap:10px 16px}
.mc-results .chart-legend>span{white-space:nowrap;flex-shrink:0}
.mc-stats .label>.icon{display:none}
.mc-outcome-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.mc-outcomes-table th{font-size:10px;padding:12px 16px}
.mc-outcomes-table td{font-size:12px;padding:12px 16px;white-space:nowrap}
@media(max-width:700px){.mc-outcomes-table th,.mc-outcomes-table td{padding:10px;font-size:11px}}

.distribution-detail-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px}

/* Rooted Wealth identity: stacked on wide/landscape layouts, compact on phones. */
.sidebar .fyie-brand{flex-direction:column;text-align:center;gap:12px;padding:0 4px}
.sidebar .fyie-brand img{width:96px!important;height:96px!important;border-radius:0;background:transparent!important}
.fyie-brand strong{font-size:23px;letter-spacing:-.5px;line-height:1.2}
.fyie-brand span{font-size:11px;line-height:1.5;color:#d1d1d1;max-width:190px;margin:6px auto 0}
.auth-identity img{border-radius:0;background:transparent}
.auth-identity h1{font-size:clamp(32px,4.2vw,56px);letter-spacing:-1.8px;line-height:1.1}
.auth-identity p{font-size:16px;color:#d1d1d1;letter-spacing:0}
@media(max-width:700px) and (orientation:portrait){
 .sidebar .fyie-brand{flex-direction:row;text-align:left;gap:12px}
 .sidebar .fyie-brand img{width:48px!important;height:48px!important;border-radius:0}
 .fyie-brand strong{font-size:22px}.fyie-brand span{font-size:10px;max-width:none;margin:4px 0 0}
 .auth-identity img{border-radius:0}.auth-identity h1{font-size:27px;letter-spacing:-.6px}.auth-identity p{font-size:11px;line-height:1.4}
}
@media(max-width:700px) and (orientation:landscape){
 .sidebar .fyie-brand img{width:64px!important;height:64px!important}
 .auth-identity{display:flex;flex-direction:column;text-align:center;gap:7px}
 .auth-identity img{width:80px;height:80px;border-radius:0}.auth-identity h1{font-size:28px;letter-spacing:-.6px}.auth-identity p{font-size:12px;margin:0}
}

.projection-scale{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;margin-bottom:10px;font-size:12px;color:#666}.projection-scale>span{margin-right:5px}.projection-scale button{font:inherit;color:inherit;background:#fff;border:1px solid #ddd;border-radius:7px;padding:7px 10px;cursor:pointer;min-height:34px}.projection-scale button[aria-pressed="true"]{background:#454545;border-color:#454545;color:#fff}.projection-scale button:focus-visible{outline:2px solid #777;outline-offset:2px}.projection-scale-note{font-size:12px;color:#666;margin:0 0 10px}.projection-scale~.projection-tooltip{top:65px}

.garden-brand-trigger{display:inline-flex;align-items:center;justify-content:center;border:0;padding:0;border-radius:8px;background:transparent;cursor:pointer;line-height:0;color:inherit}.garden-brand-trigger:focus-visible{outline:2px solid #c5cfbd;outline-offset:5px}.sidebar .fyie-brand .garden-brand-plant{image-rendering:pixelated}.garden-brand-trigger:hover{filter:brightness(1.12)}

/* The wordmark shares the plant destination with its icon. */
.brand-name-trigger{display:block;padding:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:inherit;border-radius:4px}.brand-name-trigger:hover{opacity:.85}.brand-name-trigger:focus-visible{outline:2px solid currentColor;outline-offset:4px}
#purchase-price-note:empty{display:none}

.fyie-brand .brand-copy{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center}.brand-copy .brand-name-trigger{text-align:center}.auth-identity{text-align:center}
@media(max-width:700px) and (orientation:portrait){.fyie-brand .brand-copy{flex:1}}

.chat-setup-link{border:0;font-family:inherit;cursor:pointer}.chat-setup-link:hover{text-decoration:underline}.news-source-list li{margin:6px 0}.news-source-list a{color:inherit;text-decoration:underline}
