.analyze-ui{display:grid;gap:12px;margin-top:12px}.analyze-running-hint{margin-top:8px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.analyze-substeps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.analyze-substep{display:flex;align-items:center;gap:8px;min-width:0;padding:10px 12px;border:1px solid var(--v2-border);border-radius:8px;background:var(--v2-surface-2)}.analyze-substep.active{border-color:#f59e0b73;background:#f59e0b14}.analyze-substep.done{border-color:#22c55e73;background:#22c55e14}.analyze-substep.fail{border-color:#ef444480;background:#ef444414}.analyze-substep-label{min-width:0;color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-semibold)}.analyze-substep-dot{flex:0 0 auto;width:18px;height:18px;border-radius:999px;border:1px solid var(--v2-border);display:inline-flex;align-items:center;justify-content:center;font-size:var(--v2-fs-xs);line-height:var(--v2-lh-flat);color:transparent;background:#ffffff0a}.analyze-substep-dot.active{border-color:#f59e0b8c;background:#f59e0b33;animation:analyze-substep-pulse 1.1s ease-in-out infinite}.analyze-substep-dot.done{border-color:#22c55e8c;background:#22c55e38;color:var(--v2-accent)}.analyze-substep-dot.fail{border-color:#ef444499;background:#ef444438;color:var(--v2-danger)}.analyze-repair-badge{margin-left:auto;flex:0 0 auto;padding:2px 8px;border-radius:999px;border:1px solid rgba(245,158,11,.45);background:#f59e0b1a;color:var(--v2-warn);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-semibold)}.analyze-narration,.explored-carousel{position:relative;padding:14px 16px;border:1px solid var(--v2-border);border-radius:10px;background:linear-gradient(180deg,#ffffff05,#ffffff03)}.analyze-narration.placeholder,.analyze-narration.stalled{color:var(--v2-text-dim)}.analyze-section-label,.explored-carousel-label{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold);letter-spacing:.06em;text-transform:uppercase}.analyze-display-text{margin-top:8px;color:var(--v2-text);font-size:var(--v2-fs-base);line-height:var(--v2-lh-base)}.analyze-narration.placeholder .analyze-display-text{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.analyze-pulse-dot{width:10px;height:10px;border-radius:999px;background:#f59e0bd9;box-shadow:0 0 #f59e0b8c;animation:analyze-narration-pulse 1.4s ease-in-out infinite}.analyze-elapsed{margin-left:auto;color:var(--v2-text-dim);font-size:var(--v2-fs-sm);font-variant-numeric:tabular-nums}.analyze-progress-bar{margin-top:12px;height:6px;border-radius:999px;background:#ffffff0f;overflow:hidden}.analyze-progress-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0bb3,#f59e0bf2);transition:width .6s ease-out}.analyze-progress-bar.over{background:repeating-linear-gradient(45deg,#ef444440,#ef444440 6px,#ef44441f 6px,#ef44441f 12px);animation:analyze-progress-stripe 1.6s linear infinite}.analyze-progress-bar.over>span{background:linear-gradient(90deg,#ef44448c,#ef4444cc)}.analyze-progress-meta,.explored-carousel-count{margin-top:10px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.analyze-repair-overlay{position:absolute;inset:10px 10px auto;padding:8px 10px;border:1px solid rgba(245,158,11,.45);border-radius:8px;background:#0f0f0feb;color:var(--v2-warn);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold);animation:analyze-repair-fade 1.5s ease forwards}.analyze-pii-note{margin-top:10px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.explored-carousel-card{margin-top:8px;padding:10px 12px;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.explored-carousel-route{color:var(--v2-text);font-family:var(--v2-mono);font-size:var(--v2-fs-xs);word-break:break-all}.explored-carousel-meta{margin-top:6px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.live-evidence-feed{margin-top:12px;padding:14px;border:1px solid rgba(34,197,94,.18);border-radius:10px;background:linear-gradient(180deg,#22c55e0e,#ffffff04),var(--v2-surface)}.live-evidence-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.live-evidence-label{color:var(--v2-accent);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-heavy);letter-spacing:.08em}.live-evidence-title{margin-top:2px;color:var(--v2-text);font-size:var(--v2-fs-base);font-weight:var(--v2-fw-bold)}.live-evidence-headline{flex:0 0 auto;padding:3px 8px;border:1px solid rgba(34,197,94,.28);border-radius:999px;color:var(--v2-accent);background:#22c55e14;font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold)}.live-evidence-current{display:flex;align-items:center;gap:8px;min-width:0;margin-top:10px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);overflow:hidden}.live-evidence-current>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-evidence-current-dot{flex:0 0 auto;width:7px;height:7px;border-radius:999px;background:var(--v2-accent);box-shadow:0 0 #22c55e73;animation:live-evidence-pulse 1.5s ease-in-out infinite}.live-evidence-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.live-evidence-stats>div{min-width:0;padding:8px 10px;border:1px solid rgba(255,255,255,.06);border-radius:8px;background:#ffffff06}.live-evidence-stats span{display:block;color:var(--v2-text);font-family:var(--v2-mono);font-size:var(--v2-fs-base);font-weight:var(--v2-fw-heavy);line-height:var(--v2-lh-tight)}.live-evidence-stats small{display:block;margin-top:3px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);letter-spacing:.04em;text-transform:uppercase}.live-evidence-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.live-evidence-card{min-width:0;padding:10px;border:1px solid var(--v2-border);border-radius:9px;background:#0a0a0a73}.live-evidence-card-title{color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-heavy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-evidence-card-route{margin-top:3px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-evidence-card-sub,.live-evidence-ctas{margin-top:5px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-evidence-meta,.live-evidence-signals{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.live-evidence-meta span,.live-evidence-empty,.live-evidence-signal{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;border:1px solid var(--v2-border);color:var(--v2-text-dim);background:#ffffff08;font-size:var(--v2-fs-xs);line-height:var(--v2-lh-tight)}.live-evidence-empty{border-style:dashed}.live-evidence-signal{font-family:var(--v2-mono)}.live-evidence-signal.tone-ok{color:var(--v2-accent);border-color:#22c55e59;background:#22c55e12}.live-evidence-signal.tone-info{color:#93c5fd;border-color:#93c5fd52;background:#93c5fd0f}.live-evidence-signal.tone-warn{color:var(--v2-warn);border-color:#f59e0b5c;background:#f59e0b14}.live-evidence-signal.tone-fail{color:#fca5a5;border-color:#ef444466;background:#ef444417}.analysis-briefing-board{padding:15px;border:1px solid rgba(245,158,11,.22);border-radius:12px;background:linear-gradient(180deg,#f59e0b13,#ffffff04),var(--v2-surface)}.analysis-briefing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.analysis-briefing-kicker{color:var(--v2-warn);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-heavy);letter-spacing:.08em}.analysis-briefing-title{margin-top:2px;color:var(--v2-text);font-size:var(--v2-fs-base);font-weight:var(--v2-fw-heavy)}.analysis-briefing-headline{flex:0 0 auto;max-width:48%;padding:4px 9px;border:1px solid rgba(245,158,11,.34);border-radius:999px;color:var(--v2-warn);background:#f59e0b14;font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-heavy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-briefing-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.analysis-briefing-stats>div{min-width:0;padding:9px 10px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:#0a0a0a59}.analysis-briefing-stats span{display:block;color:var(--v2-text);font-family:var(--v2-mono);font-size:var(--v2-fs-md);font-weight:var(--v2-fw-heavy);line-height:var(--v2-lh-tight)}.analysis-briefing-stats small{display:block;margin-top:4px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);letter-spacing:.04em;text-transform:uppercase}.analysis-assembly{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid rgba(245,158,11,.18);border-radius:9px;background:#f59e0b0b}.analysis-assembly-label,.analysis-section-title{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-heavy);letter-spacing:.06em;text-transform:uppercase}.analysis-assembly-title{margin-top:2px;color:var(--v2-text);font-size:var(--v2-fs-base);font-weight:var(--v2-fw-heavy)}.analysis-assembly-meta{flex:0 0 auto;color:var(--v2-text-dim);font-family:var(--v2-mono);font-size:var(--v2-fs-xs)}.analysis-work-queue{margin-top:12px;padding:11px;border:1px solid rgba(245,158,11,.16);border-radius:10px;background:radial-gradient(circle at 12% 0%,rgba(245,158,11,.1),transparent 32%),#0a0a0a47}.analysis-work-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}.analysis-work-item{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:#ffffff06}.analysis-work-top{display:flex;align-items:center;gap:7px;min-width:0}.analysis-work-rank{width:20px;height:20px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:var(--v2-warn);background:#f59e0b21;font-size:11px}.analysis-work-focus{flex:0 0 auto;padding:2px 7px;border:1px solid rgba(245,158,11,.26);border-radius:999px;color:var(--v2-warn);background:#f59e0b12;font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold)}.analysis-work-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-heavy)}.analysis-work-route{margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.analysis-work-reason{margin-top:7px;color:var(--v2-text);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.analysis-briefing-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,.9fr);gap:10px;margin-top:12px}.analysis-candidates,.analysis-contract{min-width:0}.analysis-candidates{display:grid;gap:8px}.analysis-candidate{min-width:0;padding:10px;border:1px solid var(--v2-border);border-radius:9px;background:#ffffff06}.analysis-candidate-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.analysis-candidate-title{min-width:0;color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-heavy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-candidate-score{flex:0 0 auto;padding:2px 7px;border-radius:999px;color:var(--v2-warn);background:#f59e0b17;font-size:var(--v2-fs-xs)}.analysis-candidate-route{margin-top:4px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-candidate-signals{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.analysis-signal,.analysis-empty-signal{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;border:1px solid var(--v2-border);color:var(--v2-text-dim);background:#ffffff08;font-family:var(--v2-mono);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-tight)}.analysis-empty-signal{border-style:dashed;font-family:inherit}.analysis-signal.tone-ok{color:var(--v2-accent);border-color:#22c55e59;background:#22c55e12}.analysis-signal.tone-info{color:#93c5fd;border-color:#93c5fd52;background:#93c5fd0f}.analysis-signal.tone-warn{color:var(--v2-warn);border-color:#f59e0b5c;background:#f59e0b14}.analysis-signal.tone-fail{color:#fca5a5;border-color:#ef444466;background:#ef444417}.analysis-candidate-ctas{margin-top:7px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-contract{padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:#0a0a0a52}.analysis-contract ul{margin:8px 0 0;padding-left:18px}.analysis-contract li{margin:6px 0;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}@keyframes live-evidence-pulse{0%,to{transform:scale(1);box-shadow:0 0 #22c55e73}50%{transform:scale(1.2);box-shadow:0 0 0 7px #22c55e00}}@keyframes analyze-substep-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes analyze-repair-fade{0%,60%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes analyze-narration-pulse{0%,to{transform:scale(1);box-shadow:0 0 #f59e0b8c}50%{transform:scale(1.28);box-shadow:0 0 0 8px #f59e0b00}}@keyframes analyze-progress-stripe{0%{background-position:0 0}to{background-position:28px 0}}@media (max-width: 800px){.analyze-substeps{grid-template-columns:repeat(2,minmax(0,1fr))}.live-evidence-cards{grid-template-columns:1fr}.analysis-briefing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-briefing-grid,.analysis-work-items{grid-template-columns:1fr}}@media (max-width: 560px){.analyze-substeps{grid-template-columns:1fr}.analyze-substep{flex-wrap:wrap}.analyze-repair-badge{margin-left:26px}.live-evidence-head{flex-direction:column;gap:8px}.live-evidence-headline{align-self:flex-start}.live-evidence-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-briefing-head,.analysis-assembly{align-items:flex-start;flex-direction:column}.analysis-briefing-headline{max-width:100%}.analysis-assembly-meta{flex:none}}@media (prefers-reduced-motion: reduce){.analyze-ui,.analyze-ui *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.step.active .dot,.analyze-bar>span,.turn-badge,.live-evidence-current-dot{animation:none!important}}:root{--v2-bg: #0a0a0a;--v2-surface: #141414;--v2-surface-2: #1c1c1c;--v2-border: #2a2a2a;--v2-text: #ececec;--v2-text-dim: #8a8a8a;--v2-accent: #22c55e;--v2-accent-dim: #166534;--v2-warn: #f59e0b;--v2-danger: #ef4444;--v2-mono: "SF Mono", "Consolas", "Menlo", ui-monospace, monospace;--v2-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", sans-serif;--v2-fs-xs: 12px;--v2-fs-sm: 13px;--v2-fs-base: 15px;--v2-fs-md: 17px;--v2-fs-lg: 22px;--v2-fs-xl: 30px;--v2-lh-flat: 1;--v2-lh-tight: 1.2;--v2-lh-base: 1.5;--v2-lh-loose: 1.6;--v2-fw-medium: 500;--v2-fw-semibold: 600;--v2-fw-bold: 700;--v2-fw-heavy: 800}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--v2-bg);color:var(--v2-text);font-family:var(--v2-sans);font-size:var(--v2-fs-base);line-height:var(--v2-lh-base);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}a{color:var(--v2-accent)}code,pre,.mono{font-family:var(--v2-mono)}.app-shell{max-width:960px;margin:0 auto;padding:32px 24px 96px}.app-header{display:flex;align-items:baseline;gap:12px;margin-bottom:32px}.app-home-link{text-decoration:none;color:inherit;border-radius:4px;transition:color .12s ease}.app-home-link:hover .app-title{color:var(--v2-accent, #f59e0b)}.app-home-link:focus-visible{outline:2px solid var(--v2-accent, #f59e0b);outline-offset:2px}.app-header .app-title{font-size:var(--v2-fs-lg);margin:0;letter-spacing:-.01em;cursor:pointer}.app-header .badge{font-size:var(--v2-fs-xs);padding:2px 8px;border:1px solid var(--v2-border);border-radius:4px;color:var(--v2-text-dim);letter-spacing:.04em}.app-header .sub{color:var(--v2-text-dim);font-size:var(--v2-fs-base)}.card{background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:8px;padding:24px}.card+.card{margin-top:16px}.field{display:block;margin-bottom:16px}.field:last-child{margin-bottom:0}.field-label{display:block;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.field-helper{display:block;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);margin-top:4px}.preflight-history{margin-top:6px;padding:6px 10px;background:#6c9fff14;border-left:2px solid #6c9fff;border-radius:3px;color:var(--v2-text-soft, #c8c8c8);font-size:var(--v2-fs-xs)}.preflight-history>div:first-child{display:flex;flex-wrap:wrap;gap:4px 8px}.preflight-history strong{color:#a2c4ff;font-weight:var(--v2-fw-semibold)}.preflight-advice{margin-top:8px;padding-top:8px;border-top:1px solid rgba(108,159,255,.18)}.preflight-advice p{margin:4px 0 0}.preflight-advice ul{margin:6px 0 0;padding-left:18px}.preflight-advice li{margin:3px 0}input[type=text],input[type=password],input[type=url],input[type=email],input[type=search],textarea,.field select{width:100%;background:var(--v2-surface-2);border:1px solid var(--v2-border);border-radius:6px;color:var(--v2-text);padding:10px 12px;font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,.field select:focus{border-color:var(--v2-accent-dim);box-shadow:0 0 0 2px #22c55e2e}textarea{min-height:60px;resize:vertical}.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%238a8a8a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='2,2 6,6 10,2' /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px;cursor:pointer}.field select:hover{border-color:var(--v2-text-dim)}.field select option{background:var(--v2-surface-2);color:var(--v2-text)}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.row{grid-template-columns:1fr}}.btn{background:var(--v2-accent);color:#062c12;border:none;border-radius:6px;padding:12px 18px;min-height:44px;font-weight:var(--v2-fw-semibold);transition:background .15s,opacity .15s;box-sizing:border-box}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:hover:not(:disabled){background:#16a34a}.btn-ghost{background:transparent;color:var(--v2-text-dim);border:1px solid var(--v2-border);border-radius:6px;padding:11px 14px;min-height:44px;box-sizing:border-box}.btn-ghost:hover{color:var(--v2-text);border-color:var(--v2-text-dim)}.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.btn-danger,.btn-ghost.btn-danger{color:var(--v2-danger);border-color:var(--v2-danger)}.btn.btn-danger{background:var(--v2-danger);color:#fff}.btn.btn-danger:hover:not(:disabled){background:#dc2626}.start-form-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 12px;color:var(--v2-danger);background:#ef44441a;border:1px solid rgba(239,68,68,.28);border-radius:6px;font-size:var(--v2-fs-sm)}.start-form-error-action{flex-shrink:0;color:var(--v2-text);font-weight:var(--v2-fw-bold);text-decoration:underline;text-underline-offset:3px}@media (max-width: 640px){.start-form-error{align-items:flex-start;flex-direction:column}}.stream-health{display:inline-flex;align-items:flex-start;gap:7px;margin-bottom:12px;padding:6px 10px;border:1px solid var(--v2-border);border-radius:999px;color:var(--v2-text-dim);background:#ffffff08;font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-semibold)}.stream-health-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--v2-accent);margin-top:5px}.stream-health small{display:block;margin-top:2px;color:currentColor;opacity:.78;font-weight:var(--v2-fw-medium)}.stream-health-ok .stream-health-dot{background:var(--v2-accent)}.stream-health-warn{color:var(--v2-warn);border-color:#f59e0b59;background:#f59e0b14}.stream-health-warn .stream-health-dot{background:var(--v2-warn);animation:stream-health-pulse 1.4s ease-in-out infinite}.stream-health-fail{color:var(--v2-danger);border-color:#ef44446b;background:#ef44441a}.stream-health-fail .stream-health-dot{background:var(--v2-danger);animation:stream-health-pulse 1.2s ease-in-out infinite}.steps{display:flex;flex-direction:column;gap:12px}.step{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:8px}.step .dot{flex-shrink:0;width:10px;height:10px;border-radius:50%;margin-top:8px;background:var(--v2-border);position:relative}.step.pending .dot{background:var(--v2-border)}.step.active .dot{background:var(--v2-warn);width:12px;height:12px;margin-top:7px;animation:step-dot-pulse 1.1s ease-in-out infinite,step-dot-halo 1.6s ease-out infinite}.step.done .dot{background:var(--v2-accent)}.step.fail .dot{background:var(--v2-danger)}.step .title{font-weight:var(--v2-fw-semibold)}.step.active .title{color:var(--v2-warn)}.step .detail{color:var(--v2-text-dim);font-size:var(--v2-fs-sm);margin-top:2px}.step-timing{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-left:8px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-medium);vertical-align:middle}.step-timing-elapsed{color:var(--v2-text);font-weight:var(--v2-fw-semibold)}.step-timing-eta{color:var(--v2-text-dim)}.step-timing-delay{color:var(--v2-warn);font-weight:var(--v2-fw-bold)}.step-timing.delayed .step-timing-elapsed{color:var(--v2-warn)}.step.active .detail:after{content:"";display:inline-block;margin-left:2px;animation:step-ellipsis 1.4s steps(4,end) infinite}@keyframes step-dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes stream-health-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}@keyframes step-dot-halo{0%{box-shadow:0 0 #f59e0b8c}70%{box-shadow:0 0 0 14px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}@keyframes step-ellipsis{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.elapsed-timer{color:var(--v2-text);font-variant-numeric:tabular-nums;font-weight:var(--v2-fw-semibold)}.turn-badge{display:inline-block;padding:1px 6px;border-radius:4px;background:#f59e0b1f;color:var(--v2-warn);font-variant-numeric:tabular-nums;animation:turn-flash .9s ease-out}@keyframes turn-flash{0%{background:#f59e0b8c;color:#fff}to{background:#f59e0b1f;color:var(--v2-warn)}}.analyze-hint{margin-top:6px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.analyze-bar{margin-top:8px;height:3px;width:100%;background:#f59e0b14;border-radius:2px;overflow:hidden}.analyze-bar>span{display:block;height:100%;width:35%;background:linear-gradient(90deg,transparent,var(--v2-warn),transparent);animation:analyze-bar-slide 1.8s linear infinite}@keyframes analyze-bar-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.explore-list{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:6px}.explore-list li{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);background:var(--v2-surface-2);border:1px solid var(--v2-border);border-radius:4px;padding:3px 8px;animation:explore-fade-in .6s ease-out}@keyframes explore-fade-in{0%{opacity:0;transform:translateY(-4px);border-color:#f59e0b99;background:#f59e0b1f}60%{opacity:1;transform:translateY(0);border-color:#f59e0b99;background:#f59e0b1f}to{opacity:1;transform:translateY(0);border-color:var(--v2-border);background:var(--v2-surface-2)}}@media (prefers-reduced-motion: reduce){.explore-list li{animation:none}}.explore-quality-notice{margin:12px 0 18px;padding:11px 13px;border:1px solid var(--v2-border);border-left-width:3px;border-radius:8px;background:#ffffff08;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.explore-quality-notice.compact{margin:8px 0 0;padding:8px 10px}.explore-quality-notice.tone-ok{border-left-color:var(--v2-accent);background:#22c55e0d}.explore-quality-notice.tone-warn{border-left-color:var(--v2-warn);background:#f59e0b12}.explore-quality-notice.tone-fail{border-left-color:var(--v2-danger);background:#ef444414}.explore-quality-main{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;justify-content:space-between}.explore-quality-main strong{color:var(--v2-text)}.explore-quality-notice.tone-warn .explore-quality-main strong{color:var(--v2-warn)}.explore-quality-notice.tone-fail .explore-quality-main strong{color:#ff9d9d}.explore-quality-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.explore-quality-chips span{padding:2px 7px;border:1px solid var(--v2-border);border-radius:999px;background:var(--v2-bg);color:var(--v2-text-dim);font-family:var(--v2-mono);font-size:var(--v2-fs-xs)}.explore-quality-notice p{margin:8px 0 0;line-height:var(--v2-lh-base)}.briefing-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--v2-border)}.briefing-hero .target{font-family:var(--v2-mono);font-size:var(--v2-fs-base);color:var(--v2-text-dim)}.briefing-hero .mission{font-size:var(--v2-fs-md);margin-top:4px;color:var(--v2-text)}.briefing-hero .meta{text-align:right;font-size:var(--v2-fs-xs);color:var(--v2-text-dim)}.quality-badge{display:inline-flex;align-items:center;justify-content:flex-end;margin-top:6px;padding:3px 8px;border-radius:999px;border:1px solid var(--v2-border);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold)}.quality-ok{color:var(--v2-accent);border-color:#22c55e80;background:#22c55e14}.quality-warn{color:var(--v2-warn);border-color:#f59e0b80;background:#f59e0b14}.quality-fail{color:var(--v2-danger);border-color:#ef444480;background:#ef444414}.briefing-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px;flex-wrap:wrap}.room-card{background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:10px;padding:18px 20px;margin-bottom:14px}.room-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:10px}.room-title{font-size:var(--v2-fs-md);font-weight:var(--v2-fw-semibold);letter-spacing:-.01em}.room-route{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);color:var(--v2-text-dim);display:inline-flex;align-items:center;padding:12px 4px;min-height:44px;box-sizing:border-box}.tension-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.tension-low{background:var(--v2-accent)}.tension-mid{background:var(--v2-warn)}.tension-high{background:var(--v2-danger)}.room-summary{color:var(--v2-text);margin-bottom:14px}.evidence{background:var(--v2-surface-2);border:1px dashed var(--v2-border);border-radius:6px;padding:10px 12px;font-family:var(--v2-mono);font-size:var(--v2-fs-xs)}.evidence h3{font-family:var(--v2-sans);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--v2-text-dim);margin:0 0 6px}.evidence ul{list-style:none;padding:0;margin:0}.evidence li{color:var(--v2-text);line-height:var(--v2-lh-loose)}.evidence .kind{color:var(--v2-text-dim)}.agents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:18px}.agent-card{background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:8px;padding:14px 16px}.agent-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.agent-name{font-weight:var(--v2-fw-semibold)}.agent-trait{color:var(--v2-text-dim);font-size:var(--v2-fs-sm);margin-top:4px}.agent-route{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-top:8px}.agent-task-insight{margin:8px 0 0;color:var(--v2-text);font-size:var(--v2-fs-sm);line-height:var(--v2-lh-base)}.friction-badge{flex:0 0 auto;display:inline-flex;align-items:center;border-radius:4px;padding:2px 7px;font-family:var(--v2-mono);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold);line-height:var(--v2-lh-base);border:1px solid transparent;white-space:nowrap}.friction-badge-low{background:#d1fae5;color:#064e3b;border-color:#34d399}.friction-badge-medium{background:#fef3c7;color:#78350f;border-color:#f59e0b}.friction-badge-high{background:#fee2e2;color:#7f1d1d;border-color:#ef4444}.agent-friction-list{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:6px}.agent-friction-list li{display:flex;gap:6px;align-items:baseline;padding:5px 8px;border-radius:4px;background:var(--v2-surface-2);color:var(--v2-text);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.friction-tension-high{border-left:3px solid #ef4444}.friction-context-switch{border-left:3px solid #f59e0b}.friction-kind-label{flex:0 0 auto;color:var(--v2-text);font-weight:var(--v2-fw-bold)}.friction-reason{min-width:0;color:var(--v2-text-dim)}.agent-review-hint{margin-top:10px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.fail-card{background:var(--v2-surface);border:1px solid var(--v2-danger);border-left:4px solid var(--v2-danger);border-radius:8px;padding:18px 20px}.fail-code{font-family:var(--v2-mono);font-size:var(--v2-fs-xs);color:var(--v2-danger);letter-spacing:.06em}.fail-message{margin-top:8px}.fail-actions{margin-top:14px;display:flex;gap:8px}.failure-guidance{margin-top:12px;padding:12px 14px;background:#e0606014;border:1px solid rgba(224,96,96,.24);border-radius:8px;color:var(--v2-text-dim);font-size:var(--v2-fs-sm)}.failure-guidance-title{color:var(--v2-text);font-weight:var(--v2-fw-bold)}.failure-guidance p{margin:6px 0 0}.failure-guidance ul{margin:8px 0 0;padding-left:18px}.failure-guidance li{margin:4px 0}.step-failure-warning{margin:12px 0;padding:10px 14px;background:#e060601a;border-left:3px solid #e06060;border-radius:4px;color:#e08080;font-size:var(--v2-fs-xs)}.step-failure-warning strong{color:#f4a0a0;font-weight:var(--v2-fw-semibold)}.step-duration-summary{margin-top:8px;padding:8px 12px;background:#5a86ff0f;border-left:2px solid #5a86ff;border-radius:3px;font-size:var(--v2-fs-xs);color:var(--v2-text-soft, #c0c0c0);overflow-wrap:anywhere}.step-duration-summary strong{color:#9fb6ff}.step-duration-summary ul{margin:4px 0 0;padding-left:18px}.step-duration-summary li{margin:2px 0}.checkpoint-details{width:100%;margin-top:14px;padding-top:12px;border-top:1px solid var(--v2-border);color:var(--v2-text-dim);font-size:var(--v2-fs-sm)}.checkpoint-details summary{cursor:pointer;color:var(--v2-text);font-weight:var(--v2-fw-semibold);-webkit-user-select:none;user-select:none;outline:none}.checkpoint-details summary:hover{color:var(--v2-accent)}.checkpoint-details summary:focus-visible{outline:2px solid var(--v2-accent);outline-offset:3px;border-radius:4px}.checkpoint-timeline{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.checkpoint-item{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;padding:8px 10px;background:var(--v2-surface-2);border:1px solid var(--v2-border);border-left-width:3px;border-radius:6px}.checkpoint-progress{border-left-color:#5a86ff}.checkpoint-ok{border-left-color:#6cc46c}.checkpoint-fail{border-left-color:#e06060}.checkpoint-warn{border-left-color:#e0a040}.checkpoint-highlight{border-color:#e06060;box-shadow:0 0 0 1px #e0606059}.checkpoint-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff14;color:var(--v2-text);font-family:var(--v2-mono);font-size:var(--v2-fs-xs);font-weight:var(--v2-fw-bold);line-height:var(--v2-lh-flat)}.checkpoint-progress .checkpoint-icon{color:#8fb0ff}.checkpoint-ok .checkpoint-icon{color:#90d890}.checkpoint-fail .checkpoint-icon{color:#ff8f8f}.checkpoint-warn .checkpoint-icon{color:#f0bd72}.checkpoint-body{min-width:0}.checkpoint-main{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline;color:var(--v2-text);line-height:var(--v2-lh-base)}.checkpoint-main strong{font-size:var(--v2-fs-sm)}.checkpoint-main span{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.checkpoint-main time{color:var(--v2-text-dim);font-family:var(--v2-mono);font-size:var(--v2-fs-xs)}.checkpoint-meta{margin-top:3px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.checkpoint-reason{margin-top:5px;color:#f1b2b2;font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base);overflow-wrap:anywhere}.checkpoint-empty{margin:8px 0 0;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.notice-inline{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-top:6px}.share-control{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.share-panel{width:min(100%,440px);background:var(--v2-surface-2);border:1px solid var(--v2-border);border-left:4px solid var(--v2-warn);border-radius:8px;padding:14px 16px;color:var(--v2-text);text-align:left}.share-panel-header{display:flex;gap:10px;align-items:flex-start}.share-warning-icon{font-size:var(--v2-fs-md);line-height:var(--v2-lh-flat)}.share-panel-copy{margin-top:4px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.share-summary-list,.share-room-list{margin:10px 0 0;padding-left:18px}.share-room-list{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.share-checkbox{display:flex;gap:8px;align-items:flex-start;margin:14px 0}.share-checkbox input{margin-top:3px}.share-panel-actions{display:flex;justify-content:flex-end;gap:8px}.share-inline-status{color:var(--v2-accent);font-size:var(--v2-fs-xs)}.share-error{display:flex;align-items:center;gap:8px;color:var(--v2-danger);font-size:var(--v2-fs-xs);text-align:left}.shared-view{display:flex;flex-direction:column;gap:16px;margin-top:24px}.section-heading{margin:0;font-size:var(--v2-fs-lg);outline:none}.expired-card{background:var(--v2-surface);border:1px solid var(--v2-danger);border-radius:8px;padding:20px 24px;margin-top:24px}.expired-card h1{margin:0 0 10px;font-size:var(--v2-fs-lg);outline:none}.expired-card p{margin:0 0 16px;color:var(--v2-text-dim)}.auth-panel{margin-left:auto;display:flex;align-items:center;gap:8px}.auth-panel-expanded{flex-direction:column;align-items:stretch;background:var(--v2-surface);border:1px solid var(--v2-border, #2a2a2a);border-radius:8px;padding:12px 14px;min-width:260px;max-width:320px}.auth-panel-expanded .auth-label{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-bottom:4px}.auth-panel-expanded input{background:var(--v2-bg);border:1px solid var(--v2-border, #2a2a2a);color:var(--v2-text);padding:6px 8px;border-radius:4px;font-size:var(--v2-fs-sm)}.auth-panel-expanded input:focus-visible{outline:2px solid var(--v2-accent);outline-offset:1px}.auth-hint{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-top:4px}.auth-status{font-size:var(--v2-fs-xs);color:var(--v2-text);margin-bottom:6px}.auth-error{color:var(--v2-danger);font-size:var(--v2-fs-xs);margin-top:6px}.auth-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:10px}.auth-btn,.auth-btn-secondary{font-size:var(--v2-fs-sm);padding:11px 14px;min-height:44px;border-radius:4px;cursor:pointer;transition:background .15s ease,color .15s ease;box-sizing:border-box}.auth-btn{background:var(--v2-accent);color:#0a0a0a;border:none}.auth-btn:hover:not(:disabled){filter:brightness(1.1)}.auth-btn:disabled,.auth-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.auth-btn-secondary{background:transparent;color:var(--v2-text);border:1px solid var(--v2-border, #2a2a2a)}.auth-btn-secondary:hover:not(:disabled){border-color:var(--v2-text)}.auth-btn-link{background:transparent;color:var(--v2-text);border:1px solid var(--v2-border, #2a2a2a);text-decoration:none;display:inline-flex;align-items:center}.auth-btn-link:hover{border-color:var(--v2-accent);color:var(--v2-accent)}.auth-email{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-hint .auth-btn-link,.auth-actions .auth-btn-link{display:inline;border:none;padding:0;color:var(--v2-accent);background:transparent;text-decoration:underline;font-size:inherit;cursor:pointer}.auth-hint .auth-btn-link:hover,.auth-actions .auth-btn-link:hover{border:none;color:var(--v2-accent);filter:brightness(1.15)}.auth-actions .auth-btn-link{margin-right:auto;align-self:center}.reset-password-page{max-width:420px;margin:48px auto;padding:0 20px;display:flex;flex-direction:column;gap:8px}.reset-password-page h1{font-size:var(--v2-fs-lg);margin:0 0 12px}.reset-password-page input{background:var(--v2-bg);border:1px solid var(--v2-border, #2a2a2a);color:var(--v2-text);padding:8px 10px;border-radius:4px;font-size:var(--v2-fs-base)}.reset-password-page input:focus-visible{outline:2px solid var(--v2-accent);outline-offset:1px}.save-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--v2-fs-xs);padding:4px 8px;border-radius:4px;background:var(--v2-bg);border:1px solid var(--v2-border, #2a2a2a)}.save-badge-saving{color:var(--v2-text-dim)}.save-badge-saved{color:var(--v2-accent);border-color:var(--v2-accent)}.save-badge-saved a{color:var(--v2-accent);text-decoration:underline}.save-badge-failed{color:var(--v2-danger);border-color:var(--v2-danger)}.save-badge-failed .btn-link{margin-left:6px;color:var(--v2-danger);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0;font-size:var(--v2-fs-xs)}.save-retry-error{color:var(--v2-danger)}.save-badge-skipped{color:var(--v2-text-dim);border-color:var(--v2-text-dim)}.my-runs-page,.my-run-detail,.auth-required{padding:20px 24px;max-width:960px;margin:0 auto}.my-runs-page h1,.my-run-detail h1,.auth-required h1{margin:0 0 16px;font-size:var(--v2-fs-lg);outline:none}.my-runs-header,.my-run-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.my-runs-header h1,.my-run-detail-header h1{margin-bottom:0}.my-runs-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.my-runs-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.my-runs-link{display:grid;grid-template-columns:60px 1fr 160px;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--v2-border, #2a2a2a);border-radius:6px;text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease}.my-runs-link:hover{border-color:var(--v2-accent);background:#22c55e0d}.my-runs-link:focus-visible{outline:2px solid var(--v2-accent);outline-offset:2px}.run-status{font-size:var(--v2-fs-xs);padding:2px 8px;border-radius:4px;display:inline-block;text-align:center}.run-status-done{background:#22c55e26;color:var(--v2-accent);border:1px solid var(--v2-accent)}.run-status-failed{background:#ef444426;color:var(--v2-danger);border:1px solid var(--v2-danger)}.run-target{font-family:var(--v2-font-mono, monospace);font-size:var(--v2-fs-sm);color:var(--v2-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-time{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);text-align:right}.my-runs-delete{min-width:76px}.run-mission{grid-column:2 / 4;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);margin-top:4px}.btn.btn-secondary,.auth-required .btn{display:inline-block;margin-top:16px;padding:8px 16px;background:var(--v2-bg);border:1px solid var(--v2-border, #2a2a2a);color:var(--v2-text);text-decoration:none;border-radius:4px}.btn.btn-secondary:hover{border-color:var(--v2-accent)}.auto-save-toggle{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:180px}.auto-save-switch{display:inline-flex;align-items:center;gap:10px;color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-semibold)}.auto-save-switch input{width:42px;height:22px;accent-color:var(--v2-accent)}.auto-save-status{min-height:16px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);text-align:right}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#0000008c}.confirm-dialog{width:min(420px,100%);padding:20px;background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:8px;box-shadow:0 20px 60px #00000059}.confirm-dialog h2{margin:0 0 8px;font-size:var(--v2-fs-md)}.confirm-dialog p{margin:0;color:var(--v2-text-dim);font-size:var(--v2-fs-sm);line-height:var(--v2-lh-base)}.confirm-dialog-error{margin-top:10px!important;color:var(--v2-danger)!important}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:20px;background:#00000094}.modal-panel{width:min(460px,100%);max-height:min(86vh,900px);display:flex;flex-direction:column;background:var(--v2-surface);border:1px solid var(--v2-border);border-radius:8px;box-shadow:0 20px 60px #00000061;overflow:hidden}.modal-panel-wide{width:min(820px,100%)}.modal-header{display:flex;justify-content:space-between;gap:16px;padding:18px 20px 14px;border-bottom:1px solid var(--v2-border)}.modal-header h2{margin:0 0 6px;font-size:var(--v2-fs-md)}.modal-header p{margin:0;color:var(--v2-text-dim);font-size:var(--v2-fs-sm);line-height:var(--v2-lh-base)}.modal-close{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;background:transparent;color:var(--v2-text-dim);border:1px solid var(--v2-border);border-radius:6px}.modal-close:hover,.modal-close:focus-visible{color:var(--v2-text);border-color:var(--v2-text-dim)}.modal-body{padding:18px 20px;overflow:auto}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 18px;border-top:1px solid var(--v2-border)}.issue-export{display:flex;flex-direction:column;gap:16px}.issue-export-targets{display:inline-flex;width:fit-content;border:1px solid var(--v2-border);border-radius:6px;overflow:hidden}.issue-export-targets button{min-width:92px;padding:8px 14px;background:transparent;color:var(--v2-text-dim);border:none;border-right:1px solid var(--v2-border)}.issue-export-targets button:last-child{border-right:none}.issue-export-targets button.active{background:var(--v2-surface-2);color:var(--v2-text)}.issue-export-grid{display:grid;gap:12px}.issue-export-grid label,.issue-export-two-col label{display:flex;flex-direction:column;gap:6px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.issue-export-grid input[type=text],.issue-export-grid input[type=password]{width:100%;min-width:0}.issue-export-token-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:8px}.issue-export-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.issue-export-checkbox,.issue-export-warning,.issue-export-room-head,.issue-export-improvements label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px;color:var(--v2-text);font-size:var(--v2-fs-sm);line-height:var(--v2-lh-base)}.issue-export-warning{padding:12px;background:#eab30814;border:1px solid rgba(234,179,8,.35);border-radius:6px}.issue-export-selection,.issue-export-result{border:1px solid var(--v2-border);border-radius:8px;overflow:hidden}.issue-export-section-title{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--v2-surface-2);color:var(--v2-text);font-size:var(--v2-fs-sm);font-weight:var(--v2-fw-semibold)}.issue-export-room{padding:12px;border-top:1px solid var(--v2-border)}.issue-export-room:first-of-type{border-top:none}.issue-export-room .dim{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.issue-export-improvements{display:grid;gap:8px;margin:10px 0 0 24px}.issue-export-empty{margin:8px 0 0 24px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.issue-export-error{color:var(--v2-danger);font-size:var(--v2-fs-sm)}.issue-export-result{padding-bottom:10px}.issue-export-result ul{margin:10px 12px 0;padding-left:18px}.issue-export-failures{color:var(--v2-danger)}.issue-export-origin{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);overflow-wrap:anywhere}@media (max-width: 640px){.modal-overlay{padding:10px}.modal-panel,.modal-panel-wide{max-height:92vh}.modal-header,.modal-body,.modal-footer{padding-left:14px;padding-right:14px}.issue-export-token-row,.issue-export-two-col{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-footer .btn,.modal-footer .btn-ghost{width:100%}}@media (max-width: 700px){.my-runs-header,.my-run-detail-header{flex-direction:column;align-items:stretch}.auto-save-toggle{align-items:flex-start}.auto-save-status{text-align:left}.my-runs-item{grid-template-columns:1fr}.my-runs-link{grid-template-columns:58px 1fr}.run-time{grid-column:2;text-align:left}.run-mission{grid-column:1 / -1}.my-runs-delete{justify-self:start}}@keyframes card-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.room-card{animation:card-reveal .22s ease-out both}.room-card:nth-child(1){animation-delay:0ms}.room-card:nth-child(2){animation-delay:50ms}.room-card:nth-child(3){animation-delay:.1s}.room-card:nth-child(4){animation-delay:.15s}.room-card:nth-child(5){animation-delay:.2s}.room-card:nth-child(6){animation-delay:.25s}.room-card:nth-child(7){animation-delay:.3s}.room-card:nth-child(8){animation-delay:.35s}.tension-bar{display:inline-block;width:56px;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden;vertical-align:middle;margin-left:8px}.tension-bar>span{display:block;height:100%;border-radius:2px;transition:width .32s ease-out}.tension-bar.tension-low>span{background:var(--v2-accent)}.tension-bar.tension-mid>span{background:var(--v2-warn)}.tension-bar.tension-high>span{background:var(--v2-danger)}.agent-diagram{margin-top:8px;max-width:220px}@media (prefers-reduced-motion: reduce){.step.active .dot,.step.active .detail:after,.analyze-bar>span,.turn-badge,.room-card{animation:none!important}.step.active .dot{box-shadow:0 0 0 4px #f59e0b40!important}.analyze-bar>span{width:100%;opacity:.5}.tension-bar>span{transition:none!important}}.metrics-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.metric-badge{display:inline-block;font-size:var(--v2-fs-xs);padding:2px 8px;border-radius:4px;border:1px solid var(--v2-border, #2a2a2a);background:var(--v2-bg);color:var(--v2-text-dim);font-family:var(--v2-font-mono, monospace)}.metric-badge.tone-ok{color:var(--v2-accent);border-color:var(--v2-accent)}.metric-badge.tone-warn{color:var(--v2-warn);border-color:var(--v2-warn)}.metric-badge.tone-fail{color:var(--v2-danger);border-color:var(--v2-danger)}.improvements{margin-top:12px;padding:10px 12px;background:#22c55e0a;border-left:3px solid var(--v2-accent);border-radius:4px}.improvements h3{margin:0 0 6px;font-size:var(--v2-fs-xs);color:var(--v2-accent);letter-spacing:.05em;text-transform:uppercase}.improvements ul{margin:0;padding-left:20px}.improvements li{font-size:var(--v2-fs-sm);color:var(--v2-text);line-height:var(--v2-lh-base);margin-bottom:4px}.improvements li:last-child{margin-bottom:0}.landing-hero{margin-top:8px;padding:40px 24px 48px;border:1px solid var(--v2-border, #2a2a2a);border-radius:10px;background:linear-gradient(180deg,rgba(34,197,94,.03) 0%,transparent 100%)}.landing-hero-inner{max-width:880px;margin:0 auto}.landing-headline{font-size:var(--v2-fs-xl);line-height:var(--v2-lh-tight);margin:0 0 16px;color:var(--v2-text);font-weight:var(--v2-fw-bold)}.landing-headline .accent{color:var(--v2-accent)}.landing-sub{font-size:var(--v2-fs-base);line-height:var(--v2-lh-loose);color:var(--v2-text-dim);margin:0 0 28px;max-width:680px}.landing-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}.landing-cta-primary{background:var(--v2-accent);color:#0a0a0a;padding:10px 20px;font-weight:var(--v2-fw-semibold);text-decoration:none;border-radius:6px;border:none}.landing-cta-primary:hover{filter:brightness(1.1)}.landing-cta-secondary{padding:10px 20px;border-radius:6px}.landing-features{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.landing-features li{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--v2-border, #2a2a2a);border-radius:6px;background:var(--v2-bg)}.landing-features strong{color:var(--v2-text);font-size:var(--v2-fs-base)}.landing-features span{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.section-heading-wrap{margin:32px 0 12px;padding:0 4px}.demo-banner{padding:10px 14px;border:1px dashed var(--v2-accent);border-radius:6px;background:#22c55e0d;color:var(--v2-text);font-size:var(--v2-fs-sm);margin-bottom:18px}.demo-banner a{color:var(--v2-accent);text-decoration:underline}.demo-banner code{background:var(--v2-bg);padding:1px 6px;border-radius:3px;font-family:var(--v2-font-mono, monospace);font-size:var(--v2-fs-xs)}.diff-panel{margin:16px 0;padding:14px 16px;border:1px solid var(--v2-border, #2a2a2a);border-radius:8px;background:var(--v2-bg)}.diff-panel-empty{color:var(--v2-text-dim);font-size:var(--v2-fs-sm)}.diff-summary{font-size:var(--v2-fs-sm);margin-bottom:10px}.diff-meta{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.diff-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.diff-chip{font-size:var(--v2-fs-xs);padding:2px 8px;border-radius:4px;border:1px solid var(--v2-border, #2a2a2a)}.diff-chip-resolved{color:var(--v2-accent);border-color:var(--v2-accent)}.diff-chip-improved{color:var(--v2-accent)}.diff-chip-same{color:var(--v2-text-dim)}.diff-chip-worsened{color:var(--v2-warn);border-color:var(--v2-warn)}.diff-chip-new{color:var(--v2-danger);border-color:var(--v2-danger)}.diff-chip-quality{color:var(--v2-accent);border-color:#4ade808c}.diff-chip-failure{color:var(--v2-warn);border-color:#f59e0b8c}.diff-chip-improvements{color:var(--v2-text);border-color:#ffffff2e}.diff-chip-task-passed{color:var(--v2-accent);border-color:#4ade808c}.diff-chip-task-partial{color:var(--v2-warn);border-color:#f59e0b8c}.diff-chip-task-failed{color:var(--v2-danger);border-color:#ef44448c}.diff-chip-task-unmeasured{color:var(--v2-text-dim);border-color:#ffffff40}.diff-followup-queue{margin:4px 0 12px;padding:10px;border:1px solid rgba(245,158,11,.3);border-radius:6px;background:#f59e0b0e}.diff-followup-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.diff-followup-header div{display:flex;flex-direction:column;gap:2px;font-size:12.5px}.diff-followup-header span{color:var(--v2-text-dim);font-size:11.5px}.diff-followup-copy{flex:0 0 auto;padding:4px 8px;border:1px solid rgba(245,158,11,.55);border-radius:4px;background:#00000029;color:var(--v2-text);font-size:11.5px;cursor:pointer}.diff-followup-copy:hover,.diff-followup-copy:focus-visible{border-color:var(--v2-warn);outline:none}.diff-followup-items{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.diff-followup-item{padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#00000029}.diff-followup-item-failed{border-color:#ef444459}.diff-followup-item-partial{border-color:#f59e0b59}.diff-followup-main{display:flex;gap:8px;align-items:center;min-width:0;font-size:12px}.diff-followup-main .mono{font-family:var(--v2-font-mono, monospace);color:var(--v2-text-dim);font-size:11px;white-space:nowrap}.diff-followup-rank{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ffffff14;color:var(--v2-text);font-family:var(--v2-font-mono, monospace);font-size:11px}.diff-followup-meta{margin-left:auto;color:var(--v2-text-dim);font-size:11.5px;white-space:nowrap}.diff-followup-checks code{border-color:#ef44442e}.diff-remeasure-queue{margin:4px 0 12px;padding:10px;border:1px dashed rgba(255,255,255,.22);border-radius:6px;background:#ffffff05}.diff-task-acceptance{margin:4px 0 12px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#ffffff06}.diff-task-header{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:var(--v2-fs-xs)}.diff-task-header span{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.diff-task-items{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.diff-task-item{padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#00000024}.diff-task-item-passed{border-color:#4ade8059}.diff-task-item-partial{border-color:#f59e0b59}.diff-task-item-failed{border-color:#ef444459}.diff-task-item-unmeasured{border-color:#ffffff38}.diff-task-main{display:flex;gap:8px;align-items:center;min-width:0;font-size:var(--v2-fs-xs)}.diff-task-main .mono{font-family:var(--v2-font-mono, monospace);color:var(--v2-text-dim);font-size:var(--v2-fs-xs);white-space:nowrap}.diff-task-id{font-family:var(--v2-font-mono, monospace);color:var(--v2-text);font-size:var(--v2-fs-xs)}.diff-task-title{color:var(--v2-text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-task-text{margin:6px 0;color:var(--v2-text);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.diff-task-checks{list-style:none;display:flex;flex-direction:column;gap:3px;padding:0;margin:0}.diff-task-checks li{display:flex;align-items:center;gap:6px;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.diff-task-checks li.passed span:first-child{color:var(--v2-accent)}.diff-task-checks li.failed span:first-child{color:var(--v2-danger)}.diff-task-checks li.unmeasured span:first-child{color:var(--v2-text-dim)}.diff-task-checks code{margin-left:auto;color:var(--v2-text);background:#ffffff0f;border-radius:4px;padding:1px 5px}.diff-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.diff-item{display:flex;gap:8px;font-size:var(--v2-fs-xs);padding:6px 8px;border-radius:4px;align-items:center}.diff-item .mono{font-family:var(--v2-font-mono, monospace);color:var(--v2-text-dim);font-size:var(--v2-fs-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:30%}.diff-label{font-size:var(--v2-fs-xs);padding:1px 6px;border-radius:3px;min-width:38px;text-align:center;flex:0 0 auto}.diff-label-resolved{background:var(--v2-accent);color:#0a0a0a}.diff-label-new{background:var(--v2-danger);color:#fff}.diff-label-tension-down{background:var(--v2-accent);color:#0a0a0a}.diff-label-tension-up{background:var(--v2-warn);color:#0a0a0a}.diff-label-tension-same{background:#ffffff1a;color:var(--v2-text-dim)}.diff-label-task-passed{background:var(--v2-accent);color:#0a0a0a}.diff-label-task-partial{background:var(--v2-warn);color:#0a0a0a}.diff-label-task-failed{background:var(--v2-danger);color:#fff}.diff-label-task-unmeasured{background:#ffffff1a;color:var(--v2-text-dim)}.diff-delta{color:var(--v2-text-dim)}.metric-details{width:100%;margin-top:6px;font-size:var(--v2-fs-xs);color:var(--v2-text-dim)}.metric-details summary{cursor:pointer;padding:4px 0;color:var(--v2-text-dim);-webkit-user-select:none;user-select:none}.metric-details summary:hover{color:var(--v2-text)}.metric-details ul{margin:4px 0 8px;padding-left:16px;list-style:none;border-left:2px solid var(--v2-border, #2a2a2a)}.metric-details li{padding:3px 0;line-height:var(--v2-lh-base)}.metric-details code{background:var(--v2-bg);padding:1px 4px;border-radius:2px;font-family:var(--v2-font-mono, monospace);font-size:var(--v2-fs-xs)}.metric-details .dim{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.a11y-violation{margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed rgba(255,255,255,.08)}.a11y-violation:last-child{border-bottom:none}.violation-just-highlighted{animation:violation-pulse 2s ease-out}@keyframes violation-pulse{0%{background:#78c8ff40}to{background:transparent}}@media (prefers-reduced-motion: reduce){.violation-just-highlighted{animation:none;background:#78c8ff26;outline:2px solid rgba(120,200,255,.6);outline-offset:2px}}.a11y-violation-head{display:flex;align-items:center;gap:6px;margin-bottom:2px}.a11y-copy-link{margin-left:6px;padding:2px 6px;font-size:var(--v2-fs-xs);background:transparent;border:1px solid var(--v2-text-dim);border-radius:3px;color:var(--v2-text-dim);cursor:pointer}.a11y-copy-link:hover{color:var(--v2-text, #ddd);border-color:var(--v2-text, #aaa)}.a11y-copy-link:focus-visible{outline:2px solid #6c9fff;outline-offset:2px}.a11y-rule-id{font-size:var(--v2-fs-xs)}.a11y-violation-help{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);margin-bottom:4px}.a11y-violation-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:var(--v2-fs-xs)}.a11y-fix-hint{margin-top:4px;padding:4px 8px;background:#78c87814;border-left:2px solid #6cc46c;border-radius:2px;font-size:var(--v2-fs-xs);color:#a0d8a0}.a11y-wcag-chips{display:inline-flex;gap:4px;flex-wrap:wrap}.a11y-wcag-chip{padding:1px 6px;border-radius:4px;background:#5a86ff26;color:#9fb6ff;font-size:var(--v2-fs-xs);white-space:nowrap}.a11y-help-link{color:#6c9fff;text-decoration:underline;font-size:var(--v2-fs-xs)}.a11y-help-link:hover{color:#a2c4ff}.a11y-help-link:focus-visible{outline:2px solid #6c9fff;outline-offset:2px}.a11y-nodes{margin-top:6px;padding-left:12px}.a11y-nodes summary{cursor:pointer;color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.a11y-nodes summary:focus-visible{outline:2px solid var(--v2-text-dim);outline-offset:2px}.a11y-node-list{padding-left:0;list-style:none}.a11y-node-item{margin:4px 0;padding:4px 8px;background:#ffffff08;border-radius:4px}.a11y-node-html{display:block;white-space:pre-wrap;word-break:break-all;font-size:var(--v2-fs-xs);color:silver}.a11y-node-rect{margin-top:2px;font-size:var(--v2-fs-xs)}.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}.improvements{margin-top:0!important}@media print{:root{--v2-bg: #ffffff;--v2-surface: #ffffff;--v2-text: #0a0a0a;--v2-text-dim: #555555;--v2-border: #cccccc;--v2-accent: #10803f;--v2-danger: #b91c1c;--v2-warn: #a86a00}body{background:#fff!important;color:#0a0a0a!important}.app-shell{padding:0!important;max-width:100%!important}.app-header,.landing-hero,.section-heading-wrap,.auth-panel,.no-print,.briefing-actions,.steps,.diff-panel,.demo-banner,.run-status,.agents-grid~*,nav,footer{display:none!important}.card,.room-card,.agent-card{border:1px solid #cccccc!important;background:#fff!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}.room-card{margin-bottom:10px!important;padding:12px!important}.evidence,.improvements{background:#fafafa!important;color:#0a0a0a!important}.improvements{border-left:3px solid #10803f!important}.room-title,.briefing-hero,.mission,.target,.agent-name,.agent-trait,.agent-route{color:#0a0a0a!important}.kind,.room-route{color:#555!important}.metric-badge{border-color:#999!important;color:#0a0a0a!important}.metric-badge.tone-warn{color:#a86a00!important;border-color:#a86a00!important}.metric-badge.tone-fail{color:#b91c1c!important;border-color:#b91c1c!important}.metric-badge.tone-ok{color:#10803f!important;border-color:#10803f!important}.tension-bar{background:#e5e5e5!important}.agent-diagram circle{fill:#10803f!important}.agent-diagram polyline{stroke:#555!important}.agent-diagram text{fill:#555!important}*{animation:none!important;transition:none!important}details{display:block!important}details>summary{list-style:none;display:block;color:#333!important}details[open]>summary{font-weight:var(--v2-fw-semibold)}}.pricing-page{max-width:960px;margin:0 auto;padding:32px 24px}.pricing-header h1{font-size:var(--v2-fs-xl);margin:0 0 8px;outline:none}.pricing-sub{color:var(--v2-text-dim);margin:0 0 20px;font-size:var(--v2-fs-base)}.usage-strip{padding:10px 14px;border:1px solid var(--v2-accent);background:#22c55e0d;border-radius:6px;margin-bottom:24px;font-size:var(--v2-fs-sm)}.usage-strip code{background:var(--v2-bg);padding:1px 6px;border-radius:3px;font-family:var(--v2-font-mono, monospace);font-size:var(--v2-fs-xs)}.pricing-error{padding:10px 14px;border:1px solid var(--v2-danger);background:#ef44440d;border-radius:6px;margin-bottom:24px;color:var(--v2-danger);font-size:var(--v2-fs-sm)}.pricing-notice{padding:10px 14px;border-radius:6px;margin-bottom:24px;font-size:var(--v2-fs-sm)}.pricing-notice-info{border:1px solid var(--v2-accent);background:#22c55e0d;color:var(--v2-text)}.pricing-notice-error{border:1px solid var(--v2-danger);background:#ef44440d;color:var(--v2-danger)}.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.tier-card{padding:20px 18px;border:1px solid var(--v2-border, #2a2a2a);border-radius:8px;background:var(--v2-surface);display:flex;flex-direction:column}.tier-current{border-color:var(--v2-accent);background:#22c55e08}.tier-name{margin:0 0 8px;font-size:var(--v2-fs-md);color:var(--v2-text)}.tier-price{font-size:var(--v2-fs-lg);font-weight:var(--v2-fw-bold);color:var(--v2-accent);margin-bottom:4px}.tier-runs{color:var(--v2-text-dim);font-size:var(--v2-fs-sm);margin-bottom:16px}.tier-features{list-style:none;padding:0;margin:0 0 20px;flex:1}.tier-features li{font-size:var(--v2-fs-sm);line-height:var(--v2-lh-base);padding:4px 0 4px 16px;position:relative}.tier-features li:before{content:"✓";position:absolute;left:0;color:var(--v2-accent);font-weight:var(--v2-fw-bold)}.tier-card .btn{width:100%;padding:10px}.pricing-footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--v2-border, #2a2a2a);color:var(--v2-text-dim);font-size:var(--v2-fs-sm)}.room-shot{display:block;margin:10px 0;border-radius:6px;overflow:hidden;border:1px solid var(--v2-border, #2a2a2a);max-width:600px;transition:border-color .15s ease}.room-shot:hover{border-color:var(--v2-accent)}.room-shot img{display:block;width:100%;height:auto;max-height:200px;object-fit:cover;object-position:top}@media print{.room-shot{max-width:100%!important;border:1px solid #cccccc!important}.room-shot img{max-height:120px!important}}.my-runs-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:12px 14px;border:1px solid var(--v2-border, #2a2a2a);border-radius:6px;background:var(--v2-surface);margin-bottom:16px}.field-inline{display:flex;flex-direction:column;gap:4px;min-width:120px}.field-label-sm{font-size:var(--v2-fs-xs);color:var(--v2-text-dim)}.field-inline input[type=search],.field-inline select{padding:6px 8px;background:var(--v2-bg);border:1px solid var(--v2-border, #2a2a2a);color:var(--v2-text);border-radius:4px;font-size:var(--v2-fs-sm)}.field-inline input[type=search]:focus-visible,.field-inline select:focus-visible{outline:2px solid var(--v2-accent);outline-offset:1px}.field-inline input[type=search]{min-width:200px}.my-runs-count{margin-left:auto;font-size:var(--v2-fs-xs);color:var(--v2-text-dim);padding:6px 10px;border:1px solid var(--v2-border, #2a2a2a);border-radius:4px;background:var(--v2-bg)}.my-runs-no-match{padding:20px;text-align:center;color:var(--v2-text-dim);background:var(--v2-bg);border:1px dashed var(--v2-border, #2a2a2a);border-radius:6px}.improvements h3 .imp-help{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-left:8px;text-transform:none;letter-spacing:0}.improvements li{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.imp-text{flex:1;min-width:200px}.imp-badge{font-size:var(--v2-fs-xs);padding:1px 7px;border-radius:3px;font-family:var(--v2-font-mono, monospace);white-space:nowrap;flex:0 0 auto}.imp-impact-high{background:var(--v2-danger);color:#fff}.imp-impact-mid{background:var(--v2-warn);color:#0a0a0a}.imp-impact-low{background:#ffffff14;color:var(--v2-text-dim);border:1px solid var(--v2-border, #2a2a2a)}.imp-effort-low{background:var(--v2-accent);color:#0a0a0a}.imp-effort-medium{background:#ffffff14;color:var(--v2-text);border:1px solid var(--v2-border, #2a2a2a)}.imp-effort-high{background:#ef44441a;color:var(--v2-danger);border:1px solid var(--v2-danger)}@media print{.imp-impact-high{background:#b91c1c!important;color:#fff!important}.imp-impact-mid{background:#a86a00!important;color:#fff!important}.imp-effort-low{background:#10803f!important;color:#fff!important}}.room-shots{display:flex;gap:10px;align-items:flex-start;margin:10px 0;flex-wrap:wrap}.room-shots .room-shot{margin:0;flex:0 0 auto;max-width:100%}.room-shot-desktop{flex:1 1 320px;max-width:520px}.room-shot-mobile{flex:0 0 160px;max-width:200px}.room-shot-desktop img{max-height:180px}.room-shot-mobile img{max-height:260px;width:100%}.shot-label{display:block;font-size:var(--v2-fs-xs);font-family:var(--v2-font-mono, monospace);color:var(--v2-text-dim);padding:2px 6px;background:var(--v2-bg);border-bottom:1px solid var(--v2-border, #2a2a2a)}.shot-panel{flex:0 1 auto;max-width:100%}.shot-panel-desktop{flex:1 1 520px;max-width:min(100%,900px)}.shot-panel .room-shot{width:100%;max-width:100%}.shot-panel-desktop>.room-shot-desktop{max-width:520px}.shot-controls{display:flex;align-items:center;gap:8px;margin-top:6px}.shot-control-link,.shot-control-button{font-size:var(--v2-fs-xs);line-height:var(--v2-lh-tight);border-radius:4px;display:inline-flex;align-items:center;padding:11px 12px;min-height:44px;box-sizing:border-box}.shot-control-link{color:var(--v2-accent);text-decoration:underline;text-underline-offset:2px}.shot-control-button{background:transparent;color:var(--v2-text-dim);border:1px solid var(--v2-border, #2a2a2a);cursor:pointer}.shot-control-button:hover,.shot-control-button:focus-visible{color:var(--v2-text);border-color:var(--v2-text-dim)}.violation-overlay-box{margin-top:10px;border:1px solid var(--v2-border, #2a2a2a);background:var(--v2-bg);padding:8px;max-width:min(100%,900px)}.violation-overlay-shot{position:relative;max-width:100%}.violation-overlay-shot img{display:block;width:100%;height:auto}.violation-overlay-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.violation-overlay-svg rect{pointer-events:auto;vector-effect:non-scaling-stroke}.violation-rect-outer{fill:transparent;stroke:#fffffff5;stroke-width:3px}.violation-rect-inner{fill:transparent;stroke-width:2px;cursor:pointer}.violation-rect-inner:focus-visible{outline:none;stroke-width:3px;filter:drop-shadow(0 0 3px rgba(255,255,255,.96))}.violation-rect-inner.impact-critical{stroke:#e54848}.violation-rect-inner.impact-serious{stroke:#f07d22}.violation-rect-inner.impact-moderate{stroke:#c58a00}.violation-rect-inner.impact-minor{stroke:#555}.violation-rect-inner.violation-rect-active{stroke:#ffd66c;stroke-width:4px;filter:drop-shadow(0 0 6px rgba(255,214,108,.6))}@media (prefers-reduced-motion: reduce){.violation-rect-inner.violation-rect-active{filter:none}}@media print{.room-shots{gap:8px!important}.room-shot-desktop img,.room-shot-mobile img{max-height:100px!important}}.all-pages-table{margin-top:32px;padding-top:20px;border-top:1px solid var(--v2-border, #2a2a2a)}.all-pages-header h3{margin:0 0 6px;font-size:var(--v2-fs-md);color:var(--v2-text)}.all-pages-hint{margin:0 0 14px;font-size:var(--v2-fs-xs);color:var(--v2-text-dim);line-height:var(--v2-lh-base)}.all-pages-scroll{overflow-x:auto;border:1px solid var(--v2-border, #2a2a2a);border-radius:6px}.all-pages-table table{width:100%;border-collapse:collapse;font-size:var(--v2-fs-xs)}.all-pages-table th{text-align:left;padding:8px 10px;font-size:var(--v2-fs-xs);color:var(--v2-text-dim);background:var(--v2-bg);border-bottom:1px solid var(--v2-border, #2a2a2a);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--v2-fw-medium);position:sticky;top:0}.all-pages-table td{padding:8px 10px;border-bottom:1px solid var(--v2-border, #2a2a2a);vertical-align:top}.all-pages-table tr:last-child td{border-bottom:none}.all-pages-table tr.row-fail{background:#ef44440a}.all-pages-table tr.row-warn{background:#f59e0b0a}.row-tag{font-size:var(--v2-fs-xs);padding:2px 6px;border-radius:3px;font-family:var(--v2-font-mono, monospace);white-space:nowrap}.row-tag-room{background:var(--v2-accent);color:#0a0a0a}.row-tag-scanned{background:#ffffff14;color:var(--v2-text-dim);border:1px solid var(--v2-border, #2a2a2a)}.row-route{color:var(--v2-text);text-decoration:none;font-size:var(--v2-fs-xs);word-break:break-all;display:inline-flex;align-items:center;padding:12px 8px;min-height:44px;min-width:44px;box-sizing:border-box}.row-route:hover{text-decoration:underline}.row-heading{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);margin-top:2px}.row-load{font-family:var(--v2-font-mono, monospace);white-space:nowrap}.row-issues{display:flex;flex-wrap:wrap;gap:4px}.row-issue{font-size:var(--v2-fs-xs);padding:1px 6px;border-radius:3px;font-family:var(--v2-font-mono, monospace);white-space:nowrap}.row-issue-warn{background:#f59e0b1f;color:var(--v2-warn)}.row-issue-fail{background:#ef44441f;color:var(--v2-danger)}.row-issue-none{color:var(--v2-text-dim)}.imp-demoted{background:var(--v2-surface-2);border-left:2px solid #854d0e;padding-left:8px}.imp-badge.imp-demoted-badge{background:#3b2e0a;color:#fcd34d;border-color:#854d0e}.imp-unreviewed{background:#ef444412;border-left:2px solid rgba(239,68,68,.72);padding-left:8px}.imp-badge.imp-unreviewed-badge{background:#ef444421;color:#ffb4b4;border-color:#ef44448c}.imp-reason{display:block;color:var(--v2-text-dim);font-size:var(--v2-fs-xs);margin-top:4px}.code-draft{margin-top:8px;border:1px solid var(--v2-border);border-radius:4px;background:var(--v2-bg)}.code-draft summary{padding:6px 10px;cursor:pointer;font-size:var(--v2-fs-xs);list-style:none}.code-draft summary::-webkit-details-marker{display:none}.code-draft summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .12s}.code-draft[open] summary:before{transform:rotate(90deg)}.imp-badge.imp-code{background:#0d2a4f;color:#7fb5f0;border-color:#1f4a85}.code-draft-snippet{margin:0;padding:10px 12px;background:var(--v2-surface-2);color:var(--v2-text);font-family:var(--v2-mono);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base);overflow-x:auto;white-space:pre;border-top:1px solid var(--v2-border)}.code-anchor{padding:6px 12px;font-size:var(--v2-fs-xs);color:var(--v2-text-dim);border-top:1px solid var(--v2-border)}.acceptance-criteria{margin-top:8px;border:1px solid var(--v2-border);border-radius:4px;background:#1f4a851f}.acceptance-criteria summary{padding:6px 10px;cursor:pointer;font-size:var(--v2-fs-xs);list-style:none}.acceptance-criteria summary::-webkit-details-marker{display:none}.acceptance-criteria summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .12s}.acceptance-criteria[open] summary:before{transform:rotate(90deg)}.acceptance-criteria ul{margin:0;padding:8px 12px 10px 28px;border-top:1px solid var(--v2-border);color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-base)}.row-thumb{width:120px;max-height:80px;object-fit:cover;object-position:top;border-radius:3px;display:block}.dim{color:var(--v2-text-dim)}@media print{.all-pages-table{page-break-before:always}.all-pages-scroll{overflow:visible!important}.row-thumb{max-height:50px!important}}.export-menu{position:relative;display:inline-flex;align-items:center;gap:8px}.export-menu-pop{position:absolute;top:calc(100% + 4px);right:0;background:var(--v2-surface);border:1px solid var(--v2-border, #2a2a2a);border-radius:6px;padding:6px;min-width:260px;z-index:10;box-shadow:0 8px 24px #0006}.export-menu-pop button{width:100%;text-align:left;background:transparent;border:none;color:var(--v2-text);padding:8px 10px;font-size:var(--v2-fs-sm);cursor:pointer;border-radius:4px;display:flex;gap:8px;align-items:baseline}.export-menu-pop button:hover,.export-menu-pop button:focus-visible{background:var(--v2-bg);outline:none}.export-menu-pop .dim{color:var(--v2-text-dim);font-size:var(--v2-fs-xs);margin-left:auto}.export-menu-group-label{font-size:var(--v2-fs-xs);color:var(--v2-text-dim);text-transform:uppercase;letter-spacing:.08em;padding:6px 10px 2px}.export-menu-divider{height:1px;background:var(--v2-border, #2a2a2a);margin:4px 0}.export-feedback{font-size:var(--v2-fs-xs);padding:3px 8px;border-radius:3px;white-space:nowrap}.export-feedback.ok{color:var(--v2-accent);border:1px solid var(--v2-accent);background:#22c55e0f}.export-feedback.err{color:var(--v2-danger);border:1px solid var(--v2-danger)}@media print{.export-menu{display:none!important}}.device-field legend{padding:0;margin-bottom:6px}.device-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:2px}.device-choice{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--v2-border, #2a2a2a);border-radius:6px;cursor:pointer;background:var(--v2-bg);transition:border-color .15s ease,background .15s ease;position:relative}.device-choice input[type=radio]{position:absolute;opacity:0;pointer-events:none}.device-choice span{font-size:var(--v2-fs-sm);color:var(--v2-text);font-weight:var(--v2-fw-semibold)}.device-choice em{font-style:normal;font-size:var(--v2-fs-xs);color:var(--v2-text-dim)}.device-choice:hover{border-color:var(--v2-text-dim)}.device-choice.active{border-color:var(--v2-accent);background:#22c55e0f}.device-choice.active span:before{content:"✓ ";color:var(--v2-accent)}.device-choice:focus-within{outline:2px solid var(--v2-accent);outline-offset:2px}.conf-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px;vertical-align:middle}.conf-dot-high{background:var(--v2-accent)}.conf-dot-medium{background:var(--v2-warn)}.conf-dot-low{background:transparent;border:1px solid var(--v2-text-dim)}.metric-badge.conf-low{opacity:.85;border-style:dashed}.imp-badge.conf-high{background:#22c55e24;color:var(--v2-accent);border:1px solid var(--v2-accent)}.imp-badge.conf-medium{background:#f59e0b24;color:var(--v2-warn);border:1px solid var(--v2-warn)}.imp-badge.conf-low{background:#ffffff0d;color:var(--v2-text-dim);border:1px dashed var(--v2-text-dim)}.imp-badge.imp-axe{background:var(--v2-bg);color:var(--v2-text-dim);border:1px solid var(--v2-border, #2a2a2a);font-family:var(--v2-font-mono, monospace);font-size:var(--v2-fs-xs)}.feedback-buttons-wrap{flex-basis:100%;display:flex;align-items:center;gap:8px;margin-top:6px;min-height:30px}.feedback-buttons{display:inline-flex;flex-wrap:wrap;gap:4px}.feedback-button{min-height:28px;padding:4px 9px;border:1px solid var(--v2-border, #2a2a2a);border-radius:4px;background:var(--v2-bg);color:var(--v2-text-dim);font-size:var(--v2-fs-xs);line-height:var(--v2-lh-tight);white-space:nowrap}.feedback-button:hover,.feedback-button:focus-visible{color:var(--v2-text);border-color:var(--v2-text-dim)}.feedback-button[aria-pressed=true]{color:#062c12;border-color:var(--v2-accent);background:var(--v2-accent);font-weight:var(--v2-fw-semibold)}.feedback-status{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.feedback-status-error{color:var(--v2-danger)}.review-badge{display:inline-block;font-size:var(--v2-fs-xs);padding:3px 8px;border-radius:4px;font-family:var(--v2-font-mono, monospace);border:1px solid;margin-top:6px;cursor:help}.review-badge.review-ok{color:var(--v2-accent);border-color:var(--v2-accent);background:#22c55e0f}.review-badge.review-failed{color:var(--v2-text-dim);border-color:var(--v2-border, #2a2a2a);background:var(--v2-bg);border-style:dashed}.imp-cross-page{border-color:#3b82f68c;color:#bfdbfe;background:#3b82f61f}.cross-page-patterns{margin:14px 0 18px;padding:12px;border:1px solid rgba(59,130,246,.34);border-radius:8px;background:linear-gradient(135deg,#3b82f614,#00000014)}.cross-page-patterns-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.cross-page-patterns-head div{display:flex;flex-direction:column;gap:3px;font-size:var(--v2-fs-sm)}.cross-page-patterns-head span,.cross-page-pattern-reason,.cross-page-pattern-meta{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.cross-page-pattern-list{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.cross-page-pattern-item{padding:9px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#00000024}.cross-page-pattern-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:var(--v2-fs-xs)}.cross-page-pattern-reason,.cross-page-pattern-meta,.cross-page-pattern-routes{margin-top:6px}.cross-page-pattern-meta,.cross-page-pattern-routes{display:flex;flex-wrap:wrap;gap:6px}.cross-page-pattern-routes code,.cross-page-pattern-meta code{color:var(--v2-text)}.review-verify-queue{margin:14px 0 18px;padding:12px;border:1px solid rgba(239,68,68,.36);border-radius:8px;background:linear-gradient(135deg,#ef444413,#00000014)}.review-verify-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.review-verify-header div{display:flex;flex-direction:column;gap:3px;font-size:var(--v2-fs-sm)}.review-verify-header span,.review-verify-more,.review-verify-reason{color:var(--v2-text-dim);font-size:var(--v2-fs-xs)}.review-verify-copy{flex:0 0 auto;padding:5px 9px;border:1px solid rgba(239,68,68,.55);border-radius:5px;background:#0000002e;color:var(--v2-text);font-size:var(--v2-fs-xs);cursor:pointer}.review-verify-copy:hover,.review-verify-copy:focus-visible{border-color:var(--v2-danger);outline:none}.review-verify-items{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.review-verify-item{padding:9px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#00000024}.review-verify-main{display:flex;align-items:center;gap:8px;min-width:0;font-size:var(--v2-fs-xs)}.review-verify-rank{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ef44442e;color:#ffd3d3;font-family:var(--v2-font-mono, monospace);font-size:11px}.review-verify-id{font-family:var(--v2-font-mono, monospace);color:#ffb4b4}.review-verify-main .mono{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-verify-meta{margin-left:auto;color:var(--v2-text-dim);white-space:nowrap}.review-verify-text{margin-top:6px;font-size:var(--v2-fs-sm)}.review-verify-reason,.review-verify-more{margin-top:6px}.feedback-buttons-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--v2-border, #2a2a2a)}.feedback-buttons{display:inline-flex;gap:4px}.feedback-button{padding:3px 10px;font-size:var(--v2-fs-xs);border-radius:4px;border:1px solid var(--v2-border, #2a2a2a);background:transparent;color:var(--v2-text-dim);cursor:pointer;transition:all .12s ease}.feedback-button:hover:not(:disabled){border-color:var(--v2-text);color:var(--v2-text)}.feedback-button[aria-pressed=true]{background:#3b82f624;color:#3b82f6;border-color:#3b82f6}.feedback-button[aria-pressed=true]:first-child{background:#22c55e24;color:var(--v2-accent, #22c55e);border-color:var(--v2-accent, #22c55e)}.feedback-button[aria-pressed=true]:nth-child(2){background:#ef444424;color:#ef4444;border-color:#ef4444}.feedback-button[aria-pressed=true]:nth-child(3){background:#eab30824;color:#eab308;border-color:#eab308}.feedback-status{font-size:var(--v2-fs-xs);color:var(--v2-text-dim)}.feedback-status-error{color:#ef4444}@media print{.feedback-buttons-wrap{display:none!important}}
