/* Decision-first shell. Kept separate from app.css so existing local styling remains intact. */
:root { --fin-ink:#13233a; --fin-muted:#64748b; --fin-page:#f3f7fb; --fin-panel:#fff; --fin-line:#dce6f0; --fin-navy:#102a43; --fin-blue:#1267e8; --fin-teal:#0f9d8a; --fin-amber:#b96a08; --fin-red:#bd3c3c; --fin-shadow:0 12px 32px rgba(20,47,76,.08); }
body { background:var(--fin-page); color:var(--fin-ink); }
.app-header { background:rgba(16,42,67,.98); border:0!important; box-shadow:0 2px 14px rgba(15,39,63,.12); }.app-header .brand{color:#fff;font-size:1.1rem}.app-header .brand-mark{background:linear-gradient(135deg,#36c9b0,#91e5d4);color:var(--fin-navy);border-radius:10px}.app-header .text-secondary{color:#c5d3e2!important}.app-header .btn-outline-secondary{color:#fff;border-color:rgba(255,255,255,.42)}
main.container-fluid{max-width:1540px;margin:0 auto;padding:30px 34px 54px!important}
.case-heading{padding:24px 28px;border:1px solid var(--fin-line);border-radius:18px;background:linear-gradient(112deg,#fff 0%,#f7fbff 74%,#edf8ff 100%);box-shadow:var(--fin-shadow);margin-bottom:14px!important}.case-heading .page-title{margin-top:7px;font-size:clamp(1.75rem,3vw,2.5rem);color:var(--fin-navy)}.case-heading .back-link{color:var(--fin-blue);font-weight:650}.case-heading .text-secondary{font-size:.94rem}.status-panel{border-radius:14px;min-width:220px;padding:13px 16px;box-shadow:none}.status-panel strong{font-size:.92rem}.status-panel span{color:inherit;opacity:.75}
.case-tabs{position:sticky;top:68px;z-index:5;background:rgba(243,247,251,.94);backdrop-filter:blur(10px);padding:10px 0 14px;margin-bottom:24px!important;gap:4px;overflow-x:auto;flex-wrap:nowrap}.case-tabs .nav-link{white-space:nowrap;border-radius:9px;padding:9px 12px;font-weight:600;color:#516173}.case-tabs .nav-link:hover{background:#e7f0ff;color:var(--fin-blue)}.case-tabs .nav-link.active{background:var(--fin-blue);box-shadow:0 6px 14px rgba(18,103,232,.24)}
.decision-hero{border:0;border-radius:20px;background:linear-gradient(135deg,#102a43 0%,#173f64 58%,#0c5a70 100%);color:#fff;box-shadow:0 18px 42px rgba(16,42,67,.22);padding:30px;overflow:hidden;position:relative}.decision-hero:after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(255,255,255,.17);border-radius:50%;right:-90px;top:-160px}.decision-hero .eyebrow{color:#84e8d4}.decision-hero h2{font-size:clamp(1.5rem,2.3vw,2.15rem);font-weight:730;letter-spacing:-.035em;margin-bottom:9px}.decision-hero p{max-width:680px;color:#dcebf5;margin-bottom:0}.decision-hero .btn{position:relative;z-index:1}.decision-hero .btn-light{color:var(--fin-navy);font-weight:700}.decision-status{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.11);backdrop-filter:blur(8px);border-radius:14px;padding:14px 16px;min-width:220px;position:relative;z-index:1}.decision-status span{display:block;color:#cfe7f5;font-size:.78rem}.decision-status strong{display:block;font-size:1rem;margin-top:3px}
.decision-metric{border:1px solid var(--fin-line);border-radius:16px;background:var(--fin-panel);padding:18px;height:100%;box-shadow:0 7px 20px rgba(23,57,83,.045)}.decision-metric .metric-label{display:flex;align-items:center;gap:8px;color:var(--fin-muted);font-size:.78rem;font-weight:700}.decision-metric .metric-dot{width:8px;height:8px;border-radius:50%;background:var(--fin-teal)}.decision-metric .metric-dot.watch{background:#f4a10a}.decision-metric .metric-dot.issue{background:var(--fin-red)}.decision-metric strong{display:block;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;letter-spacing:-.04em;margin:13px 0 7px;color:var(--fin-navy)}.decision-metric small{color:var(--fin-muted);line-height:1.4}
.decision-card{border:1px solid var(--fin-line);border-radius:17px;background:var(--fin-panel);padding:23px;height:100%;box-shadow:0 8px 22px rgba(23,57,83,.045)}.decision-card h2{color:var(--fin-navy);font-size:1.05rem;margin:0;font-weight:750;letter-spacing:-.02em}.decision-card .card-kicker{color:var(--fin-muted);font-size:.82rem;margin:6px 0 17px}.decision-list{margin:0;padding:0;list-style:none}.decision-list li{display:flex;align-items:flex-start;gap:11px;padding:13px 0;border-top:1px solid #edf1f5}.decision-list li:first-child{border-top:0;padding-top:0}.decision-list .bullet{width:9px;height:9px;margin-top:6px;border-radius:50%;background:var(--fin-blue);flex:none}.decision-list .bullet.watch{background:#eda314}.decision-list .bullet.issue{background:var(--fin-red)}.decision-list strong{display:block;color:var(--fin-ink);font-size:.9rem}.decision-list span{display:block;color:var(--fin-muted);font-size:.82rem;margin-top:2px;line-height:1.45}.decision-progress{margin-top:12px;background:#e8eef5;height:8px;border-radius:99px;overflow:hidden}.decision-progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--fin-teal),#37c9b2);border-radius:inherit}.next-step{border-left:4px solid var(--fin-blue);background:#f4f8ff;border-radius:0 12px 12px 0;padding:15px 16px}.next-step strong{display:block;font-size:.88rem;color:var(--fin-navy)}.next-step p{margin:4px 0 0;color:var(--fin-muted);font-size:.84rem}
.card,.table-card{border:1px solid var(--fin-line)!important;border-radius:16px!important;box-shadow:0 7px 21px rgba(23,57,83,.045)!important}.card.p-4{padding:24px!important}.section-title{color:var(--fin-navy);font-size:1.08rem;font-weight:750}.table thead th{background:#f7fafe;color:#637489;padding:13px 16px}.table>:not(caption)>*>*{padding:14px 16px}.table tbody tr:hover{background:#f9fcff}.report-intro{display:flex;gap:18px;align-items:flex-start}.report-intro-icon{width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:12px;background:#e8f0ff;color:var(--fin-blue);font-size:1.2rem;font-weight:800}.report-intro p{margin:5px 0 0;color:var(--fin-muted);max-width:760px}details.technical-details{margin-top:16px;border-top:1px solid var(--fin-line);padding-top:14px}details.technical-details summary{color:var(--fin-muted);font-size:.85rem;font-weight:650;cursor:pointer}.compact-alert{border-radius:12px;border:1px solid #ccefe7;background:#e9faf6;color:#0b6457;padding:14px 16px;font-size:.88rem}form label{color:#334155;font-weight:700}.content-narrow{max-width:1280px}.empty-state{background:#fff;border-radius:18px;border-color:#cddbe9}
.report-workbench{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.95fr);gap:30px;align-items:center;padding:30px;border-radius:20px;background:linear-gradient(130deg,#102a43,#174a67 58%,#0b6b73);color:#fff;box-shadow:0 18px 42px rgba(16,42,67,.2)}.report-workbench .eyebrow,.report-action .eyebrow{color:#0f8ec5;font-size:.72rem;font-weight:800;letter-spacing:.12em}.report-workbench .eyebrow{color:#89ead5}.report-workbench h2{font-size:clamp(1.55rem,2.4vw,2.25rem);letter-spacing:-.04em;margin:7px 0}.report-workbench p{margin:0;max-width:650px;color:#d6e7ef}.report-flow{display:grid;gap:10px}.report-step{display:flex;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.16);border-radius:13px;padding:11px 13px;background:rgba(255,255,255,.08)}.report-step>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:.78rem;font-weight:800}.report-step.complete>span{background:#54d5bd;color:#073e3b}.report-step.waiting{opacity:.77}.report-step strong,.report-step small{display:block}.report-step strong{font-size:.84rem}.report-step small{font-size:.74rem;color:#d3e6ed;margin-top:1px}.report-action{display:flex;align-items:center;justify-content:space-between;gap:26px;background:linear-gradient(105deg,#fff,#f5fbff)}.report-action p{color:var(--fin-muted);max-width:720px}.report-action small{display:block;margin-top:9px;color:var(--fin-muted)}.report-action-controls{flex:none}.report-context{display:flex;gap:10px;align-items:center;font-size:.9rem}.report-context span{color:var(--fin-muted)}
@media(max-width:900px){.report-workbench{grid-template-columns:1fr}.report-flow{grid-template-columns:repeat(3,1fr)}.report-step{align-items:flex-start}.report-step small{line-height:1.3}}@media(max-width:767px){main.container-fluid{padding:20px 16px 38px!important}.case-heading{padding:20px}.case-tabs{top:64px}.decision-hero{padding:23px}.decision-status{margin-top:18px}.card.p-4{padding:19px!important}.report-workbench{padding:23px}.report-flow{grid-template-columns:1fr}.report-action{align-items:flex-start;flex-direction:column}.report-action-controls{width:100%}.report-action-controls .btn{width:100%}}
