:root{--primary: #D50032;--primary-light: #FCEDF0;--primary-dark: #990024;--bg: #F3F6F9;--panel: #fff;--ink: #101B27;--ink-muted: #5B6B7C;--ink-faint: #90A0AF;--line: #DCE4EC;--line-soft: #EDF1F5;--conforming: #1a9e52;--conforming-bg: #dcf5e3;--partial: #b4790a;--partial-bg: #fdf1da;--finding: #c0192f;--finding-bg: #fdecee;--na: #6b6b76;--na-bg: #eceef2;--needs_review: #2074b5;--needs_review-bg: #e3f0fb;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);min-height:100vh;overflow-x:hidden;position:relative;transition:background .2s}.app-shell{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh;padding:16px 20px 20px;gap:14px;overflow:hidden}@supports (height: 100dvh){.app-shell{height:100dvh}}.hdr{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;box-shadow:0 4px 20px #101b270f}.hdr-brand{display:flex;align-items:center;gap:12px}.shield{width:40px;height:40px;border-radius:11px;flex-shrink:0;background:linear-gradient(135deg,var(--primary),var(--primary-dark));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #d5003259;font-size:18px}.shield--logo{background:none;box-shadow:none;padding:2px}.shield--logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 2px rgba(16,27,39,.15))}.eyebrow{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:2px}h1.title{font-size:18px;font-weight:900;margin:0;color:var(--ink)}.hdr-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.who{font-size:12px;color:var(--ink-muted);background:var(--line-soft);border:1px solid var(--line);border-radius:999px;padding:6px 12px}.who-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800;letter-spacing:.02em;color:var(--ink-muted);background:var(--line-soft);border:1px solid var(--line);border-radius:999px;padding:5px 9px 5px 7px;cursor:default}.who-dot{width:6px;height:6px;border-radius:50%;background:var(--conforming);display:inline-block;flex-shrink:0}.pill{font-size:12px;font-weight:700;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--ink-muted);cursor:pointer;display:inline-flex;align-items:center;gap:5px;text-decoration:none}.pill:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.pill:disabled{opacity:.55;cursor:default}.statTiles{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.statTile{border-radius:12px;padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--primary);box-shadow:0 4px 14px #101b270d}.statTile .num{font-size:21px;font-weight:900;color:var(--ink);line-height:1.1}.statTile .lbl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);margin-top:2px}.statTile.progress{grid-column:span 2;display:flex;flex-direction:column;justify-content:center}.statsCompact{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--panel);border-radius:8px;padding:5px 12px;border-top:2px solid var(--primary);box-shadow:0 4px 12px #00000014;font-size:11.5px;color:var(--ink-muted);cursor:pointer}.statsCompact b{color:var(--ink);font-size:12.5px}.statsCompact-pct{font-weight:800;color:var(--conforming);margin-left:auto}.statsCompact-toggle{font-size:11px;font-weight:800;color:var(--primary);white-space:nowrap}.statsCompact-hide{text-align:center;padding:6px;cursor:pointer;border-radius:0 0 10px 10px}.statsCompact-hide:hover,.statsCompact:hover{background:#fafafc}.prog-track{height:8px;background:var(--line-soft);border-radius:4px;overflow:hidden;margin-top:6px}.prog-fill{height:100%;background:linear-gradient(90deg,var(--conforming),#2ecc71);border-radius:4px;transition:width .3s}@media (max-width: 900px){.statTiles{grid-template-columns:repeat(3,1fr)}.statTile.progress{grid-column:span 3}}.ctrl{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.srch-w{position:relative;flex:1;min-width:200px;max-width:340px}.srch-w svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--ink-muted);pointer-events:none}.srch{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:9px 14px 9px 32px;color:var(--ink);font-size:13px;outline:none;font-family:var(--font);box-shadow:0 4px 14px #00000014}.srch:focus{border-color:var(--primary)}.fg{display:flex;gap:6px;flex-wrap:wrap}.chip{font-size:12px;font-weight:800;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--ink-muted);cursor:pointer;transition:border-color .15s,color .15s,box-shadow .15s,background .15s;-webkit-user-select:none;user-select:none;white-space:nowrap}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-color:transparent;box-shadow:0 6px 16px #d5003259}.chip.conforming.active{background:linear-gradient(135deg,#2ecc71,var(--conforming));box-shadow:0 6px 16px #1a9e5259}.chip.partial.active{background:linear-gradient(135deg,#f0a83c,var(--partial));box-shadow:0 6px 16px #b4790a59}.chip.finding.active{background:linear-gradient(135deg,var(--primary),var(--finding));box-shadow:0 6px 16px #c0192f59}.chip.na.active{background:linear-gradient(135deg,#9a9aa4,var(--na));box-shadow:0 6px 16px #6b6b764d}.chip.needs_review.active{background:linear-gradient(135deg,#4fa8e8,var(--needs_review));box-shadow:0 6px 16px #2074b559}.formfield{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.formfield input,.formfield select{font-family:inherit;font-size:13px;font-weight:400;text-transform:none;letter-spacing:normal;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink);outline:none}.formfield input:focus,.formfield select:focus{border-color:var(--primary)}.field-hint{font-size:11px;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--ink-muted);line-height:1.4}.txtin{width:100%;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink);font-size:13px;outline:none;font-family:var(--font)}.txtin:focus{border-color:var(--primary)}.auditlog{flex:1;display:flex;flex-direction:column;gap:14px;min-height:0;overflow-y:auto}.auditlog-toolbar{display:flex;align-items:center;gap:10px}.auditlog-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:0}.auditlog-cols .blk{display:flex;flex-direction:column;max-height:60vh;overflow-y:auto}@media (max-width: 900px){.auditlog-cols{grid-template-columns:1fr}}.main{flex:1;display:flex;background:var(--panel);border-radius:18px;box-shadow:0 20px 60px #00000047;overflow:hidden;min-height:0}.lp{width:380px;min-width:260px;max-width:620px;border-right:1px solid var(--line);overflow-y:auto;flex-shrink:0}.lp-disciplinePicker{position:sticky;top:0;z-index:6;padding:10px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.lp-disciplinePicker .ssel{width:100%}.print-select-bar{position:sticky;top:49px;z-index:5;display:flex;align-items:center;gap:14px;padding:8px 12px;background:#fdf3f4;border-bottom:1px solid var(--line);font-size:12.5px}.resizer{width:6px;cursor:col-resize;background:transparent;flex-shrink:0;transition:background .15s;z-index:5}.resizer:hover,.resizer.dragging{background:var(--primary)}.sg-hdr{padding:9px 16px 7px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);background:#fafafc;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between}.row{padding:12px 16px;border-top:1px solid var(--line-soft);cursor:pointer;transition:background .12s}.row:first-child{border-top:none}.row:hover{background:#fafafc}.row.sel{background:linear-gradient(90deg,rgba(213,0,50,.06),transparent);box-shadow:inset 0 0 0 2px var(--primary)}.rid{font-size:12px;font-weight:800;color:var(--primary);letter-spacing:.02em}.rtitle{font-size:12.5px;color:var(--ink);line-height:1.45;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rbadges{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.bdg{font-size:10px;font-weight:800;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.bdg.conforming{background:var(--conforming-bg);color:var(--conforming)}.bdg.partial{background:var(--partial-bg);color:var(--partial)}.bdg.finding{background:var(--finding-bg);color:var(--finding)}.bdg.na{background:var(--na-bg);color:var(--na)}.bdg.needs_review{background:var(--needs_review-bg);color:var(--needs_review)}.bdg.risk{background:var(--finding-bg);color:var(--finding)}.bdg.updated{background:#e3ecfb;color:#2074b5}.bdg.observation{background:#f1e9f7;color:#7b4fa3}.no-res{padding:32px 16px;text-align:center;color:var(--ink-muted);font-size:13px}.dp{flex:1;min-height:0;overflow-y:auto}.de{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#c8c8ce;gap:8px}.de svg{opacity:.35}.dh{padding:18px 24px 14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:5}.dh-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.did{font-size:18px;font-weight:900;color:var(--primary);letter-spacing:.02em}.db{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.blk{border:1px solid var(--line);border-radius:14px;overflow:hidden}.blk-h{padding:9px 16px;background:#fafafc;border-bottom:1px solid var(--line);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);position:relative}.blk-h:after{content:"";position:absolute;left:16px;bottom:-1px;width:26px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--primary),var(--primary-light))}.blk-h-count{font-weight:700;color:var(--ink-muted);text-transform:none;letter-spacing:normal}.blk-b{padding:14px 16px;font-size:13.5px;line-height:1.7;color:var(--ink);white-space:pre-wrap;word-break:break-word}.ca-msg{border-radius:10px;padding:9px 12px;font-size:13px;line-height:1.55;max-width:92%}.ca-msg.ca-assistant{background:#fafafc;border:1px solid var(--line-soft);color:var(--ink);align-self:flex-start}.ca-msg.ca-user{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;align-self:flex-end;margin-left:auto}.ca-ref-chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;color:var(--primary);background:#d5003214;border-radius:20px;padding:3px 6px 3px 9px}.ca-ref-chip-x{cursor:pointer;opacity:.6}.ca-ref-chip-x:hover{opacity:1}.ca-ref-results{position:absolute;top:100%;left:0;right:0;z-index:5;margin-top:3px;background:var(--panel, #fff);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 20px #0000001f;max-height:200px;overflow-y:auto}.ca-ref-result{padding:7px 10px;cursor:pointer;display:flex;flex-direction:column;gap:1px;border-bottom:1px solid var(--line-soft)}.ca-ref-result:last-child{border-bottom:none}.ca-ref-result:hover{background:var(--line-soft)}.ca-ref-result-id{font-size:11px;font-weight:800;color:var(--primary)}.ca-ref-result-title{font-size:10.5px;color:var(--ink-muted)}.ca-ref-result-empty{padding:8px 10px;font-size:11px;color:var(--ink-muted)}.ecp-panel{position:fixed;left:20px;bottom:20px;z-index:9998;width:min(420px,calc(100vw - 40px));max-height:min(60vh,520px);background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px #00000038;display:flex;flex-direction:column;overflow:hidden}.ecp-head{padding:11px 14px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-shrink:0}.ecp-title{font-size:13px;font-weight:800;color:#fff}.ecp-sub{font-size:10.5px;color:#fffc;margin-top:1px}.ecp-close{background:none;border:none;color:#fff;font-size:15px;cursor:pointer;opacity:.85;flex-shrink:0}.ecp-close:hover{opacity:1}.ecp-body{padding:12px 14px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.ecp-evtext{font-size:12.5px;line-height:1.5;color:var(--ink);background:var(--line-soft);border-radius:8px;padding:8px 10px}.ecp-loading{font-size:12.5px;color:var(--ink-muted)}.risk-blk{background:var(--finding-bg);border:1px solid rgba(192,25,47,.25);border-radius:14px;padding:13px 16px;display:flex;gap:10px;align-items:flex-start}.risk-ico{font-size:16px;color:var(--finding)}.risk-txt{font-size:13px;line-height:1.6;color:var(--finding)}.observation-blk{background:#f1e9f7;border-color:#7b4fa340}.observation-blk .risk-ico,.observation-blk .risk-txt{color:#7b4fa3}.ev-blk{border-bottom:1px solid var(--line-soft)}.ev-blk:last-child{border-bottom:none}.ev-src{padding:8px 16px;background:#fafafc;font-size:11.5px;font-weight:800;color:var(--primary);border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.ev-txt{padding:12px 16px;font-size:13.5px;line-height:1.7;color:var(--ink);white-space:pre-wrap;word-break:break-word}.no-ev{padding:16px;color:var(--ink-muted);font-size:13px;font-style:italic;text-align:center}.changelog-blk{background:#fafafc;border:1px solid var(--line);border-radius:10px;padding:10px 14px}.changelog-meta{font-size:11px;color:var(--ink-muted);margin-bottom:2px}.changelog-entry{font-size:12.5px;color:var(--ink);white-space:pre-line}.no-changelog{font-size:12.5px;color:var(--ink-muted);font-style:italic;padding:4px 0}.nta{width:100%;background:#fafafc;border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--ink);font-size:13px;line-height:1.7;resize:vertical;min-height:72px;outline:none;font-family:var(--font)}.nta:focus{border-color:var(--primary)}.btn{font-size:12.5px;font-weight:700;padding:8px 15px;border-radius:8px;border:none;cursor:pointer;font-family:var(--font);display:inline-flex;align-items:center;gap:6px}.btn.dark{background:#14141a;color:#fff}.btn.dark:hover{background:#2a2a33}.btn-p{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 4px 12px #d500324d;transition:box-shadow .15s,transform .15s}.btn-p:hover{box-shadow:0 6px 18px #d5003273;transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:default;transform:none!important}.ssel{background:#fafafc;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:12.5px;font-weight:700;padding:7px 10px;cursor:pointer;outline:none;font-family:var(--font);max-width:260px;text-overflow:ellipsis}.ssel:focus{border-color:var(--primary)}.ctrl .ssel{min-width:160px;box-shadow:0 4px 14px #00000014}.ev-editor{background:linear-gradient(90deg,#d500320d,#fafafc 40%);border:2px solid var(--primary);border-radius:10px;padding:11px 13px;display:flex;flex-direction:column;gap:8px;box-shadow:0 6px 16px #d5003214}.ev-editor input,.ev-editor textarea{width:100%;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink);font-size:13px;outline:none;font-family:var(--font)}.ev-editor input:focus,.ev-editor textarea:focus{border-color:var(--primary)}.ev-editor textarea{resize:vertical;min-height:70px;line-height:1.6}.ev-editor label{font-size:10.5px;font-weight:800;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em}.std-ref{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.std-ref-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.std-ref-chip{font-size:10.5px;font-weight:800;color:var(--ink-muted);background:var(--line-soft);border-radius:20px;padding:2px 8px;cursor:pointer}.std-ref-chip:hover{background:var(--line)}.std-ref-chip.active{background:var(--primary);color:#fff}.std-ref-text{font-size:12px;line-height:1.55;color:var(--ink);white-space:pre-wrap}.std-ref-warn{margin-top:6px;font-size:11px;color:var(--finding);font-weight:700;line-height:1.5}.std-ref-full{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.std-ref-full summary{font-size:11px;font-weight:800;color:var(--ink-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.05em}.std-ref-full .std-ref-text{margin-top:8px;max-height:160px;overflow-y:auto}.ev-actions{display:flex;gap:8px}.actionlink{font-size:11.5px;font-weight:700;cursor:pointer;background:none;border:none;padding:2px 0;font-family:var(--font)}.actionlink.primary{color:var(--primary)}.actionlink.muted{color:var(--ink-muted)}.actionlink.danger{color:var(--finding)}.show-more-bar{display:block;text-align:center;padding:9px;margin:2px 0;font-size:12px;font-weight:800;color:var(--primary);background:#fdf0f1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer}.show-more-bar:hover{background:#fbe3e5}.doclink-chip{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--primary);background:#fdf0f1;border:1px solid #f0ccd0;border-radius:999px;padding:5px 12px}.doclink-picker{margin-top:8px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fafafc;display:flex;flex-direction:column;gap:8px;max-width:420px}.doclink-results{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.doclink-result{padding:6px 8px;border-radius:6px;cursor:pointer}.doclink-result:hover{background:#f0eef0}.doclink-result-title{font-size:12.5px;font-weight:700;color:var(--ink)}.doclink-result-folder{font-size:10.5px;color:var(--ink-muted)}.toast{position:fixed;bottom:20px;right:20px;background:#14141a;color:#fff;border-radius:10px;padding:10px 16px;font-size:13px;z-index:2000;box-shadow:0 10px 30px #0000004d;opacity:0;transform:translateY(8px);transition:all .2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d8d8e0;border-radius:3px}.app-loginWrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;z-index:1}.app-loginHero{position:relative;display:inline-flex;margin-right:clamp(300px,32vw,560px)}.app-loginHero:before{content:"";position:absolute;top:50%;left:calc(100% + 24px);transform:translateY(-50%);width:clamp(340px,32vw,560px);aspect-ratio:1402 / 768;background-image:linear-gradient(100deg,var(--bg) 0%,transparent 14%),url(/brand/aircraft/hka-three-quarter-front.png);background-size:100% 100%,contain;background-position:0 0,center;background-repeat:no-repeat,no-repeat;pointer-events:none}@media (max-width: 880px){.app-loginHero{margin-right:0}.app-loginHero:before{display:none}}.app-loginCard{position:relative;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--primary);border-radius:18px;box-shadow:0 20px 50px #101b271a;padding:30px 28px;width:100%;max-width:290px;display:flex;flex-direction:column;gap:14px}.app-loginCard .shield{margin-bottom:4px}.app-loginCard .hdr-sub{color:var(--ink-muted);font-size:12px;margin-bottom:6px}.app-loginLabel{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.07em}.app-loginLabel input{background:var(--line-soft);border:1px solid var(--line);border-radius:8px;padding:9px 11px;color:var(--ink);font-size:13px;font-weight:400;text-transform:none;letter-spacing:normal;outline:none}.app-loginLabel input:focus{border-color:var(--primary);background:var(--panel)}.app-loginError{background:var(--finding-bg);color:var(--finding);border-radius:8px;padding:9px 11px;font-size:12px}.app-loginHint{font-size:11px;color:var(--ink-faint);text-align:center;margin:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#08080a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal-card{background:var(--panel);border-radius:18px;box-shadow:0 30px 80px #00000080;width:min(1100px,100%);height:100%;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}.modal-card .dp{flex:1;min-height:0}@media (max-width: 860px){.main{flex-direction:column}.lp{width:100%!important;max-height:280px;border-right:none;border-bottom:1px solid var(--line)}.resizer{display:none}.statTiles{grid-template-columns:repeat(2,1fr)}.statTile.progress{grid-column:span 2}.modal-overlay{padding:8px}}
