:root{color:#172033;background:#f5f7fb;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{background:#f5f7fb;min-height:100%}body{background:radial-gradient(circle at 84% 4%,#dae7ff 0,#0000 29rem),#f5f7fb;min-height:100vh;margin:0}.app-navigation{justify-content:space-between;align-items:center;gap:1.5rem;width:min(100% - 2rem,72rem);margin:0 auto;padding:1rem 0;display:flex}.brand-link{color:#0b1728;font-weight:800;text-decoration:none}.nav-links{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.nav-links a,.nav-link-disabled{color:#45617d;font-size:.9rem;text-decoration:none}.nav-links a:hover{color:#1e5aa8;text-decoration:underline}.nav-link-disabled{color:#8d9aac}.nav-links form{margin:0}.logout-button{color:#7b4050;background:0 0;border:0;padding:0;font-size:.9rem}.logout-button:hover{text-decoration:underline}.auth-shell{grid-template-columns:minmax(0,1fr) minmax(18rem,28rem);align-items:center;gap:2rem;width:min(100% - 2rem,64rem);min-height:100vh;margin:0 auto;padding:2rem 0;display:grid}.auth-intro h1{color:#0b1728;margin:.4rem 0;font-size:clamp(2.2rem,7vw,4.5rem);line-height:1}.auth-intro p:last-child{color:#52667e;max-width:34rem;font-size:1.05rem;line-height:1.55}.auth-card{background:#fff;border:1px solid #dce3f0;border-radius:1rem;gap:1rem;padding:2rem;display:grid;box-shadow:0 1rem 3rem #1e3e621a}.auth-card h2,.auth-card p{margin:0}.auth-card small{color:#68758d;line-height:1.45}.login-form{gap:.75rem;display:grid}.login-form label{font-weight:700}.login-form input{border:1px solid #aebdce;border-radius:.45rem;min-height:2.8rem;padding:.55rem .7rem}.page-heading{padding:1rem 0}.summary-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.summary-card{background:#fff;border:1px solid #dce3f0;border-radius:1rem;gap:.4rem;padding:1.25rem;display:grid}.summary-card span,.summary-card small{color:#60738a}.summary-card strong{color:#0b1728;font-size:1.8rem}.quick-actions{flex-wrap:wrap;gap:.75rem;display:flex}.quick-actions a{text-decoration:none}.goals-page-content{gap:1.5rem;display:grid}.goals-toolbar,.goal-detail-toolbar,.goal-card-actions,.form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.goals-toolbar h2,.goals-toolbar p{margin-bottom:0}.goal-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.goal-summary-card,.goal-detail-card,.scenario-card,.allocations-card{gap:1rem;padding:1.5rem;display:grid}.goal-summary-heading h2{margin:.25rem 0 0}.goal-kind{color:#45617d;letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.goal-card-actions{justify-content:flex-start}.goal-empty-state{justify-content:space-between;align-items:center;gap:1rem;display:flex}.goal-empty-state p{margin:0}.goal-editor-shell{width:min(100%,38rem)}.goal-form{gap:.8rem;padding:1.5rem;display:grid}.goal-form label,.allocation-form,.scenario-form label{gap:.35rem;display:grid}.goal-form input,.goal-form select,.allocation-form input,.allocation-form select,.scenario-form input{background:#fff;border:1px solid #c8d4e2;border-radius:.35rem;padding:.55rem}.goal-detail-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1rem;display:grid}.goal-detail-toolbar,.goal-detail-layout>.feedback,.goal-detail-card{grid-column:1/-1}.goal-detail-toolbar>a:first-child{color:#45617d}.scenario-form{grid-template-columns:1fr;gap:.7rem;display:grid}.scenario-form button{align-self:end}.goal-projection{background:#f4f7fb;border-radius:.8rem;gap:.65rem;padding:.9rem;display:grid}.goal-projection.compact{padding:.8rem}.goal-projection.compact .projection-result{font-size:.86rem}.goal-projection-heading{justify-content:space-between;gap:1rem;display:flex}.goal-projection-heading>div{gap:.15rem;display:grid}.goal-projection-heading>div:last-child{text-align:right}.goal-projection-heading strong{font-size:1.1rem}.goal-projection-heading small,.projection-note{color:#68758d}.projection-label{color:#176046;text-transform:uppercase;background:#dff3e9;border-radius:999px;width:fit-content;padding:.18rem .4rem;font-size:.72rem;font-weight:700}.projection-label.projected{color:#315c87;background:#e3edf9;justify-self:end}.goal-projection-track{background:#dfe6ef;border-radius:999px;height:.9rem;position:relative;overflow:hidden}.actual-fill,.projected-fill{border-radius:inherit;position:absolute;inset:0 auto 0 0}.projected-fill{background:repeating-linear-gradient(135deg,#8bb3dc 0 6px,#b8d2eb 6px 12px)}.actual-fill{background:#2b7a5b}.projection-result{color:#34445a;line-height:1.45}.projection-note{font-size:.8rem;line-height:1.4}.allocation-form{border-top:1px solid #e3e9f1;padding-top:.8rem}.allocation-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.allocation-list li{background:#f4f7fb;border-radius:.4rem;gap:.15rem;padding:.5rem;display:grid}.allocation-list li>div{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.allocation-list span{color:#60738a;font-size:.85rem}.unassign-button{color:#a33b36;background:0 0;border:0;padding:0;font-size:.8rem;text-decoration:underline}.allocation-overview{gap:1rem;padding:1.5rem;display:grid}.position-allocation{border-top:1px solid #e3e9f1;gap:.45rem;padding:.8rem 0;display:grid}.position-allocation>div{justify-content:space-between;gap:1rem;display:flex}.position-allocation progress{accent-color:#2b7a5b;width:100%}.position-allocation ul{color:#60738a;margin:0;padding-left:1.2rem}.field-help{color:#fff;cursor:help;background:#45617d;border-radius:50%;place-items:center;width:1.15rem;height:1.15rem;font-size:.75rem;display:inline-grid;position:relative}.field-help:after{z-index:2;color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;background:#172033;border-radius:.45rem;width:min(19rem,75vw);padding:.65rem;font-size:.78rem;font-weight:400;line-height:1.4;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.field-help:hover:after,.field-help:focus:after{opacity:1}.button-link{justify-content:center;align-items:center;width:fit-content;text-decoration:none;display:inline-flex}.form-actions{justify-content:flex-start;padding-top:.35rem}.return-layout{gap:1rem;display:grid}.return-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.return-card{gap:1rem;padding:1.5rem;display:grid}.return-card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.return-card-heading h2{margin:.25rem 0 0}.return-card-heading>strong{white-space:nowrap;font-size:1.5rem}.return-positive{color:#176046}.return-negative,.return-reason{color:#a33b36}.return-unavailable{color:#60738a}.return-flows{border-top:1px solid #e3e9f1;gap:.6rem;padding-top:.8rem;display:grid}.return-flows h3{margin:0}.return-flows ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.return-flows li{background:#f4f7fb;border-radius:.55rem;gap:.15rem;padding:.65rem;display:grid}.return-flows li>div{justify-content:space-between;gap:1rem;display:flex}.return-flows small{color:#60738a;line-height:1.35}.return-explanation{grid-template-columns:1fr minmax(16rem,.7fr);gap:1rem;padding:1.5rem;display:grid}.return-explanation p{margin-bottom:0;line-height:1.5}.return-detail-layout{gap:1rem;display:grid}.return-back-link{color:#45617d;width:fit-content}.return-result-card,.return-utility{grid-template-columns:minmax(0,.8fr) minmax(18rem,1.2fr);gap:1.5rem;padding:1.5rem;display:grid}.return-result-card h2{color:#176046;margin:.35rem 0;font-size:clamp(2rem,5vw,3.25rem)}.return-result-card p,.return-meaning p,.return-breakdown-card p,.return-utility p{line-height:1.5}.return-meaning{border-left:1px solid #dce3f0;padding-left:1.5rem}.return-meaning h3{margin-top:0}.return-breakdown-card{gap:1.25rem;padding:1.5rem;display:grid}.return-breakdown-card h2,.return-formula-card h2,.return-valuation-card h2,.return-flows h2,.return-utility h2{margin:0}.return-logic{gap:0;margin:0;padding:0;list-style:none;display:grid}.return-logic li{border-top:1px solid #e3e9f1;grid-template-columns:2.25rem 1fr;gap:.85rem;padding:.9rem 0;display:grid}.return-logic li>span{color:#fff;background:#315c87;border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:700;display:grid}.return-logic strong{margin-bottom:.2rem;display:block}.return-logic p{margin:0}.return-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.return-totals .summary-card strong{overflow-wrap:anywhere;font-size:clamp(1.2rem,3vw,1.8rem)}.return-valuation-card{gap:1rem;padding:1.5rem;display:grid}.return-valuation-card p{margin-bottom:0}.return-valuation-card ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.return-valuation-card li{background:#f4f7fb;border-radius:.6rem;gap:.2rem;padding:.75rem;display:grid}.return-valuation-card li>div{justify-content:space-between;gap:1rem;display:flex}.return-valuation-card small{color:#60738a;line-height:1.4}.return-formula-card{gap:1.25rem;padding:1.5rem;display:grid}.return-formula-card>div:first-child p{margin-bottom:0;line-height:1.5}.return-general-formula{color:#132b46;background:#edf3fa;border-radius:.65rem;padding:1rem;overflow-x:auto}.return-general-formula code{white-space:nowrap;font-size:clamp(.95rem,2.4vw,1.15rem)}.return-formula-key{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.return-formula-key>div{border:1px solid #e3e9f1;border-radius:.6rem;padding:.8rem}.return-formula-key dt{margin-bottom:.3rem;font-family:Consolas,monospace;font-weight:700}.return-formula-key dd{color:#60738a;margin:0;font-size:.86rem;line-height:1.4}.return-applied-formula{border-top:1px solid #e3e9f1;gap:.85rem;padding-top:1rem;display:grid}.return-applied-formula h3,.return-applied-formula p{margin:0}.return-equation-terms{background:#f8fafc;border-radius:.65rem;gap:.45rem;padding:.85rem;display:grid;overflow-x:auto}.return-equation-term{grid-template-columns:minmax(8.5rem,.45fr) minmax(max-content,1fr);align-items:center;gap:1rem;display:grid}.return-equation-term small{color:#60738a}.return-equation-term>div{white-space:nowrap;align-items:baseline;gap:.4rem;font-family:Consolas,monospace;display:flex}.return-equation-sign{text-align:center;width:1rem;font-weight:700}.return-equation-term sup,.return-general-formula sup{padding-left:.15rem;font-size:.72em}.return-equation-result{gap:.5rem;padding-left:calc(45% + 1rem);font-family:Consolas,monospace;display:flex}.return-formula-result{color:#123d2d;background:#e5f4ec;border-radius:.65rem;gap:.25rem;padding:.9rem;display:grid}.return-formula-result small{color:#45675a}.return-utility{align-items:start}.return-utility .fixture-notice{margin:0}.real-return-summary{grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);align-items:center;gap:1.25rem;padding:1.5rem;display:grid}.real-return-summary h2{margin:.3rem 0}.real-return-summary p{margin-bottom:0;line-height:1.5}.real-return-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.real-return-preview>div{background:#f4f7fb;border-radius:.65rem;gap:.25rem;padding:.8rem;display:grid}.real-return-preview span{color:#60738a;font-size:.8rem}.real-return-preview strong{font-size:1.15rem}.real-flow-card,.purchasing-power-card{gap:1rem;padding:1.5rem;display:grid}.real-flow-card h2,.purchasing-power-card h2{margin:.25rem 0}.real-flow-card ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.real-flow-card li{background:#f4f7fb;border-radius:.65rem;gap:.4rem;padding:.8rem;display:grid}.real-flow-card li>div:first-child{justify-content:space-between;gap:1rem;display:flex}.real-flow-card li small{color:#60738a}.real-flow-values{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:.6rem;display:grid}.real-flow-values>:nth-child(2){color:#60738a;text-align:center}.real-flow-values>:last-child{text-align:right}.purchasing-value{color:#123d2d;background:#e5f4ec;border-radius:.65rem;gap:.25rem;width:fit-content;padding:.9rem 1rem;display:grid}.purchasing-value strong{font-size:1.5rem}.purchasing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.purchasing-grid>div{border:1px solid #dce3f0;border-radius:.7rem;gap:.4rem;padding:1rem;display:grid}.purchasing-grid strong{color:#0b1728;font-size:1.8rem}.purchasing-grid small,.return-source-list{color:#60738a;line-height:1.45}.return-source-list ul{margin:.35rem 0 0;padding-left:1.2rem}.fixture-notice{color:#654f18;background:#fff4d6;border-radius:.6rem;padding:.8rem}@media (max-width:42rem){.auth-shell{grid-template-columns:1fr;align-content:center}.app-navigation{flex-direction:column;align-items:flex-start;gap:.75rem}.summary-grid,.goal-summary-grid,.goal-detail-layout{grid-template-columns:1fr}.goal-detail-toolbar,.goal-detail-layout>.feedback,.goal-detail-card{grid-column:auto}.goal-projection-heading{flex-direction:column}.goal-projection-heading>div:last-child{text-align:left}.projection-label.projected{justify-self:start}.goal-empty-state{flex-direction:column;align-items:flex-start}.return-grid,.return-explanation,.return-result-card,.return-utility,.return-totals,.return-formula-key,.real-return-summary,.purchasing-grid{grid-template-columns:1fr}.return-card-heading{flex-direction:column}.return-flows li>div,.return-valuation-card li>div{flex-direction:column;align-items:flex-start;gap:.2rem}.return-meaning{border-top:1px solid #dce3f0;border-left:0;padding:1rem 0 0}.return-equation-term{grid-template-columns:1fr;gap:.2rem}.return-equation-result{padding-left:0}.real-flow-card li>div:first-child{flex-direction:column;gap:.2rem}.real-flow-values{grid-template-columns:1fr}.real-flow-values>:nth-child(2),.real-flow-values>:last-child{text-align:left}}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #2b7a5b}button:disabled{cursor:not-allowed}.connection-notice{color:#85420f;background:#fff3df;border-radius:.7rem;width:min(100% - 2rem,72rem);margin:.25rem auto -.75rem;padding:.75rem 1rem;line-height:1.4}.recovery-card{gap:1rem;width:min(100%,36rem);padding:1.5rem;display:grid}.recovery-card p{margin:0;line-height:1.5}.text-button{min-height:2.75rem;color:inherit;background:0 0;border:0;border-radius:.45rem;margin-left:.4rem;padding:.45rem .65rem;font-weight:700;text-decoration:underline}.ledger-shell{gap:1.5rem;width:min(100% - 2rem,72rem);margin:0 auto;padding:clamp(2rem,8vh,5rem) 0 3rem;display:grid}.ledger-header,.card{background:#ffffffe6;border:1px solid #dce3f0;border-radius:1.25rem;box-shadow:0 1rem 3rem #20375f14}.ledger-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:clamp(1.5rem,5vw,3rem);display:flex}.eyebrow{color:#2b5a9e;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.8rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#0b1728;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,10vw,4.5rem);line-height:.96}h2{margin-bottom:.35rem;font-size:1.35rem}h3{margin-bottom:.2rem;font-size:1rem}.intro{color:#4a5870;max-width:52ch;margin:1rem 0 0;line-height:1.6}.storage-notice{color:#24528f;background:#e9f1ff;border-radius:999px;flex:none;margin:0;padding:.45rem .7rem;font-size:.84rem;font-weight:700}.ledger-grid{gap:1.5rem;display:grid}.card{padding:1.25rem}.card-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.25rem;display:flex}.card-heading p{color:#65738b;margin:0;font-size:.9rem}.operation-form{gap:1rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.field{color:#46536a;gap:.4rem;min-width:0;font-size:.86rem;font-weight:700;display:grid}.field.wide{grid-column:span 2}.field input,.field select{color:#172033;background:#fff;border:1px solid #c9d4e5;border-radius:.7rem;outline:none;width:100%;min-height:2.75rem;padding:.65rem .75rem;font-weight:400}.field input:focus,.field select:focus{border-color:#2b5a9e;box-shadow:0 0 0 3px #2b5a9e24}.primary-button,.void-button{border:0;border-radius:.7rem;min-height:2.75rem;font-weight:700}.primary-button{color:#fff;background:#0b5cad;padding:.65rem 1rem}.primary-button:hover:not(:disabled){background:#084b8d}.primary-button:disabled{cursor:not-allowed;opacity:.55}.feedback{color:#85420f;background:#fff3df;border-radius:.7rem;margin:0;padding:.75rem;line-height:1.4}.feedback.success{color:#0c6548;background:#e4f7ef}.position-list,.operation-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.position,.operation-row{background:#fbfcff;border:1px solid #e1e7f0;border-radius:.8rem;gap:.5rem;padding:1rem;display:grid}.operation-row{scroll-margin-block:1rem}.operation-row:focus{outline-offset:.2rem;outline:3px solid #7eacd7}.position-main,.operation-main,.operation-meta{justify-content:space-between;align-items:baseline;gap:.8rem;display:flex}.position-main span,.operation-meta,.muted{color:#68758d;font-size:.88rem}.operation-main{align-items:center}.operation-main strong{font-size:1.05rem}.operation-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.buy-badge,.sell-badge,.void-badge,.planned-badge{border-radius:999px;padding:.3rem .5rem;font-size:.75rem;font-weight:700}.buy-badge{color:#0c6548;background:#e4f7ef}.sell-badge{color:#87520d;background:#fff3df}.void-badge{color:#7c3d58;background:#fbe7ef}.planned-badge{color:#315c87;background:#e7f0fb}.confirm-button{color:#245b48;background:#e4f7ef;padding:.45rem .65rem}.void-button{color:#823b58;background:#fbe7ef;padding:.45rem .65rem}.empty-state{color:#68758d;border:1px dashed #cbd7e7;border-radius:.75rem;margin:0;padding:1rem;line-height:1.5}.traceability-links{gap:.3rem;display:grid}.traceability-link{color:#0b5cad;text-underline-offset:.15rem;width:fit-content;font-size:.88rem;font-weight:700;text-decoration:underline}.evidence-link-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.evidence-link-form select{background:#fff;border:1px solid #c8d4e2;border-radius:.35rem;max-width:18rem;min-height:2.25rem;padding:.35rem .45rem}.evidence-card{margin-top:1.5rem}.evidence-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.evidence-item{border:1px solid #dce4ef;border-radius:.8rem;align-items:center;gap:.85rem;padding:.7rem;display:flex}.evidence-item img{object-fit:cover;background:#eef2f7;border-radius:.5rem;flex:none;width:96px;height:96px}.evidence-item div{gap:.35rem;display:grid}.evidence-details{min-width:0}.secondary-button{color:#245b48;background:#e4f7ef;width:fit-content;min-height:2.75rem;padding:.45rem .65rem}.ocr-review{background:#f4f8fc;border-left:3px solid #9bb9d8;gap:.45rem;margin-top:.35rem;padding:.7rem;display:grid}.ocr-operation{border:1px solid #c8d4e2;border-radius:.35rem;gap:.45rem;margin:0;padding:.55rem;display:grid}.ocr-field{gap:.2rem;font-size:.78rem;display:grid}.ocr-field input{background:#fff;border:1px solid #c8d4e2;border-radius:.35rem;min-width:12rem;padding:.35rem .45rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:58rem){.ledger-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}.operations-card{grid-column:span 2}}@media (max-width:31rem){.ledger-header{display:grid}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.position-main,.operation-main,.operation-meta{flex-direction:column;align-items:flex-start;gap:.3rem}}
