/* SOURCE: contractspec@17053b80, exact owning components recorded in source_platform_v16.py.
   TODO(monorepo): remove these scoped display ports and import the canonical product
   components and their semantic tokens. Container breakpoints replace viewport ones. */
@font-face{font-family:SourcePlatformInter;src:url('/assets/portfolio/source-studio/tellshift-inter.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
.spv-frame{container-type:inline-size;isolation:isolate;max-width:100%;min-width:0;overflow:hidden;border:1px solid #dce2e8;background:#f8fafc;color:#17202d;text-align:left;font:14px/1.55 SourcePlatformInter,Inter,ui-sans-serif,system-ui,sans-serif}.spv-frame *{box-sizing:border-box}.spv-frame :is(h3,h4,h5,p){max-width:none;margin:0;color:inherit;font-family:inherit}.spv-frame h3{font-size:25px;font-weight:650;line-height:1.2;letter-spacing:-.025em}.spv-frame h4{font-size:16px;line-height:1.4;font-weight:650}.spv-frame h5{font-size:13px;font-weight:650}.spv-frame p{font-size:13px;line-height:1.55}.spv-frame [hidden]{display:none!important}.spv-frame button{font:inherit;cursor:pointer;color:inherit}.spv-frame button:focus-visible,.spv-frame a:focus-visible{outline:3px solid #8aafff;outline-offset:3px}.spv-frame a{font-size:12px;text-decoration:underline;color:inherit}.spv-frame small{font-size:10px;line-height:1.5}.spv-caption{padding:14px 18px!important;border-top:1px solid currentColor;opacity:.7;font-size:10px!important;line-height:1.6!important}.spv-chip{display:inline-flex;align-items:center;border:1px solid #d7dee6;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:500;background:#eef2f7;line-height:1.4}.spv-chip.warning{color:#91621c;background:#fff4d9;border-color:#e9d7af}.spv-chip.success{color:#246249;background:#e6f7ed;border-color:#add6bd}.spv-chip-row{display:flex;gap:6px;flex-wrap:wrap}.spv-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.spv-field{display:grid;grid-template-columns:minmax(70px,.6fr) minmax(0,1.4fr);gap:16px;border-bottom:1px solid #dce2e8;padding:10px 0}.spv-field>span{font-size:11px;opacity:.65}.spv-field>strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.spv-mono{font-family:ui-monospace,monospace!important}
/* Source OSINT console background, radii, nav and master/detail geometry. */
.spv-osint{background:radial-gradient(circle at top right,rgba(54,78,138,.35),transparent 38rem),#0b1020;color:#f7f8fc}.spv-osint>header{padding:24px 20px 12px}.spv-osint>header p{opacity:.68;margin-top:12px}.spv-osint-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 20px 20px}.spv-osint-nav h4{font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.72;margin-bottom:6px}.spv-osint-nav-items{display:flex;gap:6px;flex-wrap:wrap}.spv-osint-nav-items span{font-size:10px;border:1px solid rgba(148,163,184,.25);padding:5px 8px;border-radius:6px;opacity:.65}.spv-osint-nav-items .is-active{opacity:1;background:#28406c;border-color:#8fa7d2}.spv-osint-command{display:grid;gap:16px;padding:12px 20px 28px}.spv-osint-command h4{font-size:19px}.spv-osint-command p{opacity:.7}.spv-osint-banner,.spv-osint-detail{border:1px solid rgba(148,163,184,.35);border-radius:14px;background:rgba(15,23,42,.68);padding:16px}.spv-osint-master{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1.7fr);gap:16px}.spv-osint-selected{align-self:start;display:grid;gap:3px;border:1px solid #7188b9;border-radius:8px;padding:14px;background:#1e2e4b;font-size:12px}.spv-osint-selected span{font-size:10px;opacity:.7}.spv-osint-detail{display:grid;gap:12px;align-content:start}.spv-osint-detail .spv-chip{justify-self:start}.spv-osint-detail .spv-field{border-color:rgba(148,163,184,.2)}.spv-osint .spv-caption{border-color:#28364f}
/* BillingLandingWorkspace and QuoteCard, shared semantic design-system composition. */
.spv-osint .spv-chip:not(.warning):not(.success){color:#e0eaf5;background:#1e2e4b;border-color:#7188b9}
.spv-billing{padding:24px;background:#f8fafc;color:#152131;display:grid;gap:20px}.spv-billing>header p{margin-top:10px;opacity:.65}.spv-billing-company{padding:20px;border-radius:16px;border:1px solid #d8e1eb;background:#eef3f9;display:grid;gap:14px}.spv-billing-company>strong{font-size:13px}.spv-billing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.spv-billing-grid article{display:grid;gap:10px;align-content:start;padding:20px;border:1px solid #dce2e8;border-radius:16px;background:#fff;box-shadow:0 1px 2px #11182707}.spv-billing-grid p{font-size:12px;opacity:.65}.spv-billing-icon{display:flex;justify-content:space-between;align-items:center}.spv-billing-icon>span:first-child{padding:9px 12px;background:#eef2f6;border-radius:12px;font-size:20px}.spv-billing-icon>span:last-child{color:#8591a2}.spv-billing .spv-caption{padding-inline:0!important}.spv-quote{padding:20px;background:white;border-radius:12px;border:1px solid #dce2e8;display:grid;gap:20px}.spv-quote-lines{padding:16px;background:#f2f5f8;border-radius:12px;display:grid;gap:10px}.spv-quote-lines>div:not(.spv-field){display:flex;justify-content:space-between;gap:20px;font-size:12px}.spv-quote-lines>div strong{white-space:nowrap;font-weight:500}.spv-quote-lines hr{border:0;border-top:1px solid #dce2e8;width:100%}.spv-quote-lines .spv-field{padding:3px 0;border:0}
/* Finance Ops CashAgingScreen, WorkflowWorkspace, SelectableRow and DetailPanel. */
.spv-finance{padding:20px;display:grid;gap:16px;background:#f8fafc}.spv-finance header{display:grid;gap:10px}.spv-finance header>small{color:#68788e;letter-spacing:.05em}.spv-finance-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.spv-finance-metrics>div{min-width:0;background:#edf1f5;border:1px solid #dce2e8;border-radius:6px;padding:12px;display:grid;gap:5px}.spv-finance-metrics small{text-transform:uppercase;color:#66758a}.spv-finance-metrics strong{font-size:13px;font-weight:600}.spv-finance-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px}.spv-finance-list{min-width:0;display:grid;align-content:start;gap:6px}.spv-finance-list>h4{font-size:10px;text-transform:uppercase;color:#6b7684;margin-bottom:5px}.spv-finance-list>button,.spv-row-static{display:flex;justify-content:space-between;align-items:center;min-width:0;gap:10px;padding:10px 12px;background:white;border:1px solid #d4dce7;border-radius:7px;text-align:left}.spv-finance-list>button[aria-pressed=true]{background:#e5edf8;border-color:#829dc2}.spv-finance-list>button>span,.spv-row-static>span{display:grid;min-width:0;gap:3px}.spv-finance-list strong{font-size:12px}.spv-finance-list small{color:#758296;white-space:normal}.spv-finance-list b{font-weight:500;font-size:11px;white-space:nowrap}.spv-finance-detail{min-width:0;padding:16px;background:white;border:1px solid #dce2e8;border-radius:7px}.spv-finance-detail h4{font-size:18px;margin:4px 0 10px}.spv-finance-detail section>small{color:#758296}.spv-review-controls{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.spv-review-controls button{padding:7px 9px;border:1px solid #c9d4e3;border-radius:6px;background:#f4f7fa;font-size:10px}.spv-review-controls button:nth-child(2){background:#344e72;color:white;border-color:#344e72}.spv-finance .spv-caption{padding-inline:0!important}
/* Deliberately documentary: these owning packages do not supply a public app visual. */
.spv-code-view{background:#101b2b;color:#e0eaf5;padding:24px;display:grid;gap:18px}.spv-code-heading{display:grid;gap:9px}.spv-code-heading small{color:#91a9c2;letter-spacing:.09em}.spv-code-heading p{color:#adbed0}.spv-code-view pre{margin:0;padding:18px;max-height:470px;overflow:auto;border:1px solid #31445b;background:#0c1421;border-radius:8px;white-space:pre;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}.spv-code-view code{font:inherit;color:#b7d5e8;background:none}.spv-code-view a{justify-self:start}.spv-metrics-scope{padding:20px 24px;display:grid;gap:10px;background:#edf1f6;color:#21354b}.spv-metrics-scope p{font-size:12px}.spv-source-doc{padding:24px;display:grid;gap:16px;background:#f5f8f7;color:#173439}.spv-source-doc>small{letter-spacing:.1em;color:#698488}.spv-table-scroll{max-width:100%;overflow:auto;border:1px solid #ccd9d8;border-radius:8px}.spv-source-doc table{border-collapse:collapse;font-size:10px;min-width:550px;width:100%;table-layout:auto;background:white}.spv-source-doc caption{text-align:left;background:#e5eeec;padding:10px;font-size:10px}.spv-source-doc th,.spv-source-doc td{padding:10px;border-bottom:1px solid #dce5e4;text-align:left;line-height:1.5}.spv-source-doc thead th{font-size:9px;text-transform:uppercase;letter-spacing:.03em;background:#eff4f3;white-space:nowrap}.spv-source-doc .spv-caption{padding-inline:0!important}
@container (max-width:600px){.spv-osint-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.spv-osint-master,.spv-finance-workspace{grid-template-columns:1fr}.spv-finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.spv-billing-grid{grid-template-columns:1fr}.spv-billing,.spv-finance,.spv-code-view,.spv-source-doc{padding:16px}.spv-frame h3{font-size:22px}.spv-field{grid-template-columns:70px minmax(0,1fr);gap:10px}.spv-quote{padding:14px}.spv-quote-lines>div:not(.spv-field){display:grid;gap:5px}.spv-osint-nav{padding-inline:16px}.spv-osint>header{padding-inline:16px}.spv-osint-command{padding-inline:16px}}
@container (max-width:360px){.spv-osint-nav{grid-template-columns:1fr}.spv-osint-nav-items{gap:4px}.spv-finance-list>button{flex-wrap:wrap}.spv-finance-metrics strong{font-size:12px}}
