@import url("https://fonts.googleapis.com/css2?family=Fraunces:wght@300;500;700&family=Space+Grotesk:wght@300;500;700&display=swap");:root{color-scheme:light;--ink:#0c1520;--muted:#5f6b7a;--paper:#f7f4ef;--sun:#f2c14e;--reef:#1b998b;--edge:#101820;--accent:#f0544f}*{box-sizing:border-box}body{margin:0;font-family:Space Grotesk,Helvetica Neue,Helvetica,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,rgba(242,193,78,.25),transparent 45%),radial-gradient(circle at 80% 20%,rgba(27,153,139,.2),transparent 50%),linear-gradient(160deg,#fef9f1,#f7f4ef 50%,#f2efe9);min-height:100vh}main{padding:48px 24px 96px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px}h1{font-size:clamp(2.2rem,3vw,3.2rem);margin:0 0 8px;letter-spacing:-.02em}h1,h2{font-family:Fraunces,Times New Roman,serif}h2{margin:0 0 16px;font-size:1.5rem}p{margin:0;color:var(--muted);line-height:1.5}section{background:#fff;border:1px solid rgba(12,21,32,.08);border-radius:18px;padding:24px;box-shadow:0 24px 60px rgba(12,21,32,.08)}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:18px;gap:18px}label{display:block;font-size:.82rem;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}input,select,textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(12,21,32,.15);font-size:.95rem;font-family:inherit}textarea{min-height:90px;resize:vertical}.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(27,153,139,.12);color:var(--reef);font-size:.85rem;font-weight:600}.allocations{margin-top:24px;display:grid;grid-gap:16px;gap:16px}.allocation-row{border:1px dashed rgba(12,21,32,.2);border-radius:14px;padding:16px;background:#faf8f4}.row-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:14px;gap:14px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}button{border:none;border-radius:999px;padding:12px 18px;font-weight:600;cursor:pointer;font-family:inherit}button.primary{background:var(--edge);color:#fff}button.secondary{background:rgba(12,21,32,.08);color:var(--edge)}button.ghost{background:transparent;color:var(--accent);border:1px solid rgba(240,84,79,.3)}.summary-card{margin-top:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.summary-item{padding:16px;border-radius:14px;background:rgba(27,153,139,.08)}.footer-note{margin-top:12px;font-size:.9rem;color:var(--muted)}.validation-errors{background:rgba(240,84,79,.08)!important;border:2px solid var(--accent)!important}.validation-errors h2{color:var(--accent)}.validation-errors ul{margin:0;padding-left:20px}.validation-errors li{color:var(--accent);margin-bottom:8px;font-weight:500}.nav-button{display:inline-block;padding:12px 18px;background:rgba(12,21,32,.08);color:var(--edge);border-radius:999px;text-decoration:none;font-weight:600;font-size:.9rem}.nav-button:hover{background:rgba(12,21,32,.15)}.back-link{color:var(--reef);text-decoration:none;font-weight:600}.info-banner{background:rgba(242,193,78,.15)!important;border:1px solid rgba(242,193,78,.4)!important}.empty-state{padding:40px 20px}.trades-list{display:flex;flex-direction:column;gap:16px}.trade-card{padding:20px;background:#faf9f7}.trade-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.trade-date{font-size:.85rem;color:var(--muted)}.trade-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;margin-bottom:16px}.detail-row{display:flex;flex-direction:column;gap:4px}.detail-row.full-width{grid-column:1/-1}.detail-row label{margin-bottom:0}.detail-row span{font-weight:500;color:var(--ink)}.trade-actions{padding-top:16px}.posted-label{color:var(--reef);font-weight:600}.trade-card{border:1px solid rgba(12,21,32,.1);border-radius:14px;padding:0;background:#fff;overflow:hidden;transition:box-shadow .2s ease}.trade-card.expanded{box-shadow:0 8px 24px rgba(12,21,32,.12)}.trade-header.clickable{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;background:#faf9f7;border-bottom:1px solid rgba(12,21,32,.06);transition:background .2s ease}.trade-header.clickable:hover{background:#f5f3ef}.trade-header-left{display:flex;align-items:center;gap:12px}.trade-symbol{font-weight:600;font-size:1rem;color:var(--ink)}.trade-counterparty{color:var(--muted);font-size:.9rem}.trade-header-right{display:flex;align-items:center;gap:16px}.trade-principal{font-weight:600;color:var(--ink)}.trade-rate{color:var(--reef);font-weight:500}.trade-expand-icon{color:var(--muted);font-size:.75rem;margin-left:8px}.trade-summary-row{display:flex;flex-wrap:wrap;gap:12px;padding:12px 20px;background:hsla(38,33%,95%,.5);border-bottom:1px solid rgba(12,21,32,.06)}.summary-chip{display:flex;flex-direction:column;gap:2px;padding:8px 14px;background:hsla(0,0%,100%,.8);border-radius:8px;min-width:100px}.summary-chip.highlight{background:rgba(242,193,78,.15);border:1px solid rgba(242,193,78,.3)}.chip-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.chip-value{font-weight:600;font-size:.95rem;color:var(--ink)}.summary-chip.highlight .chip-value{color:#8a6d1a}.trade-expanded-details{padding:20px;animation:slideDown .2s ease-out}.trade-details-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:24px}.detail-item{gap:4px}.detail-item.full-width{grid-column:1/-1}.detail-item label{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:0}.detail-item span{font-weight:500;color:var(--ink)}.detail-item .interest-value{color:var(--reef)}.allocations-section{margin-top:20px;padding-top:20px;border-top:1px solid rgba(12,21,32,.08)}.allocations-section h4{font-family:Fraunces,serif;font-size:1rem;margin:0 0 12px;color:var(--ink)}.allocations-table{border-collapse:collapse;font-size:.9rem}.allocations-table td,.allocations-table th{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(12,21,32,.08)}.allocations-table th{background:rgba(12,21,32,.03);font-size:.75rem;letter-spacing:.03em;font-weight:500}.allocations-table tbody tr:hover{background:rgba(27,153,139,.03)}.allocations-table .interest-cell{color:var(--reef);font-weight:500}.allocations-table .maturity-cell{color:#8a6d1a;font-weight:600}.allocations-table tfoot{background:rgba(12,21,32,.02)}.allocations-table tfoot td{border-bottom:none;border-top:2px solid rgba(12,21,32,.1)}.trade-actions{padding:16px 20px;border-top:1px solid rgba(12,21,32,.08);display:flex;gap:12px;align-items:center}@media (max-width:768px){.trade-header.clickable{flex-direction:column;align-items:flex-start;gap:12px}.trade-header-right{width:100%;justify-content:space-between}.allocations-table{font-size:.8rem}.allocations-table td,.allocations-table th{padding:8px 6px}}.tabs-container{display:flex;gap:4px;margin-bottom:24px;border-bottom:2px solid rgba(12,21,32,.1);padding-bottom:0}.tab-button{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;font-size:.95rem;font-weight:500;color:var(--muted);cursor:pointer;transition:all .2s ease}.tab-button:hover{color:var(--ink);background:rgba(12,21,32,.03)}.tab-button.active{color:var(--reef);border-bottom-color:var(--reef);font-weight:600}.collateral-section{margin-top:20px;padding-top:20px;border-top:1px solid rgba(12,21,32,.08)}.collateral-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:rgba(12,21,32,.03);border-radius:8px;cursor:pointer;transition:background .2s ease}.collateral-header:hover{background:rgba(12,21,32,.06)}.collateral-header h4{margin:0;font-family:Fraunces,serif;font-size:.95rem;color:var(--ink)}.collateral-header .expand-icon{color:var(--muted);font-size:.75rem}.collateral-content{padding:16px 0;animation:slideDown .2s ease-out}.collateral-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:20px;padding:16px;background:hsla(38,33%,95%,.5);border-radius:8px}.collateral-summary-item{display:flex;flex-direction:column;gap:4px}.collateral-summary-item label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:0}.collateral-summary-item span{font-weight:600;font-size:1rem;color:var(--ink)}.collateral-summary-item .value-ok{color:#22c55e}.collateral-summary-item .value-short{color:#ef4444}.collateral-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:12px}.collateral-table td,.collateral-table th{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(12,21,32,.08)}.collateral-table th{background:rgba(12,21,32,.03);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:500}.collateral-table tbody tr:hover{background:rgba(27,153,139,.03)}.collateral-table .haircut-value{color:var(--reef);font-weight:600}.status-badge{padding:2px 8px;border-radius:4px}.status-received{background:rgba(59,130,246,.15);color:#2563eb}.status-active{background:rgba(34,197,94,.15);color:#16a34a}.status-returned{background:rgba(156,163,175,.15);color:#6b7280}.status-substituted{background:rgba(249,115,22,.15);color:#ea580c}.no-collateral-message{padding:24px;text-align:center;background:rgba(239,68,68,.05);border:1px dashed rgba(239,68,68,.3);border-radius:8px}.no-collateral-message p{margin:0 0 12px;color:#b91c1c}.attach-collateral-link{color:var(--reef);font-weight:500;text-decoration:none}.attach-collateral-link:hover{text-decoration:underline}.summary-chip.collateral-ok{background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3)}.summary-chip.collateral-ok .chip-value{color:#16a34a}.summary-chip.collateral-short{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3)}.summary-chip.collateral-short .chip-value{color:#dc2626}.disabled-approval{opacity:.5;cursor:not-allowed}.collateral-warning{color:#dc2626;font-size:.85rem;font-weight:500}.attach-collateral-section{background:#fff;border-radius:14px;padding:24px;margin-bottom:24px;border:1px solid rgba(12,21,32,.1)}.attach-collateral-section h2{margin-top:0}.trade-collateral-summary{margin-top:20px}.summary-grid{grid-gap:12px;gap:12px;margin-bottom:20px}.summary-box{background:hsla(38,33%,95%,.5);padding:12px;border-radius:8px}.summary-box label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:4px}.summary-box span{font-weight:600;color:var(--ink)}.maturity-collateral-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;padding:20px;background:linear-gradient(135deg,hsla(38,33%,95%,.8),hsla(38,33%,95%,.4));border-radius:12px;margin-bottom:20px}.comparison-box{display:flex;flex-direction:column;gap:4px}.comparison-box label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.comparison-box .value{font-size:1.1rem;font-weight:700;color:var(--ink)}.comparison-box .value.interest{color:var(--reef)}.comparison-box.highlight-maturity{background:rgba(242,193,78,.2);padding:12px;border-radius:8px;border:1px solid rgba(242,193,78,.4)}.comparison-box.highlight-maturity .value{color:#8a6d1a}.comparison-box.highlight-sufficient{background:rgba(34,197,94,.15);padding:12px;border-radius:8px;border:1px solid rgba(34,197,94,.3)}.comparison-box.highlight-sufficient .value{color:#16a34a}.comparison-box.highlight-insufficient{background:rgba(239,68,68,.15);padding:12px;border-radius:8px;border:1px solid rgba(239,68,68,.3)}.comparison-box.highlight-insufficient .value{color:#dc2626}.comparison-box.coverage-ok .value{color:#16a34a}.comparison-box.coverage-short .value{color:#dc2626}.coverage-badge{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:4px;font-size:.7rem}.coverage-badge.ok{background:rgba(34,197,94,.2);color:#16a34a}.coverage-badge.short{background:rgba(239,68,68,.2);color:#dc2626}.existing-collateral{margin-top:20px;padding:16px;background:rgba(12,21,32,.02);border-radius:8px}.existing-collateral h4{margin:0 0 12px;font-family:Fraunces,serif;font-size:.95rem}.collateral-list-table{width:100%;border-collapse:collapse;font-size:.85rem}.collateral-list-table td,.collateral-list-table th{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(12,21,32,.08)}.collateral-list-table th{background:rgba(12,21,32,.03);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:500}.collateral-list-table .haircut-value{color:var(--reef);font-weight:600}.trade-allocations{margin-top:20px}.trade-allocations h4{margin:0 0 12px;font-family:Fraunces,serif;font-size:.95rem}.allocation-chips{display:flex;flex-wrap:wrap;gap:8px}.allocation-chip{padding:8px 16px;background:rgba(12,21,32,.05);border:1px solid rgba(12,21,32,.1);border-radius:20px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.allocation-chip:hover{background:rgba(12,21,32,.1)}.allocation-chip.selected{background:var(--reef);color:#fff;border-color:var(--reef)}.symbol-cards-list{display:flex;flex-direction:column;gap:16px}.symbol-card{background:#fff;border:1px solid rgba(12,21,32,.1);border-radius:12px;overflow:hidden;transition:all .2s ease}.symbol-card.expanded{border-color:var(--reef);box-shadow:0 4px 20px rgba(27,153,139,.15)}.symbol-card .card-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,hsla(38,33%,95%,.8),hsla(38,33%,95%,.3));cursor:pointer;gap:16px}.symbol-card .card-header:hover{background:linear-gradient(135deg,#f7f4ef,hsla(38,33%,95%,.5))}.card-header-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card-header-left .symbol-name{font-family:Fraunces,serif;font-weight:600;font-size:1.1rem;color:var(--ink)}.card-header-left .counterparty-name{color:var(--muted);font-size:.9rem}.card-header-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.value-chip{display:flex;flex-direction:column;align-items:flex-end;padding:6px 12px;background:rgba(12,21,32,.04);border-radius:8px;min-width:120px}.value-chip .label{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.value-chip .value{font-weight:600;font-size:.9rem;color:var(--ink)}.value-chip.highlight{background:rgba(242,193,78,.2);border:1px solid rgba(242,193,78,.4)}.value-chip.highlight .value{color:#8a6d1a}.value-chip.sufficient{background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3)}.value-chip.sufficient .value{color:#16a34a}.value-chip.insufficient{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3)}.value-chip.insufficient .value{color:#dc2626}.card-header .expand-icon{color:var(--muted);font-size:.8rem;transition:transform .2s ease}.symbol-card.expanded .card-header .expand-icon{transform:rotate(180deg)}.card-summary{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px;background:rgba(12,21,32,.02);border-bottom:1px solid rgba(12,21,32,.06)}.card-summary .summary-item{display:flex;flex-direction:column;padding:6px 12px;background:#fff;border-radius:6px;min-width:90px}.card-summary .summary-item .label{font-size:.6rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.card-summary .summary-item span:last-child{font-weight:500;color:var(--ink)}.card-summary .coverage-ok span:last-child{color:#16a34a}.card-summary .coverage-short span:last-child{color:#dc2626}.card-expanded{padding:20px;animation:slideDown .2s ease-out}.detail-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(12,21,32,.08)}.detail-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.detail-section h4{font-family:Fraunces,serif;font-size:.95rem;margin:0 0 12px;color:var(--ink)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}.detail-grid>div{display:flex;flex-direction:column}.detail-grid label{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:4px}.detail-grid span{font-weight:500;color:var(--ink)}.detail-grid span.interest{color:var(--reef)}.detail-grid .full-width{grid-column:1/-1}.allocation-list{display:flex;flex-direction:column;gap:8px}.allocation-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:rgba(12,21,32,.03);border-radius:8px;gap:12px}.allocation-info{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.allocation-info .portfolio-name{font-weight:600;color:var(--ink)}.allocation-info .principal{color:var(--muted)}.allocation-info .collateral-value{font-size:.85rem;color:#dc2626}.allocation-info .collateral-value.has-collateral{color:#16a34a}.collateral-mini-table{width:100%;border-collapse:collapse;font-size:.85rem}.collateral-mini-table td,.collateral-mini-table th{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(12,21,32,.08)}.collateral-mini-table th{background:rgba(12,21,32,.03);font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:500}.collateral-mini-table .haircut-value{color:var(--reef);font-weight:600}.mini-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase}.mini-badge.received{background:rgba(59,130,246,.15);color:#2563eb}.mini-badge.active{background:rgba(34,197,94,.15);color:#16a34a}.search-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.search-box{flex:1 1;min-width:250px}.search-box input{padding:12px 16px;border:1px solid rgba(12,21,32,.1);border-radius:8px;font-size:.95rem;background:#fff}.search-box input:focus{border-color:var(--reef);box-shadow:0 0 0 3px rgba(27,153,139,.1)}.filter-group{display:flex;gap:12px;flex-wrap:wrap}.filter-group select{padding:10px 14px;border:1px solid rgba(12,21,32,.1);border-radius:8px;background:#fff;font-size:.9rem;min-width:160px}.tab-content{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.section-description{color:var(--muted);margin-bottom:20px}.empty-state-card{padding:48px;text-align:center;background:rgba(12,21,32,.02);border:1px dashed rgba(12,21,32,.15);border-radius:12px;color:var(--muted)}.collateral-form-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:700px;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);z-index:1000;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}.collateral-form-modal .form-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(12,21,32,.1)}.collateral-form-modal .form-header h3{margin:0;font-family:Fraunces,serif}.collateral-form-modal .close-btn{width:32px;height:32px;border:none;background:rgba(12,21,32,.05);border-radius:8px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.collateral-form-modal .close-btn:hover{background:rgba(12,21,32,.1)}.collateral-form-modal .form-content{padding:24px}.collateral-form-modal .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:24px}.collateral-form-modal .form-grid>div{display:flex;flex-direction:column}.collateral-form-modal .form-grid label{font-size:.75rem;font-weight:500;color:var(--muted);margin-bottom:6px}.collateral-form-modal .form-grid input,.collateral-form-modal .form-grid select{padding:10px 12px;border:1px solid rgba(12,21,32,.15);border-radius:8px;font-size:.95rem}.collateral-form-modal .form-actions{display:flex;gap:12px;justify-content:flex-end}.collateral-form-modal .form-trade-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px;background:rgba(27,153,139,.06);border:1px solid rgba(27,153,139,.15);border-radius:10px}.collateral-form-modal .summary-chip{display:flex;flex-direction:column;gap:4px}.collateral-form-modal .summary-chip .label{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.collateral-form-modal .summary-chip span:last-child{font-weight:600;color:var(--ink)}.collateral-form-modal .form-grid .full-width{grid-column:1/-1}.attach-btn-inline{padding:8px 16px;background:var(--reef);color:#fff;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s ease;margin-left:auto}.attach-btn-inline:hover{background:#158a7d;transform:translateY(-1px);box-shadow:0 4px 12px rgba(27,153,139,.25)}.inline-collateral-form{background:linear-gradient(135deg,rgba(27,153,139,.04),rgba(27,153,139,.02));border:1px solid rgba(27,153,139,.2);border-radius:12px;padding:20px;margin-top:16px}.form-header-inline{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.form-header-inline h4{margin:0;font-family:Fraunces,serif;color:var(--ink)}.ncmv-summary{display:flex;align-items:center;gap:12px;font-size:.9rem}.ncmv-summary .label{color:var(--muted)}.ncmv-summary .repo-value{font-weight:600;color:var(--ink)}.ncmv-summary .ncmv-total{font-weight:700;padding:4px 12px;border-radius:6px}.ncmv-summary .ncmv-total.sufficient{background:rgba(34,197,94,.15);color:#16a34a}.ncmv-summary .ncmv-total.insufficient{background:rgba(239,68,68,.15);color:#dc2626}.collateral-entry-row{background:#fff;border:1px solid rgba(12,21,32,.1);border-radius:10px;padding:16px;margin-bottom:12px}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.entry-number{font-weight:600;color:var(--reef);font-size:.85rem}.remove-entry-btn{width:24px;height:24px;border:none;background:rgba(239,68,68,.1);color:#dc2626;border-radius:6px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-entry-btn:hover{background:rgba(239,68,68,.2)}.entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px;margin-bottom:12px}.entry-grid>div{display:flex;flex-direction:column}.entry-grid label{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:4px}.entry-grid input,.entry-grid select{padding:8px 10px;border:1px solid rgba(12,21,32,.15);border-radius:6px;font-size:.9rem}.entry-grid input:focus,.entry-grid select:focus{outline:none;border-color:var(--reef);box-shadow:0 0 0 2px rgba(27,153,139,.1)}.entry-calculated{display:flex;gap:24px;padding-top:12px;border-top:1px dashed rgba(12,21,32,.1)}.calc-item{display:flex;flex-direction:column}.calc-item .label{font-size:.6rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.calc-item span:last-child{font-weight:600;color:var(--ink)}.calc-item.highlight span:last-child{color:var(--reef);font-size:1.1rem}.form-actions-inline{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid rgba(12,21,32,.1)}.right-actions{display:flex;gap:12px}.ncmv-value{color:var(--reef);font-weight:600}.collateral-mini-table .totals-row{background:rgba(27,153,139,.05);border-top:2px solid var(--reef)}.collateral-mini-table .totals-row td{padding-top:10px;padding-bottom:10px}.substituting-row{background:rgba(242,193,78,.15)!important}.substitution-form-row td{padding:0!important;background:transparent!important}.inline-substitution-form{background:linear-gradient(135deg,rgba(242,193,78,.08),rgba(240,84,79,.04));border:2px solid rgba(242,193,78,.4);border-radius:12px;margin:12px 0;overflow:hidden}.sub-form-header{display:flex;align-items:center;gap:16px;padding:16px 20px;background:rgba(242,193,78,.1);border-bottom:1px solid rgba(242,193,78,.2)}.sub-form-header .sub-icon{font-size:24px}.sub-form-header .sub-title h4{margin:0 0 4px;font-family:Fraunces,serif;font-size:1rem;color:var(--ink)}.sub-form-header .sub-title p{margin:0;font-size:.85rem;color:var(--muted)}.sub-form-header .sub-title p strong{color:var(--ink)}.sub-form-header .close-btn{margin-left:auto;background:transparent;border:none;font-size:24px;cursor:pointer;color:var(--muted);transition:color .2s ease}.sub-form-header .close-btn:hover{color:var(--accent)}.sub-form-body{padding:20px}.sub-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.sub-form-grid label{font-size:.75rem;text-transform:uppercase;letter-spacing:.02em;color:var(--muted);margin-bottom:4px}.sub-form-grid input,.sub-form-grid select{font-size:.9rem;padding:8px 12px}.sub-form-calculated{background:hsla(0,0%,100%,.6);border-radius:10px;padding:16px;margin-bottom:16px}.calc-comparison{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(12,21,32,.1)}.calc-side{text-align:center;padding:12px 24px;border-radius:8px;background:rgba(12,21,32,.03)}.calc-side.original{opacity:.7}.calc-side.new.ok{background:rgba(27,153,139,.1);border:1px solid var(--reef)}.calc-side.new.warning{background:rgba(240,84,79,.1);border:1px solid var(--accent)}.calc-side.target{background:rgba(12,21,32,.05);border:1px dashed rgba(12,21,32,.3)}.calc-side .calc-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:4px}.calc-side .calc-value{font-size:1.2rem;font-weight:600;color:var(--ink)}.calc-arrow{font-size:1.5rem;color:var(--sun)}.calc-details{display:flex;justify-content:center;gap:32px}.calc-details .calc-item{display:flex;flex-direction:column;align-items:center;gap:4px}.calc-details .calc-item .label{font-size:.7rem;color:var(--muted);text-transform:uppercase}.calc-details .calc-item .positive{color:var(--reef);font-weight:600}.calc-details .calc-item .negative{color:var(--accent);font-weight:600}.ncmv-warning{text-align:center;margin-top:12px;padding:8px 16px;background:rgba(240,84,79,.1);border:1px solid var(--accent);border-radius:6px;color:var(--accent);font-size:.85rem}.sub-form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid rgba(12,21,32,.1)}.status-substituted{background:rgba(242,193,78,.15);color:#b17d0a;border:1px solid rgba(242,193,78,.4)}.analytics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin-bottom:32px}.analytics-card{border:1px solid rgba(12,21,32,.1);border-radius:12px;display:flex;flex-direction:column;gap:8px}.analytics-card .analytics-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.analytics-card .analytics-value{font-family:Fraunces,serif;font-size:1.4rem;font-weight:600;color:var(--ink)}.analytics-card.ok{border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.05)}.analytics-card.ok .analytics-value{color:#16a34a}.analytics-card.warning{border-color:rgba(245,158,11,.3);background:rgba(245,158,11,.05)}.analytics-card.warning .analytics-value{color:#d97706}.analytics-card.shortfall{border-color:rgba(239,68,68,.3);background:rgba(239,68,68,.05)}.analytics-card.shortfall .analytics-value{color:#dc2626}.analytics-card.highlight{border-color:rgba(242,193,78,.4);background:rgba(242,193,78,.1)}.analytics-card.highlight .analytics-value{color:#8a6d1a}.exceptions-section{margin-bottom:32px}.exceptions-section h3{color:#dc2626}.all-trades-section h3,.exceptions-section h3{font-family:Fraunces,serif;margin-bottom:16px}.status-badge.status-draft{background:rgba(156,163,175,.15);color:#6b7280}.status-badge.status-pending_approval{background:rgba(245,158,11,.15);color:#d97706}.status-badge.status-approved{background:rgba(34,197,94,.15);color:#16a34a}.status-badge.status-posted{background:rgba(59,130,246,.15);color:#2563eb}.status-badge.status-active{background:rgba(27,153,139,.15);color:var(--reef)}button.small{padding:6px 12px;font-size:.8rem}.error-banner{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3)}.error-banner p{color:#dc2626}.badge-draft{background:rgba(95,107,122,.15);color:var(--muted)}.badge-pending{background:rgba(242,193,78,.2);color:#b8860b}.badge-approved{background:rgba(27,153,139,.15);color:var(--reef)}.badge-posted{background:rgba(27,153,139,.25);color:#0d6e63}.badge-bo{background:rgba(240,84,79,.12);color:var(--accent)}.success-banner{background:rgba(27,153,139,.1)!important;border:1px solid rgba(27,153,139,.3)!important}.self-trade-notice{color:var(--accent);font-weight:500;font-size:.9rem}.no-permission-notice{color:var(--muted);font-size:.9rem}.approved-label{color:var(--reef);font-weight:500}.logout-btn{background:transparent;color:var(--muted);border:1px solid rgba(12,21,32,.2);padding:8px 14px;font-size:.85rem;margin-left:12px}.logout-btn:hover{background:rgba(12,21,32,.05);color:var(--ink)}@media (max-width:600px){header{flex-direction:column;align-items:flex-start}main{padding:32px 16px 80px}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:420px;background:#fff;border-radius:24px;padding:40px 32px;box-shadow:0 4px 6px rgba(12,21,32,.04),0 24px 60px rgba(12,21,32,.12);border:1px solid rgba(12,21,32,.06)}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:linear-gradient(135deg,var(--reef),#148f82);border-radius:18px;color:#fff;margin-bottom:20px;box-shadow:0 8px 24px rgba(27,153,139,.35)}.auth-header h1{font-size:1.75rem;margin-bottom:8px}.auth-header p{font-size:.95rem}.auth-tabs{display:flex;gap:4px;padding:4px;background:rgba(12,21,32,.05);border-radius:12px;margin-bottom:24px}.auth-tabs button{flex:1 1;padding:10px 16px;font-size:.9rem;background:transparent;color:var(--muted);border-radius:8px;transition:all .2s ease}.auth-tabs button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(12,21,32,.08)}.auth-form{gap:18px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px}.form-group input{padding:14px 16px;border-radius:12px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:var(--reef);box-shadow:0 0 0 3px rgba(27,153,139,.15)}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:48px}.password-toggle{position:absolute;right:12px;background:none;border:none;padding:4px;cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center;border-radius:6px;transition:color .2s ease,background .2s ease}.password-toggle:hover{color:var(--ink);background:rgba(12,21,32,.06)}.auth-error{background:rgba(240,84,79,.1);border:1px solid rgba(240,84,79,.2);border-radius:10px;color:var(--accent)}.auth-error,.auth-message{padding:12px 16px;font-size:.9rem}.auth-message{background:rgba(27,153,139,.1);border:1px solid rgba(27,153,139,.2);border-radius:10px;color:var(--reef)}.auth-submit{padding:16px 24px;font-size:1rem;background:linear-gradient(135deg,var(--edge),#1a2633);color:#fff;border-radius:12px;margin-top:8px;transition:transform .2s ease,box-shadow .2s ease}.auth-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px rgba(16,24,32,.25)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:24px;text-align:center;padding-top:20px;border-top:1px solid rgba(12,21,32,.08)}.auth-footer p{font-size:.9rem}.auth-footer button{background:none;padding:0;color:var(--reef);font-weight:600;text-decoration:underline;text-underline-offset:2px}.form-card{background:rgba(27,153,139,.04);border:1px solid rgba(27,153,139,.15);border-radius:14px;padding:24px}.form-card h3{font-family:Fraunces,Times New Roman,serif;font-size:1.2rem;margin:0 0 20px;color:var(--ink)}.summary-card{display:flex;flex-wrap:wrap;gap:24px;padding:20px 24px;background:linear-gradient(135deg,rgba(242,193,78,.08),rgba(27,153,139,.08));border-radius:14px;border:1px solid rgba(12,21,32,.08)}.summary-item{display:flex;flex-direction:column;gap:4px;min-width:120px}.summary-item label{font-size:.75rem;margin-bottom:0}.summary-item div{font-size:1.25rem;font-weight:600;color:var(--ink)}.allocation-row.selected{border-color:var(--reef);box-shadow:0 0 0 2px rgba(27,153,139,.2)}.detail-panel{animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.app-layout{display:flex;min-height:100vh}.sidebar-nav{position:fixed;top:0;left:0;height:100vh;width:260px;background:linear-gradient(180deg,#0c1520,#162232);padding:24px 0;display:flex;flex-direction:column;z-index:100;transition:width .3s ease;box-shadow:4px 0 24px rgba(12,21,32,.15);overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05)}.sidebar-nav::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.15);border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.25)}.main-content{margin-left:260px;flex:1 1;min-height:100vh;transition:margin-left .3s ease}.sidebar-collapse-btn{position:absolute;top:20px;right:-14px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--reef);border:2px solid #0c1520;border-radius:50%;color:#fff;cursor:pointer;z-index:101;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.3)}.sidebar-collapse-btn:hover{background:#158a7d;transform:scale(1.1)}.sidebar-collapse-btn svg{width:14px;height:14px}.sidebar-nav.collapsed{width:72px}.sidebar-nav.collapsed .brand-text,.sidebar-nav.collapsed .nav-label,.sidebar-nav.collapsed .nav-section-title{opacity:0;visibility:hidden;width:0;overflow:hidden}.sidebar-nav.collapsed .nav-brand{padding:0 14px 24px;justify-content:center}.sidebar-nav.collapsed .nav-brand .brand-icon{width:40px;height:40px}.sidebar-nav.collapsed .nav-section{padding:0 12px}.sidebar-nav.collapsed .nav-item{padding:12px;justify-content:center;border-radius:12px}.sidebar-nav.collapsed .nav-icon{margin-right:0}.sidebar-nav.collapsed .sidebar-collapse-btn{right:-14px}.app-layout.sidebar-collapsed .main-content{margin-left:72px}.sidebar-nav.collapsed .nav-item[title]:hover:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:12px;padding:8px 12px;background:#0c1520;color:#fff;font-size:.85rem;white-space:nowrap;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);z-index:200}.sidebar-nav.collapsed .nav-item{position:relative}.nav-brand{gap:14px;padding:0 20px 24px;margin-bottom:8px;border-bottom:1px solid hsla(0,0%,100%,.08)}.brand-icon,.nav-brand{display:flex;align-items:center}.brand-icon{width:44px;height:44px;justify-content:center;background:linear-gradient(135deg,var(--reef),#148f82);border-radius:12px;color:#fff;box-shadow:0 4px 12px rgba(27,153,139,.35)}.brand-text{display:flex;flex-direction:column}.brand-name{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;color:#fff;letter-spacing:-.01em}.brand-tagline{font-size:.7rem;color:hsla(0,0%,100%,.5);text-transform:uppercase;letter-spacing:.05em}.nav-section{padding:16px 12px 8px}.nav-section:first-of-type{flex:1 1}.nav-section-title{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:hsla(0,0%,100%,.35);padding:0 12px;margin-bottom:12px}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:10px;color:hsla(0,0%,100%,.7);text-decoration:none;font-weight:500;font-size:.92rem;transition:all .2s ease}.nav-item:hover{background:hsla(0,0%,100%,.08);color:#fff}.nav-item.active{background:linear-gradient(135deg,rgba(27,153,139,.25),rgba(27,153,139,.15));color:#fff;box-shadow:inset 0 0 0 1px rgba(27,153,139,.4)}.nav-item.active .nav-icon{color:var(--reef)}.nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-label{flex:1 1}.nav-footer{padding:16px 12px;border-top:1px solid hsla(0,0%,100%,.08)}.nav-signout{display:flex;align-items:center;gap:14px;width:100%;padding:12px 16px;border-radius:10px;background:rgba(240,84,79,.1);color:rgba(240,84,79,.8);font-weight:500;font-size:.92rem;transition:all .2s ease;border:none;cursor:pointer}.nav-signout:hover{background:rgba(240,84,79,.2);color:var(--accent)}.nav-item.nav-logout{width:100%;background:transparent;cursor:pointer;margin-top:8px;border:none;border-top:1px solid hsla(0,0%,100%,.08);padding-top:16px;border-radius:0 0 10px 10px}.nav-item.nav-logout:hover{background:rgba(240,84,79,.15);color:var(--accent)}.nav-item.nav-logout:hover .nav-icon{color:var(--accent)}.mobile-menu-toggle{display:none;position:fixed;top:16px;left:16px;z-index:200;width:44px;height:44px;background:var(--edge);color:#fff;border:none;border-radius:12px;padding:0;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px rgba(12,21,32,.2)}.nav-overlay{display:none}@media (max-width:900px){.mobile-menu-toggle{display:flex}.sidebar-collapse-btn{display:none}.sidebar-nav{transform:translateX(-100%);transition:transform .3s ease}.sidebar-nav,.sidebar-nav.collapsed{width:260px!important}.sidebar-nav.collapsed .brand-text,.sidebar-nav.collapsed .nav-label,.sidebar-nav.collapsed .nav-section-title{opacity:1;visibility:visible;width:auto}.sidebar-nav.open{transform:translateX(0)}.app-layout.sidebar-collapsed .main-content,.main-content{margin-left:0!important}.nav-overlay{display:block;position:fixed;inset:0;background:rgba(12,21,32,.5);z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}main{padding-top:80px}}.page-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.page-header h1{margin-bottom:0}.repo-details-section{background:#fff;border:1px solid rgba(12,21,32,.08);border-radius:18px;padding:24px;box-shadow:0 24px 60px rgba(12,21,32,.08)}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.section-header h2{margin:8px 0 0}.section-header .badge{margin-bottom:4px}.inline-summary{margin-top:0;margin-bottom:24px;background:linear-gradient(135deg,hsla(38,33%,95%,.9),hsla(40,26%,93%,.9));border:1px solid rgba(12,21,32,.06)}.inline-summary .summary-item{padding:12px 16px;background:hsla(0,0%,100%,.7);border-radius:10px}.inline-summary .summary-item label{font-size:.7rem}.inline-summary .summary-item div{font-size:1.1rem}.symbol-field{grid-column:1/-1;background:rgba(27,153,139,.04);padding:16px;border-radius:12px;margin-top:8px}.symbol-field label{color:var(--reef);font-weight:500}.symbol-field input{background:hsla(0,0%,100%,.9)}.symbol-field input.auto-generated{background:rgba(27,153,139,.08);border-color:var(--reef);font-weight:500}.symbol-field input:-moz-read-only{cursor:default}.symbol-field input:read-only{cursor:default}input[type=number]:placeholder-shown{color:var(--muted)}input[type=number]::placeholder{color:var(--muted);opacity:.6}.disabled-input{background:rgba(12,21,32,.04);color:var(--muted);cursor:not-allowed;border-color:rgba(12,21,32,.08)}.computed-value{background:rgba(27,153,139,.08);color:var(--reef);font-weight:600;cursor:default;border-color:rgba(27,153,139,.2);text-align:right}.computed-value.highlight-value{background:rgba(242,193,78,.15);color:#9a7b1e;border-color:rgba(242,193,78,.4)}.summary-item.highlight{background:rgba(242,193,78,.2);border:1px solid rgba(242,193,78,.4)}.summary-item.highlight div{color:#8a6d1a}.header-nav-links{display:none}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.loading-spinner{width:48px;height:48px;border:3px solid rgba(27,153,139,.2);border-top:3px solid var(--reef);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.loading-screen p{font-size:1rem;color:var(--muted)}.rollover-page{max-width:1400px;margin:0 auto}.rollover-page .page-header{margin-bottom:32px}.error-banner,.success-banner{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-radius:12px;margin-bottom:24px}.success-banner{background:rgba(27,153,139,.12);border:1px solid rgba(27,153,139,.3);color:var(--reef)}.error-banner{background:rgba(240,84,79,.12);border:1px solid rgba(240,84,79,.3);color:var(--accent)}.rollover-cards-section{margin-bottom:32px}.rollover-cards-section h2{margin-bottom:24px}.rollover-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:20px;gap:20px}.empty-state{text-align:center;padding:48px;color:var(--muted)}.rollover-card{background:#fff;border:1px solid rgba(12,21,32,.08);border-radius:16px;overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px rgba(12,21,32,.06)}.rollover-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(12,21,32,.12);border-color:var(--reef)}.rollover-card.maturing-today{border-left:4px solid var(--accent)}.rollover-card.maturing-tomorrow{border-left:4px solid var(--sun)}.rollover-card-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,rgba(27,153,139,.08),rgba(242,193,78,.05));border-bottom:1px solid rgba(12,21,32,.05)}.symbol-badge{font-family:Space Grotesk,monospace;font-size:.85rem;font-weight:600;padding:6px 12px;background:var(--reef);color:#fff;border-radius:8px;letter-spacing:.02em}.days-badge{font-size:.8rem;font-weight:500;padding:4px 10px;background:rgba(12,21,32,.06);color:var(--muted);border-radius:6px}.days-badge.urgent{background:rgba(240,84,79,.15);color:var(--accent);font-weight:600}.rollover-card-body{padding:20px}.counterparty-name{font-size:1.1rem;font-weight:600;color:var(--ink);margin-bottom:16px}.trade-details-grid{grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-item .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.detail-item .value{font-size:.95rem;font-weight:500;color:var(--ink)}.maturity-row{margin-bottom:12px;padding:10px 12px;background:rgba(12,21,32,.03);border-radius:8px}.maturity-row .dates{display:flex;align-items:center;justify-content:center;gap:12px;font-size:.9rem;color:var(--muted)}.maturity-row .arrow{color:var(--reef);font-weight:600}.maturity-value-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:rgba(242,193,78,.12);border-radius:10px;margin-bottom:12px}.maturity-value-row .label{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:#8a6d1a}.maturity-value-row .value.highlight{font-size:1.1rem;font-weight:700;color:#6b5415}.clients-count{font-size:.82rem;color:var(--muted);text-align:center}.rollover-card-footer{padding:16px 20px;background:rgba(12,21,32,.02);border-top:1px solid rgba(12,21,32,.05)}.rollover-btn{width:100%;padding:12px 20px;background:linear-gradient(135deg,var(--reef) 0,#158a7d 100%);color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.rollover-btn:hover{background:linear-gradient(135deg,#158a7d 0,var(--reef) 100%);transform:translateY(-1px)}.rollover-editor{background:#fff;border:1px solid rgba(12,21,32,.08);border-radius:18px;padding:32px;box-shadow:0 24px 60px rgba(12,21,32,.1)}.editor-header{display:flex;align-items:center;gap:20px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid rgba(12,21,32,.08)}.editor-header>div{flex:1 1}.editor-header .badge{margin-bottom:8px}.editor-header>button.primary{flex-shrink:0}.back-btn{padding:10px 16px;background:rgba(12,21,32,.06);border:none;border-radius:8px;font-size:.9rem;color:var(--muted);cursor:pointer;transition:all .2s ease}.back-btn:hover{background:rgba(12,21,32,.1);color:var(--ink)}.editor-header h2{margin:0;font-size:1.4rem}.client-allocations,.new-trade-params,.original-trade-summary,.rollover-summary{margin-bottom:28px;padding:24px;background:rgba(12,21,32,.02);border-radius:14px;border:1px solid rgba(12,21,32,.05)}.client-allocations h3,.new-trade-params h3,.original-trade-summary h3,.rollover-summary h3{margin:0 0 20px;font-size:1.1rem;font-family:Fraunces,serif;color:var(--ink)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:16px;gap:16px}.summary-item{padding:12px 16px;background:#fff;border-radius:10px;border:1px solid rgba(12,21,32,.06)}.summary-item .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:4px}.summary-item .value{font-size:1rem;font-weight:600;color:var(--ink)}.params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:18px;gap:18px}.param-field label{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:6px}.param-field input,.param-field select{width:100%;padding:10px 14px;border:1px solid rgba(12,21,32,.12);border-radius:10px;font-size:.95rem;background:#fff}.param-field input.disabled{background:rgba(12,21,32,.04);color:var(--muted);cursor:not-allowed}.param-field .help-text{display:block;font-size:.72rem;color:var(--muted);margin-top:4px}.allocations-table-container{overflow-x:auto;margin:0 -24px;padding:0 24px}.allocations-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.88rem}.allocations-table th{text-align:left;padding:12px 14px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:rgba(12,21,32,.04);border-bottom:1px solid rgba(12,21,32,.08)}.allocations-table th:first-child{border-radius:8px 0 0 0}.allocations-table th:last-child{border-radius:0 8px 0 0}.allocations-table td{padding:14px;border-bottom:1px solid rgba(12,21,32,.05);background:#fff}.allocations-table tr:last-child td{border-bottom:none}.allocations-table tr:last-child td:first-child{border-radius:0 0 0 8px}.allocations-table tr:last-child td:last-child{border-radius:0 0 8px 0}.allocations-table tr.excluded td{background:rgba(12,21,32,.02);color:var(--muted);opacity:.6}.allocations-table td.number{text-align:right;font-family:Space Grotesk,monospace}.allocations-table td.number.highlight{color:var(--reef);font-weight:600}.allocations-table .client-name{font-weight:600;color:var(--ink)}.allocations-table .client-code{font-size:.75rem;color:var(--muted)}.allocations-table select{width:100%;padding:8px 10px;font-size:.85rem;border-radius:6px}.allocations-table .amount-input{width:140px;padding:8px 10px;font-size:.85rem;text-align:right}.badge-small{display:inline-block;padding:4px 8px;background:rgba(27,153,139,.12);color:var(--reef);font-size:.75rem;font-weight:500;border-radius:6px}.no-collateral{color:var(--muted)}.collateral-count{text-align:center}.rollover-summary .summary-item.highlight{background:rgba(27,153,139,.1);border-color:rgba(27,153,139,.3)}.rollover-summary .summary-item.highlight .value{color:var(--reef)}.editor-actions{display:flex;justify-content:flex-end;gap:16px;padding-top:24px;border-top:1px solid rgba(12,21,32,.08)}.editor-actions button{padding:14px 32px;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s ease}.editor-actions button.secondary{background:rgba(12,21,32,.06);border:1px solid rgba(12,21,32,.1);color:var(--ink)}.editor-actions button.secondary:hover{background:rgba(12,21,32,.1)}.editor-actions button.primary{background:linear-gradient(135deg,var(--reef) 0,#158a7d 100%);border:none;color:#fff}.editor-actions button.primary:hover:not(:disabled){background:linear-gradient(135deg,#158a7d 0,var(--reef) 100%);transform:translateY(-1px)}.editor-actions button:disabled{opacity:.5;cursor:not-allowed}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px}.error-section{text-align:center;padding:48px}.card-actions{display:flex;gap:12px}.close-btn{flex:1 1;padding:12px 16px;background:rgba(12,21,32,.06);color:var(--muted);border:1px solid rgba(12,21,32,.1);border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:rgba(240,84,79,.1);border-color:var(--accent);color:var(--accent)}.card-actions .rollover-btn{flex:2 1}.editor-actions button.danger{background:linear-gradient(135deg,var(--accent) 0,#d43f3a 100%);border:none;color:#fff}.editor-actions button.danger:hover:not(:disabled){background:linear-gradient(135deg,#d43f3a 0,var(--accent) 100%);transform:translateY(-1px)}.close-confirmation,.warning-banner{margin-bottom:24px}.warning-banner{display:flex;gap:16px;padding:20px 24px;background:rgba(242,193,78,.15);border:1px solid rgba(242,193,78,.4);border-radius:12px}.warning-banner .warning-icon{font-size:1.5rem}.warning-banner strong{display:block;color:#8a6d1a;margin-bottom:4px}.warning-banner p{color:#6b5415;font-size:.9rem}.original-trade-summary h4{margin:24px 0 16px;font-size:.95rem;font-weight:600;color:var(--ink)}.close-allocations-list{display:flex;flex-direction:column;gap:12px}.close-allocation-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff;border:1px solid rgba(12,21,32,.08);border-radius:10px}.close-allocation-item .client-info{display:flex;flex-direction:column;gap:2px}.close-allocation-item .client-info .name{font-weight:600;color:var(--ink)}.close-allocation-item .client-info .code{font-size:.8rem;color:var(--muted)}.close-allocation-item .amounts{display:flex;gap:24px;font-size:.88rem;color:var(--muted)}.close-allocation-item .amounts .maturity{font-weight:600;color:var(--reef)}.allocations-table .principal-input{width:110px;padding:6px 8px;font-size:.8rem;text-align:right;border:1px solid rgba(12,21,32,.12);border-radius:6px;font-family:JetBrains Mono,monospace}.allocations-table .principal-input:focus{border-color:var(--reef);outline:none}.allocations-table .principal-input:disabled{background:rgba(12,21,32,.03);color:var(--muted)}.original-trade-reference{display:flex;align-items:center;gap:12px;padding:12px 16px;background:rgba(12,21,32,.03);border:1px solid rgba(12,21,32,.08);border-radius:8px;margin-bottom:24px;font-size:.85rem}.original-trade-reference .ref-label{color:var(--muted)}.original-trade-reference .ref-symbol{font-family:JetBrains Mono,monospace;font-weight:600;color:var(--ink);background:rgba(12,21,32,.06);padding:4px 8px;border-radius:4px}.original-trade-reference .ref-details{color:var(--muted)}.allocations-table .interest-select{width:100px;padding:6px 8px;font-size:.75rem;border:1px solid rgba(12,21,32,.12);border-radius:6px;background:#fff;cursor:pointer}.allocations-table .interest-select:focus{border-color:var(--reef);outline:none}.allocations-table .interest-select:disabled{background:rgba(12,21,32,.03);color:var(--muted);cursor:not-allowed}.allocations-table .capital-input{width:120px;padding:8px 10px;font-size:.85rem;text-align:right;border:1px solid rgba(12,21,32,.12);border-radius:6px}.allocations-table .capital-input:focus{border-color:var(--reef);outline:none}.summary-item .value.positive{color:var(--reef)}.summary-item .value.negative{color:var(--accent)}.maturity-page{max-width:1600px;margin:0 auto}.maturity-trades-list{display:flex;flex-direction:column;gap:0}.maturity-trade-block{border-bottom:1px solid rgba(12,21,32,.08)}.maturity-trade-block:last-child{border-bottom:none}.maturity-trade-block.expanded{background:rgba(27,153,139,.03);border-radius:16px;border:2px solid rgba(27,153,139,.2);margin:12px 0}.maturity-card-horizontal{background:#fff;transition:all .2s ease}.maturity-card-horizontal .card-row-main{display:grid;grid-template-columns:200px 160px 140px 180px 100px 1fr;align-items:center;grid-gap:16px;gap:16px;padding:14px 16px}.maturity-trade-block.expanded .maturity-card-horizontal{background:transparent;border-bottom:1px solid rgba(12,21,32,.08);margin-bottom:0}.maturity-trade-block.expanded .maturity-card-horizontal .card-row-main{padding:14px 16px}.maturity-card-horizontal:hover{background:rgba(12,21,32,.02)}.maturity-card-horizontal.today{border-left:4px solid var(--accent)}.maturity-card-horizontal.today .card-row-main{padding-left:12px}.maturity-card-horizontal.tomorrow{border-left:4px solid var(--sun)}.maturity-card-horizontal.tomorrow .card-row-main{padding-left:12px}.maturity-card-horizontal .card-section{display:flex;flex-direction:column;gap:2px}.maturity-card-horizontal .card-section .label{font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.maturity-card-horizontal .card-section .value{font-size:.85rem;font-weight:500;color:var(--ink);white-space:nowrap}.maturity-card-horizontal .card-section .value.highlight-value{color:#6b5415;font-weight:700;background:rgba(242,193,78,.2);padding:2px 8px;border-radius:4px;margin:-2px -8px}.maturity-card-horizontal .symbol-section{flex-direction:row;align-items:center;gap:10px}.maturity-card-horizontal .symbol-section .symbol{font-family:Space Grotesk,monospace;font-size:.78rem;font-weight:600;padding:5px 10px;background:var(--reef);color:#fff;border-radius:6px;max-width:160px;overflow:hidden;text-overflow:ellipsis}.maturity-card-horizontal .symbol-section .maturity-badge{font-size:.68rem;font-weight:500;padding:3px 6px;background:rgba(12,21,32,.06);color:var(--muted);border-radius:4px}.maturity-card-horizontal .symbol-section .maturity-badge.urgent{background:rgba(240,84,79,.15);color:var(--accent);font-weight:600}.maturity-card-horizontal .card-section.compact{display:flex;flex-direction:column;gap:2px;min-width:70px}.maturity-card-horizontal .card-section.compact .compact-info{font-size:.75rem;color:var(--muted);white-space:nowrap}.maturity-card-horizontal .actions-section{flex-direction:row;align-items:center;justify-content:flex-end;gap:8px}.actions-dropdown{position:relative}.actions-trigger{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(12,21,32,.12);border-radius:8px;cursor:pointer;color:var(--muted);transition:all .2s ease}.actions-trigger:hover{background:rgba(12,21,32,.05);color:var(--ink)}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:6px;background:#fff;border:1px solid rgba(12,21,32,.1);border-radius:10px;box-shadow:0 8px 24px rgba(12,21,32,.15);z-index:100;min-width:160px;display:none;overflow:hidden}.dropdown-menu.show{display:block;animation:dropdownFade .15s ease}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu button{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;background:transparent;border:none;font-size:.88rem;color:var(--ink);cursor:pointer;transition:all .15s ease}.dropdown-menu button:hover{background:rgba(12,21,32,.04)}.dropdown-menu button:first-child:hover{color:var(--accent)}.dropdown-menu button:last-child:hover{color:var(--reef)}.dropdown-menu button svg{flex-shrink:0}.action-buttons-row{display:flex;align-items:center;gap:8px}.action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.8rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.action-btn.close-action{background:rgba(242,193,78,.15);border:1px solid rgba(242,193,78,.4);color:#8a6d1a}.action-btn.close-action:hover{background:rgba(242,193,78,.25);border-color:rgba(242,193,78,.6)}.action-btn.rollover-action{background:rgba(27,153,139,.1);border:1px solid rgba(27,153,139,.3);color:var(--reef)}.action-btn.rollover-action:hover{background:rgba(27,153,139,.2);border-color:rgba(27,153,139,.5)}.action-btn svg{flex-shrink:0}.maturity-card-horizontal .actions-section .cancel-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.1rem;background:rgba(12,21,32,.06);border:1px solid rgba(12,21,32,.1);border-radius:8px;color:var(--muted);cursor:pointer;transition:all .2s ease}.maturity-card-horizontal .actions-section .cancel-btn:hover{background:rgba(240,84,79,.1);border-color:var(--accent);color:var(--accent)}.action-panel{padding:24px}.action-panel.close-panel{background:rgba(242,193,78,.08);border-radius:0 0 14px 14px}.action-panel.close-panel .panel-header h3{margin:0 0 8px;font-size:1.1rem;color:#8a6d1a}.action-panel.close-panel .panel-header p{margin:0;font-size:.9rem;color:#6b5415}.action-panel .panel-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.action-panel .panel-actions button{padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease}.action-panel .panel-actions button.secondary{background:#fff;border:1px solid rgba(12,21,32,.15);color:var(--ink)}.action-panel .panel-actions button.danger{background:var(--accent);border:none;color:#fff}.action-panel .panel-actions button.danger:hover:not(:disabled){background:#d43f3a}.action-panel.rollover-panel{background:#fff;border-radius:0 0 14px 14px}.action-panel.rollover-panel .new-repo-section{border:1px solid rgba(12,21,32,.08);border-radius:16px;padding:28px;background:linear-gradient(180deg,rgba(27,153,139,.03),#fff)}.action-panel.rollover-panel .section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(12,21,32,.08)}.action-panel.rollover-panel .section-header h2{margin:8px 0 0;font-size:1.3rem}.symbol-section-form{margin:24px 0;padding:20px;background:rgba(27,153,139,.06);border-radius:12px;border:1px solid rgba(27,153,139,.15)}.symbol-section-form label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--reef);font-weight:600;margin-bottom:8px}.symbol-section-form .symbol-input{width:100%;padding:14px 18px;font-family:Space Grotesk,monospace;font-size:1.1rem;font-weight:600;border:none;border-radius:10px;background:#fff;color:var(--ink)}.symbol-section-form .symbol-input.pending{color:var(--muted);font-style:italic;font-weight:400}.symbol-section-form .symbol-input.generated{color:var(--reef)}.allocations-section{margin-top:24px}.allocations-section h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--ink)}.payout-notice{margin-top:20px;padding:14px 20px;background:rgba(242,193,78,.12);border:1px solid rgba(242,193,78,.3);border-radius:10px;font-size:.9rem;color:#8a6d1a}.payout-notice strong{color:#6b5415}.warning-notice{margin-top:20px;padding:14px 20px;background:rgba(240,84,79,.1);border:1px solid rgba(240,84,79,.3);border-radius:10px;font-size:.9rem;color:var(--accent)}.allocations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.allocations-header h3{margin:0}.add-client-row select{padding:8px 12px;font-size:.85rem;border:1px dashed var(--reef);border-radius:8px;background:rgba(27,153,139,.05);color:var(--reef);cursor:pointer;min-width:180px}.add-client-row select:hover{background:rgba(27,153,139,.1)}.add-client-row select:focus{outline:none;border-style:solid}.new-client-badge{display:inline-block;padding:4px 10px;background:rgba(27,153,139,.15);color:var(--reef);font-size:.75rem;font-weight:600;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}.allocations-table .remove-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(12,21,32,.1);border-radius:6px;color:var(--muted);font-size:1.2rem;cursor:pointer;transition:all .2s ease}.allocations-table .remove-btn:hover{background:rgba(240,84,79,.1);border-color:var(--accent);color:var(--accent)}.dashboard-page{max-width:1600px;margin:0 auto;padding:24px}.dashboard-page .page-header{margin-bottom:24px}.dashboard-page .page-header h1{font-size:1.8rem;margin-bottom:6px}.dashboard-page .page-header p{color:var(--muted);font-size:.95rem}.kpi-section{margin-bottom:24px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}@media (max-width:1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{display:flex;align-items:flex-start;gap:16px;padding:20px;background:#fff;border-radius:14px;box-shadow:0 2px 8px rgba(12,21,32,.06);transition:all .2s ease}.kpi-card:hover{box-shadow:0 4px 16px rgba(12,21,32,.1);transform:translateY(-2px)}.kpi-card.primary{background:linear-gradient(135deg,var(--reef) 0,#158a7d 100%);color:#fff}.kpi-card.primary .kpi-label,.kpi-card.primary .kpi-sub{color:hsla(0,0%,100%,.85)}.kpi-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(27,153,139,.12);border-radius:12px;color:var(--reef);flex-shrink:0}.kpi-card.primary .kpi-icon{background:hsla(0,0%,100%,.2);color:#fff}.kpi-icon.maturity{background:rgba(242,193,78,.15);color:#8a6d1a}.kpi-icon.collateral{background:rgba(100,100,200,.12);color:#5858a8}.kpi-icon.warning{background:rgba(240,84,79,.12);color:var(--accent)}.kpi-content{display:flex;flex-direction:column;gap:4px}.kpi-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.kpi-value{font-size:1.5rem;font-weight:700;color:var(--ink);line-height:1.2}.kpi-card.primary .kpi-value{color:#fff}.kpi-sub{font-size:.82rem;color:var(--muted)}.kpi-sub.positive{color:var(--reef)}.kpi-sub.negative{color:var(--accent)}.quick-stats-section{margin-bottom:24px}.quick-stats-grid{display:flex;gap:12px;flex-wrap:wrap}.quick-stat{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#fff;border-radius:10px;border:1px solid rgba(12,21,32,.08);cursor:pointer;transition:all .2s ease}.quick-stat:hover{border-color:var(--reef);background:rgba(27,153,139,.04)}.quick-stat .stat-number{font-size:1.3rem;font-weight:700;color:var(--ink)}.quick-stat .stat-label{font-size:.82rem;color:var(--muted)}.quick-stat.today{border-left:3px solid var(--accent)}.quick-stat.today .stat-number{color:var(--accent)}.quick-stat.tomorrow{border-left:3px solid var(--sun)}.quick-stat.tomorrow .stat-number{color:#8a6d1a}.quick-stat.week{border-left:3px solid #5858a8}.quick-stat.week .stat-number{color:#5858a8}.quick-stat.overdue{border-left:3px solid #c0392b;background:rgba(192,57,43,.05)}.quick-stat.overdue .stat-number{color:#c0392b}.quick-stat.sufficient{border-left:3px solid var(--reef)}.quick-stat.sufficient .stat-number{color:var(--reef)}.quick-stat.insufficient{border-left:3px solid var(--accent)}.quick-stat.insufficient .stat-number{color:var(--accent)}.analytics-section{margin-bottom:24px}.analytics-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:20px;gap:20px}@media (max-width:1000px){.analytics-grid{grid-template-columns:1fr}}.analytics-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 8px rgba(12,21,32,.06)}.analytics-card h3{font-size:.95rem;font-weight:600;color:var(--ink);margin:0 0 16px}.exposure-list{display:flex;flex-direction:column;gap:12px}.exposure-item{display:grid;grid-template-columns:1fr 100px 90px;grid-gap:12px;gap:12px;align-items:center}.exposure-info{display:flex;flex-direction:column}.exposure-name{font-size:.88rem;font-weight:500;color:var(--ink)}.exposure-count{font-size:.72rem;color:var(--muted)}.exposure-bar-container{height:8px;background:rgba(27,153,139,.1);border-radius:4px;overflow:hidden}.exposure-bar-container.portfolio{background:rgba(100,100,200,.1)}.exposure-bar{height:100%;background:var(--reef);border-radius:4px;transition:width .3s ease}.exposure-bar-container.portfolio .exposure-bar{background:#5858a8}.exposure-value{font-size:.82rem;font-weight:600;color:var(--ink);text-align:right}.status-distribution{display:flex;flex-wrap:wrap;gap:8px}.status-chip{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;background:rgba(12,21,32,.05);cursor:pointer;transition:all .2s ease}.status-chip:hover{background:rgba(12,21,32,.08)}.status-chip .status-name{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.status-chip .status-count{font-size:.9rem;font-weight:700;color:var(--ink)}.status-chip.status-approved{background:rgba(27,153,139,.1)}.status-chip.status-approved .status-name{color:var(--reef)}.status-chip.status-pending{background:rgba(242,193,78,.15)}.status-chip.status-pending .status-name{color:#8a6d1a}.filters-section{background:#fff;border-radius:14px;padding:14px 16px;margin-bottom:16px;box-shadow:0 2px 8px rgba(12,21,32,.06)}.filters-row{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;overflow-x:auto}.filters-row.secondary{margin-top:10px;padding-top:10px;border-top:1px solid rgba(12,21,32,.06)}.search-box{display:flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(12,21,32,.03);border:1px solid rgba(12,21,32,.08);border-radius:8px;min-width:180px;flex-shrink:0}.search-box svg{color:var(--muted);flex-shrink:0;width:16px;height:16px}.search-box input{border:none;background:transparent;font-size:.82rem;color:var(--ink);width:100%}.search-box input::placeholder{color:var(--muted)}.search-box input:focus{outline:none}.filters-section select{padding:8px 10px;font-size:.82rem;border:1px solid rgba(12,21,32,.12);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer;flex-shrink:0;min-width:110px;max-width:150px}.filters-section select:focus{outline:none;border-color:var(--reef)}.date-range{display:flex;align-items:center;gap:6px;flex-shrink:0}.date-range label{font-size:.75rem;color:var(--muted);font-weight:500}.date-range input{padding:6px 8px;font-size:.8rem;border:1px solid rgba(12,21,32,.12);border-radius:6px;width:120px}.sort-controls{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}.sort-controls label{font-size:.75rem;color:var(--muted);font-weight:500}.sort-order-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(12,21,32,.05);border:1px solid rgba(12,21,32,.1);border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.sort-order-btn:hover{background:rgba(12,21,32,.08)}.view-toggle{display:flex;gap:2px;background:rgba(12,21,32,.05);padding:3px;border-radius:6px;flex-shrink:0}.view-toggle button{padding:6px 10px;background:transparent;border:none;border-radius:5px;cursor:pointer;color:var(--muted);transition:all .2s ease}.view-toggle button.active{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(12,21,32,.1)}.clear-filters-btn{padding:8px 12px;font-size:.8rem;background:transparent;border:1px dashed rgba(12,21,32,.2);border-radius:6px;color:var(--muted);cursor:pointer;transition:all .2s ease;flex-shrink:0;white-space:nowrap}.clear-filters-btn:hover{border-color:var(--accent);color:var(--accent)}.results-count{font-size:.85rem;color:var(--muted);margin-bottom:16px}.trades-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:16px;gap:16px}.trade-card-dashboard{background:#fff;border-radius:14px;box-shadow:0 2px 8px rgba(12,21,32,.06);overflow:hidden;transition:all .2s ease}.trade-card-dashboard:hover{box-shadow:0 4px 16px rgba(12,21,32,.1);transform:translateY(-2px)}.trade-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:rgba(12,21,32,.02);border-bottom:1px solid rgba(12,21,32,.06)}.trade-card-header .trade-symbol{font-family:Space Grotesk,monospace;font-size:.82rem;font-weight:600;color:var(--ink)}.trade-card-body{padding:16px;display:flex;flex-direction:column;gap:12px}.trade-counterparty{font-size:.95rem;font-weight:600;color:var(--ink)}.trade-details-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.trade-details-grid .detail{display:flex;flex-direction:column}.trade-details-grid .label{font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.trade-details-grid .value{font-size:.85rem;font-weight:500;color:var(--ink)}.trade-dates{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}.trade-dates .urgent{color:var(--accent);font-weight:600}.trade-maturity{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:rgba(242,193,78,.1);border-radius:8px}.trade-maturity .label{font-size:.75rem;text-transform:uppercase;color:#8a6d1a}.trade-maturity .value.highlight{font-size:1rem;font-weight:700;color:#6b5415}.trade-collateral{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:8px}.trade-collateral.sufficient{background:rgba(27,153,139,.1)}.trade-collateral.insufficient{background:rgba(240,84,79,.1)}.trade-collateral.none{background:rgba(12,21,32,.05)}.collateral-info .label{font-size:.7rem;text-transform:uppercase;color:var(--muted)}.collateral-info .value{font-size:.9rem;font-weight:600}.trade-collateral.sufficient .collateral-info .value{color:var(--reef)}.trade-collateral.insufficient .collateral-info .value{color:var(--accent)}.coverage-badge{font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:6px}.trade-collateral.sufficient .coverage-badge{background:var(--reef);color:#fff}.trade-collateral.insufficient .coverage-badge{background:var(--accent);color:#fff}.trade-collateral.none .coverage-badge{background:rgba(12,21,32,.1);color:var(--muted)}.status-badge{display:inline-block;padding:4px 10px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:6px}.status-badge.status-draft{background:rgba(12,21,32,.08);color:var(--muted)}.status-badge.status-pending{background:rgba(242,193,78,.2);color:#8a6d1a}.status-badge.status-active,.status-badge.status-approved,.status-badge.status-posted{background:rgba(27,153,139,.15);color:var(--reef)}.status-badge.status-closed,.status-badge.status-rolled{background:rgba(100,100,200,.12);color:#5858a8}.status-badge.status-cancelled{background:rgba(240,84,79,.12);color:var(--accent)}.trades-table-section{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px rgba(12,21,32,.06)}.trades-table{width:100%;border-collapse:collapse}.trades-table th{padding:14px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:left;background:rgba(12,21,32,.02);border-bottom:1px solid rgba(12,21,32,.08)}.trades-table td{padding:14px 12px;font-size:.88rem;color:var(--ink);border-bottom:1px solid rgba(12,21,32,.05)}.trades-table tr:hover td{background:rgba(12,21,32,.02)}.trades-table tr.urgent-row td{background:rgba(240,84,79,.04)}.trades-table .symbol-cell{font-family:Space Grotesk,monospace;font-weight:600;font-size:.82rem}.trades-table .number{text-align:right;font-family:Space Grotesk,monospace}.trades-table .highlight{font-weight:600;color:#6b5415}.trades-table .urgent{color:var(--accent);font-weight:600}.trades-table .coverage.ok{color:var(--reef);font-weight:600}.trades-table .coverage.warning{color:var(--accent);font-weight:600}.trades-table .coverage.none{color:var(--muted)}.status-badge-small{display:inline-block;padding:3px 8px;font-size:.65rem;font-weight:600;text-transform:uppercase;border-radius:4px}.status-badge-small.status-draft{background:rgba(12,21,32,.08);color:var(--muted)}.status-badge-small.status-pending{background:rgba(242,193,78,.2);color:#8a6d1a}.status-badge-small.status-active,.status-badge-small.status-approved,.status-badge-small.status-posted{background:rgba(27,153,139,.15);color:var(--reef)}.status-badge-small.status-closed,.status-badge-small.status-rolled{background:rgba(100,100,200,.12);color:#5858a8}.status-badge-small.status-cancelled{background:rgba(240,84,79,.12);color:var(--accent)}.dashboard-page .empty-state{text-align:center;padding:60px 40px;background:#fff;border-radius:14px}.dashboard-page .empty-state p{color:var(--muted);margin-bottom:16px}.dashboard-page .empty-state button{padding:10px 20px;background:var(--reef);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer}.dashboard-page .error-state,.dashboard-page .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center}