:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#172b41;background:#f5f7fa;font-synthesis:none;line-height:1.5;--accent: #126a64;--line: #dce3e9}.grid-panel{min-width:0;margin:16px 0}.grid-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.grid-toolbar label{flex:1;min-width:210px}.grid-columns{margin:12px 0;padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:7px}.grid-column-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.grid-column-list>div{padding:8px;border-bottom:1px solid var(--line)}.grid-column-list select{margin-top:5px}.grid-panel .ag-cell img{vertical-align:middle;border-radius:4px}*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-underline-offset:3px}button,input,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b9c8d2;border-radius:7px;padding:9px 15px;background:#fff;color:#243b50;cursor:pointer;text-decoration:none;font-weight:600}button:hover,.button:hover{background:#eef5f4}button:disabled{opacity:.5;cursor:default}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.danger{color:#a32b3f;border-color:#e7bac3}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e5a52b;outline-offset:3px}.topbar{height:76px;background:#142d3f;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1440px)/2));gap:20px}.topbar a{color:#fff}.brand{font-size:23px;font-weight:800;text-decoration:none}.brand span{font-size:14px;font-weight:500;margin-left:12px;color:#bcd3dd}main{max-width:1488px;margin:auto;padding:40px 24px 70px}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:700}h1{font-size:clamp(28px,4vw,38px);letter-spacing:-.03em;margin:8px 0}h2{font-size:23px;margin:0}h3{font-size:18px;margin:0 0 10px}.intro{color:#53697b;max-width:850px;margin-bottom:24px}.muted{color:#5c7081;font-size:14px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;margin:18px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 10px}.card .section-heading{margin-top:0}.actions,.pagination,.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.pagination{justify-content:flex-end;margin-top:25px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin:20px 0}label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600}input,select{border:1px solid #b9c8d2;background:#fff;border-radius:6px;padding:10px;color:#172b41;min-width:0;width:100%}fieldset{border:0;padding:0;margin:0;min-width:0}.check{flex-direction:row;align-items:center}.check input{width:auto}.filters{align-items:flex-end;margin:20px 0}.notice{background:#eaf4f3;border-left:3px solid #318a82;padding:15px;border-radius:4px}.error{background:#fff0f1;border-left:3px solid #bf3750;padding:15px;overflow-wrap:anywhere}.empty{text-align:center;padding:35px;color:#607286;background:#fff;border:1px dashed #bacad4;border-radius:8px}.badge{font-size:12px;padding:4px 9px;border-radius:5px;background:#edf1f5;white-space:nowrap}.badge[data-state=ACTIVE],.badge[data-state=matured]{background:#daf0e7;color:#165f49}.badge[data-state=FAILED],.badge[data-state=insufficient]{background:#fce5e8;color:#9f2f40}.badge[data-state=pending],.badge[data-state=WAITING_DATA]{background:#fff0d2;color:#795214}summary{cursor:pointer;font-weight:600;padding:5px 0}details[open]>summary{margin-bottom:15px}.help{border:1px solid var(--line);border-radius:9px;padding:12px 18px;background:#fff;margin-bottom:25px}.help section{max-width:1000px}.help p{white-space:pre-line}.tabs{display:flex;overflow:auto;gap:4px;border-bottom:1px solid var(--line);padding-bottom:6px}.tabs button{white-space:nowrap;border:0;background:transparent;border-radius:0}.tabs .active{color:var(--accent);box-shadow:inset 0 -3px var(--accent)}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.tabs a{display:inline-block;padding:12px 16px;text-decoration:none}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:18px 0}.metrics p{margin:0;padding:16px;border:1px solid #dce3e9;border-radius:8px;background:#f6f9fc}.metrics b{display:block;margin-top:6px;font-size:20px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:#edf2f6;white-space:nowrap;font-weight:600}td.notes{min-width:260px}tr:last-child td{border-bottom:0}td img{border-radius:5px}pre{font-size:12px;max-height:650px;overflow:auto;background:#edf2f6;padding:18px;border-radius:7px}code{overflow-wrap:anywhere}dl{display:grid;grid-template-columns:minmax(150px,1fr) 3fr;gap:8px}dd{margin:0;overflow-wrap:anywhere}.counts{display:flex;flex-wrap:wrap;gap:20px;margin:18px 0}.counts span{color:#5c7081}.counts b{display:block;font-size:24px;color:#172b41}.confirmation{border-color:#d18c99}.skip{position:absolute;top:-100px}.skip:focus{top:5px;background:#fff;padding:12px;z-index:10}@media(max-width:650px){.brand span{display:none}main{padding:25px 14px}.card{padding:16px}.section-heading{align-items:flex-start;flex-wrap:wrap}dl{grid-template-columns:1fr}dd{margin-bottom:10px}.actions>*{flex:1}}.table-scroll{max-height:680px}.table-scroll th{position:sticky;top:0;z-index:1}.table-scroll td{min-width:100px}.table-scroll td:first-child{min-width:50px}.table-scroll td.notes{min-width:300px;max-width:420px}.table-scroll td pre{min-width:240px;max-height:300px}.portfolio-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.portfolio-metric,.portfolio-result{padding:10px 14px;min-height:90px;border-radius:8px;box-sizing:border-box}.portfolio-metric span,.portfolio-result span{display:block;font-size:.85rem}.portfolio-metric strong,.portfolio-result strong{display:block;font-size:1.45rem;margin-top:6px}.portfolio-metric small,.portfolio-result small{display:block;font-size:.75rem;line-height:1.35;margin-top:5px}.portfolio-result{border-left:4px solid currentColor}.portfolio-result.positive{color:#166534;background:#dcfce7}.portfolio-result.negative{color:#991b1b;background:#fee2e2}.portfolio-result.neutral{color:#475569;background:#f1f5f9}.configured-capital{margin-top:24px;padding-left:0}.portfolio-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.portfolio-actions .primary{background:#ff4b4b;border-color:#ff4b4b;color:#fff}.selected-opportunities{width:100%;border-collapse:collapse}.selected-opportunities th,.selected-opportunities td{padding:10px 8px;text-align:left;white-space:nowrap}.selected-opportunities td .filters{flex-wrap:nowrap;margin:0}@media(max-width:700px){.portfolio-metrics,.portfolio-actions{grid-template-columns:1fr}}.portfolio-plan-cards{display:flex;gap:16px;overflow-x:auto;align-items:stretch}.portfolio-plan-cards article{flex:0 0 min(620px,90%)}.portfolio-plan-cards h4{display:flex;gap:12px;align-items:center}.portfolio-plan-cards button{width:100%}.portfolio-plan-cards .plan-used{border-color:#86efac;background:#f0fdf4}.position-form-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border:0;padding:0}.position-form-fields>label:first-child,.position-form-fields>.check{grid-column:1/-1}.position-form-fields>button{grid-column:1/-1}@media(max-width:700px){.position-form-fields{grid-template-columns:1fr}}hub-portfolio-detail button.primary{background:#ff4b4b;border-color:#ff4b4b;color:#fff}hub-portfolio-detail .portfolio-heading h2{font-size:2rem;font-weight:700}hub-portfolio-detail h3{font-size:1.4rem;font-weight:600}.portfolio-plan-cards{max-height:430px;border:1px solid #d1d5db;border-radius:8px;padding:14px;gap:32px;overflow:auto;background:#fff}.portfolio-plan-cards .eligible-plan{flex:0 0 620px;max-width:100%;margin:0}.portfolio-plan-cards .eligible-plan>p{font-size:.8rem;margin:0 0 16px}.portfolio-plan-cards .eligible-plan>button{width:100%;margin:0;font-size:.85rem}
