:root{--color-bg:#f6f7fb;--color-surface:#fff;--color-surface-alt:#f1f3f9;--color-text:#16182b;--color-text-secondary:#565d70;--color-text-muted:#626980;--color-border:#e3e6ee;--color-border-strong:#c9cedb;--color-accent:#4f46e5;--color-accent-hover:#4338ca;--color-accent-active:#3730a3;--color-accent-light:#eef0ff;--color-accent-soft:#d9ddff;--color-on-accent:#fff;--color-success:#0f9d6e;--color-success-bg:#e9f8f2;--color-success-border:#a7e7d1;--color-success-text:#0a5c41;--color-error:#dc2626;--color-error-bg:#fef1f1;--color-error-border:#f6c9c9;--color-error-text:#991b1b;--color-warning:#d97706;--color-warning-bg:#fff8ea;--color-warning-border:#f7ddad;--color-warning-text:#92400e;--color-info:#1d4ed8;--color-info-bg:#eaf1ff;--color-info-border:#bfd3ff;--color-pending:#5d6473;--color-pending-bg:#f1f3f7;--color-running:#1d4ed8;--color-running-bg:#e6efff;--color-running-border:#9ec1ff;--color-slate:#475569;--color-slate-bg:#f1f5f9;--color-slate-border:#cbd5e1;--color-code-bg:#1d2033;--color-code-text:#e7e9f5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:80px;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #16182b0f;--shadow-md:0 4px 6px -1px #16182b14, 0 2px 4px -2px #16182b0f;--shadow-lg:0 10px 15px -3px #16182b17, 0 4px 6px -4px #16182b0d;--shadow-focus:0 0 0 3px #4f46e540;--shadow-focus-error:0 0 0 3px #dc262638;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", ui-monospace, Consolas, monospace;--fs-xs:12px;--fs-sm:13px;--fs-base:15px;--fs-md:16px;--fs-lg:18px;--fs-xl:22px;--fs-2xl:28px;--fs-hero:clamp(26px, 3.4vw, 38px);--lh-tight:1.25;--lh-normal:1.6;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--content-max:880px;--header-pad-y:var(--space-5);--transition-fast:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}input:focus-visible{outline:none}::selection{background:var(--color-accent-soft);color:var(--color-text)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}.review,.executing,.complete{animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner,.badge-spinner,.wake-status-spinner{animation-duration:2s!important}}.app{flex-direction:column;min-height:100vh;display:flex}.header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--header-pad-y) var(--space-6)}.header-inner{max-width:var(--content-max);justify-content:space-between;align-items:center;gap:var(--space-4);margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.brand-mark{flex-shrink:0;width:32px;height:32px}.title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-text);letter-spacing:-.3px;line-height:var(--lh-tight)}.main{max-width:var(--content-max);width:100%;padding:var(--space-5) var(--space-5) var(--space-7);flex:1;margin:0 auto}.footer{border-top:1px solid var(--color-border);background:var(--color-surface);padding:var(--space-5) var(--space-6);justify-content:center;align-items:center;gap:var(--space-2) var(--space-4);font-size:var(--fs-sm);color:var(--color-text-secondary);text-align:center;flex-wrap:wrap;display:flex}.footer-link{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-accent);font-weight:var(--fw-medium);padding:2px var(--space-2);border-radius:var(--radius-sm);text-decoration:none}.footer-link:hover{color:var(--color-accent-hover);background:var(--color-accent-light)}.stepper{margin-bottom:var(--space-5)}.stepper-list{justify-content:center;align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm);flex-wrap:wrap;list-style:none;display:flex}.stepper-item{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--fs-sm);color:var(--color-text-muted);display:flex}.stepper-item:not(:last-child):after{content:"";background:var(--color-border);border-radius:var(--radius-pill);flex:0 auto;width:clamp(24px,5vw,64px);height:2px}.stepper-item--done:not(:last-child):after{background:var(--color-accent)}.stepper-index{border-radius:var(--radius-pill);background:var(--color-pending-bg);border:1px solid var(--color-border);width:24px;height:24px;color:var(--color-text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stepper-item--done .stepper-index{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.stepper-item--done{color:var(--color-text-secondary)}.stepper-item--current{color:var(--color-text);font-weight:var(--fw-semibold)}.stepper-item--current .stepper-index{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 0 0 3px #4f46e52e}.stepper-label{white-space:nowrap}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-size:var(--fs-base);font-weight:var(--fw-semibold);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), color var(--transition-fast);font-family:var(--font-sans);border:1px solid #0000;line-height:1;display:inline-flex}.btn--primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--primary:active{background:var(--color-accent-active);transform:translateY(0)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.btn--secondary:hover{background:var(--color-surface-alt);box-shadow:var(--shadow-md)}.btn--lg{padding:var(--space-4) var(--space-6);font-size:var(--fs-md)}.btn:disabled,.btn--primary:disabled,.btn--secondary:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed;box-shadow:none;border-color:#0000;transform:none}.btn--primary:disabled:hover,.btn--secondary:disabled:hover{background:var(--color-border);box-shadow:none;transform:none}.banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);font-size:var(--fs-sm);font-weight:var(--fw-medium);margin-bottom:var(--space-4);transition:opacity .35s;display:flex}.banner.is-fading{opacity:0}.banner--error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error-text)}.banner--success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-text)}.banner--warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning-text)}.banner--info{background:var(--color-accent-light);border:1px solid var(--color-accent-soft);color:var(--color-accent-active)}.banner-icon{font-size:var(--fs-md);flex-shrink:0}.banner-message{word-break:break-word;flex:1;min-width:0}.banner-close{width:28px;height:28px;font-size:var(--fs-sm);border-radius:var(--radius-sm);color:inherit;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:0;line-height:1;display:inline-flex}.banner-close:hover{background:#16182b14;border-color:currentColor}.hero{text-align:center;flex-direction:column;align-items:center;max-width:720px;margin:0 auto;display:flex}.hero-title{font-size:var(--fs-hero);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--color-text);text-wrap:balance}.how-it-works{justify-content:center;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;width:100%;list-style:none;display:flex}.how-step{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-sm);display:inline-flex}.how-step-index{border-radius:var(--radius-pill);background:var(--color-accent);width:20px;height:20px;color:var(--color-on-accent);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.how-step-label{font-weight:var(--fw-medium);color:var(--color-text)}.idle{align-items:center;gap:var(--space-6);padding:var(--space-5) 0 var(--space-4);flex-direction:column;display:flex}.repo-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:560px;padding:var(--space-5);box-shadow:var(--shadow-md)}.repo-form{gap:var(--space-3);text-align:left;flex-direction:column;width:100%;display:flex}.repo-form>.btn{margin-top:var(--space-1);align-self:center}.repo-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.repo-input{width:100%;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-3);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);line-height:1.5}.repo-input::placeholder{color:var(--color-text-muted)}.repo-input:hover{border-color:var(--color-text-muted)}.repo-input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);outline:none}.repo-input--invalid,.repo-input--invalid:hover{border-color:var(--color-error)}.repo-input--invalid:focus{border-color:var(--color-error);box-shadow:var(--shadow-focus-error)}.repo-hint{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--color-error-text)}.repo-note{font-size:var(--fs-xs);color:var(--color-text-secondary);line-height:1.5}.repo-note--centered{text-align:center;max-width:560px}.chips{gap:var(--space-2);flex-direction:column;display:flex}.chips-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);padding:6px 14px}.chip:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.chip--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.chip--active:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-on-accent)}.wake-status{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-accent-light);border-bottom:1px solid var(--color-accent-soft);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-accent-active);text-align:center;display:flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.badge-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}.wake-status-spinner{border:2px solid var(--color-accent-soft);border-top-color:var(--color-accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.8s linear infinite spin}.badge-spinner--dark{border-color:#4f46e540;border-top-color:var(--color-accent)}.planning{align-items:center;gap:var(--space-4);padding:var(--space-9) 0;flex-direction:column;display:flex}.status-line{font-size:var(--fs-md);color:var(--color-text-secondary);font-weight:var(--fw-medium);text-align:center;max-width:480px}.section-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-4)}.overall-notes{background:var(--color-accent-light);border:1px solid var(--color-accent-soft);border-radius:var(--radius);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5)}.overall-notes h3{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--color-accent);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-2)}.overall-notes p{font-size:var(--fs-sm);color:var(--color-text);white-space:pre-wrap;line-height:1.7}.file-list{gap:var(--space-3);flex-direction:column;display:flex}.file-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4) var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast), border-color var(--transition-fast)}.file-card:hover{box-shadow:var(--shadow-md)}.file-card--generating{border-color:var(--color-running-border);background:var(--color-running-bg)}.file-card--generated{border-color:var(--color-slate-border);background:var(--color-surface)}.file-card--gen-failed{border-color:var(--color-error-border);background:var(--color-error-bg)}.file-card--verified{border-color:var(--color-success-border)}.file-card--unverified{border-color:var(--color-error-border);background:var(--color-error-bg)}.file-card-header{align-items:center;gap:var(--space-3);min-height:28px;display:flex}.priority-badge{min-width:32px;height:24px;padding:0 var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--color-accent);background:var(--color-accent-light);border-radius:var(--radius-sm);font-family:var(--font-mono);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.file-paths{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--fs-sm);font-family:var(--font-mono);flex:1;display:flex}.file-path{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.file-path--new{color:var(--color-accent);font-weight:var(--fw-medium)}.arrow{color:var(--color-text-muted);font-size:var(--fs-sm);flex-shrink:0}.expand-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;font-size:var(--fs-xs);color:var(--color-text-secondary);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.expand-btn:hover{background:var(--color-surface-alt);color:var(--color-text);border-color:var(--color-border-strong)}.file-card-body{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.migration-notes h4{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-2)}.notes-text{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);white-space:pre-wrap;word-break:break-word;max-height:280px;line-height:1.6;overflow-y:auto}.depends-on{margin-top:var(--space-2);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.depends-label{font-size:var(--fs-xs);color:var(--color-text-secondary);font-weight:var(--fw-medium)}.dep-chip{font-size:var(--fs-xs);font-family:var(--font-mono);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-secondary);white-space:nowrap;align-items:center;padding:2px 10px;display:inline-flex}.file-error{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--fs-xs);color:var(--color-error-text);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);font-family:var(--font-mono);word-break:break-word}.badge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.badge--pending{background:var(--color-pending-bg);color:var(--color-pending);border:1px solid var(--color-border)}.badge--generating{background:var(--color-running-bg);color:var(--color-running);border:1px solid var(--color-running-border)}.badge--generated{background:var(--color-slate-bg);color:var(--color-slate);border:1px solid var(--color-slate-border)}.badge--gen-failed{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.badge--verified{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.badge--unverified{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.badge-check{font-size:11px;font-weight:var(--fw-bold)}.run-progress{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4) var(--space-4);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4)}.run-progress-head{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--fs-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.run-progress-label{font-weight:var(--fw-semibold);color:var(--color-text)}.run-progress-count{font-family:var(--font-mono);font-weight:var(--fw-bold);color:var(--color-accent);font-variant-numeric:tabular-nums}.run-progress-elapsed{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.progress-track{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-pill);height:10px;overflow:hidden}.progress-fill{background:var(--color-accent);border-radius:var(--radius-pill);height:100%;transition:width .4s}.executing-status{align-items:center;gap:var(--space-3);padding:var(--space-4) 0;font-size:var(--fs-md);color:var(--color-text-secondary);font-weight:var(--fw-medium);text-align:center;justify-content:center;display:flex}.executing-status .spinner{border-width:2px;flex-shrink:0;width:24px;height:24px}.action-bar{justify-content:center;gap:var(--space-3);padding:var(--space-5) 0 0;flex-wrap:wrap;display:flex}.action-bar--top{padding:0 0 var(--space-4)}.review,.executing,.complete{animation:.25s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.verify-panel{margin-top:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4) var(--space-4) var(--space-4);box-shadow:var(--shadow-sm)}.verify-panel-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.verify-panel-header .section-title{margin-bottom:0}.verify-live{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-accent);background:var(--color-accent-light);border:1px solid var(--color-accent-soft);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);align-items:center;gap:6px;display:inline-flex}.verify-panel-sub{font-size:var(--fs-xs);color:var(--color-text-secondary);margin-top:var(--space-2);margin-bottom:var(--space-4);max-width:60ch;line-height:1.6}.timeline{flex-direction:column;list-style:none;display:flex}.timeline-row{gap:var(--space-3);padding-bottom:var(--space-4);display:flex;position:relative}.timeline-row--last{padding-bottom:0}.timeline-row:not(.timeline-row--last):before{content:"";background:var(--color-border);width:2px;position:absolute;top:18px;bottom:0;left:7px}.timeline-dot-slot{z-index:1;flex-shrink:0;width:16px;height:16px;margin-top:3px;position:relative}.timeline-dot{border:2px solid var(--color-border);background:var(--color-surface);border-radius:50%;width:16px;height:16px;display:block}.timeline-dot--active{border-color:var(--color-accent);background:var(--color-accent-light);box-shadow:0 0 0 3px #4f46e52e}.timeline-dot--passed{border-color:var(--color-success);background:var(--color-success)}.timeline-dot--failed{border-color:var(--color-error);background:var(--color-error)}.timeline-dot--note{border-color:var(--color-warning);background:var(--color-warning-bg)}.timeline-content{flex:1;min-width:0}.timeline-body{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.timeline-body-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.timeline-text{font-size:var(--fs-sm);color:var(--color-text);font-weight:var(--fw-medium)}.timeline-text--passed{color:var(--color-success-text);font-weight:var(--fw-semibold)}.timeline-text--failed{color:var(--color-error-text);font-weight:var(--fw-semibold)}.timeline-text--fixed{color:var(--color-info)}.timeline-text--note{color:var(--color-warning-text);font-weight:var(--fw-medium)}.timeline-path{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);overflow-wrap:anywhere;max-width:100%;padding:1px 6px}.timeline-inline-spinner{flex-shrink:0;align-self:center;margin-left:auto}.timeline-body:has(.timeline-inline-spinner){align-items:center;gap:var(--space-2);flex-direction:row}.output-toggle{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-sans);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);align-items:center;gap:6px;display:inline-flex}.output-toggle:hover{background:var(--color-surface);border-color:var(--color-accent-soft);color:var(--color-text)}.output-size{font-weight:var(--fw-regular);color:var(--color-text-muted)}.verify-output{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text);background:var(--color-surface-alt);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);white-space:pre-wrap;word-break:break-word;max-height:300px;margin:0;line-height:1.55;overflow-y:auto}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-success);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-md)}.summary-card--warn{border-left-color:var(--color-warning)}.summary-head{align-items:flex-start;gap:var(--space-3);display:flex}.summary-icon{border-radius:var(--radius-pill);width:36px;height:36px;font-size:var(--fs-md);font-weight:var(--fw-bold);background:var(--color-success-bg);color:var(--color-success-text);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.summary-card--warn .summary-icon{background:var(--color-warning-bg);color:var(--color-warning-text)}.summary-title{font-size:var(--fs-xl);font-weight:var(--fw-bold);letter-spacing:-.01em;line-height:var(--lh-tight);color:var(--color-text)}.summary-sub{font-size:var(--fs-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.stats{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.stat{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);min-width:0}.stat dt{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.stat dd{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--color-text);font-variant-numeric:tabular-nums;margin-top:2px;line-height:1.2}.summary-actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.summary-actions .btn--primary{flex:auto}.run-locally{margin-top:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.run-locally-title{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--color-text);margin-bottom:var(--space-3)}.code-row{gap:var(--space-2);align-items:stretch;display:flex}.code-block{min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--color-code-bg);color:var(--color-code-text);border:1px solid var(--color-code-bg);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);white-space:nowrap;flex:1;overflow-x:auto}.copy-btn{min-width:92px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);flex-shrink:0}.copy-btn:hover{background:var(--color-surface-alt)}.copy-btn--copied{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.copy-feedback{min-height:1.2em;margin-top:var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--color-success-text);display:block}.run-locally-note{font-size:var(--fs-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}@media (width>=1280px){.main{padding-top:var(--space-6)}}@media (width<=768px){.header{padding:var(--space-4)}.header-inner{gap:var(--space-2);flex-direction:column}.main{padding:var(--space-4) var(--space-4) var(--space-6)}.stepper-list{row-gap:var(--space-2);padding:var(--space-3)}.stepper-item{font-size:var(--fs-xs)}.stepper-item:not(:last-child):after{width:var(--space-4)}.how-it-works{gap:var(--space-2) var(--space-3)}.repo-card,.run-locally,.summary-card{padding:var(--space-4)}.file-card-header{flex-wrap:wrap}.file-paths{flex:0 0 100%;order:3;min-width:0}.stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.summary-actions .btn,.action-bar .btn{flex:auto}.code-row{flex-direction:column}.copy-btn{width:100%}.footer{padding:var(--space-4);gap:var(--space-2);flex-direction:column}}@media (width<=480px){.hero-title{font-size:24px}.btn{width:100%}.repo-form>.btn{align-self:stretch}}
