:root{color:#17212b;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--accent: #176b87;--accent-hover: #0e536c;--border: #d5dce3;--border-dark: #b9c4ce;--muted: #617181;--surface: #fff;--surface-soft: #f7f9fb;--danger: #9f2d2d;--success: #26724d;--warning: #8a5a12}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;width:100%}body{min-height:100vh;min-width:320px;overflow-x:hidden}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(36,94,137,.35);outline-offset:2px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{color:#18222d;font-size:30px;letter-spacing:-.02em;margin-bottom:8px}h2{color:#1d2b37;font-size:21px}code,kbd,pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}kbd{background:#ffffffc2;border:1px solid rgba(0,0,0,.2);border-radius:4px;font-size:11px;min-width:22px;padding:2px 5px;text-align:center}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.muted{color:var(--muted)}.eyebrow{color:#647585;font-size:11px;font-weight:750;letter-spacing:.11em;margin-bottom:6px;text-transform:uppercase}.badge{align-items:center;background:#edf1f4;border:1px solid #d7dee4;border-radius:999px;color:#50606e;display:inline-flex;font-size:11px;font-weight:650;margin-right:6px;padding:3px 8px}.badge--exact{background:#e8f4ed;border-color:#b9ddc7;color:#246844}.panel-label{color:#687988;display:block;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.primary-button,.secondary-button,.danger-button,.text-button,.icon-button,.nav-button,.skip-button,.label-button{align-items:center;border-radius:8px;display:inline-flex;font-weight:650;justify-content:center;min-height:38px;padding:8px 14px;text-decoration:none;transition:background .15s ease,border-color .15s ease,transform .15s ease}.primary-button{background:var(--accent);border:1px solid var(--accent);color:#fff}.primary-button:hover:not(:disabled){background:var(--accent-hover)}.primary-button--wide{width:100%}.secondary-button{background:#fff;border:1px solid var(--border-dark);color:#314353}.secondary-button:hover:not(:disabled){background:#f4f6f7}.danger-button{background:#fff;border:1px solid #cf8e8e;color:var(--danger)}.text-button{background:transparent;border:0;color:var(--accent);min-height:30px;padding:4px 7px}.text-button:hover{text-decoration:underline}.icon-button{background:transparent;border:1px solid transparent;font-size:20px;height:36px;min-height:36px;padding:0;width:36px}.icon-button:hover{background:#eef1f3;border-color:var(--border)}.back-link{background:transparent;border:0;color:var(--accent);margin:0 0 22px;padding:0}.app{min-height:100vh}.app--review{height:100vh;overflow:hidden}.app-header{align-items:center;background:#fff;border-bottom:1px solid var(--border);display:grid;grid-template-columns:260px 1fr auto;height:58px;padding:0 26px}.app-brand{align-items:center;background:none;border:0;display:flex;gap:10px;padding:0}.app-brand>span,.brand-mark{align-items:center;background:#203d54;border-radius:4px;color:#fff;display:flex;font-size:12px;font-weight:800;height:30px;justify-content:center;letter-spacing:.05em;width:34px}.app-brand strong{color:#20303d;font-size:15px}.app-header nav{align-self:stretch;display:flex;gap:4px}.app-header nav button{background:transparent;border:0;border-bottom:2px solid transparent;color:#546474;padding:0 16px}.app-header nav button[aria-current=page]{border-bottom-color:var(--accent);color:#1b4f76;font-weight:700}.user-menu{align-items:center;display:flex;gap:12px}.user-menu>span{color:#4d5d6b;font-size:13px}.user-menu button{background:#fff;border:1px solid var(--border);border-radius:5px;padding:6px 11px}.page{margin:0 auto;max-width:1280px;padding:42px 36px 80px}.page--narrow{max-width:870px}.page-heading{align-items:end;display:flex;justify-content:space-between;margin-bottom:26px}.page-heading h1{margin-bottom:0}.segmented{background:#e9edf0;border-radius:6px;display:inline-flex;margin-bottom:22px;padding:3px}.segmented button{background:transparent;border:0;border-radius:4px;color:#5a6875;padding:7px 17px}.segmented button[aria-pressed=true]{background:#fff;color:#213b50;font-weight:700}.session-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.session-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 2px #1d303f0a;display:flex;flex-direction:column;gap:9px;padding:14px 19px 15px;text-align:left}.session-card:hover{border-color:#8db4c3;box-shadow:0 6px 18px #1d405414}.session-card__open{align-items:stretch;background:transparent;border:0;display:flex;flex-direction:column;gap:9px;padding:7px 0;text-align:left;width:100%}.session-card__open:hover .session-card__top strong{color:var(--accent)}.session-card__delete{align-self:end;background:#fff;min-height:32px;padding:5px 10px}.session-card__top{align-items:start;display:flex;font-size:16px;gap:10px;justify-content:space-between}.session-card .muted{font-size:12px}.progress-line{appearance:none;background:#e8edf0;border:0;border-radius:2px;height:4px;overflow:hidden;width:100%}.progress-line::-webkit-progress-bar{background:#e8edf0}.progress-line::-webkit-progress-value{background:#3e7b62}.progress-line::-moz-progress-bar{background:#3e7b62}.session-counts{color:#526371;display:grid;font-size:11px;grid-template-columns:repeat(4,auto);justify-content:space-between}.empty-state,.review-loading,.queue-end{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:360px;padding:40px;text-align:center}.form-card,.preview-card,.settings-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 12px #1c31400a;margin-bottom:18px;padding:24px}.form-card{display:flex;flex-direction:column;gap:20px}.form-card label:not(.check-row):not(.radio-card),.login-card form label{color:#3c4d5a;display:flex;flex-direction:column;font-size:13px;font-weight:700;gap:7px}input,select,textarea{background:#fff;border:1px solid var(--border-dark);border-radius:5px;padding:9px 10px}textarea{line-height:1.45;resize:vertical}fieldset{border:0;margin:0;padding:0}legend{font-size:13px;font-weight:750;margin-bottom:10px}.radio-card{align-items:start;border:1px solid var(--border);border-radius:6px;display:flex;gap:10px;margin-bottom:8px;padding:13px}.radio-card:has(input:checked){background:#f3f8fb;border-color:#75a1c1}.radio-card span{display:flex;flex-direction:column;gap:4px}.radio-card small,.check-row small{color:var(--muted);font-weight:400}.check-row{align-items:flex-start;display:flex;font-size:13px;gap:8px}.check-row>span{display:flex;flex-direction:column;gap:2px}.task-list,.export-session-list{border:1px solid var(--border);border-radius:5px;display:grid;gap:8px;margin-top:9px;max-height:220px;overflow:auto;padding:11px}.file-input-row,.form-actions,.download-actions{align-items:center;display:flex;gap:10px}.parse-summary{background:var(--surface-soft);border:1px solid var(--border);border-radius:5px;display:flex;font-size:12px;gap:24px;padding:10px 12px}.good{color:var(--success)}.bad{color:var(--danger)}.preview-card h2{margin-bottom:16px}.preview-metrics{display:flex;gap:12px;margin-bottom:14px}.preview-metrics>span{background:var(--surface-soft);border:1px solid var(--border);border-radius:5px;display:flex;flex-direction:column;font-size:11px;min-width:120px;padding:11px}.preview-metrics strong{color:#203b50;font-size:20px}.findings{font-size:12px;max-height:250px;overflow:auto}.page-lead{color:var(--muted);margin:8px 0 0;max-width:720px}.create-session-page{max-width:1320px}.create-session-layout{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 300px}.create-session-form{gap:0;padding:0 28px}.form-section{border-bottom:1px solid #e7ebee;display:grid;gap:16px;grid-template-columns:34px minmax(0,1fr);padding:28px 0}.form-section__number{align-items:center;background:#e5f1f5;border-radius:50%;color:var(--accent);display:flex;font-size:13px;font-weight:800;height:30px;justify-content:center;width:30px}.form-section__body{display:flex;flex-direction:column;gap:16px;min-width:0}.form-section__body h2{font-size:18px;margin:3px 0 0}.form-hint{color:var(--muted);font-size:12px;margin:-8px 0 0}.choice-grid{display:grid;gap:10px;grid-template-columns:1fr 1fr}.choice-grid .radio-card{margin:0}.class-editor{border:1px solid var(--border);border-radius:9px;overflow:hidden}.class-editor__row{align-items:center;border-bottom:1px solid #e8ecef;display:grid;gap:9px;grid-template-columns:12px 28px minmax(140px,1fr) 132px 36px;padding:8px 10px}.class-editor__row:last-child{border-bottom:0}.class-editor__row input,.class-editor__row select{min-width:0}.class-swatch{border-radius:999px;height:10px;width:10px}.class-swatch--red{background:#c34848}.class-swatch--amber{background:#cf8c20}.class-swatch--green{background:#32805b}.class-swatch--violet{background:#7652ad}.class-swatch--blue{background:#3578b7}.class-swatch--cyan{background:#16899a}.class-swatch--pink{background:#bd4f7d}.class-swatch--gray{background:#6f7d88}.inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.creation-kind{margin:0;max-width:100%;overflow-x:auto}.recipient-list{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.recipient-card{align-items:center;border:1px solid var(--border);border-radius:8px;display:flex;gap:9px;min-width:0;padding:10px 12px}.recipient-card:has(input:checked){background:#eff7fa;border-color:#83b2c3}.recipient-card span{display:flex;flex-direction:column;min-width:0}.recipient-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipient-card small{color:var(--muted)}.all-submissions{background:#eef7f4;border:1px solid #bedbce;border-radius:8px;padding:12px}.create-summary{background:#172f3d;border-radius:12px;color:#eef6f8;padding:24px;position:sticky;top:78px}.create-summary h2{color:#fff;overflow-wrap:anywhere}.create-summary .eyebrow,.create-summary .muted{color:#adc2cc}.create-summary dl{border-bottom:1px solid rgba(255,255,255,.14);border-top:1px solid rgba(255,255,255,.14);margin:20px 0}.create-summary dl div{align-items:center;border-bottom:1px solid rgba(255,255,255,.09);display:flex;justify-content:space-between;padding:10px 0}.create-summary dl div:last-child{border:0}.create-summary dt{color:#adc2cc;font-size:11px}.create-summary dd{font-size:12px;margin:0;text-align:right}.summary-ready{display:flex;flex-direction:column;gap:12px}.summary-ready>strong{color:#fff}.summary-ready>small{color:#adc2cc}.summary-ready details{font-size:11px}.summary-ready .findings{max-height:180px;padding-left:18px}.label-filter{display:grid;gap:8px;grid-template-columns:1fr 1fr}.export-operation{background:#f6f8f9;border:1px solid var(--border);border-radius:5px;display:flex;flex-direction:column;font-size:12px;gap:5px;padding:11px 12px}.export-operation code{color:var(--muted);font-size:10px;overflow-wrap:anywhere}.export-result__heading{align-items:start;display:flex;justify-content:space-between}.export-metadata{border-bottom:1px solid var(--border);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(3,1fr);margin:18px 0}.export-metadata>div{padding:10px 8px}.export-metadata dt{color:var(--muted);font-size:10px;text-transform:uppercase}.export-metadata dd{font-size:12px;margin:4px 0 0;overflow-wrap:anywhere}.export-objects{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.export-objects ul{border:1px solid var(--border);border-radius:5px;list-style:none;margin:8px 0;max-height:320px;overflow:auto;padding:0}.export-objects li{align-items:center;border-bottom:1px solid #e8ecef;display:flex;font-size:11px;gap:12px;justify-content:space-between;padding:8px 10px}.export-objects li:last-child{border-bottom:0}.export-objects li a{overflow-wrap:anywhere}.export-objects li span{color:var(--muted);flex:0 0 auto}.login-screen,.boot-screen{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:40px}.boot-screen{flex-direction:column;gap:13px}.app-error p{color:var(--text-secondary);max-width:680px}.app-error__actions{display:flex;gap:10px}.login-card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:34px;width:430px}.login-card .brand-mark{margin-bottom:24px}.login-card h1{font-size:27px}.login-intro{color:var(--muted);font-size:14px;margin-bottom:24px}.login-card form{display:flex;flex-direction:column;gap:15px}.login-footnote{color:#778692;font-size:11px;line-height:1.5;margin:20px 0 0}.notice-banner,.error-banner,.success-banner{border-radius:5px;font-size:12px;line-height:1.45;margin-bottom:13px;padding:10px 12px}.notice-banner{align-items:start;background:#edf4f8;border:1px solid #bad0df;display:flex;justify-content:space-between}.notice-banner button{background:transparent;border:0}.error-banner{background:#fff0f0;border:1px solid #e1b4b4;color:#842828}.success-banner{background:#edf8f1;border:1px solid #b8d9c5;color:#256547}.settings-card{padding:26px}.binding-list{border-bottom:1px solid var(--border);border-top:1px solid var(--border);margin:20px 0}.binding-row{align-items:center;border-bottom:1px solid #e8ecef;display:flex;justify-content:space-between;min-height:53px}.binding-row:last-child{border-bottom:0}.key-capture{background:#f7f9fa;border:1px solid var(--border);border-radius:5px;min-width:150px;padding:8px}.key-capture--active{border-color:var(--accent)}.form-actions{justify-content:flex-end;margin-top:20px}.review-screen{background:#eef1f3;display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;overflow:hidden}.review-header,.review-subheader,.review-message,.review-controls{flex:0 0 auto}.review-header{align-items:center;background:#fff;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:40px minmax(190px,1fr) auto 86px 100px;padding:0 16px}.review-title{display:flex;flex-direction:column;min-width:0}.review-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-title span{color:var(--muted);font-size:10px;margin-top:3px}.review-identifiers{color:#526473;display:flex;font-size:11px;gap:16px}.review-identifiers b{color:#20313f;font-family:SFMono-Regular,Consolas,monospace;font-weight:600}.review-position{align-items:flex-end;display:flex;flex-direction:column}.review-position span{color:var(--muted);font-size:10px}.save-indicator{border-radius:4px;font-size:11px;font-weight:700;padding:6px 8px;text-align:center}.save-indicator--idle{color:#657583}.save-indicator--saving{background:#fff3dd;color:var(--warning)}.save-indicator--saved{background:#e8f5ee;color:var(--success)}.save-indicator--conflict,.save-indicator--error{background:#fdecec;color:var(--danger)}.review-subheader{align-items:center;background:#f8f9fa;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:0 17px}.review-progress{color:#566775;display:flex;font-size:10px;gap:16px}.review-progress span{align-items:center;display:inline-flex;gap:5px}.dot{border-radius:50%;display:inline-block;height:6px;width:6px}.dot--labeled{background:#438163}.dot--skipped{background:#84919c}.dot--pending{background:#c19238}.dot--problem{background:#b44646}.source-problem{color:var(--danger);font-size:10px}.review-message{align-items:center;background:#eaf3f8;border-bottom:1px solid #b9d0de;color:#2c5877;display:flex;font-size:11px;gap:10px;justify-content:center;min-height:32px;padding:5px 14px}.review-message--error{background:#fff0f0;border-color:#dfbbbb;color:var(--danger)}.review-workspace{display:grid;flex:1 1 auto;grid-template-columns:292px minmax(0,1fr);min-height:0;overflow:hidden}.review-sidebar{background:#f8fafb;border-right:1px solid var(--border);display:grid;grid-template-rows:auto minmax(130px,1fr);min-height:0;overflow:hidden}.review-decision{background:#fff;border-bottom:1px solid var(--border);max-height:72vh;overflow:auto;padding:14px 12px 12px}.files-panel{background:#f8fafb;display:grid;grid-template-rows:36px minmax(0,1fr) auto;min-height:0}.files-panel>.panel-label{align-items:center;border-bottom:1px solid var(--border);display:flex;padding:0 12px}.file-tree{overflow:auto;padding:5px 0}.file-tree__empty{color:var(--muted);font-size:12px;padding:16px}.file-node{align-items:center;background:transparent;border:0;color:#425361;display:flex;font-size:11px;gap:6px;height:30px;padding-right:8px;text-align:left;width:100%}.file-node[data-depth="0"]{padding-left:12px}.file-node[data-depth="1"]{padding-left:24px}.file-node[data-depth="2"]{padding-left:36px}.file-node[data-depth="3"]{padding-left:48px}.file-node[data-depth="4"]{padding-left:60px}.file-node:hover{background:#e9edf0}.file-node--selected{background:#dfeaf2;color:#183f5d;font-weight:650}.file-node__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-node__error{color:var(--danger);font-weight:800;margin-left:auto}.files-panel__footer{border-top:1px solid var(--border);color:var(--muted);display:flex;flex-direction:column;font-size:9px;gap:5px;padding:9px 12px}.viewer-panel{background:#fff;min-height:0;min-width:0;overflow:hidden}.artifact-viewer{display:grid;grid-template-rows:37px minmax(0,1fr);height:100%}.viewer-tabs{align-items:end;background:#f8f9fa;border-bottom:1px solid var(--border);display:flex;gap:2px;padding:0 10px}.viewer-tabs>button{background:transparent;border:0;border-bottom:2px solid transparent;color:#687887;height:37px;padding:0 14px}.viewer-tabs>button[aria-selected=true]{border-bottom-color:var(--accent);color:#244c69;font-weight:700}.format-toggle{align-items:center;color:var(--muted);display:flex;font-size:10px;gap:5px;margin:0 0 9px auto}.viewer-content{min-height:0;overflow:auto}.code-viewer{height:100%;min-height:180px;overflow:hidden}.code-viewer--embedded{min-height:38px}.code-viewer__placeholder{background:#fff;color:#24292f;font-size:13px;height:100%;line-height:19px;margin:0;overflow:hidden;padding:8px 12px;white-space:pre}.viewer-state{align-items:center;color:var(--muted);display:flex;flex-direction:column;height:100%;justify-content:center;padding:30px;text-align:center}.viewer-state--error{color:#7d3a3a}.viewer-state h2{margin-bottom:6px}.notebook{margin:0 auto;max-width:1050px;padding:22px 30px 80px}.notebook-cell{border:1px solid #e1e5e8;border-radius:4px;margin-bottom:13px;overflow:hidden;padding:14px}.notebook-cell--hidden{background:#f8f9fa}.notebook-cell--hidden>summary{color:#526574;cursor:pointer;font-size:12px;padding:4px}.notebook-cell .code-viewer{border:1px solid #e2e6e9;margin-top:6px;max-height:none;min-height:38px;overflow:hidden}.execution-count{color:#8d4460;font-family:monospace;font-size:10px}.markdown{font-size:14px;line-height:1.58;overflow-wrap:anywhere}.markdown>:last-child{margin-bottom:0}.markdown table{border-collapse:collapse}.markdown th,.markdown td{border:1px solid var(--border);padding:5px 8px}.plain-output,.raw-cell,.error-output pre{background:#f7f8f9;border-left:3px solid #c5ced5;font-size:11px;line-height:1.45;max-height:300px;overflow:auto;padding:10px;white-space:pre-wrap}.error-output{background:#fff4f4;color:#8b2d2d;font-size:12px;padding:10px}.error-output pre{background:transparent;border:0;padding:0}.output-placeholder,.viewer-notice{background:#fff7e9;border:1px solid #ead4a9;border-radius:4px;color:#72551d;font-size:11px;padding:9px}.viewer-notice--error{background:#fff0f0;border-color:#dfbaba;color:#7c3030}.notebook-image{display:block;height:auto;margin:10px 0;max-height:700px;max-width:100%;object-fit:contain}.source-preview{min-height:100%;padding:14px}.source-preview__meta{color:var(--muted);font-size:12px;margin:0 0 10px}.source-preview .code-viewer{height:min(100%,900px);min-height:280px}.source-preview__download{margin:0 0 10px}.source-preview__hex{background:#f7f8f9;border:1px solid var(--border);border-radius:4px;font-size:11px;line-height:1.5;max-height:55vh;overflow:auto;padding:12px;white-space:pre}.html-output iframe{background:#fff;border:1px solid var(--border);height:180px;width:100%}.html-output--expanded iframe{height:520px}.attachments{color:#526573;font-size:11px;margin-top:9px}.target-line{align-items:center;display:flex;justify-content:space-between;margin-bottom:7px}.target-line strong{display:block;font-size:12px;margin-top:2px}.label-actions{display:grid;gap:7px;grid-template-columns:1fr;margin:11px 0 8px}.label-button{background:#fff;border:1px solid var(--border);gap:9px;justify-content:flex-start;min-width:0;padding:7px 10px;text-align:left;width:100%}.label-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-button--red{border-left:4px solid #c34848}.label-button--amber{border-left:4px solid #cf8c20}.label-button--green{border-left:4px solid #32805b}.label-button--violet{border-left:4px solid #7652ad}.label-button--blue{border-left:4px solid #3578b7}.label-button--cyan{border-left:4px solid #16899a}.label-button--pink{border-left:4px solid #bd4f7d}.label-button--gray{border-left:4px solid #6f7d88}.label-button[aria-pressed=true]{background:#e8f3f7;border-color:#69a0b4;box-shadow:0 0 0 1px #69a0b4 inset}.skip-button{background:#fff;border:1px solid var(--border-dark);gap:7px;width:100%}.sidebar-comment{display:flex;flex-direction:column;gap:5px;margin-top:11px}.sidebar-comment textarea{font-size:11px;resize:vertical;width:100%}.sidebar-save{font-size:11px;margin-top:6px;min-height:32px;width:100%}.sidebar-navigation{align-items:center;display:grid;gap:6px;grid-template-columns:38px minmax(0,1fr) 38px;margin-top:10px}.sidebar-navigation .text-button{font-size:10px}.nav-button{background:#f7f8f9;border:1px solid var(--border);font-size:18px;padding:5px}.secondary-actions{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:5px;min-height:26px}.secondary-actions .text-button{font-size:10px}.queue-end .review-progress{font-size:12px;margin:15px 0 24px}.modal{background:#fff;border:1px solid var(--border-dark);border-radius:7px;color:inherit;max-height:80vh;max-width:760px;padding:24px;width:calc(100% - 80px);z-index:20}.modal::backdrop{background:#1c262f73}.modal[open]{position:fixed}.modal--small{max-width:530px}.modal__header{align-items:start;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:16px}.modal__actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin-top:18px}.previous-list{display:grid;gap:9px;max-height:52vh;overflow:auto}.previous-card{border:1px solid var(--border);border-radius:5px;padding:12px}.previous-card header{display:flex;font-size:12px;justify-content:space-between}.previous-card header span,.previous-card small{color:var(--muted);font-size:10px}.previous-card p{font-size:11px;margin:5px 0}.previous-card blockquote{border-left:2px solid var(--border-dark);font-size:12px;margin:8px 0;padding-left:9px;white-space:pre-wrap}@media(max-height:760px){.review-decision{padding-bottom:8px;padding-top:9px}.label-actions{gap:4px;margin:6px 0}.label-button{min-height:31px;padding-bottom:4px;padding-top:4px}.sidebar-comment textarea{min-height:36px}.secondary-actions{display:none}}@media(max-width:800px){.app-header{grid-template-columns:auto minmax(0,1fr) auto;height:auto;min-height:58px;padding:0 10px}.app-brand strong,.user-menu>span{display:none}.app-header nav{overflow-x:auto}.app-header nav button{padding:0 9px}.page{padding:24px 16px 60px}.page-heading{align-items:start;gap:12px}.create-session-layout{grid-template-columns:1fr}.create-summary{position:static}.choice-grid,.recipient-list{grid-template-columns:1fr}.class-editor__row{grid-template-columns:10px 25px minmax(100px,1fr) 36px}.class-editor__row select{grid-column:3}.session-grid{grid-template-columns:1fr}.session-counts{gap:6px 18px;grid-template-columns:1fr 1fr;justify-content:initial}.login-screen{padding:16px}.login-card{padding:24px;width:min(100%,430px)}.review-header{gap:6px;grid-template-columns:36px minmax(0,1fr) auto auto;min-height:52px;padding:0 8px}.review-identifiers{display:none}.review-workspace{grid-template-columns:220px minmax(0,1fr)}.review-sidebar{grid-template-rows:auto minmax(80px,1fr)}.review-decision{padding:9px 8px}.files-panel__footer{display:none}.file-node{padding-right:5px}.review-progress{gap:8px;overflow-x:auto;white-space:nowrap}.source-problem{padding-left:8px;white-space:nowrap}.target-line{gap:8px}.target-line strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-button{font-size:11px;padding:6px}.notebook{padding:12px 10px 70px}.notebook-cell{padding:10px}.modal{padding:18px;width:calc(100% - 24px)}}@media(max-width:560px){.review-workspace{grid-template-columns:188px minmax(0,1fr)}.review-header{grid-template-columns:34px minmax(0,1fr) auto}.review-position{display:none}.save-indicator{font-size:9px;padding:5px}.review-sidebar{font-size:10px}.review-decision{padding:7px 6px}.label-button{min-height:31px}.sidebar-comment textarea{min-height:42px}}:root{--accent: #6366f1;--accent-hover: #4f46e5;--border: #dce2ea;--border-dark: #c5ced9;--muted: #667386}.app-header{background:#111827;border-bottom:0;box-shadow:0 1px #ffffff14}.app-brand>span,.brand-mark{background:linear-gradient(135deg,#818cf8,#22d3ee);border-radius:9px}.app-brand strong,.app-header nav button[aria-current=page]{color:#f8fafc}.app-header nav button{color:#94a3b8}.app-header nav button[aria-current=page]{border-bottom-color:#818cf8}.user-menu>span{color:#cbd5e1}.user-menu button{background:#1f2937;border-color:#334155;color:#e2e8f0}.session-card,.form-card,.preview-card,.settings-card,.login-card{border-color:#e0e5ec;box-shadow:0 10px 30px #0f172a0f}.session-card:hover{border-color:#a5b4fc;box-shadow:0 16px 36px #1e293b1c;transform:translateY(-1px)}.review-screen{background:#e8edf4;color:#172033}.review-header{background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);color:#f8fafc;gap:8px;grid-template-columns:42px 42px minmax(210px,1fr) auto auto auto 88px 108px;min-height:64px;padding:0 16px}.review-header .icon-button{color:#cbd5e1}.review-header .icon-button:hover{background:#ffffff17;border-color:#ffffff1f}.sidebar-toggle{font-size:17px}.review-title strong{color:#fff;font-size:15px;letter-spacing:-.01em}.review-title span{color:#94a3b8;font-size:11px}.review-identifiers{color:#94a3b8;font-size:11px;gap:18px}.review-identifiers b{color:#e2e8f0}.review-position span{color:#94a3b8}.save-indicator{border:1px solid transparent;border-radius:999px;padding:7px 10px}.save-indicator--idle{background:#ffffff0f;color:#94a3b8}.save-indicator--saving{background:#f59e0b21;border-color:#f59e0b40;color:#fcd34d}.save-indicator--saved{background:#22c55e21;border-color:#22c55e40;color:#86efac}.save-indicator--conflict,.save-indicator--error{background:#f8717124;border-color:#f8717140;color:#fca5a5}.review-subheader{background:#172033;border-bottom:1px solid rgba(255,255,255,.08);min-height:39px;padding:0 18px}.review-progress{color:#cbd5e1;font-size:11px;gap:8px}.review-progress span{background:#ffffff0e;border:1px solid rgba(255,255,255,.06);border-radius:999px;padding:5px 9px}.dot{height:7px;width:7px}.dot--labeled{background:#34d399}.dot--skipped{background:#94a3b8}.dot--pending{background:#fbbf24}.dot--problem{background:#fb7185}.source-problem{color:#fda4af;font-size:11px}.review-workspace{background:#e8edf4;grid-template-columns:324px minmax(0,1fr);transition:grid-template-columns .18s ease}.review-screen--sidebar-hidden .review-workspace{grid-template-columns:0 minmax(0,1fr)}.review-screen--sidebar-hidden .review-sidebar{border:0;opacity:0;pointer-events:none;transform:translate(-18px)}.review-sidebar{background:#111827;border-right:0;color:#e5e7eb;grid-template-rows:auto minmax(130px,1fr);transition:opacity .16s ease,transform .18s ease}.review-decision{background:#111827;border-bottom:1px solid rgba(255,255,255,.09);max-height:68vh;padding:18px 16px 15px;scrollbar-color:#475569 transparent}.review-sidebar .panel-label{color:#7f8da3;font-size:9px;letter-spacing:.13em}.target-line{gap:10px;margin-bottom:12px}.target-line>div{min-width:0}.target-line strong{color:#f8fafc;font-size:13px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-sidebar .text-button{color:#a5b4fc}.label-actions{gap:8px;margin:13px 0 10px}.label-button{background:#ffffff0b;border-color:#ffffff1a;border-left-width:3px;color:#e5e7eb;font-size:13px;min-height:43px;padding:8px 11px}.label-button:hover:not(:disabled){background:#ffffff17;transform:translate(2px)}.label-button kbd,.skip-button kbd{background:#ffffff14;border-color:#ffffff24;color:#cbd5e1}.label-button--red{border-left-color:#fb7185}.label-button--amber{border-left-color:#fbbf24}.label-button--green{border-left-color:#34d399}.label-button--violet{border-left-color:#a78bfa}.label-button--blue{border-left-color:#60a5fa}.label-button--cyan{border-left-color:#22d3ee}.label-button--pink{border-left-color:#f472b6}.label-button--gray{border-left-color:#94a3b8}.label-button[aria-pressed=true]{background:#6366f138;border-color:#818cf8;box-shadow:0 0 0 1px #818cf838 inset}.skip-button{background:#ffffff09;border-color:#ffffff1f;color:#cbd5e1;min-height:40px}.skip-button:hover:not(:disabled){background:#ffffff14}.undo-label-button{background:transparent;border:1px solid rgba(165,180,252,.34);border-radius:9px;color:#c7d2fe;font-size:11px;font-weight:700;margin:0 0 8px;min-height:34px;width:100%}.undo-label-button:hover:not(:disabled){background:#6366f126;border-color:#818cf8}.sidebar-comment{gap:7px;margin-top:13px}.sidebar-comment textarea{background:#0b1220;border-color:#334155;border-radius:9px;color:#e5e7eb;font-size:12px;min-height:66px}.sidebar-comment textarea::placeholder{color:#64748b}.sidebar-save{background:#263348;border-color:#3a4960;color:#f1f5f9;min-height:38px}.sidebar-save:hover:not(:disabled){background:#334155}.sidebar-navigation{gap:8px;grid-template-columns:42px minmax(0,1fr) 42px;margin-top:13px}.sidebar-navigation .nav-button{background:#1e293b;border-color:#334155;color:#f1f5f9;min-height:38px}.files-panel{background:#0b1220;grid-template-rows:43px minmax(0,1fr) auto}.files-panel>.panel-label{border-bottom-color:#ffffff14;padding:0 16px}.file-tree{padding:7px 8px;scrollbar-color:#334155 transparent}.file-node{border-radius:8px;color:#aeb9c9;font-size:12px;gap:9px;height:38px;margin:1px 0;padding-right:9px}.file-node[data-depth="0"]{padding-left:8px}.file-node[data-depth="1"]{padding-left:18px}.file-node[data-depth="2"]{padding-left:28px}.file-node[data-depth="3"]{padding-left:38px}.file-node[data-depth="4"]{padding-left:48px}.file-node:hover{background:#ffffff0e;color:#f1f5f9}.file-node--selected{background:linear-gradient(90deg,#6366f147,#6366f11a);color:#fff;font-weight:650}.file-node__type{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#93c5fd;display:inline-flex;flex:0 0 auto;font-size:7px;font-weight:800;height:21px;justify-content:center;letter-spacing:-.02em;min-width:27px;padding:0 3px}.file-node__status{border:2px solid #0b1220;border-radius:50%;flex:0 0 auto;height:9px;margin-left:auto;width:9px}.file-node__status--unreviewed{background:#fbbf24}.file-node__status--labeled{background:#34d399}.file-node__status--skipped{background:#94a3b8}.file-node__error{margin-left:0}.files-panel__footer{border-top-color:#ffffff14;color:#64748b;font-size:10px;padding:11px 15px}.files-panel__footer a{color:#a5b4fc}.viewer-panel{background:#fff;border:1px solid #d7dee8;border-radius:14px;box-shadow:0 14px 40px #0f172a1a;margin:12px}.artifact-viewer{grid-template-rows:48px minmax(0,1fr)}.viewer-tabs{background:#fff;border-bottom-color:#e4e8ef;gap:4px;padding:0 15px}.viewer-tabs>button{border-radius:8px 8px 0 0;color:#64748b;font-size:12px;height:48px;padding:0 16px}.viewer-tabs>button:hover{background:#f8fafc}.viewer-tabs>button[aria-selected=true]{border-bottom-color:#6366f1;color:#4338ca}.viewer-content{background:#f8fafc;scrollbar-color:#aab4c1 transparent}.notebook{max-width:1180px;padding:30px 34px 90px}.notebook-cell{background:#fff;border-color:#e1e6ed;border-radius:12px;box-shadow:0 3px 12px #0f172a09;margin-bottom:17px;padding:17px}.notebook-cell .code-viewer{border-color:#e4e8ee;border-radius:8px}.markdown{color:#253047;font-size:14px;line-height:1.67}.source-preview{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:100%;padding:0}.source-preview__toolbar{align-items:center;background:#fff;border-bottom:1px solid #e4e8ef;display:flex;gap:16px;justify-content:space-between;min-height:62px;padding:9px 16px}.source-preview__identity{align-items:center;display:flex;gap:11px;min-width:0}.source-preview__identity>div{display:flex;flex-direction:column;min-width:0}.source-preview__identity strong{color:#1e293b;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-preview__identity small{color:#7b8798;font-size:10px;margin-top:3px}.file-type-badge{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;color:#4f46e5;display:inline-flex;flex:0 0 auto;font-size:9px;font-weight:850;height:34px;justify-content:center;letter-spacing:.04em;min-width:40px;padding:0 7px}.source-preview__download{margin:0;min-height:34px;padding:6px 11px}.source-preview>.code-viewer{height:100%;min-height:0}.source-preview__limit{background:#fffbeb;border-bottom:1px solid #fde68a;color:#92400e;font-size:11px;margin:0;padding:8px 16px}.pdf-preview{background:#e5e7eb;border:0;height:100%;min-height:420px;width:100%}.media-preview{align-items:center;background:#eef1f5;display:flex;justify-content:center;min-height:0;overflow:auto;padding:22px}.media-preview .notebook-image{box-shadow:0 8px 28px #0f172a29;margin:auto;max-height:calc(100vh - 190px)}.media-preview--player{background:radial-gradient(circle at center,#243047,#111827)}.media-preview audio{max-width:620px;width:min(90%,620px)}.media-preview video{border-radius:10px;box-shadow:0 18px 50px #00000059;max-height:calc(100vh - 210px);max-width:92%}.binary-card{align-items:center;align-self:center;background:#fff;border:1px solid #e0e6ee;border-radius:16px;box-shadow:0 16px 45px #0f172a14;display:flex;gap:24px;justify-self:center;max-width:650px;padding:30px;width:calc(100% - 48px)}.binary-card__mark{align-items:center;background:linear-gradient(145deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:14px;color:#4f46e5;display:flex;flex:0 0 auto;font-size:13px;font-weight:850;height:76px;justify-content:center;letter-spacing:.05em;width:76px}.binary-card h2{font-size:19px;margin-bottom:7px}.binary-card p{color:#64748b;line-height:1.55;margin:0}.data-table-wrap{height:100%;overflow:auto;padding:14px}.data-table{background:#fff;border-collapse:separate;border-spacing:0;box-shadow:0 3px 14px #0f172a0d;font-size:12px;min-width:100%}.data-table th,.data-table td{border-bottom:1px solid #e5e9ef;border-right:1px solid #eef1f5;max-width:380px;overflow:hidden;padding:9px 11px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.data-table th{background:#eef2ff;color:#3730a3;font-weight:750;position:sticky;top:0;z-index:1}.data-table tbody tr:nth-child(2n) td{background:#fafbfc}@media(max-height:760px){.review-decision{padding:11px 12px}.label-actions{gap:5px;margin:7px 0}.label-button{min-height:34px;padding:5px 9px}.sidebar-comment textarea{min-height:42px}}@media(max-width:800px){.review-header{grid-template-columns:38px 38px minmax(0,1fr) auto auto;min-height:58px;padding:0 8px}.review-workspace{grid-template-columns:270px minmax(0,1fr)}.viewer-panel{border-radius:10px;margin:7px}.notebook{padding:18px 14px 70px}}@media(max-width:560px){.review-header{grid-template-columns:34px 34px minmax(0,1fr) auto}.review-workspace{grid-template-columns:252px minmax(0,1fr)}.review-screen--sidebar-hidden .review-workspace{grid-template-columns:0 minmax(0,1fr)}.review-decision{padding:10px}.label-button{font-size:11px}.viewer-panel{margin:5px}.source-preview__toolbar{padding:7px 9px}.source-preview__download{font-size:10px}.binary-card{align-items:flex-start;flex-direction:column;padding:20px;width:calc(100% - 24px)}}:root{color-scheme:dark;--bg: #0a0a0b;--surface: #141416;--surface-soft: #1a1a1d;--surface-active: #232327;--border: #29292d;--border-dark: #3f3f46;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--muted: #a1a1aa;--accent: #e4e4e7;--accent-hover: #ffffff;--accent-contrast: #0a0a0b;--field-bg: #0a0a0b;--success: #22c55e;--warning: #f59e0b;--danger: #f05252;--info: #3b82f6;--accent-dim: rgba(228, 228, 231, .1);--success-dim: rgba(34, 197, 94, .12);--warning-dim: rgba(245, 158, 11, .12);--danger-dim: rgba(239, 68, 68, .12);--info-dim: rgba(59, 130, 246, .12);--shadow: 0 10px 28px rgba(0, 0, 0, .24);background:var(--bg);color:var(--text-primary)}:root[data-theme=light]{color-scheme:light;--bg: #ffffff;--surface: #f8fafc;--surface-soft: #f1f5f9;--surface-active: #e2e8f0;--border: #e5e7eb;--border-dark: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--muted: #475569;--accent: #3b82f6;--accent-hover: #2563eb;--accent-contrast: #ffffff;--field-bg: #ffffff;--success: #22c55e;--warning: #f59e0b;--danger: #c81e1e;--info: #6366f1;--accent-dim: rgba(59, 130, 246, .1);--success-dim: rgba(34, 197, 94, .1);--warning-dim: rgba(245, 158, 11, .1);--danger-dim: rgba(239, 68, 68, .1);--info-dim: rgba(99, 102, 241, .1);--shadow: 0 10px 28px rgba(15, 23, 42, .08)}html,body,#root,.app,.login-screen,.boot-screen,.empty-state,.review-loading,.queue-end{background:var(--bg);color:var(--text-primary)}body{transition:background-color .16s ease,color .16s ease}h1,h2,h3,.page-heading h1{color:var(--text-primary)}.muted,.page-lead,.login-intro,.login-footnote,.eyebrow,.panel-label{color:var(--text-secondary)}a,.back-link,.text-button{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--accent)}.primary-button{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.primary-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.secondary-button,.danger-button,.user-menu button,.session-card__delete,.key-capture{background:var(--surface);border-color:var(--border-dark);color:var(--text-primary)}.secondary-button:hover:not(:disabled),.user-menu button:hover,.key-capture:hover{background:var(--surface-hover)}.danger-button{color:var(--danger)}.icon-button:hover{background:var(--surface-hover);border-color:var(--border)}input,select,textarea{background:var(--field-bg);border-color:var(--border-dark);color:var(--text-primary)}input::placeholder,textarea::placeholder{color:var(--text-muted)}.app-header{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:none}.app-brand>span,.brand-mark{background:var(--accent);color:var(--accent-contrast)}.app-brand strong,.app-header nav button[aria-current=page]{color:var(--text-primary)}.app-header nav button,.user-menu>span{color:var(--text-secondary)}.app-header nav button[aria-current=page]{border-bottom-color:var(--accent)}.session-card,.form-card,.preview-card,.settings-card,.login-card,.modal,.previous-card{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow);color:var(--text-primary)}.session-card:hover{border-color:var(--border-dark);box-shadow:var(--shadow)}.session-counts,.form-card label:not(.check-row):not(.radio-card),.login-card form label{color:var(--text-secondary)}.progress-line,.progress-line::-webkit-progress-bar{background:var(--surface-active)}.progress-line::-webkit-progress-value,.progress-line::-moz-progress-bar{background:var(--success)}.segmented{background:var(--surface-soft);border:1px solid var(--border)}.segmented button{color:var(--text-secondary)}.segmented button[aria-pressed=true]{background:var(--surface-active);color:var(--text-primary)}.radio-card,.recipient-card,.task-list,.export-session-list,.class-editor{border-color:var(--border)}.radio-card:has(input:checked),.recipient-card:has(input:checked),.all-submissions{background:var(--accent-dim);border-color:var(--border-dark)}.parse-summary,.preview-metrics>span,.export-operation{background:var(--surface-soft);border-color:var(--border)}.preview-metrics strong{color:var(--text-primary)}.form-section,.class-editor__row,.binding-row,.export-objects li{border-color:var(--border)}.form-section__number{background:var(--accent-dim);color:var(--accent)}.create-summary{background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.create-summary h2,.summary-ready>strong{color:var(--text-primary)}.create-summary .eyebrow,.create-summary .muted,.create-summary dt,.summary-ready>small{color:var(--text-secondary)}.create-summary dl,.create-summary dl div{border-color:var(--border)}.notice-banner{background:var(--info-dim);border-color:var(--info);color:var(--text-primary)}.error-banner{background:var(--danger-dim);border-color:var(--danger);color:var(--danger)}.success-banner{background:var(--success-dim);border-color:var(--success);color:var(--success)}.badge{background:var(--surface-active);border-color:var(--border);color:var(--text-secondary)}.badge--exact{background:var(--success-dim);border-color:var(--success);color:var(--success)}.appearance-settings{padding:22px 26px}.setting-row{align-items:center;display:flex;gap:20px;justify-content:space-between}.setting-row>span:first-child{display:flex;flex-direction:column;gap:5px}.setting-row small{color:var(--text-secondary)}.theme-picker{display:flex;flex-wrap:wrap;gap:6px}.theme-picker button{align-items:center;background:transparent;border:1px solid var(--border);border-radius:7px;color:var(--text-secondary);display:flex;gap:7px;padding:7px 10px}.theme-picker button.active{background:var(--accent-dim);border-color:var(--border-dark);color:var(--accent)}.theme-picker i{border:1px solid var(--border-dark);border-radius:3px;height:12px;width:12px}.theme-picker .theme-swatch--light{background:#fff;border-color:#cbd5e1}.theme-picker .theme-swatch--dark{background:#0a0a0b;border-color:#52525b}.theme-picker .theme-swatch--system{background:linear-gradient(135deg,#0a0a0b 0 50%,#fff 50%)}.review-screen,.review-workspace{background:var(--bg);color:var(--text-primary)}.review-header{background:var(--surface);border-bottom-color:var(--border);color:var(--text-primary)}.review-header .icon-button,.review-title strong,.review-identifiers b{color:var(--text-primary)}.review-header .icon-button:hover{background:var(--surface-hover);border-color:var(--border)}.review-title span,.review-identifiers,.review-position span{color:var(--text-secondary)}.review-subheader{background:var(--surface-soft);border-bottom-color:var(--border)}.review-progress{color:var(--text-secondary)}.review-progress span{background:var(--surface);border-color:var(--border)}.save-indicator--idle{background:var(--surface-active);color:var(--text-secondary)}.save-indicator--saving{background:var(--warning-dim);color:var(--warning)}.save-indicator--saved{background:var(--success-dim);color:var(--success)}.save-indicator--conflict,.save-indicator--error{background:var(--danger-dim);color:var(--danger)}.review-message{background:var(--info-dim);border-color:var(--info);color:var(--text-primary)}.review-message--error{background:var(--danger-dim);border-color:var(--danger);color:var(--danger)}.review-sidebar,.review-decision,.files-panel{background:var(--surface);color:var(--text-primary)}.review-sidebar{border-right:1px solid var(--border)}.review-decision,.files-panel>.panel-label,.files-panel__footer{border-color:var(--border)}.review-sidebar .panel-label{color:var(--text-muted)}.target-line strong{color:var(--text-primary)}.review-sidebar .text-button,.files-panel__footer a{color:var(--accent)}.label-button,.skip-button,.sidebar-save,.sidebar-navigation .nav-button{background:var(--surface-soft);border-color:var(--border-dark);color:var(--text-primary)}.label-button:hover:not(:disabled),.skip-button:hover:not(:disabled),.sidebar-navigation .nav-button:hover:not(:disabled){background:var(--surface-active)}.label-button[aria-pressed=true]{background:var(--accent-dim);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.label-button kbd,.skip-button kbd{background:var(--surface-active);border-color:var(--border-dark);color:var(--text-secondary)}.undo-label-button{border-color:var(--border-dark);color:var(--accent)}.undo-label-button:hover:not(:disabled){background:var(--accent-dim);border-color:var(--accent)}.sidebar-comment textarea{background:var(--field-bg);border-color:var(--border-dark);color:var(--text-primary)}.file-node{color:var(--text-secondary)}.file-node:hover{background:var(--surface-hover);color:var(--text-primary)}.file-node--selected{background:var(--surface-active);color:var(--text-primary)}.file-node__type{background:var(--surface-active);border-color:var(--border-dark);color:var(--info)}.file-node__status{border-color:var(--surface)}.viewer-panel{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow)}.viewer-tabs,.source-preview__toolbar{background:var(--surface);border-color:var(--border)}.viewer-tabs>button{color:var(--text-secondary)}.viewer-tabs>button:hover{background:var(--surface-hover)}.viewer-tabs>button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--accent)}.viewer-content{background:var(--bg);scrollbar-color:var(--border-dark) transparent}.notebook-cell{background:var(--surface);border-color:var(--border);box-shadow:none}.notebook-cell--hidden{background:var(--surface-soft)}.notebook-cell--hidden>summary,.markdown,.attachments{color:var(--text-primary)}.notebook-cell .code-viewer{border-color:var(--border)}.code-viewer__placeholder,.plain-output,.raw-cell,.error-output pre,.source-preview__hex{background:var(--bg);color:var(--text-primary)}.plain-output,.raw-cell,.error-output pre,.source-preview__hex{border-color:var(--border-dark)}.error-output,.viewer-notice--error{background:var(--danger-dim);color:var(--danger)}.output-placeholder,.viewer-notice,.source-preview__limit{background:var(--warning-dim);border-color:var(--warning);color:var(--text-primary)}.html-output iframe{background:var(--bg);border-color:var(--border)}.source-preview__identity strong,.binary-card h2{color:var(--text-primary)}.source-preview__identity small,.binary-card p{color:var(--text-secondary)}.file-type-badge,.binary-card__mark{background:var(--info-dim);border-color:var(--info);color:var(--info)}.media-preview,.pdf-preview{background:var(--surface-soft)}.media-preview--player{background:var(--bg)}.binary-card{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow)}.data-table{background:var(--surface);color:var(--text-primary)}.data-table th,.data-table td{border-color:var(--border)}.data-table th{background:var(--surface-active);color:var(--text-primary)}.data-table tbody tr:nth-child(2n) td{background:var(--surface-soft)}.queue-end{min-height:100vh}.queue-end .review-progress{margin:15px 0 24px}.queue-end__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.queue-end>.muted{max-width:620px}.modal::backdrop{background:#000000b8}@media(max-width:720px){.setting-row{align-items:flex-start;flex-direction:column}.theme-picker{width:100%}.theme-picker button{flex:1 1 auto;justify-content:center}}@media(max-height:760px){.secondary-actions{display:flex}}.compare-launch{background:var(--surface-active);border:1px solid var(--border-dark);border-radius:7px;color:var(--text-primary);font-size:12px;padding:7px 11px}.compare-launch:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.session-settings-button{background:transparent;border:1px solid var(--border-dark);border-radius:7px;color:var(--text-secondary);font-size:12px;padding:7px 10px;white-space:nowrap}.session-settings-button:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.session-settings-modal>p{color:var(--text-secondary);line-height:1.5}.session-settings-note{font-size:12px;line-height:1.45;margin:14px 0;padding:11px 12px}.session-settings-recipients{max-height:260px;overflow:auto}@media(max-width:800px){.review-identifiers{display:none}.review-header{grid-template-columns:38px 38px minmax(0,1fr) 36px auto auto auto}.session-settings-button{padding:7px}}@media(max-width:560px){.compare-launch,.review-position{display:none}.review-header{grid-template-columns:34px 34px minmax(0,1fr) 34px auto}}.comparison-screen{background:var(--bg);color:var(--text-primary);display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden}.comparison-header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;flex:0 0 58px;gap:12px;height:58px;padding:0 16px}.comparison-header>div:not(.comparison-header__actions){display:flex;flex-direction:column;gap:2px}.comparison-header strong{font-size:15px}.comparison-header span{color:var(--text-secondary);font-size:11px}.comparison-header__actions{align-items:center;display:flex;gap:10px;margin-left:auto}.comparison-header__actions .secondary-button{min-height:32px;padding:0 12px}.comparison-view-toggle{display:flex;flex:0 0 auto;height:32px;padding:2px}.comparison-view-toggle button{min-width:54px;padding:0 9px}.comparison-controls-panel{background:var(--surface-soft);border:1px solid var(--border-dark);border-radius:0 0 10px 10px;box-shadow:var(--shadow);left:12px;position:fixed;right:12px;top:58px;z-index:50}.comparison-controls{align-items:end;background:var(--surface-soft);border-radius:0 0 10px 10px;display:flex;gap:10px;min-height:70px;padding:10px 16px}.comparison-controls>label,.comparison-controls__field,.comparison-controls__submit{color:var(--text-secondary);display:flex;flex-direction:column;font-size:10px;gap:4px}.comparison-controls>label>span,.comparison-controls__field>span,.comparison-controls__submit>span{height:12px;line-height:12px;white-space:nowrap}.comparison-controls__submit>span{visibility:hidden}.comparison-controls input{min-width:150px;width:12vw}.comparison-controls select{min-width:180px;max-width:290px}.comparison-controls input,.comparison-controls select{border-radius:7px;box-sizing:border-box;height:36px;padding:0 10px}.comparison-controls .segmented{box-sizing:border-box;display:flex;height:36px;padding:3px}.comparison-controls .segmented button{white-space:nowrap}.comparison-controls__submit .primary-button{box-sizing:border-box;height:36px;min-height:36px;padding:0 18px}.comparison-error{margin:0 16px 10px}.comparison-empty{align-items:center;display:flex;flex-direction:column;height:calc(100dvh - 58px);justify-content:center;text-align:center}.comparison-empty h1{margin:0 0 8px}.comparison-empty p{color:var(--text-secondary);margin:0}.comparison-grid{display:grid;flex:1 1 0;grid-template-columns:minmax(560px,1fr) minmax(560px,1fr);height:auto;min-height:0;overflow-x:auto;overflow-y:hidden}.comparison-pane{border-right:1px solid var(--border);display:grid;grid-template-rows:52px minmax(0,1fr);min-height:0;min-width:0}.comparison-pane:last-child{border-right:0}.comparison-pane__header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;gap:10px;padding:8px 12px}.comparison-pane__header>div{display:flex;flex-direction:column;gap:2px;min-width:0}.comparison-pane__header strong{font-size:13px}.comparison-pane__header small{color:var(--text-secondary);font-size:10px}.comparison-side{align-items:center;background:var(--accent);border-radius:6px;color:var(--accent-contrast);display:flex;font-size:11px;font-weight:800;height:28px;justify-content:center;width:28px}.comparison-pane__body{display:grid;grid-template-columns:156px minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0;min-width:0;overflow:hidden}.comparison-files{background:var(--surface);border-right:1px solid var(--border);min-height:0;overflow:auto;padding:6px}.comparison-files>button{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-secondary);display:grid;gap:7px;grid-template-columns:30px minmax(0,1fr) auto;padding:7px 6px;text-align:left;width:100%}.comparison-files>button:hover{background:var(--surface-soft);color:var(--text-primary)}.comparison-files>button[aria-current=true]{background:var(--surface-active);border-color:var(--border-dark);color:var(--text-primary)}.comparison-files>button>span{color:var(--info);font-size:8px;font-weight:800}.comparison-files>button>b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comparison-files>button>i{color:var(--danger);font-style:normal}.comparison-viewer{background:var(--bg);min-height:0;min-width:0;overflow:hidden}.comparison-viewer .artifact-viewer{grid-template-rows:48px minmax(0,1fr);height:100%;min-height:0}.comparison-viewer .viewer-content{height:auto;min-height:0;overflow:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin}.comparison-viewer .notebook{max-width:none;padding:14px}.comparison-viewer .notebook-cell{margin-bottom:12px}.comparison-diff{display:grid;grid-template-rows:58px minmax(0,1fr);height:calc(100dvh - 58px)}.comparison-diff__toolbar{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:grid;gap:10px;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;overflow-x:auto;padding:7px 12px}.comparison-diff__toolbar label{color:var(--text-secondary);display:grid;gap:3px;font-size:9px;min-width:180px}.comparison-diff__toolbar select{border-radius:6px;font-size:11px;height:30px;min-width:0;padding:0 8px;width:100%}.comparison-diff__arrow{color:var(--text-muted);font-size:18px}.comparison-diff__legend{display:flex;font:600 10px/1.2 SFMono-Regular,Consolas,monospace;gap:8px;white-space:nowrap}.comparison-diff__legend span{border-radius:4px;padding:5px 7px}.diff-removed{background:var(--danger-dim);color:var(--danger)}.diff-added{background:var(--success-dim);color:var(--success)}.comparison-diff__body{background:var(--bg);min-height:0;position:relative}.comparison-diff__body>.viewer-state{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.comparison-diff__body>.viewer-state p{color:var(--text-secondary)}.diff-viewer{height:100%;min-height:0;width:100%}@media(max-width:900px){.comparison-controls{align-items:stretch;flex-wrap:wrap}.comparison-header__actions>span{display:none}.comparison-header__actions{gap:5px}.comparison-header__actions .secondary-button{padding:0 8px}.comparison-view-toggle button{min-width:43px;padding:0 6px}.comparison-diff__toolbar{grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr)}.comparison-diff__legend{display:none}}
