@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-primary:#004a99;--color-primary-soft:#e6f0fa;--color-bg:#f8fafc;--color-surface:#fff;--color-surface-muted:#f1f5f9;--color-text:#0f172a;--color-muted:#475569;--color-border:#dbe2ea;--color-success:#059669;--color-danger:#e11d48;--color-warning:#d97706;--radius:6px;--shadow-sm:0 1px 3px #0f172a14}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0;font-family:Inter,sans-serif}h1,h2,h3{letter-spacing:-.02em;margin:0}.layout-shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:20px 16px}.brand{color:var(--color-primary);margin-bottom:20px;font-size:16px;font-weight:700}.nav-list{flex-direction:column;gap:8px;display:flex}.nav-link{color:var(--color-muted);border-radius:var(--radius);padding:10px 12px;font-weight:500;text-decoration:none}.nav-link.active{background:var(--color-primary-soft);color:var(--color-primary)}.content{flex-direction:column;display:flex}.topbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:10;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.topbar h1{font-size:18px;font-weight:700}.content-inner{padding:24px}.stack{flex-direction:column;gap:16px;display:flex}.detail-grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:16px;display:grid}.detail-right-stack,.page-grid{gap:16px;display:grid}.two-col{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:20px;display:flex}.card h2{font-size:18px;font-weight:700}.toolbar-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search-input,.select-input,.text-area{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;font:inherit;color:var(--color-text);background:#fff;padding:10px 12px}.select-input{max-width:280px}.text-area{resize:vertical;min-height:96px}.primary-btn,.danger-btn,.warning-btn,.chip{border-radius:var(--radius);font:inherit;cursor:pointer;border:none;padding:9px 12px;font-weight:600}.primary-btn{background:var(--color-primary);color:#fff}.danger-btn{background:var(--color-danger);color:#fff}.warning-btn{background:var(--color-warning);color:#fff}.chip{background:var(--color-surface-muted);color:var(--color-muted)}.chip-active{background:var(--color-primary);color:#fff}.stats-inline{color:var(--color-muted);flex-wrap:wrap;gap:12px;font-size:14px;display:flex}.status{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-review{color:#1d4ed8;background:#dbeafe}.status-approved{color:#065f46;background:#d1fae5}.status-declined{color:#be123c;background:#ffe4e6}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:10px;font-size:14px}.data-table th{color:var(--color-muted);font-weight:600}.inline-link{color:var(--color-primary);font-weight:600;text-decoration:none}.inline-link:hover{text-decoration:underline}.link-btn{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.form-grid{gap:8px;display:grid}.penalty-chip-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.penalty-chip{border:2px solid var(--color-border);border-radius:var(--radius);cursor:pointer;font:inherit;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.penalty-chip.selected{box-shadow:inset 0 0 0 2px #0f172a1a}.penalty-chip-dot{border-radius:999px;flex-shrink:0;width:12px;height:12px;display:inline-block}.timeline-list{color:var(--color-muted);gap:8px;margin:0;padding-left:18px;display:grid}.error-text{color:var(--color-danger)}.muted{color:var(--color-muted)}@media (width<=960px){.layout-shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--color-border)}.detail-grid{grid-template-columns:1fr}}
