:root{--ink:#111827;--ground:#f9fafb;--surface:#fff;--rule:#6b7280;--letterhead:#fff;--letterhead-ink:#111318;--chrome:#111827;--chrome-ink:#d1d5db;--chrome-rule:#1f2937;--chrome-title:#fff;--chrome-muted:#9ca3af;--chrome-accent:#2563eb;--accent:#2563eb;--good:#15803d;--warn:#b45309;--crit:#dc2626;--on-accent:#fff;--btn-secondary-bg:#f3f4f6;--badge-default-bg:#f3f4f6;--badge-default-fg:#374151;--badge-success-bg:#dcfce7;--badge-success-fg:#15803d;--badge-warning-bg:#fef3c7;--badge-warning-fg:#b45309;--badge-danger-bg:#fee2e2;--badge-danger-fg:#b91c1c;--badge-info-bg:#dbeafe;--badge-info-fg:#1d4ed8;--accent-wash:color-mix(in srgb, var(--accent) 10%, transparent);--warn-wash:color-mix(in srgb, var(--warn) 12%, transparent);--crit-wash:color-mix(in srgb, var(--crit) 10%, transparent);--hairline:color-mix(in srgb, var(--rule) 28%, transparent);--hairline-strong:color-mix(in srgb, var(--rule) 55%, transparent);--house-tint:18%;--ink-soft:color-mix(in srgb, var(--ink) 72%, transparent);--ink-faint:color-mix(in srgb, var(--ink) 45%, transparent);--font-ui:ui-sans-serif, system-ui, -apple-system, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "Segoe UI Mono", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--t-scale:1.15;--t-meta:calc(12px * var(--t-scale));--t-head:calc(12px * var(--t-scale));--t-row:calc(14px * var(--t-scale));--t-title:calc(17px * var(--t-scale));--t-hero:calc(26px * var(--t-scale));--space:8px;--stamp-w:57px}:root[data-text=s]{--t-scale:1}:root[data-text=l]{--t-scale:1.3}:root[data-text=xl]{--t-scale:1.5}@media (prefers-color-scheme:dark){:root{--house-tint:7%;--ink:#f9fafb;--ground:#111827;--surface:#1f2937;--rule:#9ca3af;--chrome:#030712;--chrome-ink:#d1d5db;--chrome-rule:#1f2937;--accent:#60a5fa;--good:#4ade80;--warn:#fbbf24;--crit:#f87171;--on-accent:#0b1220;--btn-secondary-bg:#374151;--badge-default-bg:#374151;--badge-default-fg:#e5e7eb;--badge-success-bg:#14532d;--badge-success-fg:#bbf7d0;--badge-warning-bg:#78350f;--badge-warning-fg:#fde68a;--badge-danger-bg:#7f1d1d;--badge-danger-fg:#fecaca;--badge-info-bg:#1e3a8a;--badge-info-fg:#bfdbfe}}:root[data-theme=light]{--house-tint:18%;--ink:#111827;--ground:#f9fafb;--surface:#fff;--rule:#6b7280;--chrome:#111827;--chrome-ink:#d1d5db;--chrome-rule:#1f2937;--accent:#2563eb;--good:#15803d;--warn:#b45309;--crit:#dc2626}:root[data-theme=dark]{--house-tint:7%;--ink:#f9fafb;--ground:#111827;--surface:#1f2937;--rule:#9ca3af;--chrome:#030712;--chrome-ink:#d1d5db;--chrome-rule:#1f2937;--accent:#60a5fa;--good:#4ade80;--warn:#fbbf24;--crit:#f87171;--on-accent:#0b1220;--btn-secondary-bg:#374151;--badge-default-bg:#374151;--badge-default-fg:#e5e7eb;--badge-success-bg:#14532d;--badge-success-fg:#bbf7d0;--badge-warning-bg:#78350f;--badge-warning-fg:#fde68a;--badge-danger-bg:#7f1d1d;--badge-danger-fg:#fecaca;--badge-info-bg:#1e3a8a;--badge-info-fg:#bfdbfe}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--font-ui);font-size:var(--t-row);-webkit-font-smoothing:antialiased;line-height:1.45}.fig{font-family:var(--font-mono);font-size:var(--t-row);font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}.head{font-size:var(--t-head);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.meta{font-size:var(--t-meta);color:var(--ink-soft)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.scroll-x{overflow-x:auto}.striped tbody tr:nth-child(2n){background:var(--ground)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{aside,.no-print{display:none!important}body{background:#fff}main{width:100%}}.app-shell{align-items:flex-start;min-height:100vh;display:flex}.app-rail{background:var(--chrome);width:256px;color:var(--chrome-ink);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.app-topbar,.app-scrim{display:none}@media (max-width:860px){.app-shell{flex-direction:column}.app-topbar{background:var(--chrome);width:100%;color:var(--chrome-title);z-index:40;align-items:center;gap:10px;padding:10px 14px;display:flex;position:sticky;top:0}.app-rail{z-index:50;width:min(78vw,300px);height:100dvh;transition:transform .18s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 40px #00000073}.app-rail[data-open=true]{transform:translate(0)}.app-scrim[data-open=true]{z-index:45;background:#00000073;display:block;position:fixed;inset:0}.app-main{width:100%;min-width:0}.app-main>section,.app-main>div{padding-left:14px!important;padding-right:14px!important}.app-main table{white-space:nowrap;max-width:100%;display:block;overflow-x:auto}}@media (min-width:861px){.app-rail{transform:none!important}}@media (max-width:860px){.page-header{flex-direction:column;align-items:stretch!important;gap:10px!important}.page-header>div:last-child,.page-header>div:last-child *{flex-wrap:wrap;max-width:100%}.month-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:620px){.app-main>section{padding-left:12px!important;padding-right:12px!important}.card-head{padding:12px 14px!important}.card-body:not(.card-body-flush){padding:14px!important}.linen-table thead{display:none}.linen-table,.linen-table tbody,.linen-table tr,.linen-table td{width:auto;display:block}.linen-table tr{padding:8px 2px}.linen-table td{text-align:left!important;white-space:normal!important;padding:2px 0!important}.linen-table td[data-cell=name]{font-weight:600;padding-bottom:4px!important}.linen-table td[data-label]:before{content:attr(data-label) " ";font-family:var(--font-ui);font-variant-numeric:normal;color:var(--ink-soft);margin-right:6px;font-weight:400}.linen-table td[data-label=Target]{display:none}.linen-table .onhand{flex-wrap:wrap;gap:8px!important;display:flex!important}.linen-table td[data-cell=edit]{padding-top:6px!important}.linen-table td[data-cell=edit] button{min-height:32px;padding-left:10px!important;padding-right:10px!important}}
