:root{--ink:#1d2433;--navy:#16294d;--gold:#8a6d3b;--paper:#fbfaf7;--paper-2:#f6f4ee;--paper-3:#f2efe6;--line:#e0ddd3;--line-2:#d6d1c4;--mute:#6e6a5b;--mute-2:#7d7868;--green:#1e7d3f;--red:#b02a2a;--amber:#7a5509;--sans:"Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;--serif:"Noto Serif KR", serif;--mono:"IBM Plex Mono", ui-monospace, monospace;font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.6}*{box-sizing:border-box}body{margin:0}button{font-family:var(--sans);cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--navy)}a:hover{color:var(--gold)}.app{grid-template-columns:250px 1fr;min-height:100vh;display:grid}@media (width<=860px){.app{grid-template-columns:1fr}}.sidebar{border-right:1px solid var(--line);background:var(--paper-2);flex-direction:column;height:100vh;padding:22px 0;display:flex;position:sticky;top:0}.brand{flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding:0 22px 20px;display:flex}.brand-name{font-family:var(--serif);color:var(--navy);letter-spacing:-.5px;font-size:21px;font-weight:700}.brand-sub{color:var(--mute);letter-spacing:2px;font-size:11px}.new-research{border:1px solid var(--navy);background:var(--navy);color:#fff;margin:0 18px 22px;padding:10px 0;font-size:12.5px;font-weight:600}.rail-label{letter-spacing:1.5px;color:var(--mute);padding:0 22px 10px;font-size:10.5px;font-weight:600}.rail-list{flex-direction:column;display:flex;overflow-y:auto}.rail-item{text-align:left;color:#4b5563;background:0 0;border:none;border-left:3px solid #0000;flex-direction:column;gap:2px;padding:10px 22px;font-size:12.5px;display:flex}.rail-item.active{background:var(--paper);border-left-color:var(--gold);color:var(--navy);font-weight:600}.rail-item small{color:var(--mute-2);font-size:10.5px;font-weight:400}.rail-empty{color:var(--mute-2);padding:4px 22px;font-size:12px}.sidebar-foot{border-top:1px solid var(--line);color:var(--mute);margin-top:auto;padding:16px 22px 0;font-size:10.5px;line-height:1.6}.main{flex-direction:column;min-height:100vh;display:flex}.main-header{border-bottom:2px solid var(--navy);background:var(--paper);z-index:5;justify-content:space-between;align-items:center;gap:16px;padding:16px 40px;display:flex;position:sticky;top:0}.main-title{font-family:var(--serif);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;overflow:hidden}.main-header-meta{color:#4b5563;flex:none;font-size:12px}.transcript{flex-direction:column;flex:1;gap:28px;width:100%;max-width:820px;margin:0 auto;padding:32px 48px 20px;display:flex}.query-block{flex-direction:column;gap:8px;display:flex}.query-meta{align-items:baseline;gap:10px;display:flex}.query-kicker{letter-spacing:1.5px;color:var(--gold);font-size:11px;font-weight:700}.query-time{color:var(--mute);font-size:11px}.query-text{font-family:var(--serif);color:var(--navy);margin:0;font-size:19px;font-weight:600;line-height:1.5}.query-rule{background:linear-gradient(to right, var(--navy) 60px, #e5e3dc 60px);height:1px}.result-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.result-kicker{letter-spacing:1.5px;color:var(--navy);font-size:11px;font-weight:700}.pill{border:1px solid;border-radius:99px;padding:2px 9px;font-size:11px}.pill.ok{color:var(--green)}.pill.warn{color:var(--amber)}.confidence{color:#6b7280;font-size:11px}.confidence strong{font-variant-numeric:tabular-nums}.section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-title{font-family:var(--serif);color:var(--navy);margin:0;font-size:14.5px}.section-title .accent{color:var(--gold)}.section-note{color:var(--mute);font-size:11.5px}.clause-list{flex-direction:column;gap:10px;display:flex}.clause-card{border:1px solid var(--line);background:#fff;grid-template-columns:52px 1fr;display:grid}.clause-rank{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px 0;display:flex}.clause-rank.r1{background:var(--navy)}.clause-rank.r2{background:#5a6b8c}.clause-rank.r3{background:#8b96ab}.clause-rank .num{font-family:var(--mono);font-size:16px;font-weight:600}.clause-rank .score{font-family:var(--mono);opacity:.75;font-size:10px}.clause-body{flex-direction:column;gap:7px;min-width:0;padding:13px 18px;display:flex}.clause-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.clause-title{color:var(--navy);font-size:13px;font-weight:700}.clause-content{color:#374151;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.7}.page-btn{font-family:var(--mono);border:1px solid var(--navy);color:var(--navy);background:#fff;border-radius:2px;padding:2px 9px;font-size:10.5px}.page-btn:hover{background:var(--navy);color:#fff}.answer-block{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:16px;display:flex}.answer-text{color:#1f2937;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.85}.cite-list{flex-direction:column;gap:6px;display:flex}details.cite-card{border:1px solid var(--line);background:var(--paper-2)}details.cite-card summary{cursor:pointer;color:#4b5563;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 14px;font-size:12px;list-style:none;display:flex}details.cite-card summary:before{content:"›";font-family:var(--mono);color:var(--gold);transition:transform .15s}details.cite-card[open] summary:before{transform:rotate(90deg)}details.cite-card summary strong{color:var(--navy)}details.cite-card summary .rel{font-family:var(--mono);color:var(--gold);font-size:10.5px}details.cite-card .cite-content{color:#4b5563;white-space:pre-wrap;margin:0;padding:0 14px 12px 30px;font-size:12.5px;line-height:1.7}.muted{color:var(--mute);font-size:12.5px}.hil-card{border:1px solid var(--gold);background:#fff;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.hil-kicker{letter-spacing:1.5px;color:var(--gold);font-size:11px;font-weight:700}.hil-desc{color:#374151;margin:0;font-size:13px;line-height:1.6}.hil-desc strong{color:var(--navy)}.hil-queries{flex-direction:column;gap:6px;display:flex}.hil-query{background:var(--paper-3);color:#1f2937;padding:7px 12px;font-size:12.5px}.hil-actions{flex-wrap:wrap;gap:8px;display:flex}.hil-actions input{border:1px solid var(--line-2);min-width:160px;font-size:12.5px;font-family:var(--sans);background:#fff;outline:none;flex:1;padding:8px 10px}.hil-actions input:focus{border-color:var(--navy)}.btn-primary{background:var(--navy);color:#fff;border:none;padding:8px 18px;font-size:12.5px;font-weight:600}.btn-secondary{color:var(--navy);border:1px solid var(--navy);background:#fff;padding:8px 14px;font-size:12.5px;font-weight:600}.loading-card{border:1px solid var(--line);background:#fff;align-items:center;gap:14px;padding:14px 18px;display:flex}.spinner{border:2px solid var(--navy);border-top-color:var(--line);border-radius:50%;flex:none;width:14px;height:14px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.loading-label{color:var(--navy);font-size:12.5px;font-weight:600}.loading-pipeline{font-family:var(--mono);color:var(--mute);font-size:10.5px}.fatal-error{border:1px solid var(--line-2);background:var(--paper-2);text-align:center;flex-direction:column;gap:14px;max-width:480px;margin:20vh auto 0;padding:24px;display:flex}.fatal-error button{border:1px solid var(--navy);background:var(--navy);color:#fff;align-self:center;padding:8px 22px;font-size:13px}.error-card{background:#fdf5f5;border:1px solid #c88;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.error-card p{color:var(--red);margin:0;font-size:12.5px}.error-card button{border:1px solid var(--red);color:var(--red);background:0 0;flex:none;padding:4px 12px;font-size:11.5px}.notice{border:1px solid var(--line);background:#fff;padding:12px 18px;font-size:12.5px}.notice.warning{color:var(--amber);background:#fdf9ee;border-color:#e3cf9e}.notice.info{color:var(--navy)}.hil-resolved{border:1px solid var(--line-2);background:var(--paper-2);flex-direction:column;gap:8px;padding:13px 18px;display:flex}.hil-resolved-head{align-items:center;gap:10px;display:flex}.hil-resolved-head .pill{margin-left:auto}.composer-wrap{background:linear-gradient(to top, var(--paper) 75%, transparent);width:100%;max-width:820px;margin:0 auto;padding:14px 48px 24px;position:sticky;bottom:0}.composer{border:1px solid var(--navy);background:#fff;align-items:center;gap:12px;padding:12px 16px;display:flex;box-shadow:0 2px #16294d1f}.composer select{color:var(--navy);font-size:12.5px;font-weight:600;font-family:var(--sans);background:0 0;border:none;outline:none}.composer-divider{background:var(--line);width:1px;height:18px}.composer input{font-size:14px;font-family:var(--sans);color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0}.composer .btn-primary{flex:none;padding:8px 22px;font-size:13px}.composer-note{color:var(--mute-2);margin:8px 2px 0;font-size:10.5px}@media (width<=860px){.sidebar{display:none}.transcript,.composer-wrap{padding-left:20px;padding-right:20px}.main-header{padding:14px 20px}}.empty-state{text-align:center;flex-direction:column;gap:10px;margin:auto;padding:60px 20px;display:flex}.empty-state .brand-name{font-size:34px}.empty-state p{color:var(--mute);margin:0;font-size:13.5px}.viewer-overlay{z-index:10;background:#16294d8c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.viewer-panel{background:var(--paper);flex-direction:column;width:min(960px,100%);height:min(90vh,100%);display:flex}.viewer-header{border-bottom:2px solid var(--navy);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 1rem;padding:12px 16px;display:flex}.viewer-title{font-family:var(--serif);color:var(--navy);font-size:13.5px;font-weight:600}.viewer-header button{border:1px solid var(--navy);color:var(--navy);white-space:nowrap;background:0 0;padding:3px 12px;font-size:11.5px}.viewer-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.viewer-nav input{border:1px solid var(--line-2);background:var(--paper);width:52px;font-family:var(--mono);color:var(--ink);text-align:right;padding:3px 6px;font-size:12px}.viewer-nav-unit{color:var(--mute);font-size:11.5px}.viewer-body{flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px 16px;display:flex}.viewer-frame{border:1px solid var(--line);flex:1;width:100%}.viewer-copyright{color:var(--mute);text-align:center;margin:0;padding:0 16px 10px;font-size:10.5px}
