:root{color-scheme:dark;--bg:#101411;--panel:#171c18;--panel-raised:#1d231e;--line:#303931;--text:#e9ede4;--muted:#a0aa9d;--faint:#6e7d6d;--accent:#b7dba0;--gold:#e8bd81;--red:#e89b86;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--sans:Inter,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--sans)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.viewer-stage:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button{color:inherit}button,input,select{border-radius:0}.app-shell{max-width:1920px;margin:auto;padding:0 42px}.masthead{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:center;gap:12px;font:11px var(--mono);letter-spacing:.14em;font-weight:600}.mark{font:bold 32px Georgia,serif;letter-spacing:-.15em;line-height:1;display:inline-block;width:35px}.mark span{color:var(--accent)}.run-state{display:flex;align-items:center;gap:9px;color:var(--muted);font:11px var(--mono)}.status-dot{width:6px;height:6px;background:var(--faint);border-radius:50%}.status-dot.running{background:var(--gold);box-shadow:0 0 0 4px #e8bd8112}.status-dot.complete{background:var(--accent)}.status-dot.failed{background:var(--red)}.text-button{border:0;background:none;padding:7px 0;color:var(--muted);font-size:12px}.text-button:hover{color:var(--text)}#refresh-button{margin-left:12px}.intro{padding:28px 0 22px}.eyebrow{font:10px var(--mono);letter-spacing:.16em;color:var(--accent)}.title-line{display:flex;align-items:center;gap:24px;margin:9px 0 9px}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(35px,4vw,58px);letter-spacing:-.04em;line-height:1.1;margin:0}.title-dot{color:var(--accent)}.edition{font:10px var(--mono);letter-spacing:.1em;color:var(--muted);border:1px solid var(--line);padding:6px 9px;white-space:nowrap;margin-top:10px}.lede{max-width:680px;font-size:14px;line-height:1.8;color:var(--muted);margin:0}.run-summary{margin-top:14px;display:flex;gap:10px 22px;flex-wrap:wrap;color:var(--faint);font:10px var(--mono)}.run-summary strong{font-weight:400;color:var(--muted)}.overview{border:1px solid var(--line);display:grid;grid-template-columns:1.25fr 1fr 1.3fr 140px;background:linear-gradient(110deg,#1e261c4d,transparent)}.overview-progress,.overview-metric{padding:18px 24px;border-right:1px solid var(--line);min-width:0}.metric-caption{display:flex;justify-content:space-between;gap:12px;font:9px var(--mono);letter-spacing:.12em;color:var(--faint)}#progress-detail{letter-spacing:0;color:var(--muted)}.metric-value{font:28px var(--mono);letter-spacing:-.04em;margin:9px 0 7px;white-space:nowrap}.metric-total{color:var(--faint);font-size:20px}.metric-unit{font:8px var(--mono);margin-left:14px;color:var(--muted);letter-spacing:.12em}.metric-value.small{font-size:19px;letter-spacing:-.02em;margin-top:13px}.metric-note{color:var(--muted);font-size:10px;overflow-wrap:anywhere}.progress-track{height:2px;background:var(--line);margin-top:12px;overflow:hidden}.progress-track>div{width:0;height:100%;background:var(--accent);transition:width .35s}.provenance-button{padding:24px;border:0;background:none;display:flex;align-items:center;justify-content:space-between;text-align:left;font-size:12px}.provenance-button:hover{background:var(--panel-raised)}.provenance-button span:last-child{font-size:19px;color:var(--accent)}.controls{padding:28px 0 18px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.control-group{display:flex;align-items:center;gap:15px}.control-label{font:9px var(--mono);letter-spacing:.1em;color:var(--faint)}.strength-filters{display:flex;gap:5px;flex-wrap:wrap}.strength-button{border:1px solid var(--line);background:transparent;color:var(--faint);font:10px var(--mono);padding:8px 11px;min-width:46px}.strength-button.active{border-color:#819c70;background:#b7dba012;color:var(--accent)}.strength-button:hover{border-color:var(--muted)}.strength-button.base{margin-right:8px}.control-right{display:flex;align-items:center;gap:16px}select{background:var(--bg);color:var(--muted);border:1px solid var(--line);padding:8px 27px 8px 10px;max-width:230px;font-size:11px}.search-wrap{display:flex;align-items:center;gap:9px;color:var(--faint);border-bottom:1px solid var(--line);padding-bottom:6px}.search-wrap>span{font-size:20px}.search-wrap input{width:150px;background:none;border:0;outline:0;color:var(--text);font-size:11px}.search-wrap input::placeholder{color:var(--faint)}.board-note{display:flex;justify-content:space-between;color:var(--faint);font-size:10px;gap:16px;margin:0 0 13px}.board-note>span:first-child{font:10px var(--mono);color:var(--muted)}.comparison-board{overflow-x:auto;scrollbar-color:#485842 #191f1a;scrollbar-width:thin;border-top:1px solid var(--line)}.matrix{min-width:calc(var(--columns,6)*205px);width:100%}.column-headings,.image-row{display:grid;grid-template-columns:repeat(var(--columns,6),minmax(0,1fr));gap:10px}.column-headings{padding:15px 0 18px;border-bottom:1px solid var(--line)}.column-heading{display:flex;gap:7px;align-items:baseline;justify-content:space-between;font:11px var(--mono);padding:0 2px;color:var(--muted)}.column-heading .column-note{font:8px var(--mono);color:var(--faint);letter-spacing:.05em}.column-heading.base{color:var(--gold)}.scene-row{padding:22px 0;border-bottom:1px solid var(--line)}.row-caption{position:sticky;left:0;max-width:min(1100px,calc(100vw - 90px));display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px;min-height:35px}.row-description{display:flex;align-items:center;gap:12px;min-width:0}.scene-number{font:10px var(--mono);color:var(--faint);border:1px solid var(--line);width:27px;height:27px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.scene-title{margin:0;font-size:13px;font-weight:500;letter-spacing:-.01em}.scene-meta{display:flex;align-items:center;gap:10px;margin-top:2px;font:9px var(--mono);color:var(--faint)}.scene-meta .seed{color:var(--muted)}.row-actions{display:flex;gap:18px;white-space:nowrap}.row-actions button{font-size:10px}.image-card{min-width:0;position:relative}.image-open,.image-empty{position:relative;display:block;width:100%;aspect-ratio:1;background:#191f1a;border:1px solid #2e362f;padding:0;overflow:hidden}.image-open{cursor:zoom-in}.image-open img{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .2s}.image-open:after{content:'↗';position:absolute;right:9px;bottom:8px;background:#0c120dcc;color:var(--text);border:1px solid #ffffff20;font:13px var(--mono);width:27px;height:27px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(4px);transition:all .2s}.image-open:hover:after,.image-open:focus-visible:after{opacity:1;transform:translateY(0)}.image-open:hover{border-color:#809272}.image-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--faint);gap:9px}.placeholder-symbol{font:26px Georgia,serif;color:#465341}.placeholder-label{font:9px var(--mono);letter-spacing:.12em}.image-empty.running .placeholder-symbol{height:23px;width:23px;border:1px solid #e8bd8133;border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}.image-empty.running .placeholder-label{color:var(--gold)}.image-empty.failed{border-color:#694b40}.image-empty.failed .placeholder-symbol,.image-empty.failed .placeholder-label{color:var(--red)}.placeholder-error{font-size:10px;text-align:center;padding:0 16px;color:var(--muted);max-width:100%;overflow-wrap:anywhere}.image-footer{display:flex;align-items:center;justify-content:space-between;padding-top:9px;gap:8px;font:9px var(--mono);color:var(--faint)}.image-footer a{color:var(--muted);padding:2px 0}.image-footer a:hover{color:var(--accent)}.empty-state{text-align:center;border:1px solid var(--line);border-top:0;padding:70px 25px}.empty-state .empty-symbol{font:46px Georgia,serif;color:var(--faint)}.empty-state h2{font:24px Georgia,serif;font-weight:400;margin:12px 0 8px}.empty-state p{font-size:12px;color:var(--muted);margin:0 auto;max-width:460px;line-height:1.8}.page-footer{display:flex;justify-content:space-between;gap:20px;color:var(--faint);font:9px var(--mono);padding:24px 0 40px;flex-wrap:wrap}.notice{border:1px solid #e8bd8155;background:#e8bd8108;color:var(--gold);font-size:11px;padding:11px 15px;margin-top:18px}.notice[hidden]{display:none}dialog{color:var(--text);background:var(--bg);border:1px solid var(--line);padding:0}dialog::backdrop{background:#080d09e8;backdrop-filter:blur(6px)}.compare-dialog{width:min(1360px,calc(100vw - 42px));max-width:none;max-height:calc(100dvh - 38px);overflow:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;border-bottom:1px solid var(--line)}.modal-header h2{font:25px Georgia,serif;font-weight:400;letter-spacing:-.02em;margin:7px 0 0}.icon-button{border:1px solid var(--line);background:none;color:var(--muted);width:30px;height:30px;display:inline-flex;justify-content:center;align-items:center}.icon-button:hover{color:var(--text);border-color:var(--muted)}.viewer-toolbar{padding:15px 28px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.pair-controls{display:flex;align-items:center;gap:12px;font:10px var(--mono);color:var(--faint)}.pair-controls label{display:flex;align-items:center;gap:8px}.pair-controls select{min-width:107px}.pair-divider{color:var(--line)}.mode-switch{display:flex;border:1px solid var(--line);padding:3px}.mode-switch button{font-size:10px;border:0;background:none;padding:6px 13px;color:var(--faint)}.mode-switch button.active{background:var(--panel-raised);color:var(--text)}.zoom-controls{display:flex;gap:11px;align-items:center}.zoom-controls .text-button{font:10px var(--mono);min-width:36px}.viewer-area{background:#0a0f0b;padding:0 24px;display:flex;justify-content:center;border-top:1px solid #222b23;border-bottom:1px solid #222b23}.viewer-stage{position:relative;width:min(100%,750px,calc(100dvh - 295px));aspect-ratio:1;overflow:hidden;--zoom:1;--pan-x:0px;--pan-y:0px;--wipe:50%;touch-action:none}.viewer-stage.zoomed{cursor:grab}.viewer-stage.dragging{cursor:grabbing}.viewer-pane{position:absolute;inset:0;overflow:hidden;background:#141a15}.viewer-pane img{display:block;position:absolute;width:100%;height:100%;object-fit:contain;transform:translate(var(--pan-x),var(--pan-y)) scale(var(--zoom));transform-origin:center;user-select:none;-webkit-user-drag:none;pointer-events:none}.viewer-stage.wipe .pane-b{clip-path:inset(0 0 0 var(--wipe));background:none}.image-label{position:absolute;bottom:14px;left:14px;font:9px var(--mono);padding:6px 9px;color:var(--text);background:#0c120ddb;border:1px solid #ffffff22;z-index:2}.pane-b .image-label{left:auto;right:14px}.wipe-divider{position:absolute;top:0;bottom:0;left:var(--wipe);width:1px;background:#fff9;pointer-events:none;z-index:3}.wipe-divider span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#152017d9;border:1px solid #ffffff99;width:32px;height:40px;display:flex;align-items:center;justify-content:center;color:white;font:17px var(--mono)}.viewer-stage.side{width:min(100%,calc(200dvh - 590px));aspect-ratio:2}.viewer-stage.side .pane-a{right:50%;border-right:5px solid #0a0f0b}.viewer-stage.side .pane-b{left:50%;border-left:5px solid #0a0f0b}.viewer-stage.side .wipe-divider{display:none}.wipe-controls{display:flex;align-items:center;gap:13px;padding:14px 28px 0;font:9px var(--mono);color:var(--faint)}.wipe-controls[hidden]{display:none}.wipe-controls input{width:100%;accent-color:var(--accent);height:14px;cursor:ew-resize}.viewer-actions{padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--faint);font-size:10px}.viewer-actions>div{display:flex;gap:20px;align-items:center;white-space:nowrap}.download-link{font:10px var(--mono);color:var(--accent)}.download-link:hover{text-decoration:underline}.viewer-prompt{padding:0 28px 25px;font-size:11px}.viewer-prompt summary{cursor:pointer;color:var(--muted)}.viewer-prompt p{color:var(--text);line-height:1.9;white-space:pre-wrap;max-width:940px}.viewer-prompt pre{color:var(--faint);font:10px/1.7 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere}.provenance-dialog{width:min(720px,calc(100vw - 36px));max-height:calc(100dvh - 48px)}.provenance-intro{padding:20px 28px 0;color:var(--muted);font-size:12px}.provenance-dialog pre{margin:0;padding:20px 28px;font:11px/1.8 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}.provenance-actions{padding:5px 28px 26px;display:flex;gap:25px;align-items:center}.solid-button{border:1px solid var(--accent);background:var(--accent);color:#172514;padding:9px 15px;font-size:11px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,10px);background:var(--text);color:var(--bg);border:1px solid var(--line);padding:11px 18px;font:11px var(--mono);opacity:0;pointer-events:none;transition:.2s;z-index:100;max-width:calc(100vw - 30px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1700px){.matrix{min-width:calc(var(--columns,6)*235px)}}@media(max-width:1000px){.app-shell{padding:0 24px}.overview{grid-template-columns:1.2fr 1fr 1.2fr}.provenance-button{grid-column:1/-1;border-top:1px solid var(--line);padding:12px 20px}.overview-metric:nth-child(3){border-right:0}.metric-value.small{font-size:16px}.metric-value{font-size:24px}.overview-progress,.overview-metric{padding:19px 17px}.metric-unit{display:none}.row-caption{max-width:calc(100vw - 54px)}.board-note>span:last-child{max-width:300px;text-align:right}.viewer-actions{align-items:flex-start}.viewer-actions>span{max-width:300px}}@media(max-width:640px){.app-shell{padding:0 18px}.masthead{height:70px}.wordmark{font-size:9px;letter-spacing:.08em;gap:9px}.mark{font-size:28px;width:28px}.run-state{font-size:9px;gap:6px}#refresh-button{font-size:0;margin-left:3px}#refresh-button:first-letter{font-size:16px}.intro{padding:30px 0 23px}.eyebrow{font-size:8px}.edition{display:none}.lede{font-size:12px;line-height:1.8}.run-summary{font-size:8px;gap:8px 15px}.overview{grid-template-columns:1fr 1fr}.overview-progress{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}.overview-metric{padding:16px}.overview-metric:nth-child(2){border-right:1px solid var(--line)}.metric-value{font-size:27px}.metric-value.small{font-size:15px}.metric-unit{display:inline}.controls{padding-top:23px;gap:15px}.control-group{gap:9px;align-items:flex-start}.control-label{padding-top:9px;font-size:8px}.strength-filters{gap:4px}.strength-button{padding:8px;min-width:39px;font-size:9px}.strength-button.base{margin-right:3px}.control-right{justify-content:space-between;width:100%;gap:12px}.search-wrap input{width:145px}.board-note{font-size:9px}.board-note>span:last-child{max-width:170px}.matrix{min-width:calc(var(--columns,6)*190px)}.row-caption{max-width:calc(100vw - 42px);gap:10px}.row-actions{gap:10px}.row-actions .compare-row-button{display:none}.scene-title{font-size:11px}.scene-meta{font-size:8px;gap:7px}.row-description{gap:9px}.scene-number{width:24px;height:24px;font-size:8px}.row-actions button{font-size:9px}.page-footer{font-size:8px;gap:10px;padding-bottom:28px}.compare-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.modal-header{padding:17px 16px}.modal-header h2{font-size:21px}.viewer-toolbar{padding:12px 16px;gap:11px}.pair-controls{width:100%;justify-content:space-between;gap:8px}.pair-controls select{min-width:115px;max-width:145px}.pair-divider{display:none}.zoom-controls{gap:8px}.mode-switch button{font-size:9px;padding:6px 10px}.viewer-area{padding:0 8px}.viewer-actions{padding:14px 16px;flex-wrap:wrap;gap:8px}.viewer-actions>div{gap:20px;width:100%;justify-content:space-between}.viewer-prompt{padding:5px 16px 18px}.wipe-controls{padding:12px 16px 0}.image-label{font-size:8px;bottom:9px;left:9px;padding:4px 6px}.pane-b .image-label{right:9px}.provenance-dialog pre{padding:18px;font-size:10px}.provenance-intro,.provenance-actions{padding-left:18px;padding-right:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
