:root{--bg:#f4f6f8;--card:#fff;--ink:#17212b;--muted:#5c6873;--nav:#10263c;--accent:#b48a2c;--danger:#a12b2b;--ok:#1f6d48;--line:#dce2e7;--shadow:0 8px 24px rgba(16,38,60,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}a{color:#1c5d8f;text-decoration:none}a:hover{text-decoration:underline}.topbar{background:var(--nav);color:#fff;padding:0 22px;display:flex;align-items:center;justify-content:space-between;min-height:64px}.brand{font-weight:800;letter-spacing:.4px}.brand span{color:#e4c36d}.nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.nav a{color:#e9eef2;font-size:14px}.shell{max-width:1240px;margin:0 auto;padding:28px}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:20px}.metric{font-size:32px;font-weight:800}.muted{color:var(--muted)}h1,h2,h3{margin-top:0}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf2f6;font-size:12px}.badge.open{background:#e9f6ef;color:var(--ok)}.badge.high,.badge.critical{background:#fdeaea;color:var(--danger)}.btn{display:inline-block;border:0;border-radius:8px;background:var(--nav);color:#fff;padding:10px 14px;font-weight:650;cursor:pointer}.btn:hover{text-decoration:none;filter:brightness(1.08)}.btn.secondary{background:#e7edf2;color:var(--ink)}.btn.danger{background:var(--danger)}form .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{margin-bottom:14px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:10px 11px;border:1px solid #bfc9d2;border-radius:8px;background:#fff;color:var(--ink)}textarea{min-height:110px;resize:vertical}.flash{padding:12px 14px;border-radius:8px;margin-bottom:16px;background:#e9f6ef;border:1px solid #bfe2cf}.error{background:#fdeaea;border-color:#efbcbc}.case-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.timeline{border-left:3px solid #d9e0e5;padding-left:18px}.timeline-item{margin-bottom:16px}.public-shell{max-width:780px;margin:40px auto;padding:20px}.login-shell{max-width:440px;margin:70px auto}.notice{padding:12px;border-left:4px solid var(--accent);background:#fff7df}.small{font-size:12px}.right{text-align:right}.searchbar{display:flex;gap:8px;margin-bottom:16px}.searchbar input{flex:1;padding:10px;border:1px solid #bfc9d2;border-radius:8px}@media(max-width:900px){.grid-4,.grid-2,form .row{grid-template-columns:1fr}.nav{gap:9px}.shell{padding:18px}.case-head{display:block}}
/* v0.2 workflow additions */
.statement { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
fieldset { border: 1px solid #dce2e7; border-radius: 8px; padding: 14px; margin: 16px 0; }
fieldset label { display: inline-block; margin: 6px 16px 6px 0; }
.catalog-row { padding: 14px 0; border-bottom: 1px solid #dce2e7; }
.catalog-row form { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; }
.brand small { font-size: 12px; }
.timeline li { margin-bottom: 16px; }
.table-sort { color: inherit; display: inline-block; padding: 4px 0; }
.table-sort:hover { color: var(--accent); }
.table-sort:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }

.case-tab-nav{display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid #d8e1eb;margin:20px 0;padding:0 0 2px}
.case-tab-nav a{white-space:nowrap;padding:14px 18px;text-decoration:none;border-bottom:3px solid transparent;color:#526176;font-weight:600}
.case-tab-nav a[aria-selected="true"]{color:#1758d5;border-color:#1758d5;background:#f1f6ff}
.case-tab-nav a:focus-visible{outline:3px solid #1758d5;outline-offset:-3px}
.case-tab-panel{display:grid;gap:18px;min-width:0}.case-tab-panel[hidden]{display:none}
.case-tab-panel>.card{margin-top:0!important;min-width:0;overflow-x:auto}
.progression-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.progression-heading h2{margin:0}
.case-progression{list-style:none;padding:12px 0;margin:12px 0}.case-progression li{position:relative;display:flex;gap:18px;padding:8px 0 28px}.case-progression li:not(:last-child):before{content:'';position:absolute;left:19px;top:46px;bottom:-6px;width:2px;background:#dce5ef}
.progression-dot{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:#e9eef5;color:#526176}.progression-current .progression-dot{background:#eef5ff;color:#1758d5;border:2px solid #568cf0}.case-progression p{margin:6px 0}.case-progression .badge{margin-left:12px}.progression-current{padding:14px;border-radius:8px;background:#f4f7fb}.case-progression li.progression-current{background:transparent;padding:8px 0 28px}.case-workspace .case-head{align-items:flex-start}.case-workspace .case-head>.btn{white-space:nowrap}
@media(max-width:650px){.case-tab-nav a{padding:12px 10px}.case-workspace .case-head{flex-wrap:wrap}.progression-heading{align-items:flex-start}.case-progression .badge{display:block;margin:8px 0 0}}
@media print{.case-tab-nav{display:none}.case-tab-panel[hidden]{display:block}.case-tab-panel{display:block}}

.case-tab-nav[hidden]{display:none}

.platform-shell{max-width:1050px;margin:auto}.public-shell:has(.platform-shell){max-width:1150px}.platform-shell form{margin:20px 0}.platform-shell table{width:100%}.platform-shell>nav{margin-bottom:14px}

/* Compact navigation and local rich-text editor */
.topbar{gap:24px;padding-top:12px;padding-bottom:12px}.brand{white-space:nowrap}.nav{gap:18px}.nav-menu{position:relative}.nav-menu>summary{cursor:pointer;color:#e9eef2;font-size:14px;padding:8px 0}.nav-dropdown{position:absolute;z-index:100;top:100%;right:0;width:220px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:10px}.nav-dropdown a{display:block;color:var(--ink);padding:10px;border-radius:6px}.nav-dropdown a:hover{background:var(--bg)}.nav-dropdown form{padding:8px}.nav-identity{display:block;padding:8px}.rich-editor{min-width:0;margin-bottom:16px;background:white;border-radius:8px}.rich-editor .ql-editor{min-height:180px;font-family:inherit;font-size:16px;line-height:1.55;color:var(--ink);overflow-wrap:anywhere}.rich-editor .ql-toolbar{border-radius:8px 8px 0 0}.rich-editor .ql-container{font:inherit;border-radius:0 0 8px 8px}.editor-actions{display:flex;gap:6px;margin:6px 0}.editor-actions button{padding:6px 10px;font-size:12px}.editor-status{font-size:12px;color:var(--muted);padding:6px}.editor-expanded{position:fixed;inset:12px;z-index:300;padding:18px;box-shadow:0 0 0 100vmax #10263c99;overflow:auto}.editor-expanded .ql-editor{min-height:65vh}.rt-line{min-height:1.4em;white-space:pre-wrap}.rt-list{padding-left:20px}.rt-center{text-align:center}.rt-right{text-align:right}.rt-justify{text-align:justify}.rt-indent-1{margin-left:24px}.rt-indent-2{margin-left:48px}.rt-indent-3{margin-left:72px}.rt-indent-4{margin-left:96px}blockquote.rt-line{border-left:3px solid #bcc8d2;padding-left:14px;margin:8px 0}.rich-content{white-space:normal;overflow-wrap:anywhere}
@media(max-width:700px){.topbar{display:block;padding:14px 16px}.brand{margin-bottom:8px}.nav{gap:8px 16px;justify-content:flex-start}.nav-dropdown{position:fixed;top:auto;right:16px;left:16px;width:auto;max-height:65vh;overflow:auto}.editor-expanded{inset:4px;padding:10px}.ql-toolbar .ql-formats{margin-right:8px}.editor-actions{flex-wrap:wrap}}

.rich-editor .ql-editor{max-height:420px;overflow-y:auto}.editor-expanded .ql-editor{max-height:calc(100vh - 200px)}
