:root{color:#1e293b;background:#f4f6fa;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--brand: #2323b3;--brand-dark: #191987;--brand-soft: #eeeeff;--border: #d8dee9;--muted: #64748b;--surface: #ffffff;--focus: #f59e0b}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;min-width:320px;min-height:100vh}button{min-height:2.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);color:inherit;font:inherit;font-weight:650;cursor:pointer}button:hover:not(:disabled){border-color:#9aa6b7;background:#f8fafc}.primary-button:hover:not(:disabled){border-color:var(--brand-dark);background:var(--brand-dark)}.filter-pills .pill-active:hover:not(:disabled),.record-row-active:hover:not(:disabled){border-color:#cfd2ff;background:var(--brand-soft)}.stage-nav .stage-active:hover:not(:disabled),.picker-option-current:hover:not(:disabled){border-color:transparent;background:var(--brand-soft)}button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{display:grid;min-height:100vh;grid-template:"topbar" auto "main" 1fr / minmax(0,1fr)}.topbar{grid-area:topbar;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.5rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface)}.topbar h1,.stage-panel h2,.foundation-card h3{margin:0;line-height:1.2}.topbar h1{font-size:clamp(1.15rem,2vw,1.4rem)}.eyebrow{margin:0 0 .2rem;color:var(--muted);font-size:.75rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:.75rem}.save-state{display:inline-block;min-width:6rem;color:var(--muted);font-size:.875rem;text-align:right}.quiet-button{padding-inline:.9rem}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;min-height:2.4rem;padding:0;border-color:transparent;background:transparent;color:var(--muted)}.icon-button:hover:not(:disabled){border-color:transparent;background:#eef1f7;color:inherit}.topbar-nav{display:flex;gap:.25rem;padding:.25rem;border:1px solid var(--border);border-radius:999px;background:#f8fafc}.topbar-tab{min-height:2.4rem;padding:0 1rem;border-color:transparent;border-radius:999px;background:transparent;color:var(--muted)}.topbar-tab:hover:not(:disabled){border-color:transparent;background:#eef1f7}.topbar-tab-active,.topbar-tab-active:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-dark)}.main-content{grid-area:main;display:flex;min-width:0;flex-direction:column;padding:1.5rem clamp(1rem,4vw,3rem) 1rem}.case-identity{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem 2rem;max-width:76rem;width:100%;margin:0 auto 1.25rem}.case-identity-main{min-width:0}.case-name{margin:0;font-size:1.2rem;font-weight:700}.case-identity-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.25rem}.meta-item{display:inline-flex;align-items:center;gap:.5rem}.meta-label{color:var(--muted);font-size:.75rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.position-trigger,.danger-button,.case-identity-meta .status-pill{display:inline-flex;align-items:center;min-height:2.25rem;font-size:.875rem}.position-trigger,.danger-button{padding:0 .75rem;gap:.5rem}.position-trigger-value{font-weight:650}.position-trigger svg{flex:none;color:var(--muted)}.danger-button{border-color:var(--border);color:#b42318;background:transparent}.danger-button:hover:not(:disabled){border-color:#f87171;background:#fef2f2}.validation-status{min-height:1.5rem;margin-bottom:0;color:var(--muted);font-weight:650}.stage-nav{max-width:76rem;width:100%;margin:0 auto;overflow-x:auto;border-block:1px solid var(--border);background:var(--surface)}.stage-nav ol{display:flex;min-width:max-content;padding:.6rem;margin:0;gap:.35rem;list-style:none}.stage-nav button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-color:transparent;background:transparent;color:var(--muted);font-size:.875rem}.stage-nav .stage-active{color:var(--brand-dark);background:var(--brand-soft)}.stage-number{display:inline-grid;width:1.5rem;height:1.5rem;place-items:center;border:1px solid currentColor;border-radius:999px;font-size:.75rem}.stage-panel{display:block;max-width:76rem;width:100%;min-height:24rem;margin:1.5rem auto 0;padding:clamp(1.25rem,3vw,2.25rem);border:1px solid var(--border);border-radius:.75rem;background:var(--surface);box-shadow:0 .25rem 1rem #1e293b0f}input,select,textarea{width:100%;border:1px solid #b8c2d1;border-radius:.45rem;background:#fff;color:inherit;font:inherit}input,select{min-height:2.75rem;padding:.55rem .65rem}textarea{min-height:5rem;padding:.7rem;line-height:1.5;resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}label,legend{font-weight:650}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-state{display:grid;min-height:100vh;place-content:center;padding:2rem;text-align:center}.view{max-width:76rem;width:100%;margin:0 auto}.view-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.view-header h2{margin:0;font-size:clamp(1.5rem,3vw,2rem)}.view-subtitle{margin:.25rem 0 0;color:var(--muted)}.back-link{min-height:2rem;padding:0;border:0;background:transparent;color:var(--brand-dark)}.list-controls{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.list-controls input[type=search]{flex:1 1 16rem;width:auto}.filter-pills{display:flex;gap:.35rem}.filter-pills button{padding:0 1rem;border-radius:999px;color:var(--muted)}.filter-pills .pill-active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark)}.record-list{display:grid;padding:0;margin:0;gap:.6rem;list-style:none}.record-row{display:flex;align-items:center;width:100%;height:auto;padding:.8rem 1rem;gap:1rem;border:1px solid var(--border);border-radius:.6rem;background:var(--surface)}.record-row-button{text-align:left}.record-row-active{border-color:#cfd2ff;background:var(--brand-soft)}.record-main{display:grid;flex:1 1 auto;min-width:0;gap:.15rem}.record-name{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.record-sub{overflow:hidden;color:var(--muted);font-size:.85rem;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.record-date{color:var(--muted);font-size:.85rem;font-weight:400;white-space:nowrap}.row-actions{display:flex;gap:.5rem}.row-actions button{min-height:2.4rem;padding:0 .8rem;font-size:.85rem}.empty-list-note{color:var(--muted)}.status-pill{display:inline-flex;align-items:center;padding:.25rem .7rem;gap:.35rem;border:1px solid var(--border);border-radius:999px;font-size:.8rem;font-weight:700;white-space:nowrap}.status-pill-done{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.status-pill-progress{border-color:#c7d2fe;background:#eef2ff;color:#3730a3}.status-pill-idle{background:#f1f5f9;color:var(--muted)}.position-context{position:relative;display:flex;align-items:center;gap:.5rem}.picker-popover{position:absolute;top:calc(100% + .4rem);left:0;z-index:20;width:min(22rem,90vw);padding:.75rem;border:1px solid var(--border);border-radius:.65rem;background:var(--surface);box-shadow:0 .75rem 2rem #0f172a2e;font-weight:400}.picker-popover input{margin-bottom:.6rem}.picker-popover ul{display:grid;max-height:16rem;padding:0;margin:0;gap:.2rem;overflow-y:auto;list-style:none}.picker-option{display:grid;height:auto;width:100%;padding:.55rem .65rem;gap:.1rem;border-color:transparent;background:transparent;text-align:left}.picker-option small{color:var(--muted);font-weight:400}.picker-option-current{border-color:#cfd2ff;background:var(--brand-soft)}.picker-empty{padding:.5rem .65rem;color:var(--muted);font-size:.85rem}.picker-new{padding-top:.6rem;margin-top:.6rem;border-top:1px solid var(--border)}.picker-new button{width:100%;border-style:dashed;color:var(--brand-dark)}.global-error,.field-error{color:#9f1239}.global-error{max-width:76rem;width:100%;margin:0 auto 1rem;padding:.75rem;border:1px solid #fda4af;border-radius:.5rem;background:#fff1f2}.stage-form{display:grid;max-width:52rem;gap:1.25rem}.stage-heading{margin-bottom:.25rem}.stage-heading h2,.settings-view h2{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2rem)}.stage-heading>p:last-child,.settings-view>p{margin:0;color:var(--muted);line-height:1.6}.form-field,.review-editor>label,.technical-editor-row label,.danger-zone label{display:grid;gap:.4rem}.field-hint{margin:0;color:var(--muted);font-size:.8rem;font-weight:400}.choice-field{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;padding:1rem;border:1px solid var(--border);border-radius:.55rem}.choice-field legend,.choice-field .field-hint{width:100%}.choice-field label,.acknowledge-row{display:flex;align-items:center;gap:.5rem}.choice-field input,.acknowledge-row input{width:1.15rem;min-height:1.15rem}details{border:1px solid var(--border);border-radius:.55rem}summary{padding:1rem;cursor:pointer;font-weight:700}.details-content{display:grid;gap:1rem;padding:0 1rem 1rem}.boundary-panel,.numbered-task,.issue-summary,.correction-action,.page-fit,.kimi-warnings,.export-panel,.settings-card{padding:1rem;border:1px solid var(--border);border-radius:.6rem}.boundary-panel h3,.numbered-task h3,.issue-summary h3,.correction-action h3,.page-fit h3,.kimi-warnings h3,.settings-card h3{margin-top:0}.sent-boundary{border-left:4px solid var(--brand)}.private-boundary{border-left:4px solid #64748b;background:#f8fafc}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.inline-status{margin-left:.75rem;color:var(--muted);font-size:.85rem}.numbered-task{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.75rem}.numbered-task>span{display:grid;width:2rem;height:2rem;place-items:center;border-radius:999px;background:var(--brand);color:#fff;font-weight:750}.numbered-task h3{margin-bottom:.75rem}.json-input,.prompt-fallback{margin-bottom:.75rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem}.align-end{justify-self:end}.issue-summary{border-color:#f2c0c6;background:snow}.correction-action{border-color:#c7d2fe;background:#f8faff}.correction-action .prompt-fallback{display:block;margin-top:.75rem}.issue-summary ul,.kimi-warnings ul{display:grid;padding-left:1.25rem;gap:.65rem}.issue-summary code{display:block;margin-top:.2rem;color:var(--muted);font-size:.75rem}.issue-warning strong{color:#92400e}.issue-error strong{color:#9f1239}.review-stage-panel{max-width:90rem;padding:1.25rem}.review-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);gap:1.5rem}.review-editor,.review-preview-panel{display:grid;align-content:start;gap:1rem;min-width:0}.review-preview-panel{container-type:inline-size}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:.55rem}.inline-fields legend{padding-inline:.25rem}.inline-fields label{display:grid;gap:.35rem}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-title-row h3,.section-title-row h2{margin:0}.editor-list{display:grid;padding:0;margin:0;gap:.75rem;list-style:none}.editor-list>li{display:grid;gap:.65rem;padding:1rem;border:1px solid var(--border);border-radius:.55rem}.editor-list label{display:grid;gap:.35rem}.item-actions{display:flex;justify-content:flex-end;gap:.35rem}.item-actions button{min-width:2.75rem}.undo-bar{padding:.75rem;border-radius:.5rem;background:#eef2ff}.technical-editor-row{grid-template-columns:minmax(8rem,2fr) minmax(5rem,.7fr) minmax(7rem,1fr) auto;align-items:end}.document-preview{aspect-ratio:8.5 / 11;min-height:0;box-sizing:border-box;padding:6.8% 11.8% 9%;border:1px solid #cbd5e1;border-top:.8cqi solid var(--brand);background:#fff;box-shadow:0 .35rem 1.2rem #0f172a1f;font-family:Arial,sans-serif;font-size:1.72cqi;line-height:1.36}.preview-disclaimer{margin:0;color:var(--muted);font-size:.78rem}.preview-brand{margin:0 0 1.65em;color:var(--brand);font-size:1.55em;font-weight:800;letter-spacing:.08em}.document-preview h3,.document-preview h4{margin-block:.8em;font-size:1em}.document-preview h3 span{color:var(--brand)}.document-preview ul{padding-left:1.45em;margin-block:.65em}.document-preview li{margin-bottom:.55em}.page-fit h3{text-transform:capitalize}.fit-safe{border-left:4px solid #15803d;background:#f0fdf4}.fit-near-limit{border-left:4px solid #b45309;background:#fffbeb}.fit-too-long{border-left:4px solid #be123c;background:#fff1f2}.template-limitation{color:var(--muted);font-size:.78rem;line-height:1.5}.settings-view{display:grid;max-width:58rem;width:100%;margin:0 auto;gap:1.25rem}.version-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin:0}.version-list div{padding:.75rem;border:1px solid var(--border);border-radius:.5rem}.version-list dt{color:var(--muted);font-size:.75rem;text-transform:capitalize}.version-list dd{margin:.25rem 0 0;font-weight:700}.settings-card{display:grid;justify-items:start;gap:.75rem}.file-button{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);font-weight:650;cursor:pointer}.file-button:hover{border-color:#9aa6b7;background:#f8fafc}.file-button:focus-within{outline:3px solid var(--focus);outline-offset:2px}.file-name{color:var(--muted);font-size:.875rem;font-weight:400}.danger-zone{border-color:#fda4af}.stage-copy h2{margin-bottom:.65rem;font-size:clamp(1.5rem,3vw,2rem)}.stage-copy>p:last-child,.foundation-card p{max-width:60ch;margin:0;color:var(--muted);line-height:1.65}.foundation-card{padding:1.25rem;border:1px solid #cfd2ff;border-radius:.65rem;background:#f8f8ff}.foundation-card h3{margin-bottom:.5rem;font-size:1rem}.stage-actions{display:flex;justify-content:space-between;grid-column:1 / -1;gap:.75rem;padding-top:1.5rem;border-top:1px solid var(--border)}.primary-button,.secondary-button{padding-inline:1rem}.primary-button{border-color:var(--brand);background:var(--brand);color:#fff}.app-footer{display:flex;max-width:76rem;width:100%;margin:auto auto 0;padding-top:1.25rem;gap:1.25rem;color:var(--muted);font-size:.75rem}.dialog-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#0f172a73}.dialog-card{width:min(26rem,100%);padding:1.5rem;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);box-shadow:0 1.5rem 3rem #0f172a40}.dialog-card h2{margin:0 0 .5rem;font-size:1.25rem}.dialog-card p{margin:0;color:var(--muted);line-height:1.6}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.25rem}.danger-primary{border-color:#b42318;background:#b42318;color:#fff}.danger-primary:hover:not(:disabled){border-color:#8a1a10;background:#8a1a10}.settings-note{max-width:60ch;margin:0;color:var(--muted);line-height:1.6}.settings-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.backup-preview{display:grid;justify-items:start;gap:.5rem;padding:.75rem 1rem;border:1px solid #c7d2fe;border-radius:.5rem;background:#f8faff}.backup-preview p{margin:0}.danger-zone-field{display:grid;max-width:16rem;gap:.4rem}.settings-status{min-height:1.5rem;margin:0;color:var(--muted);font-weight:650}@media(max-width:900px){.topbar{flex-wrap:wrap}.topbar-nav{order:3;width:100%;justify-content:center}.review-layout{grid-template-columns:1fr}}@media(max-width:700px){.topbar{align-items:flex-start;padding-inline:1rem}.save-state{display:none}.case-identity{align-items:flex-start;flex-direction:column;gap:.75rem}.case-identity-meta{width:100%}.stage-panel{min-height:21rem}.view-header{align-items:stretch;flex-direction:column}.record-row{flex-wrap:wrap}.stage-actions{grid-column:auto}.stage-actions button{flex:1}.app-footer{flex-wrap:wrap}.form-grid,.inline-fields,.technical-editor-row{grid-template-columns:1fr}.document-preview{min-height:auto;padding:1.25rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
