:root{--bg: #F7F8FA;--surface: #FFFFFF;--border: #E0E4EC;--fg: #1A1E2A;--fg-muted: #5A6075;--accent: #1B4FD8;--accent-bg: #EEF2FD;--high: #C0280E;--high-bg: #FFF0ED;--med: #C07A00;--med-bg: #FFF8E6;--ok: #1A7A4A;--ok-bg: #EDF7F2;--info: #0A6B8A;--info-bg: #E8F5F9;--font-ui: "IBM Plex Sans", system-ui, sans-serif;--font-data: "IBM Plex Mono", "Courier New", monospace;--font-head: "IBM Plex Sans Condensed", "IBM Plex Sans", sans-serif;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0F1118;--surface: #181C27;--border: #2A2F42;--fg: #E8EAF2;--fg-muted: #7A819A;--accent: #5B8BFF;--accent-bg: #141B33;--high: #FF6B50;--high-bg: #2A1410;--med: #FFB830;--med-bg: #221A00;--ok: #3DBA77;--ok-bg: #0D2218;--info: #30B8DC;--info-bg: #081820;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F1118;--surface: #181C27;--border: #2A2F42;--fg: #E8EAF2;--fg-muted: #7A819A;--accent: #5B8BFF;--accent-bg: #141B33;--high: #FF6B50;--high-bg: #2A1410;--med: #FFB830;--med-bg: #221A00;--ok: #3DBA77;--ok-bg: #0D2218;--info: #30B8DC;--info-bg: #081820;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-ui);font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}.page-header{background:var(--surface);border-bottom:1px solid var(--border);padding:20px 24px 16px}.header-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.header-eyebrow{font-family:var(--font-data);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}.header-title{font-family:var(--font-head);font-size:clamp(20px,4vw,28px);font-weight:700;letter-spacing:-.02em;margin:0 0 4px;line-height:1.1;text-wrap:balance}.header-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:12px;color:var(--fg-muted);font-family:var(--font-data)}.header-meta strong{color:var(--fg);font-weight:600}.header-tools{display:flex;gap:8px;align-items:center}.page-body{max-width:1280px;margin:0 auto;padding:28px 16px 60px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start}.sidebar{position:sticky;top:20px}@media(max-width:760px){.page-body{grid-template-columns:minmax(0,1fr);gap:16px}.sidebar{position:static}.sidebar-nav{display:flex;flex-wrap:wrap;gap:4px}.sidebar-nav a{border-left:none;border-bottom:2px solid var(--border);border-radius:4px 4px 0 0}}.sidebar-label{font-family:var(--font-data);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 8px}.sidebar-nav{list-style:none;margin:0;padding:0}.sidebar-nav a{display:flex;justify-content:space-between;gap:8px;padding:6px 10px;font-size:12.5px;color:var(--fg-muted);text-decoration:none;border-left:2px solid var(--border);border-radius:0 4px 4px 0;transition:color .15s,border-color .15s,background .15s}.sidebar-nav a:hover{color:var(--fg);border-color:var(--accent);background:var(--accent-bg)}.sidebar-nav a.active{color:var(--accent);border-color:var(--accent);background:var(--accent-bg);font-weight:500}.nav-count{font-family:var(--font-data);font-size:11px}.main{min-width:0}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:28px}.tile{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:16px;text-decoration:none;color:inherit;display:block}a.tile:hover{border-color:var(--accent)}.tile-num{font-family:var(--font-head);font-size:32px;font-weight:700;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.tile-label{font-size:11px;color:var(--fg-muted);margin-top:4px;text-transform:uppercase;letter-spacing:.06em}.tile.high{border-left:3px solid var(--high)}.tile.high .tile-num{color:var(--high)}.tile.med{border-left:3px solid var(--med)}.tile.med .tile-num{color:var(--med)}.tile.info{border-left:3px solid var(--info)}.tile.info .tile-num{color:var(--info)}.tile.ok{border-left:3px solid var(--ok)}.tile.ok .tile-num{color:var(--ok)}.section{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:20px;overflow:hidden}.section-header{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border);flex-wrap:wrap}.section-title{font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:.01em;flex:1;margin:0}.section-count{font-family:var(--font-data);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.count-high{background:var(--high-bg);color:var(--high)}.count-med{background:var(--med-bg);color:var(--med)}.count-info{background:var(--info-bg);color:var(--info)}.count-ok{background:var(--ok-bg);color:var(--ok)}.toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--bg)}.toolbar input,.toolbar select{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:5px 9px;font-size:12.5px;min-width:0}.toolbar input{flex:1 1 200px}.tbl-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12.5px}thead th{text-align:left;padding:8px 14px;font-family:var(--font-data);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);background:var(--bg);border-bottom:1px solid var(--border);white-space:nowrap}tbody tr{border-bottom:1px solid var(--border)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--accent-bg)}tbody tr.row-high{background:var(--high-bg)}tbody tr.row-med{background:var(--med-bg)}tbody td{padding:9px 14px;vertical-align:top}.code{font-family:var(--font-data);font-size:11.5px;white-space:nowrap}td.wide{min-width:240px}.muted{color:var(--fg-muted)}.anchor-label{font-size:11px;color:var(--fg-muted);font-family:var(--font-data);display:block;margin-top:2px}.empty{padding:24px 18px;color:var(--fg-muted);font-size:12.5px}.badge{display:inline-block;font-family:var(--font-data);font-size:10px;font-weight:600;letter-spacing:.05em;padding:2px 7px;border-radius:3px;white-space:nowrap}.badge-high{background:var(--high-bg);color:var(--high)}.badge-med{background:var(--med-bg);color:var(--med)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-plain{background:var(--bg);color:var(--fg-muted);border:1px solid var(--border)}.note{font-size:12.5px;padding:10px 14px;border-left:3px solid;margin:12px 18px;border-radius:0 4px 4px 0;line-height:1.5}.note-high{background:var(--high-bg);border-color:var(--high)}.note-med{background:var(--med-bg);border-color:var(--med)}.note-info{background:var(--info-bg);border-color:var(--info)}.note-accent{background:var(--accent-bg);border-color:var(--accent)}.btn{font-size:12px;padding:6px 12px;border-radius:4px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--fg);white-space:nowrap}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{color:#fff;filter:brightness(1.1)}.btn-sm{font-size:11px;padding:3px 8px}.btn-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.actions{list-style:none;margin:0;padding:0}.actions li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 18px;border-bottom:1px solid var(--border);font-size:12.5px}.actions li:last-child{border-bottom:none}.drawer-backdrop{position:fixed;inset:0;background:#00000059;z-index:10}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(920px,100%);z-index:11;background:var(--bg);border-left:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column}.drawer-head{position:sticky;top:0;z-index:1;background:var(--surface);border-bottom:1px solid var(--border);padding:14px 18px;display:flex;gap:12px;align-items:center}.drawer-head h2{font-family:var(--font-head);font-size:16px;margin:0;flex:1}.drawer-body{padding:18px;display:flex;flex-direction:column;gap:16px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:16px}.panel h3{font-family:var(--font-head);font-size:14px;margin:0 0 10px}.stepper{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}.stepper li{font-family:var(--font-data);font-size:10px;font-weight:600;letter-spacing:.05em;padding:3px 8px;border-radius:3px;background:var(--bg);color:var(--fg-muted);border:1px solid var(--border)}.stepper li.done{background:var(--ok-bg);color:var(--ok);border-color:transparent}.stepper li.current{background:var(--accent);color:#fff;border-color:var(--accent)}.dropzone{display:block;border:2px dashed var(--border);border-radius:6px;padding:18px;text-align:center;color:var(--fg-muted);font-size:12.5px;cursor:pointer;transition:border-color .15s,background .15s}.dropzone.over{border-color:var(--accent);background:var(--accent-bg);color:var(--accent)}.field-label{display:block;font-size:12px;font-weight:600;margin:12px 0 4px}.field-hint{font-weight:400;color:var(--fg-muted)}textarea,.input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:12.5px;line-height:1.5}textarea{min-height:140px;resize:vertical;font-family:var(--font-data);font-size:12px}textarea:focus,.input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}.error{color:var(--high);font-size:12.5px}.gap-table td{padding:6px 8px}.gap-table textarea{min-height:64px;font-family:var(--font-ui);font-size:12px}.gap-table select{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px;font-size:11.5px}.draft-doc{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:24px 28px;font-size:13px;line-height:1.75;overflow-x:auto}.draft-doc .letterhead{text-align:center;border-bottom:2px solid var(--border);padding-bottom:14px;margin-bottom:18px}.draft-doc .letterhead strong{font-size:15px;display:block;font-family:var(--font-head)}.draft-doc .letterhead span{font-size:12px;color:var(--fg-muted)}.draft-doc h3{font-family:var(--font-head);font-size:14px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.04em;margin:0 0 16px}.draft-doc .field{display:inline-block;min-width:180px;border-bottom:1px solid var(--fg-muted);color:var(--accent);font-style:italic;font-family:var(--font-data);font-size:12px}.draft-doc .clause{margin:12px 0;text-align:justify}.draft-doc .sig-block{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.draft-doc .sig{border-top:1px solid var(--fg-muted);padding-top:8px;font-size:12px}.draft-doc .sig strong{display:block}@media(max-width:600px){.draft-doc{padding:16px}.draft-doc .sig-block{grid-template-columns:1fr}}.report-footer{text-align:center;padding:24px 0;font-size:11.5px;color:var(--fg-muted);font-family:var(--font-data);border-top:1px solid var(--border);margin-top:16px}@media print{.page-header,.sidebar,.drawer-head,.drawer-backdrop,.main{display:none!important}.drawer{position:static;width:auto;border:none}}.lookup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;padding:14px 18px}.lookup-h{font-family:var(--font-head);font-size:13px;margin:0 0 4px}.lookup-p{font-size:12px;margin:6px 0 0}.lookup-field{display:flex;align-items:center;gap:6px;font-size:12px}.lookup-field .input{width:80px;padding:4px 6px}.lookup-check{font-size:12px;display:flex;gap:4px;align-items:center}.lookup-job{margin-top:10px}.progress{height:6px;background:var(--border);border-radius:3px;margin-top:6px;overflow:hidden}.progress>div{height:100%;background:var(--accent);transition:width .3s}.lookup-list{list-style:none;padding:0;margin:6px 0 0;font-size:12px;max-height:220px;overflow-y:auto}.lookup-list li{padding:2px 0}.lib-stats{display:flex;flex-wrap:wrap;gap:8px;padding:10px 18px 4px}.lib-stat{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:transparent;font-size:12px}button.lib-stat{cursor:pointer}button.lib-stat:hover,.lib-stat.active{border-color:var(--accent)}.rounds{list-style:none;padding:0;margin:8px 0 0}.rounds>li{border-left:2px solid var(--border);padding-left:10px;margin-bottom:12px}.obs-list{list-style:none;padding:0;margin:0}.obs{font-size:12px;padding:6px 0;display:grid;gap:3px;overflow-wrap:anywhere}.obs+.obs{border-top:1px dashed var(--border)}.obs-head{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.obs-blocked{opacity:.7}.obs-quote{margin:2px 0;padding:4px 8px;border-left:3px solid var(--accent);font-family:var(--font-data);font-size:11px;white-space:pre-wrap}.verify-form .input,.verify-form select,.verify-form textarea{width:100%}.snapshot-pill{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--fg-muted);white-space:nowrap}.login{min-height:100%;display:grid;place-items:center;padding-block:48px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:24px;display:grid;gap:4px}.login-title{font-family:var(--font-head);font-size:26px;margin:4px 0 0}.login-theme{position:fixed;top:max(12px,env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px))}.theme-toggle{display:inline-flex;align-items:center;gap:6px}.theme-toggle svg{flex:none}.login-p{margin:4px 0 8px;font-size:13px}.login-btn{margin-top:16px;justify-content:center;padding-block:10px}.login-card .input{width:100%;font-size:16px}.pad{padding:14px 18px}.ask-q{font-family:var(--font-ui);font-size:14px;min-height:0}.search-row{display:flex;flex-wrap:wrap;gap:8px}.search-row .input:first-child{flex:1 1 220px}.search-row select.input{width:auto;flex:0 1 180px}.hits{list-style:none;margin:0;padding:0 18px 12px}.hits li{padding:8px 0;border-top:1px solid var(--border);font-size:12.5px}.hit-snippet{color:var(--fg-muted);font-size:12px}.ref-chip{display:inline;font-family:var(--font-data);font-size:11px;padding:1px 6px;margin:0 1px;border-radius:4px;border:1px solid var(--accent);background:var(--accent-bg);color:var(--accent);cursor:pointer;white-space:normal;line-height:1.7}.ref-chip:hover{filter:brightness(1.1)}.ref-chip.ref-bad{border-style:dashed;border-color:var(--high);background:var(--high-bg);color:var(--high)}.clause-modal{position:fixed;inset:0;z-index:30;background:#0006;display:grid;place-items:center;padding:16px}.clause-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%;max-width:680px;max-height:85vh;overflow:auto;padding:16px}.clause-head{display:flex;gap:10px;align-items:center;margin-bottom:6px}.clause-head h3{font-family:var(--font-data);font-size:13px;margin:0;flex:1;overflow-wrap:anywhere}.clause-meta{font-size:12px;margin:0 0 10px}.clause-text{white-space:pre-wrap;font-size:13px;line-height:1.6}.qa{display:grid;gap:6px}.qa-q{font-weight:700;margin:0;font-size:14px}.md{font-size:13.5px;line-height:1.6;overflow-wrap:anywhere}.md p{margin:0 0 10px}.md h3,.md h4{font-family:var(--font-head);margin:14px 0 6px;font-size:14px}.md ul,.md ol{margin:0 0 10px;padding-left:22px}.md li{margin:3px 0}.md table{font-size:12.5px}.md code{font-family:var(--font-data);font-size:12px}.working .progress{margin:8px 0}.progress.indeterminate>div{width:30%;animation:si-slide 1.4s ease-in-out infinite}@keyframes si-slide{0%{transform:translate(-100%)}to{transform:translate(340%)}}.activity{font-size:12px}.activity summary{cursor:pointer;color:var(--fg-muted)}.activity ol{margin:6px 0 0;padding-left:20px}.spec-replace{margin-top:8px}.spec-replace summary{cursor:pointer;font-size:12px}@media print{.drawer-body button,.activity,#followup{display:none!important}.drawer-body textarea{border:none;resize:none}}.review-list{list-style:none;margin:0;padding:0}.review-list>li{border-top:1px solid var(--border);padding:10px 18px;font-size:12.5px}.review-list a{display:grid;gap:4px;color:inherit;text-decoration:none}.review-list a:hover .review-title{color:var(--accent)}.review-title{font-weight:600;font-size:13.5px}.review-meta{font-size:12px}.hit-pick{margin-right:6px}.hit-pick input{vertical-align:middle}a.btn{text-decoration:none;display:inline-flex;align-items:center}.ob-text{font-size:12.5px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.panel-inset{border-bottom:1px solid var(--border)}.issue-group{margin:14px 0 4px;font-size:13px;font-weight:600}.ev-items{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}.ev-items li{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;font-size:12.5px;padding:8px 10px;border:1px solid var(--border);border-radius:6px}.ev-withdrawn{opacity:.6;text-decoration:line-through}.record-panel h3{margin-bottom:8px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.form-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600}.link-btn{background:none;border:none;padding:0;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}.chip-stat{font-size:11.5px;padding:2px 7px;border:1px solid var(--border);border-radius:12px;color:var(--fg-muted);white-space:nowrap}.attach{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:8px}.attach-hint{font-size:12px}.attach-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;width:100%}.attach-list:empty{display:none}.attach-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%}.attach-chip>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px;color:var(--fg)}.attach-used{font-size:12.5px;margin:2px 0 6px}.drop-target{outline:2px dashed var(--accent);outline-offset:4px}
