:root{--ink:#1c2024;--ink-soft:#4a5460;--line:#d7dde4;--surface:#ffffff;--canvas:#f4f6f8;--accent:#0b5fa5;--accent-ink:#ffffff;--focus:#b8860b;--radius:6px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--canvas);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--accent)}[role=tab]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.shell-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:var(--accent)}.shell-header,.shell-header a{color:var(--accent-ink)}.shell-brand{margin:0;font-weight:700}.shell-user{margin:0}.shell-nav{background:var(--surface);border-bottom:1px solid var(--line)}.shell-nav-list{display:flex;flex-wrap:wrap;gap:.25rem;list-style:none;margin:0;padding:0 1.25rem}.shell-nav-link{display:inline-block;padding:.75rem 1rem;text-decoration:none;border-bottom:3px solid transparent}.shell-nav-link:hover{border-bottom-color:var(--accent)}.shell-main{padding:1.25rem;max-width:1200px;margin:0 auto}.pill,.sla-chip,.status-badge,.subtype-badge{display:inline-block;padding:.1rem .55rem;border-radius:999px;border:1px solid var(--line);background:#eceff3;color:var(--ink);font-size:.85rem;white-space:nowrap}[data-color-token=amber]{background:#fdf1d6;border-color:#b5811a;color:#5c4008}[data-color-token=blue]{background:#dfeaf9;border-color:#1d5a99;color:#123a63}[data-color-token=indigo]{background:#e2e5f8;border-color:#3a459e;color:#1e2560}[data-color-token=violet]{background:#eae2f8;border-color:#5b3fa0;color:#33215f}[data-color-token=teal]{background:#d8f0ef;border-color:#17706c;color:#0b3f3d}[data-color-token=green]{background:#dcf1e2;border-color:#1f7a41;color:#104624}[data-color-token=red]{background:#fadedd;border-color:#a32b25;color:#6a1713}[data-color-token=grey]{background:#e7eaee;border-color:#6b747f;color:#333a43}[data-sla-status=on_track]{background:#dcf1e2;border-color:#1f7a41;color:#104624}[data-sla-status=at_risk]{background:#fdf1d6;border-color:#b5811a;color:#5c4008}[data-sla-status=breached]{background:#fadedd;border-color:#a32b25;color:#6a1713}.band-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1rem;gap:1rem;list-style:none;margin:1rem 0 0;padding:0}.band-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.band-card-link{display:block;text-decoration:none}.band-card-label{display:block;font-weight:600;color:var(--ink)}.band-card-count{display:block;font-size:2.25rem;font-weight:700;color:var(--ink)}.band-card-sla{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}.band-types{list-style:none;margin:0;padding:.5rem 0 0;border-top:1px solid var(--line)}.band-types li{padding:.15rem 0}.detail-tabs,.permit-type-tab-list,.phase-tabs{display:flex;flex-wrap:wrap;gap:.25rem;margin:1rem 0 0;padding:0;list-style:none;border-bottom:1px solid var(--line)}.detail-tab,.permit-type-tab,.phase-tab{display:inline-block;padding:.5rem .9rem;text-decoration:none;border:1px solid transparent;border-bottom:none;border-radius:var(--radius) var(--radius) 0 0}.detail-tab[aria-selected=true],.phase-tab[aria-selected=true]{background:var(--surface);border-color:var(--line);font-weight:600}.permit-type-tabs,.worklist{margin-top:1rem}.worklist{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line)}.worklist td,.worklist th{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--line);vertical-align:top}.worklist thead th{background:#eef1f5}.filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-top:1rem;padding:.75rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.filter-field{display:flex;flex-direction:column;gap:.2rem}.filter-field input,.filter-field select{padding:.4rem .5rem;border:1px solid var(--line);border-radius:var(--radius);font:inherit}.pagination{display:flex;gap:.75rem;align-items:center;margin-top:.75rem}.detail{display:block}.identity-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.identity-reference{margin:0 0 .35rem;font-size:1.4rem;align-items:center}.identity-reference,.identity-state{display:flex;gap:.5rem;flex-wrap:wrap}.identity-state{margin:0 0 .75rem}.identity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:.5rem 1.5rem;gap:.5rem 1.5rem;margin:0}.identity-field dt{color:var(--ink-soft);font-size:.85rem;margin:0}.identity-field dd{margin:0 0 .35rem}.action-column{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-start;margin-top:1rem}.action-button{font:inherit;padding:.5rem .9rem;border-radius:var(--radius);border:1px solid var(--accent);background:var(--surface);color:var(--accent);cursor:pointer}.action-button[data-action-kind=primary]{background:var(--accent);color:var(--accent-ink)}.action-button[data-action-kind=destructive]{border-color:#a32b25;color:#6a1713}.action-button[disabled]{opacity:.6;cursor:not-allowed}.action-effects{list-style:none;padding:0;margin:.5rem 0 0;width:100%}.detail-tabpanel{background:var(--surface);border:1px solid var(--line);border-top:none;padding:1rem}.tab-table{width:100%;border-collapse:collapse}.tab-table td,.tab-table th{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}.tab-table thead th{background:#eef1f5}.dialog-backdrop{position:fixed;inset:0;background:rgba(20,24,28,.55);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.dialog{background:var(--surface);border-radius:var(--radius);padding:1.25rem;max-width:480px;width:100%}.dialog h2{margin-top:0}.dialog-actions{display:flex;gap:.5rem;justify-content:flex-end}.error-notice{border:1px solid #a32b25;background:#fadedd;color:#4a1512;border-radius:var(--radius);padding:.75rem 1rem;margin:.75rem 0}.error-notice-code{margin:0 0 .25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.error-notice-message{margin:0}.error-notice-fields{margin:.5rem 0 0;padding-left:1.25rem}.error-notice-trace{margin:.5rem 0 0;font-size:.85rem}.empty-state{border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface);padding:1.5rem;text-align:center;margin-top:1rem}.empty-state-title{margin:0;font-weight:600}.empty-state-detail{margin:.35rem 0 0;color:var(--ink-soft)}.draft-form{display:grid;grid-gap:.75rem;gap:.75rem;max-width:640px}.draft-form label{display:flex;flex-direction:column;gap:.25rem}.draft-form input,.draft-form select,.draft-form textarea{font:inherit;padding:.45rem .55rem;border:1px solid var(--line);border-radius:var(--radius)}.draft-status{color:var(--ink-soft);font-size:.9rem}.preview-frame{width:100%;min-height:640px}.panel,.preview-frame{border:1px solid var(--line);background:var(--surface)}.panel{border-radius:var(--radius);padding:1rem;margin-top:1rem}.artifact-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:.35rem;gap:.35rem}.artifact-list li{padding:.35rem .5rem;border:1px solid var(--line);border-radius:var(--radius);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.report-catalogue{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem;list-style:none;margin:1rem 0 0;padding:0}.report-card{margin-top:0}.report-card h3{margin:0 0 .5rem}.report-card[data-selected=true]{border-color:var(--accent);border-width:2px}.report-class{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .5rem}.report-parameters{list-style:none;margin:0;padding:0;font-size:.9rem;color:var(--ink-soft)}.verify{max-width:620px;margin:3rem auto;padding:1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.verify h1{margin-top:0}.verify dl{display:grid;grid-template-columns:max-content 1fr;grid-gap:.5rem 1rem;gap:.5rem 1rem}.verify dt{color:var(--ink-soft)}.verify dd{margin:0}@media (max-width:720px){.shell-main{padding:.75rem}.identity-grid{grid-template-columns:1fr}.worklist thead{display:none}.worklist tr{display:block;border-bottom:2px solid var(--line)}.worklist td,.worklist th{display:block;border-bottom:none}}