@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Book.ttf) format("truetype");font-weight:350;font-style:normal;font-display:swap}@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:TBC Contractica;src:url(/fonts/TBCContractica-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif Georgian";src:url(/fonts/NotoSerifGeorgian-var-georgian.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0589,U+10A0-10FF,U+1C90-1CBA,U+1CBD-1CBF,U+205A,U+2D00-2D2F,U+2E31}@font-face{font-family:"Noto Serif Georgian";src:url(/fonts/NotoSerifGeorgian-var-latin.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-red: #e3051a;--brand-yellow: #f2b600;--brand-blue: #0756a4;--brand-black: #141414;--brand-ink: var(--brand-black);--ink: #141414;--ink-soft: #2a2a26;--ink-muted: #46453f;--ink-faint: #6a6960;--ink-faintest: #9a9892;--paper: #ffffff;--paper-soft: #fbfbfa;--muted-bg: #f5f5f3;--dark: #0b0b0b;--cream: #f4f2ee;--line: #ececea;--line-strong: #e2e1dc;--navy-900: var(--ink);--navy-800: var(--ink);--navy-700: var(--ink-soft);--navy-500: var(--ink-faint);--gold-600: #8a6500;--gold-500: var(--brand-yellow);--gold-300: #f7d778;--crimson-600: var(--brand-red);--crimson-500: var(--brand-red);--cream-50: var(--paper);--cream-100: var(--muted-bg);--ink-900: var(--ink);--ink-500: var(--ink-faint);--hairline: var(--line-strong);--danger-500: var(--brand-red);--background: #fdfcfa;--foreground: var(--ink);--surface-card: var(--paper-soft);--surface-muted: var(--muted-bg);--surface-inverse: var(--dark);--text-body: var(--ink);--text-muted: var(--ink-faint);--text-faint: var(--ink-faintest);--text-on-inverse: var(--cream);--text-on-inverse-muted: #a9a7a0;--primary: var(--ink);--primary-foreground: var(--cream);--secondary: var(--ink);--secondary-foreground: var(--cream);--accent: var(--brand-red);--accent-foreground: var(--cream);--gold: var(--brand-yellow);--gold-foreground: var(--ink);--gold-ink: #8a6500;--focus: var(--brand-yellow);--border: var(--line-strong);--input: var(--line-strong);--ring: var(--brand-yellow);--destructive: var(--brand-red);--destructive-foreground: var(--cream);--gold-wash: #fdf6e0;--gold-wash-strong: #f9ecc4;--navy-wash: var(--muted-bg);--font-sans: "TBC Contractica", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: var(--font-sans);--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--font-read: "Noto Serif Georgian", "BPG Nino Mtavruli", Sylfaen, Georgia, serif;--fw-light: 300;--fw-book: 350;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 900;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.5rem;--leading-tight: 1.25;--leading-heading: 1.3;--leading-snug: 1.45;--leading-body: 1.65;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-wider: .05em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-28: 7rem;--space-32: 8rem;--container-max: 1400px;--container-pad: 2rem;--content-measure: 48rem;--section-y: var(--space-20);--section-y-lg: var(--space-28);--radius: 0;--radius-sm: 0;--radius-md: 0;--radius-lg: 0;--radius-full: 0;--radius-none: 0;--border-width: 1px;--border-hairline: 1px solid var(--border);--accent-bar: 3px;--rule-thin: 1px;--rule-gold: 2px;--shadow-none: none;--shadow-sm: none;--shadow-md: none;--shadow-lg: 0 10px 30px -18px rgb(0 0 0 / .4);--shadow-gold: none;--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur-base: .3s;--dur-slow: .5s;--dur-reveal: .8s;--z-header: 50;--z-overlay: 100;--z-hint: 120}.dark{--background: var(--dark);--foreground: var(--cream);--surface-card: #131312;--surface-muted: #1a1a18;--surface-inverse: #000000;--text-body: var(--cream);--text-muted: #a9a7a0;--text-faint: #7d7b74;--text-on-inverse: var(--cream);--text-on-inverse-muted: #7d7b74;--primary: var(--cream);--primary-foreground: var(--dark);--secondary: var(--cream);--secondary-foreground: var(--dark);--accent: #ff2b3d;--gold: var(--brand-yellow);--gold-foreground: var(--dark);--gold-ink: #f2c94c;--border: #232320;--input: #232320;--line: #1e1e1c;--line-strong: #232320;--ring: var(--brand-yellow);--gold-wash: #1a1a18;--gold-wash-strong: #232320;--navy-wash: #1a1a18}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-weight:var(--fw-regular);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--leading-heading);font-weight:var(--fw-bold)}h1{line-height:var(--leading-tight)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible){outline:none;box-shadow:none}.ciprf-gold-line{height:var(--rule-gold);background:linear-gradient(to right,transparent,var(--gold),transparent)}.ciprf-gold-tick{width:2.5rem;height:var(--rule-gold);background:var(--gold)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--background)}body{color:var(--text-body);font-size:16px;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}a{color:var(--gold-ink);text-decoration:none}a:hover{color:var(--navy-500)}button,textarea,input,select{font-family:var(--font-sans)}button{cursor:pointer}@keyframes nw-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}@keyframes nw-ring{0%{box-shadow:0 0 #14141459}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes nw-blink{0%,45%{opacity:1}55%,to{opacity:0}}@keyframes nw-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes nw-breathe{0%,to{opacity:.35}50%{opacity:.9}}@keyframes spin{to{transform:rotate(360deg)}}.boot{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:48px 0}.spinner{width:26px;height:26px;border:2px solid var(--border);border-top-color:var(--gold-ink);border-radius:50%;animation:spin .8s linear infinite}.error{margin:14px 0 0;font-size:13px;line-height:1.6;color:var(--accent)}.notice{margin:14px 0 0;font-size:13px;line-height:1.6;color:var(--gold-600)}.muted{color:var(--text-muted)}.small{font-size:12px}.brand{display:flex;align-items:baseline;gap:8px}.brand-dot{width:7px;height:7px;border-radius:50%;background:var(--gold);display:inline-block;margin-bottom:4px}.brand-name{font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--text-body)}.brand-sub{font-size:20px;font-weight:400;color:var(--text-muted)}.brand-sm{gap:7px}.brand-sm .brand-dot{width:6px;height:6px;margin-bottom:3px}.brand-sm .brand-name,.brand-sm .brand-sub{font-size:16px}.btn-primary{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--primary);color:var(--primary-foreground);border:1px solid transparent;border-radius:var(--radius);font-size:15px;font-weight:500;cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.btn-primary:hover:not(:disabled){background:var(--navy-700)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-block{width:100%;height:46px}.elapsed{font-variant-numeric:tabular-nums}.theme-toggle{margin-right:2px}.card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.card-action-btn{height:36px;padding:0 16px;font-size:13px}.btn-card-outline{height:36px;padding:0 16px;font-size:13px;font-weight:500;background:transparent;color:var(--text-body);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.btn-card-outline:hover{border-color:var(--gold-ink);background:var(--gold-wash)}.btn-gold{display:flex;align-items:center;justify-content:center;gap:9px;background:transparent;color:var(--gold-ink);border:1px solid var(--ink);border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.btn-gold:hover:not(:disabled){background:var(--gold-wash);border-color:var(--ink)}.btn-gold:disabled{opacity:.45;cursor:not-allowed}.icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--text-muted);cursor:pointer}.icon-btn:hover{color:var(--text-body)}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-box{width:100%;max-width:400px}.login-box>.brand{margin-bottom:28px}.login-card{background:var(--surface-card);border:1px solid var(--border);border-top:2px solid var(--gold);padding:28px 24px}.login-card h1{margin:0 0 6px;font-size:22px;font-weight:700;line-height:1.3}.login-lead{margin:0 0 24px;font-size:14px;line-height:1.6;color:var(--text-muted)}.field-label{display:block;font-size:12px;letter-spacing:.02em;color:var(--text-muted);margin-bottom:6px}.input{width:100%;background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:11px 12px;font-size:15px;color:var(--text-body);margin-bottom:16px}.input:focus{outline:none;border-color:var(--ink)}.input-last{margin-bottom:22px}.divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px}.divider-line{flex:1;height:1px;background:var(--border)}.divider-text{font-size:11px;letter-spacing:.05em;color:var(--text-muted)}.login-card .btn-gold{width:100%;height:44px}.login-note{margin:18px 0 0;font-size:12px;line-height:1.6;color:var(--text-muted);text-align:center}.login-card+.error,.login-card+.notice{text-align:center}.app-header{position:sticky;top:0;z-index:var(--z-header);background:var(--background);border-bottom:1px solid var(--border)}.goldline{height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.65}.header-inner{display:flex;align-items:center;gap:14px;max-width:1180px;margin:0 auto;height:52px;padding:0 clamp(14px,3vw,28px)}.hamburger{width:40px;height:40px;display:none;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text-body);cursor:pointer;margin-left:-8px;flex-shrink:0}.hamburger:hover{background:var(--surface-muted)}.nav-desktop{display:flex;align-items:stretch;align-self:stretch;gap:4px;margin-left:22px}.nav-tab{position:relative;background:transparent;border:0;padding:12px 12px 13px;font-size:14px;letter-spacing:.02em;color:var(--text-muted);cursor:pointer;transition:color var(--dur-base) var(--ease-out)}.nav-tab:hover{color:var(--text-body)}.nav-underline{position:absolute;left:8px;right:8px;bottom:0;height:2px;background:var(--gold)}.spacer{flex:1}.header-email{font-size:12px;letter-spacing:.02em;color:var(--text-muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-header{height:34px;display:flex;align-items:center;gap:7px;padding:0 11px;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:12px;letter-spacing:.02em;cursor:pointer;flex-shrink:0;transition:color var(--dur-base),border-color var(--dur-base)}.btn-header:hover{color:var(--gold-ink);border-color:var(--ink)}@media(max-width:899px){.hamburger{display:flex}.nav-desktop,.header-email,.btn-header{display:none}}.drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay)}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0b0b9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.drawer{position:absolute;left:0;top:0;bottom:0;width:min(300px,84vw);background:var(--surface-card);border-right:1px solid var(--border);display:flex;flex-direction:column}.drawer-goldline{height:2px;background:linear-gradient(90deg,var(--gold),transparent)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 18px}.drawer-nav{display:flex;flex-direction:column}.drawer-item{position:relative;display:flex;align-items:center;width:100%;text-align:left;background:transparent;border:0;padding:14px 18px;font-size:15px;color:var(--text-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.drawer-item:hover{background:var(--surface-muted)}.drawer-item-bar{position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--gold)}.drawer-spacer{flex:1}.drawer-foot{border-top:1px solid var(--border);padding:16px 18px}.drawer-email{font-size:13px;color:var(--text-body);margin-bottom:14px;overflow-wrap:anywhere}.drawer-signout{background:transparent;border:0;padding:0;color:var(--text-muted);font-size:13px;cursor:pointer}.drawer-signout:hover{color:var(--accent)}.page{margin:0 auto}.page-new{max-width:720px;padding:clamp(22px,5vw,44px) clamp(16px,4vw,28px) 96px}.page-run{max-width:760px;padding:0 clamp(16px,4vw,28px) 140px}.page-history{max-width:840px;padding:clamp(22px,5vw,44px) clamp(16px,4vw,28px) 96px}.page-files{max-width:840px;padding:clamp(20px,4vw,36px) clamp(16px,4vw,28px) 96px}.gold-tick{width:36px;height:2px;background:var(--gold);margin-bottom:16px}.page-title{margin:0 0 8px;font-size:clamp(24px,6vw,32px);font-weight:700;line-height:1.3;letter-spacing:-.01em}.page-title-solo{margin-bottom:28px;font-size:clamp(24px,6vw,30px)}.page-lead{margin:0 0 28px;font-size:15px;line-height:1.65;color:var(--text-muted);max-width:46ch}.info-box{display:flex;gap:12px;background:var(--surface-muted);border:1px solid var(--border);border-left:3px solid var(--accent);padding:14px 16px;margin-bottom:24px}.info-box>svg{color:var(--accent);flex-shrink:0;margin-top:2px}.info-box-title{font-size:14px;font-weight:600;margin-bottom:4px}.info-box p{margin:0;font-size:13px;line-height:1.6;color:var(--text-muted)}.label{display:block;font-size:12px;letter-spacing:.02em;color:var(--text-muted);margin-bottom:8px}.task-textarea{width:100%;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid var(--border);padding:14px 15px;font-size:16px;line-height:1.7;color:var(--text-body);resize:vertical;min-height:150px}.task-textarea:focus{outline:none;border-color:var(--ink)}.task-textarea.has-error{border-left-color:var(--accent)}.task-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;min-height:20px}.task-error{font-size:12px;color:var(--accent)}.char-count{font-size:11px;letter-spacing:.05em;color:var(--text-muted);margin-left:auto}.rule{height:1px;background:var(--border);margin:30px 0 26px}.model-grid{display:grid;gap:10px}.model-card{position:relative;display:flex;align-items:flex-start;gap:12px;text-align:left;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;cursor:pointer;color:var(--text-body);font:inherit;transition:border-color var(--dur-base) var(--ease-out)}.model-card:hover{border-color:var(--ink)}.model-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}.model-body{flex:1}.model-name{font-size:15px;font-weight:600;margin-bottom:3px}.model-desc{font-size:13px;line-height:1.55;color:var(--text-muted)}.model-check{color:var(--gold-ink);flex-shrink:0;margin-top:2px}.section-row{display:flex;align-items:baseline;gap:8px;margin:28px 0 12px}.section-label{font-size:12px;letter-spacing:.02em;color:var(--text-muted)}.section-optional{font-size:11px;letter-spacing:.02em;color:var(--text-muted);opacity:.7}.effort-seg{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.effort-btn{position:relative;flex:1;background:transparent;border:0;border-right:1px solid var(--border);padding:12px 4px 13px;font-size:13px;color:var(--text-muted);cursor:pointer;transition:color var(--dur-base),background var(--dur-base)}.effort-btn:last-child{border-right:0}.effort-btn:hover{background:var(--surface-muted);color:var(--text-body)}.effort-underline{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold)}.effort-hint{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--text-muted)}.submit-row{display:flex;align-items:center;gap:14px;margin-top:34px;flex-wrap:wrap}.btn-run{height:50px;min-width:150px;letter-spacing:.02em}.submit-hint{font-size:12px;line-height:1.55;color:var(--text-muted)}.run-statusbar{position:sticky;top:54px;z-index:40;background:var(--background);border-bottom:1px solid var(--border);padding:13px 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.back-link{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;padding:0;margin-left:-6px;color:var(--text-muted);cursor:pointer;flex-shrink:0}.back-link:hover{color:var(--gold-ink)}.pill{display:inline-flex;align-items:center;gap:7px;padding:.32rem .68rem;border-radius:var(--radius-full);font-size:12px;font-weight:600;letter-spacing:.02em}.pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:nw-pulse 1.4s ease-in-out infinite}.pill-running{background:var(--gold-wash-strong);color:var(--gold-ink)}.pill-completed{background:var(--primary);color:var(--primary-foreground)}.pill-failed{background:#e3051a1a;color:var(--accent)}.pill-stopped{background:var(--surface-muted);color:var(--text-muted)}.meta-model{font-size:12px;letter-spacing:.02em;color:var(--text-muted)}.vline{width:1px;height:12px;background:var(--border)}.btn-stop{height:32px;display:flex;align-items:center;gap:7px;padding:0 12px;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:13px;cursor:pointer;transition:color var(--dur-base),border-color var(--dur-base)}.btn-stop:hover{color:var(--accent);border-color:var(--brand-red)}.task-box-wrap{padding:22px 0 6px}.task-box{display:flex;gap:12px;background:var(--surface-muted);border:1px solid var(--border);padding:14px 16px}.task-box-text{flex:1;font-size:14px;line-height:1.65;color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere}.task-toggle{align-self:flex-start;background:transparent;border:0;color:var(--gold-ink);font-size:12px;letter-spacing:.02em;cursor:pointer;white-space:nowrap;padding:0}.waiting-wrap{padding:34px 0 10px}.waiting-pulse{display:flex;align-items:center;gap:11px}.waiting-dot{width:8px;height:8px;border-radius:50%;background:var(--gold);animation:nw-ring 1.8s ease-out infinite;flex-shrink:0}.waiting-text{font-size:15px;color:var(--text-muted);animation:nw-breathe 2.4s ease-in-out infinite}.waiting-activity{border-left:2px solid var(--gold);padding:2px 0 2px 14px}.waiting-activity .waiting-text{color:var(--text-body)}.waiting-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.waiting-sub{font-size:13px;color:var(--text-muted);overflow-wrap:anywhere}.stream{display:flex;flex-direction:column;gap:20px;padding:26px 0 0}.stream-text{margin:0;font-size:17px;line-height:1.78;color:var(--text-body);text-wrap:pretty;white-space:pre-wrap;overflow-wrap:break-word}.caret{display:inline-block;width:2px;height:1em;background:var(--gold);vertical-align:-.15em;margin-left:2px;animation:nw-blink 1s step-end infinite}.tool-line{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.02em;color:var(--text-muted);opacity:.8;min-width:0}.tool-line svg{flex-shrink:0}.tool-arg{font-family:var(--font-mono);font-size:11px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.done-card{margin:36px 0 0;background:var(--surface-card);border:1px solid var(--border);border-top:2px solid var(--gold);padding:20px 20px 18px;animation:nw-rise var(--dur-reveal) var(--ease-out) both}.done-title{font-size:15px;font-weight:600;margin-bottom:16px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:16px}.stat-label{font-size:11px;letter-spacing:.05em;color:var(--text-muted);margin-bottom:5px}.stat-value{font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}.failed-card{margin:36px 0 0;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--accent);padding:18px 20px}.failed-title{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--accent)}.failed-card p{margin:0;font-size:14px;line-height:1.65;color:var(--text-muted);white-space:pre-wrap;overflow-wrap:break-word}.stopped-card{margin:36px 0 0;background:var(--surface-muted);border:1px solid var(--border);padding:18px 20px}.stopped-title{font-size:15px;font-weight:600;margin-bottom:6px}.stopped-card p{margin:0;font-size:14px;line-height:1.65;color:var(--text-muted)}.stream-note{margin:18px 0 0;font-size:12px;line-height:1.6;color:var(--text-muted)}.composer{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--background);border-top:1px solid var(--border);padding:12px clamp(16px,4vw,28px) calc(16px + env(safe-area-inset-bottom))}.composer-inner{max-width:760px;margin:0 auto;display:flex;align-items:flex-end;gap:10px}.composer-textarea{flex:1;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;font-size:15px;line-height:1.5;color:var(--text-body);resize:none;max-height:120px}.composer-textarea:focus{outline:none;border-color:var(--ink)}.btn-send{width:46px;height:46px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:var(--primary-foreground);border:0;border-radius:var(--radius);cursor:pointer;flex-shrink:0;transition:background var(--dur-base) var(--ease-out)}.btn-send:hover:not(:disabled){background:var(--navy-700)}.btn-send:disabled{opacity:.45;cursor:not-allowed}.empty-card{border:1px solid var(--border);padding:48px 24px;text-align:center}.empty-card .gold-tick{margin:0 auto 18px}.empty-title{font-size:17px;font-weight:600;margin-bottom:8px}.empty-card p{margin:0 auto 20px;max-width:38ch;font-size:14px;line-height:1.65;color:var(--text-muted)}.empty-card .btn-gold{display:inline-flex;white-space:nowrap;padding:12px 18px;line-height:1.2}.history-list{display:flex;flex-direction:column}.history-item{position:relative;display:block;width:100%;text-align:left;background:var(--surface-card);border:1px solid var(--border);padding:16px 18px;cursor:pointer;color:var(--text-body);font:inherit;transition:background var(--dur-base) var(--ease-out)}.history-item+.history-item{border-top:0}.history-item:hover{background:var(--surface-muted)}.history-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);opacity:.45}.history-title{font-size:15px;line-height:1.55;margin-bottom:10px;padding-right:8px;overflow-wrap:anywhere}.history-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;letter-spacing:.02em;color:var(--text-muted)}.history-meta .spacer{flex:1}.pill-sm{display:inline-flex;align-items:center;gap:6px;padding:.24rem .55rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600}.pill-sm .pill-dot{width:5px;height:5px}.pill-sm.pill-running{background:var(--gold-wash-strong);color:var(--gold-ink)}.pill-sm.pill-completed{background:var(--surface-muted);color:var(--text-muted)}.pill-sm.pill-failed{background:#e3051a1a;color:var(--accent)}.pill-sm.pill-stopped{background:transparent;border:1px solid var(--border);color:var(--text-muted)}.date-nums{font-variant-numeric:tabular-nums}.breadcrumb{display:flex;align-items:center;gap:7px;font-size:12px;letter-spacing:.02em;color:var(--text-muted);margin-bottom:22px;flex-wrap:wrap}.crumb{background:transparent;border:0;padding:0;color:var(--text-muted);font-size:12px;cursor:pointer}.crumb:hover{color:var(--gold-ink)}.crumb-current{color:var(--text-body);font-family:var(--font-mono);overflow-wrap:anywhere}.files-box{border:1px solid var(--border)}.file-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--border);padding:13px 16px;color:var(--text-body);font:inherit;transition:background var(--dur-base) var(--ease-out)}.file-row:last-child{border-bottom:0}.file-row:hover{background:var(--surface-muted)}button.file-row{cursor:pointer}.file-icon-folder{color:var(--gold-ink);flex-shrink:0}.file-icon{color:var(--text-muted);flex-shrink:0}.file-name{flex:1;font-size:14px;font-family:var(--font-mono);background:transparent;border:0;padding:0;text-align:left;color:var(--text-body);cursor:pointer;overflow-wrap:anywhere}.file-size{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.dl-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--text-muted);cursor:pointer;flex-shrink:0;border-radius:var(--radius)}.dl-btn:hover{color:var(--gold-ink);background:var(--gold-wash)}.files-empty{padding:24px 16px;font-size:14px;color:var(--text-muted)}.file-view-name{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:15px;color:var(--text-body);margin:0 0 18px;overflow-wrap:anywhere}.file-view-name .brand-dot{width:6px;height:6px;margin-bottom:0;flex-shrink:0}.file-pre{background:var(--surface-card);border:1px solid var(--border);padding:22px;margin:0 0 22px;max-width:68ch;white-space:pre-wrap;overflow-wrap:break-word;overflow-x:auto;font-family:var(--font-read);font-size:1.125rem;line-height:1.75;-moz-tab-size:2;tab-size:2;color:var(--text-body)}.file-actions{display:flex;gap:12px;flex-wrap:wrap}.file-actions .btn-gold{height:42px;padding:0 16px}.pill-waiting,.pill-sm.pill-waiting{background:var(--gold-wash);color:var(--gold-600);border:1px dashed var(--ink)}.dark .pill-waiting,.dark .pill-sm.pill-waiting{color:var(--gold-ink)}.recipe-invalid-note{margin-top:6px;font-size:12px;color:var(--accent)}.model-card:disabled{cursor:not-allowed;opacity:.6}.pipe-head{padding-top:22px}.pipe-banner{margin-top:26px}.stage-kind{font-size:11px;letter-spacing:.04em;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-full);padding:2px 9px;white-space:nowrap}.stage-error,.part-error{margin:13px 0 0;background:#e3051a0d;border:1px solid rgb(227 5 26 / .22);padding:10px 12px;font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--accent);white-space:pre-wrap;overflow-wrap:break-word;overflow-x:auto;max-width:100%}.parts-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.part-chip{display:inline-flex;align-items:center;gap:9px;padding:7px 13px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-full);font-size:12px;letter-spacing:.02em;color:var(--text-body)}button.part-chip{cursor:pointer;font:inherit;font-size:12px;transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}button.part-chip:hover{border-color:var(--gold-ink);background:var(--gold-wash);box-shadow:var(--shadow-sm)}.part-name{font-weight:600}.part-status{color:var(--text-muted)}.part-status-running{color:var(--gold-600)}.dark .part-status-running{color:var(--gold-ink)}.part-status-failed{color:var(--accent)}.part-status-completed{color:var(--ink)}.dark .part-status-completed{color:var(--cream)}.part-words{color:var(--text-muted);font-variant-numeric:tabular-nums}.checks-list{margin-top:13px;display:flex;flex-direction:column;gap:9px}.check-row{display:block;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--ink);font-size:13px;line-height:1.55}.check-row.check-bad{border-left-color:var(--accent)}.check-mark{flex-shrink:0;font-weight:700;color:var(--ink)}.dark .check-mark{color:var(--cream)}.check-bad .check-mark{color:var(--accent)}.check-name{flex:0 1 auto;min-width:0;color:var(--text-body);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.check-detail{margin:7px 0 0;background:var(--surface-muted);border:1px solid var(--border);padding:9px 11px;font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--text-muted);white-space:pre-wrap;overflow-wrap:break-word;overflow-x:auto}.checkpoint-banner{--checkpoint-bg: var(--muted-bg);margin-top:26px;background:var(--gold-wash);border:1px solid var(--ink);border-left:3px solid var(--gold);padding:18px 20px;animation:nw-rise var(--dur-reveal) var(--ease-out) both}.checkpoint-title{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--gold-600)}.dark .checkpoint-banner{--checkpoint-bg: #1a1a18}.dark .checkpoint-title{color:var(--gold-ink)}.checkpoint-banner p{margin:0;font-size:14px;line-height:1.65;color:var(--text-muted)}.pipe-done-card{margin-top:26px;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--ink);padding:18px 20px;animation:nw-rise var(--dur-reveal) var(--ease-out) both}.pipe-done-title{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--ink)}.dark .pipe-done-title{color:var(--cream)}.pipe-done-card p{margin:0;font-size:14px;line-height:1.65;color:var(--text-muted)}.badge-ok,.badge-bad,.badge-builtin{flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.03em;border-radius:var(--radius-full);padding:2px 9px;white-space:nowrap}.badge-ok{color:var(--ink);border:1px solid var(--border)}.dark .badge-ok{color:var(--cream)}.badge-bad{color:var(--accent);border:1px solid var(--brand-red)}.badge-builtin{color:var(--navy-700);border:1px solid hsl(215 45% 32% / .4)}.dark .badge-builtin{color:var(--navy-500);border-color:#4676b973}.recipe-editor-head{margin-bottom:0}.recipe-editor-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 20px}.yaml-textarea{width:100%;min-height:440px;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 15px;font-family:var(--font-mono);font-size:13px;line-height:1.65;color:var(--text-body);resize:vertical}.yaml-textarea:focus{outline:none;border-color:var(--ink)}.recipe-errors{margin-top:16px}.recipe-errors ul{margin:8px 0 0;padding-left:18px}.recipe-errors li{font-size:13px;line-height:1.6;color:var(--text-muted);font-family:var(--font-mono);overflow-wrap:anywhere}.recipe-editor-actions{margin-top:18px}.tutorial-wrap{max-width:720px;margin:0 auto;padding:24px clamp(14px,4vw,28px) 0}.tutorial-card{background:var(--surface-card);border:1px solid var(--border);border-top:2px solid var(--gold);padding:22px 22px 18px;animation:nw-rise var(--dur-base) var(--ease-out)}.tutorial-title{margin:10px 0 6px;font-size:19px;font-weight:700}.tutorial-lead{margin:0 0 6px;font-size:13.5px;line-height:1.65;color:var(--text-muted)}.tutorial-ask{margin:14px 0 16px;font-size:15px;font-weight:600;color:var(--text-body)}.tutorial-actions{display:flex;gap:10px;flex-wrap:wrap}.tutorial-actions .btn-gold{height:40px;padding:0 18px}.doc-view{max-width:68ch;font-family:var(--font-read);font-weight:var(--fw-regular);font-size:1.125rem;line-height:1.75;color:var(--text-body);overflow-wrap:break-word}.doc-view>*:first-child{margin-top:0}.doc-view>*:last-child{margin-bottom:0}.doc-view .md-p{margin:0 0 1em}.doc-view .md-h1,.doc-view .md-h2,.doc-view .md-h3,.doc-view .md-h4{font-family:var(--font-display);line-height:var(--leading-heading);color:var(--text-body);letter-spacing:var(--tracking-tight)}.doc-view .md-h1{font-size:29px;font-weight:var(--fw-bold);margin:var(--space-8) 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.doc-view .md-h2{font-size:22px;font-weight:var(--fw-bold);margin:var(--space-8) 0 var(--space-3)}.doc-view .md-h3{font-size:18px;font-weight:var(--fw-semibold);margin:var(--space-6) 0 var(--space-2)}.doc-view .md-h4{font-size:15px;font-weight:var(--fw-semibold);color:var(--text-muted);letter-spacing:var(--tracking-wide);margin:var(--space-5) 0 var(--space-2)}.doc-view .md-list{margin:0 0 var(--space-5);padding-left:1.35em;display:flex;flex-direction:column;gap:var(--space-2)}.doc-view .md-list li{padding-left:.15em}.doc-view .md-list li::marker{color:var(--gold-600)}.dark .doc-view .md-list li::marker{color:var(--gold-ink)}.doc-view .md-list-sub{margin:var(--space-2) 0 0;gap:var(--space-1)}.doc-view .md-quote{margin:0 0 var(--space-5);padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:var(--accent-bar) solid var(--gold);color:var(--text-muted)}.doc-view .md-quote p{margin:0 0 var(--space-2)}.doc-view .md-quote p:last-child{margin-bottom:0}.doc-view .md-hr{border:0;height:var(--rule-thin);background:var(--border);margin:var(--space-8) 0}.doc-view .md-code{font-family:var(--font-mono);font-size:.86em;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.1em .35em}.doc-view .md-pre{margin:0 0 var(--space-5);background:var(--surface-muted);border:1px solid var(--border);padding:var(--space-4);overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--text-body);white-space:pre}.doc-view .md-pre code{font:inherit;background:none;border:0;padding:0}.doc-view .md-table-wrap{margin:0 0 var(--space-5);overflow-x:auto;border:1px solid var(--border)}.doc-view .md-table{width:100%;border-collapse:collapse;font-size:14px}.doc-view .md-table th,.doc-view .md-table td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.doc-view .md-table th{background:var(--surface-muted);font-weight:var(--fw-semibold);white-space:nowrap}.doc-view .md-table tr:last-child td{border-bottom:0}.doc-clamp{position:relative;max-height:420px;overflow:hidden}.doc-clamp:after{content:"";position:absolute;left:0;right:0;bottom:0;height:64px;background:linear-gradient(to bottom,transparent,var(--background));pointer-events:none}.doc-clamp.is-full{max-height:none;overflow:visible}.doc-clamp.is-full:after{display:none}.file-view-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.file-view-head .file-view-name{margin:0;flex:1;min-width:0}.file-view-meta{display:flex;align-items:center;gap:var(--space-4)}.file-words{font-size:12.5px;color:var(--text-muted);letter-spacing:var(--tracking-wide);white-space:nowrap}.doc-switch{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.doc-switch-btn{background:transparent;border:0;padding:0 13px;height:30px;font:inherit;font-size:12.5px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.doc-switch-btn+.doc-switch-btn{border-left:1px solid var(--border)}.doc-switch-btn:hover{color:var(--text-body);background:var(--gold-wash)}.doc-switch-btn.is-on{background:var(--gold-wash-strong);color:var(--gold-600);font-weight:var(--fw-medium)}.dark .doc-switch-btn.is-on{color:var(--gold-ink)}.file-article .doc-view{margin-bottom:var(--space-6)}.checkpoint-result{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line-strong)}.checkpoint-result-path{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted);margin-bottom:var(--space-3);overflow-wrap:anywhere}.checkpoint-result-note{font-size:13.5px;line-height:var(--leading-snug);color:var(--text-muted)}.checkpoint-result-note p{margin:0 0 var(--space-3)}.checkpoint-result .doc-clamp:after{background:linear-gradient(to bottom,transparent,var(--checkpoint-bg))}.checkpoint-result .task-toggle{margin-top:var(--space-3)}.part-cell{display:flex;flex-direction:column;gap:7px;align-items:flex-start}.part-cell-wide{flex:1 1 100%}.part-arrow{color:var(--text-muted);transition:transform var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}button.part-chip:hover .part-arrow{color:var(--gold-600);transform:translate(2px)}.dark button.part-chip:hover .part-arrow{color:var(--gold-ink)}.part-error{margin:0;padding:8px 11px;font-size:11.5px}@media(max-width:640px){.doc-view{font-size:1.0625rem}.doc-view .md-h1{font-size:24px}.doc-view .md-h2{font-size:20px}.doc-view .md-h3{font-size:17px}.file-pre{font-size:1.0625rem}.file-view-meta{width:100%;justify-content:space-between}}.tool-line-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stream-note-action{margin-left:var(--space-2)}.jump-btn{position:fixed;left:50%;transform:translate(-50%);bottom:calc(24px + env(safe-area-inset-bottom));z-index:calc(var(--z-header) - 4);background:var(--surface-card);border-color:var(--gold-ink);box-shadow:var(--shadow-md)}.jump-btn-above-composer{bottom:calc(88px + env(safe-area-inset-bottom))}.model-name-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.pill-sm.pill-role{background:transparent;border:1px solid var(--border);color:var(--text-muted);letter-spacing:var(--tracking-wide)}.effort-seg-wrap{flex-wrap:wrap}.effort-seg-wrap .effort-btn{flex:1 1 8.5rem}.part-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);background:#e3051a0d;border:1px solid rgb(227 5 26 / .22);padding:8px 11px;font-size:12.5px;line-height:var(--leading-snug);color:var(--text-muted);max-width:100%}.part-note-link{background:transparent;border:0;padding:0;color:var(--gold-600);font-size:12.5px;white-space:nowrap;cursor:pointer}.dark .part-note-link{color:var(--gold-ink)}@keyframes nw-hint-in{0%{opacity:0}to{opacity:1}}.hint[data-hint]{position:relative}.hint[data-hint]:after,.hint[data-hint]:before{display:none;pointer-events:none}.hint[data-hint]:after{content:attr(data-hint);position:absolute;left:50%;top:calc(100% + 9px);transform:translate(-50%);z-index:var(--z-hint);width:max-content;max-width:min(268px,72vw);background:var(--surface-inverse);color:var(--text-on-inverse);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:7px 10px;font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-regular);line-height:1.5;letter-spacing:0;text-align:left;white-space:normal}.hint[data-hint]:before{content:"";position:absolute;left:50%;top:calc(100% + 4px);transform:translate(-50%);z-index:var(--z-hint);border:5px solid transparent;border-bottom-color:var(--surface-inverse)}.hint[data-hint]:hover:after,.hint[data-hint]:hover:before,.hint[data-hint]:focus-visible:after,.hint[data-hint]:focus-visible:before{display:block;animation:nw-hint-in var(--dur-fast) var(--ease-out) both}.app-header .hint[data-hint]:after{left:auto;right:0;transform:none}.app-header .hint[data-hint]:before{left:auto;right:15px;transform:none}@media(hover:none){.hint[data-hint]:after,.hint[data-hint]:before{content:none}}.mode-seg{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;flex-shrink:0}.mode-btn{height:28px;padding:0 11px;background:transparent;border:0;font:inherit;font-size:12px;letter-spacing:.02em;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.mode-btn+.mode-btn{border-left:1px solid var(--border)}.mode-btn:hover{color:var(--text-body);background:var(--gold-wash)}.mode-btn.is-on{background:var(--gold-wash-strong);color:var(--gold-600);font-weight:var(--fw-medium)}.dark .mode-btn.is-on{color:var(--gold-ink)}@media(max-width:899px){.mode-seg-header{display:none}}@media(min-width:900px){.mode-seg-drawer{display:none}}.drawer-mode{padding:18px 18px 6px;border-top:1px solid var(--border);margin-top:10px}.drawer-mode-label{font-size:11px;letter-spacing:.05em;color:var(--text-muted);margin-bottom:9px}.mode-seg-drawer{width:100%}.mode-seg-drawer .mode-btn{flex:1;height:36px;font-size:13px}.tech-note{margin:0 0 22px;padding-left:11px;border-left:2px solid var(--border);font-size:12.5px;line-height:1.6;color:var(--text-muted)}.scope-toggle{display:inline-flex;align-items:center;gap:9px;margin:0 0 20px;font-size:12.5px;letter-spacing:.02em;color:var(--text-muted);cursor:pointer}.scope-toggle input{width:15px;height:15px;accent-color:var(--gold-ink);cursor:pointer}.scope-toggle:hover{color:var(--text-body)}.history-item-waiting{background:var(--gold-wash);border-color:var(--ink)}.history-item-waiting:hover{background:var(--gold-wash-strong)}.history-item-waiting .history-bar{opacity:1}.work-waiting-note{margin-top:9px;font-size:12.5px;letter-spacing:.02em;color:var(--gold-600)}.dark .work-waiting-note{color:var(--gold-ink)}.kind-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.kind-card{align-items:stretch}.kind-estimate{margin-top:7px;font-size:11.5px;letter-spacing:.03em;color:var(--gold-600)}.dark .kind-estimate{color:var(--gold-ink)}.kind-id{margin-top:7px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.plan-row{margin-top:26px}.plan-row .checkbox-row{margin-top:0}.plan-note{margin:0;padding:14px 16px;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius);font-size:13px;line-height:1.6;color:var(--text-muted)}.load-fail{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:16px 0}.load-fail .error,.load-fail p{margin:0}.checkbox-row{display:flex;align-items:flex-start;gap:12px;margin-top:26px;padding:14px 16px;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--gold);border-radius:var(--radius);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out)}.checkbox-row:hover{border-color:var(--ink);border-left-color:var(--gold-ink)}.checkbox-input{flex:none;width:17px;height:17px;margin:2px 0 0;accent-color:var(--gold-ink);cursor:pointer}.checkbox-text{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.5}.checkbox-hint{font-size:12.5px;line-height:1.55;color:var(--text-muted)}.expert-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.stepper{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column}.step-row{position:relative;display:flex;gap:14px;padding-bottom:24px}.step-row:before{content:"";position:absolute;left:11px;top:26px;bottom:2px;width:1px;background:var(--border)}.step-row:last-child{padding-bottom:0}.step-row:last-child:before{display:none}.step-mark{position:relative;z-index:1;flex:none;width:23px;height:23px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--background);font-size:12px;line-height:1;color:var(--text-muted)}.step-spin{width:11px;height:11px;border:2px solid var(--border);border-top-color:var(--gold-ink);border-radius:50%;animation:spin .8s linear infinite}.step-completed .step-mark{color:var(--ink);border-color:var(--ink)}.dark .step-completed .step-mark{color:var(--cream)}.step-running .step-mark{border-color:var(--ink);animation:nw-ring 1.8s ease-out infinite}.step-waiting .step-mark{border-style:dashed;border-color:var(--ink);color:var(--gold-600)}.dark .step-waiting .step-mark{color:var(--gold-ink)}.step-failed .step-mark{color:var(--accent);border-color:var(--brand-red)}.step-pending .step-mark{opacity:.6}.step-body{flex:1;min-width:0}.step-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:23px}.step-num{font-size:11px;letter-spacing:.05em;color:var(--text-muted)}.step-label{font-size:15px;font-weight:600;overflow-wrap:anywhere}.step-pending .step-label{font-weight:500;color:var(--text-muted)}.step-note{margin-top:6px;font-size:13.5px;line-height:1.6;color:var(--gold-600)}.dark .step-note{color:var(--gold-ink)}.checkpoint-banner .checkpoint-note{margin-top:12px;font-size:12.5px;color:var(--gold-600)}.dark .checkpoint-banner .checkpoint-note{color:var(--gold-ink)}.checkpoint-edit{margin-top:14px}.plan-textarea,.revise-textarea{width:100%;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 15px;color:var(--text-body);resize:vertical}.plan-textarea{font-family:var(--font-read);font-size:1rem;line-height:1.75;min-height:300px}.revise-textarea{font-family:var(--font-sans);font-size:14.5px;line-height:1.6;min-height:96px}.plan-textarea:focus,.revise-textarea:focus{outline:none;border-color:var(--ink)}.output-main{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}.btn-gold-lg{height:48px;padding:0 20px;font-size:15px;border-color:var(--ink)}.output-meta{font-size:12px;letter-spacing:.02em;color:var(--text-muted);overflow-wrap:anywhere}.outputs-list{margin-top:18px;border:1px solid var(--border)}.output-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px}.output-row:last-child{border-bottom:0}.output-name{overflow-wrap:anywhere}.output-raw{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);overflow-wrap:anywhere}.check-toggle{display:flex;align-items:center;gap:9px;width:100%;padding:11px 13px;background:transparent;border:0;text-align:left;font:inherit;font-size:13px;color:var(--text-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.check-toggle:hover{background:var(--surface-muted)}.check-summary{flex:1 1 auto;min-width:0;font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.check-chev{flex:none;color:var(--text-muted);font-size:16px;line-height:1;transition:transform var(--dur-base) var(--ease-out)}.check-chev.is-open{transform:rotate(90deg)}.check-panel{border-top:1px solid var(--border);padding:12px 13px 14px}.check-id{margin-bottom:9px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.check-kv{display:flex;flex-direction:column;gap:5px;margin-bottom:11px}.check-kv-row{display:flex;gap:10px;font-size:12.5px;line-height:1.55}.check-kv-label{flex:none;width:112px;color:var(--text-muted)}.check-kv-value{flex:1;min-width:0;overflow-wrap:anywhere}.check-items-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--border);margin-bottom:11px}.check-items{width:100%;border-collapse:collapse;font-size:12.5px}.check-items th,.check-items td{padding:7px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}.check-items th{background:var(--surface-muted);font-weight:var(--fw-semibold);font-size:11.5px;letter-spacing:.02em;color:var(--text-muted);white-space:nowrap}.check-items tr:last-child td{border-bottom:0}.check-item-file{font-family:var(--font-mono);font-size:11.5px;white-space:nowrap}.check-item-text{min-width:14ch;max-width:46ch;overflow-wrap:anywhere}.check-item-note{color:var(--text-muted);overflow-wrap:anywhere}.check-more{margin:0 0 11px;font-size:12px;color:var(--text-muted)}.check-hint{margin:0;padding-left:11px;border-left:2px solid var(--ink);font-size:13px;line-height:1.65;color:var(--text-muted)}.root-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:22px}.root-card{display:flex;align-items:center;gap:15px;text-align:left;background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--gold);padding:18px;color:var(--text-body);font:inherit;cursor:pointer;transition:background var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.root-card:hover{background:var(--surface-muted);border-color:var(--ink);border-left-color:var(--gold-ink)}.root-card-icon{flex:none;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--gold-wash)}.root-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.root-card-name{font-size:16px;font-weight:600;overflow-wrap:anywhere}.root-card-desc{font-size:13px;line-height:1.5;color:var(--text-muted)}.root-card>svg{flex:none;color:var(--text-muted)}.recipes-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.recipes-toolbar .btn-gold{height:40px;padding:0 17px}.recipe-cards{display:flex;flex-direction:column;gap:12px}.recipe-card{background:var(--surface-card);border:1px solid var(--border);border-top:2px solid var(--gold);padding:16px 18px}.recipe-card-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:7px}.recipe-card-name{flex:1;min-width:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}.recipe-card-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.recipe-card-desc{margin:0 0 11px;font-size:13.5px;line-height:1.6;color:var(--text-muted)}.recipe-card-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:14px;font-size:12px;letter-spacing:.02em;color:var(--text-muted)}.recipe-card-actions{display:flex;gap:9px;flex-wrap:wrap}.recipe-delete-box{margin-top:14px;padding:14px 15px;background:#e3051a0a;border:1px solid rgb(227 5 26 / .22)}.recipe-delete-title{font-size:13.5px;line-height:1.6;margin-bottom:10px}.recipe-delete-id{font-family:var(--font-mono);font-weight:600;color:var(--accent)}.recipe-delete-box .input{margin-bottom:9px;max-width:320px}.recipe-delete-hint{margin:0;font-size:12px;line-height:1.6;color:var(--text-muted)}.recipe-editor-id{max-width:320px;font-family:var(--font-mono);font-size:14px}.recipe-editor-note{margin:0 0 18px;font-size:12.5px;line-height:1.6;color:var(--text-muted);max-width:60ch}.btn-danger{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--accent-foreground);border:1px solid transparent;border-radius:var(--radius);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.btn-danger:hover:not(:disabled){background:var(--crimson-500)}.btn-danger:disabled{opacity:.45;cursor:not-allowed}.btn-danger-outline{height:36px;padding:0 16px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.btn-danger-outline:hover{color:var(--accent);border-color:var(--brand-red);background:#e3051a0d}.tour-root{color:var(--text-body)}.tour-veil{background:#0b0b0b9e}.tour-veil-top,.tour-veil-bottom,.tour-veil-left,.tour-veil-right{cursor:pointer}.tour-ring{border:2px solid var(--gold);border-radius:var(--radius);box-shadow:0 0 0 3px var(--line-strong),0 0 26px var(--line-strong)}.tour-card{width:min(340px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;background:var(--surface-card);border:1px solid var(--ink);box-shadow:var(--shadow-lg);padding:15px 17px 13px}.tour-card:focus{outline:none}.tour-arrow{position:absolute;width:11px;height:11px;background:var(--surface-card);transform:translate(-50%) rotate(45deg)}.tour-card-below .tour-arrow{top:-6px;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}.tour-card-above .tour-arrow{bottom:-6px;border-bottom:1px solid var(--ink);border-right:1px solid var(--ink)}.tour-card-bottom .tour-arrow{display:none}.tour-progress{font-size:11px;letter-spacing:.05em;color:var(--text-muted);font-variant-numeric:tabular-nums;margin-bottom:7px}.tour-title{margin:0 0 6px;font-size:16px;font-weight:700;line-height:1.35}.tour-text{margin:0 0 15px;font-size:14px;line-height:1.65;color:var(--text-muted)}.tour-actions{display:flex;align-items:center;gap:8px}.tour-btn{height:34px;padding:0 14px;background:transparent;border:1px solid var(--border);border-radius:var(--radius);font:inherit;font-size:13px;color:var(--text-body);cursor:pointer;white-space:nowrap;transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.tour-btn:hover{border-color:var(--gold-ink);background:var(--gold-wash)}.tour-skip{padding-left:0;border-color:transparent;color:var(--text-muted)}.tour-skip:hover{border-color:transparent;background:transparent;color:var(--text-body)}.tour-back{color:var(--text-muted)}.tour-next{background:var(--primary);border-color:transparent;color:var(--primary-foreground)}.tour-next:hover{background:var(--navy-700);border-color:transparent}@media(max-width:640px){.tour-card-bottom{left:0;right:0;bottom:0;top:auto;width:auto;max-width:100%;max-height:62vh;border-left:0;border-right:0;border-bottom:0;border-top:2px solid var(--gold);padding-bottom:calc(13px + env(safe-area-inset-bottom))}.tour-card-bottom .tour-actions{flex-wrap:wrap}}@media(max-width:420px){.step-row{gap:11px}.output-main .btn-gold-lg{width:100%}.recipe-card-actions .btn-card-outline,.recipe-card-actions .btn-danger-outline{flex:1 1 auto}.check-kv-row{flex-direction:column;gap:1px}.check-kv-label{width:auto}}.doc-view .md-p,.doc-view .md-quote p{font-size:inherit;line-height:inherit;color:inherit}.stream-text.doc-view{white-space:normal;font-size:1.0625rem;line-height:1.72;max-width:72ch}.stream-text.doc-view .md-p:last-child{margin-bottom:0}.stream-text.doc-view .caret{vertical-align:baseline}.recipe-form{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 18px 4px;margin-bottom:26px}.recipe-form-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.stage-edit-field{display:block;margin-bottom:4px}.stage-edit-legend{display:block;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:7px}.stage-edit-field .input,.stage-edit-field .task-textarea{margin-bottom:12px}.stage-edit-hint{margin:-6px 0 14px;font-size:13px;color:var(--text-muted)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238b8578' stroke-width='1.75' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:17px;padding-right:36px;cursor:pointer}.stages-head{margin-bottom:4px}.stage-edit-list{display:flex;flex-direction:column;gap:14px}.stage-edit{background:var(--surface-card);border:1px solid var(--border);border-left:3px solid var(--gold);border-radius:var(--radius);padding:16px 18px}.stage-edit-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}.stage-edit-num{flex:none;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-muted);color:var(--text-muted);font-size:13px;font-variant-numeric:tabular-nums}.stage-edit-label{flex:1;margin-bottom:0;font-size:16px}.stage-edit-tools{display:flex;gap:2px}.stage-edit-tools .icon-btn:disabled{opacity:.3;cursor:default}.icon-btn-danger:hover{color:var(--destructive)}.stage-edit-cp{margin-top:4px;margin-bottom:16px}.stage-edit-prompt{min-height:130px;font-size:14px}.stage-edit-expert{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 14px;padding-top:12px;border-top:1px dashed var(--border)}.var-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 14px}.var-chips-label{font-size:12px;color:var(--text-muted);margin-right:2px}.var-chip{background:transparent;border:1px solid var(--border);border-radius:0;padding:3px 10px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);cursor:pointer;transition:all var(--dur-base) var(--ease-out)}.var-chip:hover{border-color:var(--ink);color:var(--text-body)}.check-picker{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.check-picker .checkbox-row{margin-top:0;padding:10px 14px}.add-stage{display:inline-flex;align-items:center;gap:8px;margin-top:16px}.raw-toggle{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:3px 12px;font-family:var(--font-mono);font-size:12px;color:var(--text-muted);cursor:pointer}.raw-toggle:hover:not(:disabled){border-color:var(--ink);color:var(--text-body)}.raw-toggle:disabled{opacity:.45;cursor:default}@media(max-width:620px){.recipe-form-row{grid-template-columns:1fr}}.app-header{background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.dark .app-header{background:#0b0b0beb}.goldline{height:2px;background:var(--ink);opacity:1}.dark .goldline{background:var(--cream)}.nav-underline{background:var(--ink)}.dark .nav-underline{background:var(--cream)}.brand-name{font-weight:900;letter-spacing:-.02em}.brand-sub{color:var(--ink-faintest);font-weight:400}.brand-dot{border-radius:50%}.page-title{font-weight:900;letter-spacing:-.025em;line-height:1.06}.page-lead{color:var(--ink-muted)}.gold-tick{width:38px;height:2px;background:currentColor;opacity:.45}.btn-primary,.btn-gold,.btn-card-outline,.btn-header,.btn-stop,.btn-danger,.btn-danger-outline{border-radius:0}.btn-primary{background:var(--ink);color:var(--cream);border:1px solid var(--ink);font-weight:600;padding:14px 26px}.btn-primary:hover:not(:disabled){background:var(--ink-soft);border-color:var(--ink-soft)}.dark .btn-primary{background:var(--cream);color:var(--dark);border-color:var(--cream)}.btn-gold{color:var(--ink);border:1px solid var(--ink);font-weight:600}.btn-gold:hover:not(:disabled){background:var(--ink);color:var(--cream)}.dark .btn-gold{color:var(--cream);border-color:var(--cream)}.dark .btn-gold:hover:not(:disabled){background:var(--cream);color:var(--dark)}.btn-card-outline{border-color:var(--line-strong)}.btn-card-outline:hover:not(:disabled){border-color:var(--ink)}.pill,.pill-sm{border-radius:0;background:transparent;border:1px solid var(--line-strong);border-left-width:3px;border-left-color:var(--ink-faintest);color:var(--ink-muted);font-weight:600;letter-spacing:.06em}.pill-running,.pill-sm.pill-running{border-left-color:var(--brand-blue);color:var(--ink);background:transparent}.pill-waiting,.pill-sm.pill-waiting{border-left-color:var(--brand-yellow);color:var(--ink);background:transparent}.pill-failed,.pill-sm.pill-failed{border-left-color:var(--brand-red);color:var(--ink);background:transparent}.pill-completed,.pill-sm.pill-completed{border-left-color:var(--ink);color:var(--ink);background:transparent}.pill-stopped,.pill-sm.pill-stopped{border-left-color:var(--ink-faintest);color:var(--ink-faint);background:transparent}.dark .pill,.dark .pill-sm{color:var(--text-muted)}.dark .pill-running,.dark .pill-waiting,.dark .pill-failed,.dark .pill-completed{color:var(--cream)}.dark .pill-completed,.dark .pill-sm.pill-completed{border-left-color:var(--cream)}.pill-dot{border-radius:50%;background:currentColor}.history-item,.recipe-card,.stage-card,.stage-edit,.empty-card,.info-box,.newpipe-card,.files-box,.recipe-form,.done-card,.stopped-card,.failed-card,.pipe-done-card,.model-card,.task-box,.checkbox-row{border-radius:0;box-shadow:none}:focus-visible{outline:2px solid var(--brand-yellow);outline-offset:2px}.input:focus,.task-textarea:focus,.yaml-textarea:focus{outline:none;border-color:var(--ink);box-shadow:none}.var-chip{border-radius:0}.section-label,.stage-edit-legend,.stat-label,.file-view-meta,.effort-hint{letter-spacing:.04em}.doc-switch,.doc-switch-btn,.effort-seg,.effort-btn,.mode-seg,.mode-btn{border-radius:0}.effort-underline{background:var(--ink)}.dark .effort-underline{background:var(--cream)}.nav-tab,.drawer-item,.btn-primary,.btn-gold,.btn-card-outline,.btn-header,.icon-btn,.model-card,.effort-btn,.history-item,.file-row,.adm-btn-sm,.adm-tab,.doc-switch-btn,.crumb,.task-toggle{transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.history-item:hover{background:var(--gold-wash);border-color:var(--gold-300)}.history-item:hover .history-bar{background:var(--brand-yellow)}.history-item:active{transform:translateY(1px)}.model-card:hover:not(:disabled){border-color:var(--gold-300);background:var(--gold-wash)}.model-bar{background:var(--brand-yellow)}.pill-dot{animation:nw-pulse 1.6s ease-in-out infinite}@keyframes nw-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.pill-dot{animation:none}.nav-tab,.btn-primary,.btn-gold,.model-card,.history-item{transition:none}}.goldline,.gold-tick,.nav-underline,.effort-underline,.drawer-goldline{background:var(--brand-yellow)}.btn-gold{background:var(--brand-yellow);color:var(--ink);border-color:transparent;font-weight:var(--fw-semibold)}.btn-gold:hover:not(:disabled){background:#ffc61a}.btn-primary:hover:not(:disabled){background:var(--ink-soft)}.btn-primary:active:not(:disabled){transform:translateY(1px)}.checkpoint-banner,.pipe-done-card{border-left:3px solid var(--brand-yellow)}.stage-card{border-left:3px solid transparent}.stage-running{border-left-color:var(--brand-blue)}.stage-completed{border-left-color:var(--brand-yellow)}.stage-failed{border-left-color:var(--brand-red)}.empty-card{border-top:2px solid var(--brand-yellow)}.adm-alert-warn .adm-row-title{color:#8a6500}.dark .adm-alert-warn .adm-row-title{color:var(--brand-yellow)}.adm-alert-warn{border-left:3px solid var(--brand-yellow);padding-left:12px}.adm-alert-bad{border-left:3px solid var(--brand-red);padding-left:12px}.adm-tab.is-on{border-bottom-color:var(--brand-yellow)}.adm-badge{background:var(--ink)}.adm-tr-click:hover{background:var(--gold-wash)}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:20px;background:#14141473}.modal-box{width:100%;max-width:420px;background:var(--surface-card);border:1px solid var(--border);border-top:3px solid var(--brand-yellow);padding:22px 24px 18px}.modal-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.modal-title{font-size:var(--text-xl);font-weight:var(--fw-black);margin:0;flex:1}.modal-section{margin-bottom:20px}.modal-label{font-size:var(--text-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.modal-hint{font-size:var(--text-sm);color:var(--text-muted);margin:8px 0 0;line-height:1.5}.seg-row{display:flex;border:1px solid var(--border)}.seg-btn{flex:1;padding:9px 12px;font:inherit;font-size:var(--text-sm);background:transparent;border:0;border-right:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:background-color .14s ease,color .14s ease}.seg-btn:last-child{border-right:0}.seg-btn:hover{background:var(--gold-wash);color:var(--text-body)}.seg-btn.is-on{background:var(--brand-yellow);color:var(--ink);font-weight:var(--fw-semibold)}.modal-foot{display:flex;justify-content:flex-end}.var-chips{margin-top:10px}.var-chips-label{display:block;font-size:var(--text-xs);color:var(--text-muted);margin-bottom:6px}.var-chip-row{display:flex;flex-wrap:wrap;gap:6px}.var-chip{font-size:var(--text-xs);padding:4px 10px;background:var(--gold-wash);border:1px solid var(--gold-300);color:var(--gold-ink);cursor:pointer;transition:background-color .14s ease}.var-chip:hover{background:var(--gold-wash-strong)}
