.dcf-spinner{display:inline-block;width:12px;height:12px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:rim-spin .6s linear infinite;margin-right:6px;vertical-align:middle}@keyframes rim-spin{to{transform:rotate(1turn)}}.waterfall-card{border:1px solid var(--border,#ddd0b8);padding:20px;background:var(--bg-off,#ede8df);border-top:2px solid var(--copper,#b87333);margin-bottom:16px}.wf-heading{font-family:var(--font-serif,"Cormorant Garamond",Georgia,serif);font-size:17px;font-weight:300;font-style:italic;color:var(--text,#1e2830);margin-bottom:4px}.wf-grid{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.wf-item{background:var(--bg,#f5f0e8);border:1px solid var(--border,#ddd0b8);padding:8px 12px;text-align:center;min-width:80px}.wf-item .wf-label{display:block;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-lt,#a09278);margin-bottom:2px}.wf-item .wf-val{display:block;font-size:13px;color:var(--text,#1e2830);font-weight:700}.wf-div,.wf-eq,.wf-minus,.wf-plus{background:none!important;border:none!important;font-size:18px;color:var(--copper,#b87333);min-width:24px;padding:0;display:flex;align-items:center;justify-content:center}.wf-target{background:var(--navy,#0d1f3c)!important;border-color:var(--copper,#b87333)!important}.wf-target .wf-label{color:hsla(40,69%,87%,.5)}.wf-target .wf-val{color:#d4914a;font-size:16px}.wf-upside{margin-top:10px;font-size:12px;font-weight:700;color:var(--muted,#7a6e5a);text-align:right}.wf-upside-positive{color:#2d6e4e}.wf-upside-negative{color:#8b3030}.dcf-divider-inner{margin:24px 0;border:none;border-top:1px solid var(--border,#ddd0b8)}.sens-card{border:1px solid var(--border,#ddd0b8);padding:20px;background:var(--bg-off,#ede8df);border-top:2px solid var(--copper,#b87333);margin-bottom:16px}.proj-heading{font-family:var(--font-serif,"Cormorant Garamond",Georgia,serif);font-size:17px;font-weight:300;font-style:italic;color:var(--text,#1e2830);margin-bottom:3px}.proj-sub{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-lt,#a09278);margin-bottom:14px}.proj-scroll{overflow-x:auto}.sens-table{width:100%;border-collapse:collapse;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:11px}.sens-table td,.sens-table th{padding:8px 10px;text-align:center;border:1px solid var(--border,#ddd0b8)}.sens-table th{background:var(--navy,#0d1f3c);color:var(--champagne,#f5e6c8);font-weight:700;letter-spacing:.06em;font-size:10px}.corner-cell{background:var(--slate-dk,#1a2f4a)!important;font-style:italic}.row-header{background:var(--navy,#0d1f3c);color:var(--champagne,#f5e6c8);font-weight:700;font-size:10px}.sens-cell{background:var(--bg,#f5f0e8);color:var(--text,#1e2830)}.sens-base{background:var(--bg-off,#e8dcc8)!important;font-weight:700;border:2px solid var(--copper,#b87333)!important}.sens-green{background:rgba(46,120,90,.12)!important;color:#1a5e3a}.sens-red{background:rgba(220,80,60,.1)!important;color:#8b3030}.dcf-inputs,.dcf-s-wrap{width:100%}.input-group{margin-bottom:16px}.input-group-label{font-size:8px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-lt,#a09278);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid var(--border,#ddd0b8)}.input-row{display:flex;align-items:center;gap:6px;margin-bottom:5px}.input-lbl{font-size:11px;color:var(--text,#1a2f4a);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.input-field{width:80px;font-size:12px;padding:4px 6px;border:1px solid var(--border,#ddd0b8);background:var(--bg-off,#f5f0e8);color:var(--text,#1e2830);text-align:right;outline:none;font-family:IBM Plex Sans,system-ui,sans-serif}.input-field:focus{border-color:var(--copper,#b87333)}.input-unit{font-size:10px;color:var(--muted-lt,#a09278);width:28px}.rim-bank-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:14px;background:rgba(184,115,51,.08);border:1px solid rgba(184,115,51,.25);border-radius:4px;font-size:10px;font-weight:600;color:var(--copper,#b87333)}.rim-bank-banner svg{color:var(--copper,#b87333);flex-shrink:0}.rim-dq-warning{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:14px;background:rgba(200,120,20,.08);border:1px solid rgba(200,120,20,.3);border-radius:4px;font-size:10px;font-weight:500;color:var(--text)}.rim-dq-warning svg{color:#c87814;flex-shrink:0}.rim-yf-badge{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:14px;background:rgba(46,139,87,.08);border:1px solid rgba(46,139,87,.25);border-radius:4px;font-size:10px;font-weight:500;color:var(--text)}.rim-yf-badge svg{color:#2e8b57;flex-shrink:0}.rim-rf-btn{font-size:8px;font-weight:700;padding:3px 8px;border-radius:3px;background:rgba(184,115,51,.08);border:1px solid rgba(184,115,51,.25);color:var(--copper,#b87333);cursor:pointer;white-space:nowrap;font-family:var(--font-sans,"IBM Plex Sans",sans-serif);transition:all .15s}.rim-rf-btn:hover{background:rgba(184,115,51,.15)}.rim-rf-btn:disabled{opacity:.5;cursor:not-allowed}.rim-runbar{position:sticky;top:0;z-index:40;background:var(--navy,#0d1f3c);border-bottom:2px solid var(--copper,#b87333);padding:0 32px}.rim-runbar-inner{display:flex;align-items:center;justify-content:space-between;height:48px;max-width:1400px;margin:0 auto}.rim-runbar-left{display:flex;align-items:center;gap:8px}.rim-runbar-btn{font-family:IBM Plex Sans,system-ui,sans-serif;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;background:transparent;border:1px solid hsla(0,0%,100%,.2);color:hsla(43,37%,96%,.7);cursor:pointer;transition:all .15s}.rim-runbar-btn:hover{background:rgba(184,115,51,.15);border-color:var(--copper,#b87333);color:#f5f0e8}.rim-runbar-btn-desc{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.rim-rb-main{font-size:9px}.rim-rb-sub{font-size:7px;font-weight:400;opacity:.5;letter-spacing:.08em}.rim-runbar-right{gap:8px}.rim-run-btn,.rim-runbar-right{display:flex;align-items:center}.rim-run-btn{font-family:IBM Plex Sans,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:8px 24px;background:var(--copper,#b87333);border:none;color:#fff;cursor:pointer;gap:6px;transition:all .15s}.rim-run-btn:hover{background:#a06428}.rim-run-btn:disabled{opacity:.6;cursor:not-allowed}.rim-run-btn.loading{background:#a06428}.rim-clear-btn{font-family:IBM Plex Sans,system-ui,sans-serif;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;background:transparent;border:1px solid hsla(0,0%,100%,.15);color:hsla(43,37%,96%,.5);cursor:pointer;transition:all .15s}.rim-clear-btn:hover{border-color:hsla(0,0%,100%,.3);color:hsla(43,37%,96%,.8)}.rim-history-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}@media (max-width:768px){.rim-history-row{grid-template-columns:1fr}}.rim-fv-card{padding:20px}.rim-wf-grid{align-items:center;gap:8px;flex-wrap:wrap}.rim-fv-meta,.rim-wf-grid{display:flex;justify-content:center}.rim-fv-meta{gap:16px;margin-top:10px;font-size:10px;color:var(--muted,#6b7280)}.rim-positive{color:#2e8b57}.rim-negative{color:#cd5c5c}.rim-bank-note{padding:12px 16px;margin:16px 0;background:rgba(184,115,51,.06);border:1px solid rgba(184,115,51,.15);border-radius:4px;font-size:11px;color:var(--muted,#6b7280);font-style:italic}.rim-schedule-table td,.rim-schedule-table th{text-align:right}.rim-schedule-table td:first-child,.rim-schedule-table th:first-child{text-align:center}.wacc-calc-panel{margin-top:16px;border-top:1px solid var(--border,#ddd0b8);padding-top:12px}.wacc-calc-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-lt,#a09278);background:none;border:none;cursor:pointer;padding:4px 0}.wacc-arrow{transition:transform .2s;font-size:10px}.wacc-arrow.open{transform:rotate(180deg)}.wacc-calc-body{margin-top:10px}.wacc-calc-btn{width:100%;margin-top:8px;padding:6px;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:rgba(184,115,51,.1);border:1px solid rgba(184,115,51,.3);color:var(--copper,#b87333);cursor:pointer;transition:all .15s}.wacc-calc-btn:hover{background:rgba(184,115,51,.2)}.wacc-calc-btn:disabled{opacity:.5;cursor:not-allowed}.wacc-result{margin-top:8px;padding:8px;background:var(--bg,#f9f7f2);border-radius:3px}.wacc-result-row{display:flex;justify-content:space-between;font-size:11px;color:var(--text,#1a2f4a);padding:2px 0}.wacc-result-total{font-weight:700;font-size:13px;border-top:1px solid var(--border,#ddd0b8);padding-top:4px;margin-top:2px}.wacc-use-btn{width:100%;margin-top:6px;padding:5px;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--copper,#b87333);border:none;color:#fff;cursor:pointer}.wacc-use-btn:hover{opacity:.85}.wacc-sector-hint{font-size:9px;color:var(--muted,#6b7280);font-style:italic}@media (max-width:768px){.rim-runbar{padding:0 16px}.rim-runbar-inner{height:42px}.rim-runbar-btn{font-size:8px;padding:4px 10px}.rim-run-btn{font-size:10px;padding:6px 16px}.rim-wf-grid{gap:4px}}@media (max-width:480px){.rim-runbar-btn-desc{display:none}}@media (max-width:900px){.waterfall-card{padding:16px}.wf-heading{font-size:15px}.wf-grid{gap:4px}.wf-item{padding:6px 8px;min-width:60px}.wf-item .wf-label{font-size:7px}.wf-item .wf-val{font-size:11px}.wf-target .wf-val{font-size:14px}.sens-card{padding:14px}.proj-heading{font-size:15px}.proj-scroll{-webkit-overflow-scrolling:touch}.sens-table{font-size:10px}.sens-table td,.sens-table th{padding:6px 7px}}@media (max-width:480px){.waterfall-card{padding:12px}.wf-heading{font-size:14px}.sens-table{font-size:9px}.sens-table td,.sens-table th{padding:5px 5px}}@media print{.rim-clear-btn,.rim-run-btn,.rim-runbar,.wacc-calc-panel{display:none!important}.rim-bank-banner{border-color:#b87333}}