/* Own semantic palette. Stable type/control sizes; width follows the viewport. */
:root{--state-info:#236a98;--state-stock:#3d5269;--state-blocked:#a52d4b;--state-warning:#835b0a;--state-success:#28614d;--state-muted:#626b75;--state-denied:#63556f;--office-text:13px;--office-meta:12px;--office-control:32px}
.state-info{--tone:var(--state-info);--wash:#eaf3fa}.state-stock{--tone:var(--state-stock);--wash:#e7edf3}.state-blocked{--tone:var(--state-blocked);--wash:#fce9ed}.state-warning{--tone:var(--state-warning);--wash:#fff3d5}.state-success{--tone:var(--state-success);--wash:#eaf3ee}.state-muted{--tone:var(--state-muted);--wash:#f0f1f3}.state-denied{--tone:var(--state-denied);--wash:#eeeaf2}
.semantic-badge{display:inline-flex;align-items:center;gap:5px;color:var(--tone);background:var(--wash);border:1px solid color-mix(in srgb,var(--tone) 22%,transparent);padding:4px 6px;border-radius:3px;font-size:var(--office-meta);line-height:1.4;white-space:normal}
.semantic-note{color:var(--tone);background:var(--wash);padding:10px 14px;border-left:3px solid var(--tone);font-size:var(--office-text)}
.item-window{width:calc(100vw - 48px);max-width:none;height:calc(100vh - 48px);font-size:var(--office-text)}
.item-window.full{width:100%;height:100%;max-width:none}.item-window>header{font-size:13px;min-height:42px;padding:6px 14px;flex-shrink:0}.item-window>header button,.item-identity button{font-size:12px;min-height:30px}.item-identity{padding:12px 16px;flex-shrink:0}.item-identity h2{font-size:18px}.item-identity>span{font-size:12px}
.semantic-metrics{grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;padding:12px 16px 8px;flex-shrink:0}.semantic-metrics .metric{border:0;border-radius:3px;background:var(--tone);color:white;padding:11px 12px;min-height:112px;position:relative;box-sizing:border-box}.semantic-metrics .metric:last-child{border:0}.semantic-metrics .metric-label{color:inherit;font-size:13px;font-weight:600;line-height:1.4}.semantic-metrics strong{color:inherit;font-size:28px;line-height:1.3;font-weight:600;margin-top:6px;padding-right:32px}.semantic-metrics .metric-state{color:inherit;font-size:11px;line-height:1.4;margin-top:4px;padding-right:26px;opacity:1}.semantic-metrics .metric.state-warning,.semantic-metrics .metric.state-denied,.semantic-metrics .metric.state-muted{background:var(--wash);color:var(--tone);border:1px solid var(--tone)}.semantic-metrics .metric.state-denied strong{font-size:17px;line-height:1.7}.semantic-metrics .metric.state-warning strong{font-size:22px}.semantic-metrics button{color:inherit;background:transparent;border:1px solid currentColor;width:29px;height:29px;font-size:17px;right:10px;bottom:11px;padding:0;opacity:1}.semantic-metrics button:disabled{cursor:not-allowed;background:transparent;color:inherit;opacity:.75}
.item-scope{font-size:12px;padding:3px 16px 9px;flex-shrink:0}.item-tabs{flex-shrink:0}.item-tabs button{font-size:13px;padding:9px 11px;min-height:38px}.item-period{font-size:12px;flex-shrink:0}.item-period input,.item-period button{font-size:12px;height:30px}.item-data-table td,.item-data-table th{font-size:13px;line-height:1.5;padding:10px 9px}.item-data-table .r2-record-link{font-size:13px}.item-data-table td small,.item-proof,.item-proof dt,.item-proof dd{font-size:12px}.item-summary{font-size:13px}.item-window>footer{font-size:12px;flex-shrink:0}.item-catalog-table td{font-size:13px}.item-filter input:not([type=checkbox]),.item-filter select{font-size:12px;height:32px}.item-filter label{font-size:12px}.freshness.current{background:#eaf3fa;color:#236a98}.freshness.stale{background:#fff3d5;color:#835b0a}
.access-actions{flex-shrink:0;border-bottom:1px solid #d2dce5;background:#fafbfd;padding:7px 16px}.access-actions summary{font-size:12px;font-weight:600;cursor:pointer}.access-actions summary span{font-weight:normal;color:#657480;margin-left:15px}.access-actions>small{display:block;font-size:11px;margin:6px 0}.access-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:8px}.access-action{color:var(--tone);border-left:3px solid var(--tone);background:var(--wash);padding:7px 9px;min-width:0}.access-action button:disabled{font-size:12px;min-height:30px;color:var(--tone);border:1px solid var(--tone);background:white;opacity:1;cursor:not-allowed}.access-action>span{display:block;font-size:12px;line-height:1.5;margin-top:5px}.r2-doc-actions{align-items:stretch;flex-wrap:wrap}.r2-doc-actions .access-action{flex:1 1 180px}.r2-doc-actions .access-action button{margin:0}
.access-denied{margin:20px;padding:24px;border-left:4px solid var(--tone);color:var(--tone);background:var(--wash);font-size:14px;line-height:1.6}.access-denied h2{font-size:18px;color:inherit}.access-denied code{font-size:13px}.nav-denied{padding:10px 12px;color:var(--state-denied);font-size:12px;opacity:.9}.office-top #access-profile{min-width:270px;font-size:13px;height:32px}.access-review-button{font-size:12px;min-height:30px}.access-review{padding:20px;font-size:13px}.access-review h1{font-size:20px}.capability-list{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.metric-drill-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eaf3fa;color:#236a98;border-bottom:1px solid #bad2e4;padding:8px 12px;font-size:12px}.item-window :focus-visible,.semantic-metrics button:focus-visible{outline:3px solid #ebaa23;outline-offset:2px}dialog{max-width:min(900px,calc(100vw - 48px));font-size:13px}dialog h3{font-size:15px}dialog .item-proof,dialog .item-proof dt,dialog .item-proof dd{font-size:13px}dialog .item-proof summary{font-size:13px}
#access-profile-item{font-size:12px;min-height:30px;min-width:230px;color:#324d62;background:white;border:1px solid #c5d1dd;border-radius:3px}
.r2-blocker[class*="state-"]{color:var(--tone);background:var(--wash);border-left-color:var(--tone)}.item-tabs button:disabled{color:var(--state-denied);opacity:1;background:#eeeaf2;cursor:not-allowed}
@media(max-width:1100px){.semantic-metrics{grid-template-columns:repeat(3,minmax(150px,1fr))}.access-action-grid{grid-template-columns:repeat(2,1fr)}.item-window{width:calc(100vw - 24px);height:calc(100vh - 24px)}.item-tabs button{font-size:13px}.semantic-metrics strong{font-size:28px}.office-top #access-profile{min-width:230px}}
