/* Product inventory uses the documentation site's existing Oatmeal palette. */
body { font-family: ui-sans-serif, system-ui, -apple-system, sans-serif; }
header.site .wrap-wide { display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.8rem;padding-bottom:.8rem; }
header.site .product-nav { display:flex;align-items:center;gap:.15rem;flex-wrap:nowrap; }
.product-nav > a,.guide-menu > summary { min-height:44px;display:inline-flex;align-items:center;justify-content:center; }
.product-nav .nav-home { width:44px;padding:0;flex-shrink:0; }
.product-nav [aria-current="page"],.guide-menu .guides-current { background:var(--haze);color:var(--ink); }
.guide-menu { position:relative; }
.guide-menu > summary { gap:.45rem;cursor:pointer;font-size:.92rem;font-weight:600;color:var(--mocha);padding:.45rem .8rem;border-radius:999px;list-style:none; }
.guide-menu > summary::-webkit-details-marker { display:none; }
.guide-menu > summary::after { content:"";width:.4rem;height:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:.15rem;margin-top:-.2rem; }
.guide-menu[open] > summary::after { transform:rotate(225deg);margin-top:.2rem; }
.guide-menu > summary:hover,.guide-menu[open] > summary { background:var(--haze);color:var(--ink); }
.guide-panel { position:absolute;right:0;top:calc(100% + .5rem);width:38rem;max-width:calc(100vw - 3rem);max-height:calc(100vh - 8rem);max-height:calc(100dvh - 8rem);overflow:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;padding:1.2rem;background:var(--paper);border:1px solid var(--taupe);border-radius:16px;box-shadow:var(--shadow-lg);z-index:60; }
.guide-menu:not([open]) > .guide-panel { display:none; }
.guide-group { min-width:0; }
.guide-group h2 { font:650 .7rem/1.5 ui-sans-serif,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--mocha);margin:0 .65rem .5rem; }
.guide-group a { display:flex;align-items:center;min-height:44px;font-size:.87rem;padding:.6rem .65rem;border-radius:8px;line-height:1.4;overflow-wrap:anywhere; }
@media print { header.site { display:none; } }
.product-main { padding-top:3rem;padding-bottom:4rem; }
.product-hero { display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;align-items:center;padding:2rem 0 4rem; }
.product-hero h1 { font-size:clamp(2.8rem,6vw,5rem);letter-spacing:-.04em; }
.product-hero .lede,.page-intro .lede { margin:1.5rem 0; }
.summary-card { background:var(--ink);color:var(--cream);border-radius:24px;padding:2.5rem;box-shadow:var(--shadow-lg); }
.summary-card h2 { color:var(--cream);font-size:2.4rem;margin-bottom:1.3rem; }
.summary-card .eyebrow { color:#d8c5a6; }
.summary-card p { line-height:1.9; }
.summary-card small { color:#dad9d2; }
.metrics { display:flex;flex-wrap:wrap;gap:1.5rem;margin:1.8rem 0; }
.metrics div { display:flex;flex-direction:column; }
.metrics strong { font-size:2rem;line-height:1.3;font-weight:600; }
.metrics span { font-size:.8rem; }
.notice { background:var(--paper);border-left:4px solid var(--teal);padding:1.3rem 1.6rem;border-radius:0 12px 12px 0;font-size:.93rem;line-height:1.7;margin:1.5rem 0; }
.product-section { margin-top:4rem; }
.product-section > p { max-width:55rem;margin:1rem 0;color:var(--mocha); }
.product-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.7rem; }
.product-grid article { background:var(--paper);border:1px solid var(--fog);border-radius:16px;padding:1.8rem; }
.product-grid h3 { font-size:1.2rem;margin:.6rem 0; }
.product-grid p { color:var(--mocha);line-height:1.7;font-size:.95rem; }
.product-grid a { color:var(--ink); }
.step { color:var(--clay);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:650; }
.page-intro { max-width:58rem;margin:1rem 0 3rem; }
.page-intro h1 { font-size:clamp(2.5rem,6vw,4.6rem);letter-spacing:-.035em; }
.phase-list { margin-top:3rem;display:grid;gap:1.2rem; }
.phase { background:var(--paper);border-radius:16px;padding:2rem;display:grid;grid-template-columns:1fr 1fr;column-gap:3rem;scroll-margin-top:8rem; }
.phase .step { grid-column:1/-1; }
.phase h2 { font-size:1.7rem;margin:.6rem 0 1rem; }
.phase > p { grid-column:1; color:var(--mocha); }
.acceptance { grid-column:2;grid-row:2/4;border-left:1px solid var(--fog);padding-left:2rem;align-self:center;font-size:.9rem; }
.acceptance p { margin-top:.5rem;color:var(--mocha); }
.filters { display:flex;align-items:end;gap:1rem;flex-wrap:wrap;margin:1.6rem 0; }
.filters label { display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600; }
.filters input,.filters select { font:inherit;font-weight:400;padding:.8rem;border:1px solid var(--taupe);border-radius:8px;background:var(--paper);color:var(--ink);max-width:100%; }
.filters input { width:23rem; }
.filters span { padding:.8rem 0;font-size:.85rem; }
.table-scroll { overflow:auto;border:1px solid var(--fog);border-radius:12px;background:var(--paper); }
table { width:100%;border-collapse:collapse;font-size:.87rem; }
caption { padding:1rem;text-align:left;color:var(--mocha);font-size:.8rem; }
th,td { padding:1rem;text-align:left;vertical-align:top;border-top:1px solid var(--fog); }
thead th { background:var(--ink);color:white;font-weight:600; }
thead a { color:white; }
tbody th { min-width:13rem;font-weight:600; }
td a { color:var(--ink); }
small { display:block;font-size:.75rem;font-weight:400; }
th small { margin-bottom:.4rem;color:var(--mocha); }
.status { display:inline-block;background:var(--haze);padding:.3rem .6rem;border-radius:5px;white-space:nowrap; }
.matrix { min-width:190rem; }
.matrix th,.matrix td { min-width:10rem; }
.matrix td:nth-child(2) { min-width:22rem;max-width:22rem; }
.matrix tbody th { position:sticky;left:0;background:var(--paper);z-index:1;box-shadow:2px 0 0 var(--fog);min-width:15rem; }
.matrix .rupert-cell { background:#eef4ee; }
.rupert-cell small { margin:.4rem 0; }
.matrix-scroll { max-height:75vh; }
.matrix thead th { position:sticky;top:0;z-index:2; }
.matrix thead th:first-child { left:0;z-index:3; }
.legend { font-size:.88rem;line-height:1.8;max-width:65rem; }
.skip { position:absolute;left:-9999px; }
.skip:focus { position:fixed;left:1rem;top:1rem;z-index:100;background:white;padding:1rem; }
[hidden] { display:none !important; }
:focus-visible { outline:3px solid var(--teal);outline-offset:3px; }
@media(max-width:800px) {
 header.site .wrap-wide { flex-direction:column;align-items:flex-start; }
 header.site { position:static; }
 header.site .product-nav { width:100%;justify-content:space-between;gap:0; }
 header.site .product-nav > a { font-size:.8rem;padding:.4rem .55rem; }
 header.site .product-nav > .nav-home { padding:0; }
 .guide-menu > summary { font-size:.8rem;padding:.4rem .55rem; }
 .guide-panel { width:34rem;max-height:calc(100vh - 10rem);max-height:calc(100dvh - 10rem); }

 .product-main { padding-top:1.5rem; }
 .product-hero { grid-template-columns:1fr;gap:2rem;padding:1rem 0 2rem; }
 .product-grid { grid-template-columns:1fr; }
 .phase { grid-template-columns:1fr;padding:1.5rem; }
 .acceptance { grid-column:1;grid-row:auto;border-left:0;border-top:1px solid var(--fog);padding:1rem 0 0;margin-top:1rem; }
 .filters input { width:100%; }
 .filters label { max-width:100%; }
 .summary-card { padding:2rem; }
}
.runbook { max-width:60rem; }
.runbook h2 { margin:3rem 0 1rem; }
.runbook p { margin:1rem 0;line-height:1.8; }
.runbook pre { padding:1.3rem;background:var(--ink);color:white;border-radius:12px;overflow:auto; }
.runbook code { font-size:.85em; }

@media(max-width:480px) {
 header.site .wrap-wide { padding-left:1rem;padding-right:1rem;gap:.35rem; }
 .guide-panel { grid-template-columns:1fr;width:calc(100vw - 2rem);max-width:calc(100vw - 2rem);gap:1rem;padding:1rem; }
}
