:root{color-scheme:light;--bg: #e7ecf2;--surface: #f8fafc;--surface-soft: #eef2f7;--surface-strong: #dde4ec;--line: #d6dde6;--line-strong: #bcc6d2;--text: #1a2334;--muted: #5f6f83;--faint: #8695a8;--blue: #2563eb;--blue-soft: #dbeafe;--blue-ink: #1e40af;--teal: #0f766e;--teal-soft: #ccfbf1;--green: #15803d;--green-soft: #dcfce7;--amber: #b45309;--amber-soft: #fef3c7;--rose: #be123c;--rose-soft: #ffe4e6;--indigo: #4f46e5;--ink-invert: #ffffff;--field-bg: #ffffff;--focus-bg: #f2f8ff;--reviewed-bg: #edf6f0;--left-bg: #e9eef4;--deep: #0b1220;--deep-ink: #dbeafe;--glow-a: rgba(37, 99, 235, .1);--glow-b: rgba(15, 118, 110, .09);--shadow: 0 8px 22px rgba(23, 32, 51, .1);--shadow-lift: 0 14px 34px rgba(23, 32, 51, .16);--radius: 14px;--dur-fast: .11s;--dur: .2s;--dur-slow: .34s;--ease: cubic-bezier(.2, .7, .2, 1)}:root[data-theme=dark]{color-scheme:dark;--bg: #0e131a;--surface: #191f28;--surface-soft: #1f2731;--surface-strong: #29313d;--line: #333d4a;--line-strong: #475362;--text: #f2f5fa;--muted: #bcc7d6;--faint: #93a1b3;--blue: #60a5fa;--blue-soft: #1d3350;--blue-ink: #bcd4f7;--teal: #2dd4bf;--teal-soft: #123b39;--green: #4ade80;--green-soft: #16391f;--amber: #fbbf24;--amber-soft: #3d2f12;--rose: #fb7185;--rose-soft: #45202a;--indigo: #818cf8;--ink-invert: #0e131a;--field-bg: #141a22;--focus-bg: #202834;--reviewed-bg: #14251b;--left-bg: #121820;--deep: #26334a;--deep-ink: #dbeafe;--glow-a: rgba(96, 165, 250, .1);--glow-b: rgba(45, 212, 191, .08);--shadow: 0 10px 26px rgba(0, 0, 0, .45);--shadow-lift: 0 16px 40px rgba(0, 0, 0, .55)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Malgun Gothic,Apple SD Gothic Neo,system-ui,sans-serif;background:radial-gradient(1100px 520px at 12% -8%,var(--glow-a),transparent 60%),radial-gradient(900px 480px at 100% 0%,var(--glow-b),transparent 55%),var(--bg);background-attachment:fixed;transition:background-color .2s ease;color:var(--text);font-size:14px;letter-spacing:0}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(37,99,235,.32);outline-offset:2px}button{transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.landing{max-width:1120px;margin:0 auto;padding:40px 24px 56px}.landing-header{display:grid;gap:8px;margin-bottom:22px}.product-label{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px;padding:3px 10px;border-radius:999px;background:linear-gradient(90deg,var(--teal-soft),var(--blue-soft));color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.landing h1{margin:0;color:var(--text);font-size:32px;font-weight:800;letter-spacing:-.01em}.landing-header p{max-width:720px;margin:0;color:var(--muted);line-height:1.55;text-align:left;text-wrap:pretty;word-break:keep-all}.queue-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:13px;color:var(--text)}.queue-bar .queue-spin{animation:queue-spin 1.4s linear infinite;display:inline-block}.queue-bar .queue-spin.idle{animation:none;opacity:.6}.queue-bar .queue-txt strong{color:var(--blue)}.queue-bar .queue-txt code{padding:1px 6px;border-radius:5px;background:var(--bg);border:1px solid var(--border);font-size:12px}.queue-bar .queue-err{color:var(--danger, #e06c75);font-weight:600}.queue-bar .queue-cancels{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}.queue-bar .queue-cancel{padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;cursor:pointer}.queue-bar .queue-cancel:hover{color:var(--danger, #e06c75);border-color:var(--danger, #e06c75)}@keyframes queue-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.queue-bar .queue-spin{animation:none}}.url-box{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 80%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow)}.url-box input{width:100%;min-width:0;padding:11px 12px;border:1px solid transparent;border-radius:6px;background:var(--surface-soft);color:var(--text);font-size:14px}.url-box input:focus{border-color:var(--blue);background:var(--focus-bg);outline:none}.url-box button,.continue-btn,.export,.absorb{border:0;border-radius:6px;color:#fff;cursor:pointer;font-weight:800}.url-box button{min-width:126px;padding:0 20px;background:linear-gradient(135deg,var(--blue),var(--indigo));box-shadow:0 6px 16px #2563eb47}.url-box button:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 8px 20px #2563eb5c}.url-box button:disabled{opacity:.48;cursor:default}.dashboard-summary{display:flex;gap:8px;margin:0 0 18px;color:var(--muted);font-size:12px}.dashboard-summary span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 82%,transparent)}.filter-bar{display:flex;align-items:center;gap:14px;margin:0 0 16px;font-size:13px;color:var(--muted);flex-wrap:wrap}.filter-bar label{display:inline-flex;align-items:center;gap:6px}.filter-bar select{padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:13px;color:var(--text)}.filter-bar .search{flex:1 1 220px;max-width:340px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:13px;color:var(--text)}.filter-bar .search:focus{outline:none;border-color:var(--blue)}.dir-toggle{padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.dir-toggle:hover{border-color:var(--blue);color:var(--blue)}.filter-count{margin-left:auto;color:var(--faint);white-space:nowrap}.lang-badges{display:flex;flex-wrap:wrap;gap:4px;margin:0}.lbadge{display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--surface-strong);color:var(--muted);border:1px solid transparent;white-space:nowrap}.lbadge.ko{background:var(--blue-soft);color:var(--blue-ink)}.lbadge.done{background:var(--green-soft);color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,transparent)}.resume-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;margin-bottom:16px;padding:12px 16px 12px 12px;border:1px solid color-mix(in srgb,var(--blue) 34%,var(--line));border-radius:var(--radius);background:radial-gradient(120% 140% at 0% 0%,var(--glow-a),transparent 60%),var(--surface);box-shadow:var(--shadow);cursor:pointer;text-align:left;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.resume-hero:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:var(--shadow-lift)}.resume-thumb{flex:0 0 auto;width:132px;aspect-ratio:16 / 9;overflow:hidden;border-radius:9px;background:var(--surface-strong)}.resume-thumb img{width:100%;height:100%;object-fit:cover;display:block}.resume-body{display:grid;gap:5px;min-width:0}.resume-kicker{font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--blue)}.resume-title{font-size:15px;font-weight:800;color:var(--text);line-height:1.35;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.resume-bar{height:7px;margin:2px 0 1px;border-radius:999px;overflow:hidden;background:var(--surface-strong)}.resume-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),#2dd4bf);transition:width var(--dur-slow) var(--ease)}.resume-meta{font-size:12px;color:var(--muted);font-weight:700}.resume-cta{flex:0 0 auto;display:inline-flex;align-items:center;padding:10px 16px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:13px;font-weight:900;white-space:nowrap}.resume-hero:hover .resume-cta{filter:brightness(1.08)}.workbench-stats{display:flex;align-items:stretch;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 14px;padding:10px 16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 1px 2px #0f172a0a}.ws-ring{display:flex;align-items:center;gap:10px;padding-right:16px;border-right:1px solid var(--line)}.mring{flex:0 0 auto}.mring-bg{fill:none;stroke:var(--surface-strong);stroke-width:4}.mring-fg{fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dasharray var(--dur-slow) var(--ease)}.mring-fg.text{stroke:var(--blue)}.mring-fg.timing{stroke:var(--teal, #0d9488)}.mring-fg.trans{stroke:#8b5cf6}.ws-ring-legend{display:flex;flex-direction:column;gap:3px}.rleg{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;color:var(--muted);white-space:nowrap}.rleg i{width:8px;height:8px;border-radius:50%;flex:none}.rleg.text i{background:var(--blue)}.rleg.timing i{background:var(--teal, #0d9488)}.rleg.trans i{background:#8b5cf6}.ws-nums{display:flex;align-items:center;flex:1 1 auto;justify-content:space-around;flex-wrap:wrap;gap:8px 4px}.wstat{display:flex;align-items:baseline;gap:6px;padding:2px 6px}.wstat strong{font-size:19px;font-weight:900;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.wstat span{font-size:11.5px;font-weight:700;color:var(--faint)}.wstat.ok strong{color:var(--green)}.wstat.warn strong{color:var(--amber)}.wstat.live strong,.wstat.live span{color:var(--teal)}.status-pills{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer}.pill:hover{border-color:var(--blue);color:var(--blue)}.pill em{font-style:normal;font-size:11px;font-weight:800;color:var(--faint);font-variant-numeric:tabular-nums}.pill.on{border-color:transparent;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff}.pill.on em{color:#ffffffd1}.pill.pill-live{border-color:var(--teal);color:var(--teal)}.pill.pill-live.on{background:var(--teal);border-color:transparent;color:#fff}.pill .pill-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);animation:pill-pulse 1.2s ease-in-out infinite}.pill.on .pill-dot{background:#fff}@keyframes pill-pulse{0%,to{opacity:1}50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.pill .pill-dot{animation:none}}.wstat-dot{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--teal);animation:pill-pulse 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.wstat-dot{animation:none}}.job-card.drag-over{box-shadow:inset 0 0 0 3px var(--teal)}.job-card.drag-over:after{content:"📄 여기에 놓기";position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;font-weight:800;font-size:14px;color:#fff;background:color-mix(in srgb,var(--teal) 30%,rgba(0,0,0,.55));pointer-events:none;border-radius:inherit}.srt-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;background:#0000008c;padding:20px}.srt-modal{width:min(560px,100%);max-height:84vh;overflow-y:auto;padding:20px 22px;border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:0 24px 70px #0006}.srt-modal h3{margin:0 0 14px;font-size:17px}.srt-kv{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:baseline;padding:10px 12px;border-radius:10px;background:var(--bg);border:1px solid var(--line);font-size:13px}.srt-kv .srt-k{color:var(--muted);font-weight:700;white-space:nowrap}.srt-kv .srt-v{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.srt-kv .srt-v.strong{color:var(--blue);font-weight:700}.srt-summary{margin:14px 2px 4px;font-size:14px;line-height:1.5}.srt-summary strong{color:var(--teal)}.srt-warn{margin:8px 0 0;padding:8px 11px;border-radius:8px;background:var(--amber-soft, rgba(230, 160, 30, .12));color:var(--amber);font-size:12.5px;line-height:1.45}.srt-sample{margin:14px 0 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:12px}.srt-sample-head{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:7px 12px;background:var(--bg);color:var(--muted);font-weight:700;border-bottom:1px solid var(--line)}.srt-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line)}.srt-row:last-child{border-bottom:none}.srt-old{color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srt-new{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:10px;border-left:2px solid var(--teal)}.srt-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.srt-cancel,.srt-apply{padding:9px 18px;border-radius:9px;font-weight:700;font-size:13px;cursor:pointer;border:1px solid var(--line)}.srt-cancel{background:transparent;color:var(--muted)}.srt-apply{background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;border-color:transparent}.srt-apply:disabled,.srt-cancel:disabled{opacity:.5;cursor:default}.qa.qa-undo{color:var(--amber)}.job-foot{flex-wrap:wrap;row-gap:8px}.job-foot .meta{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-foot .assignee-chip,.job-foot .reroll{flex:0 0 auto}.job-grid.grid .job-foot .meta{flex-basis:100%}.job-grid.grid .job-foot .assignee-chip{margin-left:auto}.assignee-chip{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:700;color:var(--muted);background:transparent;cursor:pointer;white-space:nowrap;max-width:45%;overflow:hidden;text-overflow:ellipsis}.assignee-chip.has{color:var(--blue-ink);background:var(--blue-soft);border-color:transparent}.assignee-chip:hover{border-color:var(--blue);color:var(--blue)}.assign-modal{width:min(420px,100%);padding:20px 22px;border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:0 24px 70px #0006}.assign-modal h3{margin:0 0 6px;font-size:17px}.assign-target{margin:0 0 14px;font-size:12.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assign-input{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-size:15px}.assign-input:focus{outline:none;border-color:var(--blue)}.assign-me{margin-top:8px;padding:4px 10px;border-radius:999px;border:1px dashed var(--line);background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.assign-me:hover{border-color:var(--blue);color:var(--blue)}.assign-modal .srt-actions{margin-top:16px}.assign-clear{margin-right:auto;padding:9px 16px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--amber);font-weight:700;font-size:13px;cursor:pointer}.view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.view-toggle button{padding:6px 10px;border:0;background:var(--surface);color:var(--muted);cursor:pointer;font-size:14px;line-height:1}.view-toggle button.on{background:var(--blue-soft);color:var(--blue-ink)}.view-toggle button+button{border-left:1px solid var(--line)}.reset-chip{padding:6px 12px;border:1px dashed var(--line-strong);border-radius:999px;background:transparent;color:var(--muted);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.reset-chip:hover{border-color:var(--rose);color:var(--rose)}.header-actions{display:flex;align-items:center;gap:8px}.help-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:15px;font-weight:900;cursor:pointer}.help-btn:hover{border-color:var(--blue);color:var(--blue)}.help-popover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;background:#080c146b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.help-card{width:min(360px,92vw);padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-lift)}.help-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.help-head strong{font-size:15px;color:var(--text)}.help-head button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:15px}.help-row{display:flex;align-items:center;gap:12px;padding:5px 0}.help-row span{color:var(--muted);font-size:13px}.url-preview{grid-column:1 / -1;display:flex;align-items:center;gap:10px;margin-top:2px;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.url-preview img{width:64px;height:36px;object-fit:cover;border-radius:5px}.quick-actions{position:absolute;top:8px;left:8px;z-index:2;display:flex;gap:5px;opacity:0;transform:translateY(-3px);transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.job-card:hover .quick-actions,.job-card:focus-within .quick-actions{opacity:1;transform:none}.qa{padding:3px 9px;border-radius:999px;background:#0a101cc7;color:#fff;font-size:11px;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.qa:hover{background:var(--blue)}.job-card.skeleton{min-height:280px;border:1px solid var(--line);background:linear-gradient(100deg,var(--surface) 30%,var(--surface-soft) 50%,var(--surface) 70%);background-size:220% 100%;animation:sk-shimmer 1.3s linear infinite;cursor:default}@keyframes sk-shimmer{to{background-position:-220% 0}}.job-info mark{background:var(--amber-soft);color:var(--amber);border-radius:3px;padding:0 1px}.empty{grid-column:1 / -1;display:grid;gap:10px;justify-items:center;margin:34px 0;color:var(--muted);text-align:center}.empty strong{font-size:15px;color:var(--text)}.empty span{font-size:13px}.job-grid.list{display:flex;flex-direction:column;gap:10px}.job-grid.list .job-card{grid-template-rows:none;grid-template-columns:auto 1fr;height:128px;min-height:0;align-items:stretch}.job-grid.list .thumb{border-radius:0;height:100%;aspect-ratio:16 / 9}.job-grid.list .job-info{padding:10px 16px;gap:6px;align-self:center}.job-grid.list .job-info>strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbadge.more{background:var(--surface-strong);color:var(--muted);cursor:help}img.broken{opacity:0}.thumb-done{position:absolute;top:8px;left:8px;z-index:1;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--green) 88%,#000);color:#fff;font-size:11px;font-weight:800}.thumb-prog{position:absolute;left:0;right:0;bottom:0;z-index:1;height:4px;background:#0a101c73}.thumb-prog span{display:block;height:100%;background:var(--teal)}.thumb-scan{position:absolute;left:0;right:0;top:0;z-index:1;height:3px;background:linear-gradient(90deg,transparent,var(--teal),transparent);animation:thumb-scan 1.5s ease-in-out infinite}@keyframes thumb-scan{0%{top:0;opacity:.35}50%{opacity:1}to{top:calc(100% - 3px);opacity:.35}}.job-card.cursor{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 30%,transparent),var(--shadow-lift)}.wb-controls{position:sticky;top:0;z-index:10;display:grid;gap:10px;margin:0 -24px 16px;padding:12px 24px;background:color-mix(in srgb,var(--bg) 84%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wb-controls .status-pills,.wb-controls .filter-bar{margin:0}@media(max-width:620px){.wb-controls{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}}.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}@media(max-width:620px){.resume-hero{grid-template-columns:auto 1fr}.resume-cta{grid-column:1 / -1;justify-content:center}}.job-card{position:relative;display:grid;grid-template-rows:auto 1fr;min-height:280px;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:inherit;cursor:pointer;text-align:left;box-shadow:0 1px 2px #0f172a0d;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.job-card:hover:not(.disabled){transform:translateY(-4px);border-color:var(--blue);box-shadow:var(--shadow-lift)}.job-card.disabled{cursor:default;opacity:.76}.job-card.running{border-color:#0f766e73}.job-card .thumb{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--surface-strong)}.job-card .thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 62%,rgba(10,16,28,.28));pointer-events:none}.job-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .32s ease}.job-card:hover:not(.disabled) img{transform:scale(1.045)}.thumb-form{position:absolute;left:8px;bottom:8px;z-index:1;padding:2px 8px;border-radius:999px;background:linear-gradient(135deg,#f43f5e,#ec4899);color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em}.thumb-dur{position:absolute;right:8px;bottom:8px;z-index:1;padding:2px 8px;border-radius:999px;background:#0a101cb8;color:#fff;font-size:11px;font-weight:700;letter-spacing:.01em}.reroll{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:700;white-space:nowrap;border:1px solid var(--blue-soft);border-radius:999px;background:var(--blue-soft);color:var(--blue);cursor:pointer;transition:filter .14s ease,box-shadow .14s ease}.reroll:hover{filter:brightness(.97);box-shadow:0 3px 10px #2563eb38}.job-info{display:flex;flex-direction:column;gap:11px;padding:15px 16px 16px}.job-info .job-foot{margin-top:auto}.job-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px}.job-head .lang-badges{justify-content:flex-end;flex:1 1 auto}.stages{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.stage{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:999px;font-size:11.5px;font-weight:800;white-space:nowrap;background:var(--surface-soft);color:var(--faint)}.stage .stage-ic{font-size:11px;line-height:1}.stage.stage-progress{background:var(--blue-soft);color:var(--blue-ink)}.stage.stage-warn{background:var(--amber-soft);color:var(--amber)}.stage.stage-done{background:var(--green-soft);color:var(--green)}.stage.stage-live{background:var(--teal-soft);color:var(--teal)}.card-lang{flex:0 0 auto;max-width:48%}.job-progress.done span{background:linear-gradient(90deg,var(--green),#34d399)}.job-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:1px}.job-foot .meta{flex:1 1 auto}.job-info strong{color:var(--text);font-size:14.5px;font-weight:700;line-height:1.45;text-wrap:pretty;word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-info .status{display:inline-flex;align-items:center;width:max-content;gap:6px;padding:4px 10px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:11.5px;font-weight:700}.job-info .status.live{background:var(--teal-soft);color:var(--teal)}.job-info .meta{color:var(--faint);font-size:11.5px}.job-progress{display:block;height:7px;overflow:hidden;border-radius:999px;background:var(--surface-strong)}.job-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),#2dd4bf)}.spinner{display:inline-block;width:10px;height:10px;border:2px solid rgba(15,118,110,.22);border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{grid-column:1 / -1;margin:26px 0;color:var(--muted);text-align:center}.editor{display:grid;grid-template-columns:minmax(390px,440px) minmax(0,1fr);height:100vh;background:var(--bg)}.left{display:flex;flex-direction:column;gap:10px;min-width:0;padding:14px;overflow-y:auto;border-right:1px solid var(--line);background:var(--left-bg)}.right{min-width:0;overflow-y:auto;padding:16px 18px 28px}.back{align-self:flex-start;padding:5px 0;border:0;background:transparent;color:var(--blue);cursor:pointer;font-size:13px;font-weight:800}#yt-player{width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:8px;background:var(--deep);box-shadow:0 10px 22px #0206172e}#yt-player iframe{width:100%!important;height:100%!important;border:0;display:block}.player-wrap{position:relative}.cc-overlay{position:absolute;left:0;right:0;bottom:9%;display:flex;justify-content:center;padding:0 6%;pointer-events:none;z-index:2}.cc-overlay span{max-width:100%;padding:2px 9px;border-radius:3px;background:#080808cc;color:#fff;font-size:15px;font-weight:700;line-height:1.35;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:pre-wrap;word-break:keep-all}.play-controls{display:flex;gap:6px}.pc-btn{flex:1 1 0;min-width:60px;padding:8px 6px;font-size:13px;border:1px solid var(--line);background:var(--surface);border-radius:7px;cursor:pointer;color:var(--text);white-space:nowrap}.pc-btn:hover{border-color:var(--blue)}.pc-speed{display:flex;flex:1 1 100%;gap:2px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.pc-speed-btn{flex:1 1 0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:700;padding:6px 7px;border-radius:6px;cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.pc-speed-btn:hover{color:var(--text)}.pc-speed-btn.on{color:#fff;background:var(--blue)}.pc-btn.play{flex:1.6;font-weight:800;background:var(--focus-bg);border-color:var(--blue);color:var(--blue-ink)}.tinfo,.tempty{padding:24px;color:var(--muted);font-size:14px}.tempty .export{margin-top:12px}.treview-head{display:flex;justify-content:space-between;align-items:center;padding:6px 4px 12px;font-weight:700;color:var(--text)}.tflow-hero{display:flex;flex-direction:column;gap:8px;padding:12px;margin-bottom:6px;border-radius:10px;background:var(--surface);border:1px solid var(--line)}.tflow-top{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;color:var(--text)}.tflow-pct{font-weight:900;color:var(--blue)}.tflow-bar{height:8px;border-radius:5px;background:var(--line);overflow:hidden}.tflow-bar span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--teal, var(--blue)),var(--blue));transition:width .2s ease}.tflow-done{font-weight:800;color:var(--green)}.mini{font-size:12px;padding:5px 10px;border:1px solid var(--line);background:var(--surface);border-radius:6px;cursor:pointer}.trow{display:flex;gap:10px;padding:10px 12px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.trow.reviewed{border-left:4px solid var(--green);opacity:.85}.track-fork{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;padding:11px 13px;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface-soft)}.fork-btn{align-self:flex-start;font-weight:800}.fork-hint{color:var(--muted);font-size:12px;line-height:1.45;text-wrap:pretty;word-break:keep-all}.trow.stale{border-left:4px solid var(--amber);opacity:1}.tstale{color:var(--amber);font-size:12px;font-weight:700}.trow .time{flex:0 0 auto;align-self:flex-start;min-width:48px;border:none;background:none;color:var(--blue);cursor:pointer;font-size:13px;padding:2px 0;white-space:nowrap;text-align:left}.tcol{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.tko{font-size:13px;color:var(--muted);line-height:1.5}.tlabel{display:inline-block;font-size:10px;font-weight:700;padding:1px 6px;border-radius:4px;margin-right:6px;background:var(--blue-soft);color:var(--blue-ink)}.ttext{width:100%;border:1px solid var(--line);border-radius:6px;padding:8px;font-size:15px;line-height:1.5;resize:vertical;font-family:inherit}.ttext:focus{outline:none;border-color:var(--blue)}.orientation,.workbar,.sources,.keys,.export-row,.hint,.absorb-msg,.error{border-radius:8px}.orientation{display:grid;gap:6px;padding:10px;border:1px solid var(--line);background:var(--surface)}.orientation-line{display:grid;grid-template-columns:42px 72px minmax(0,1fr);align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:12px}.orientation-line span{color:var(--faint);font-weight:800}.orientation-line strong{color:var(--text);font-size:14px;font-weight:900}.orientation-line em{min-width:0;overflow:hidden;color:var(--muted);font-style:normal;text-overflow:ellipsis;white-space:nowrap}.orientation-line.edit strong{color:var(--teal)}.timing-strip{display:grid;gap:4px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.strip-track{position:relative;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);touch-action:none}.strip-track.smooth .strip-seg,.strip-track.smooth .strip-handle,.strip-track.smooth .strip-marker{transition:left .28s linear}.strip-handle{position:absolute;top:0;bottom:0;width:16px;transform:translate(-8px);cursor:ew-resize;z-index:3;touch-action:none;will-change:left}.strip-handle:not(.faint){z-index:4}.strip-handle.faint{z-index:2}.strip-handle:after{content:"";position:absolute;left:7px;top:4px;bottom:4px;width:2px;background:var(--line-strong);border-radius:2px}.strip-handle:hover:after,.strip-handle.dragging:after{background:var(--blue);width:3px;left:6.5px}.strip-handle.start:after{background:color-mix(in srgb,var(--teal) 70%,var(--line-strong))}.strip-handle.start:hover:after,.strip-handle.start.dragging:after{background:var(--teal)}.strip-handle.faint:after{opacity:.38}.strip-handle.faint:hover:after{opacity:1}.strip-drag-time{position:absolute;top:-18px;transform:translate(-50%);font-size:10px;font-weight:700;color:var(--blue);background:var(--surface);padding:0 4px;border-radius:4px;white-space:nowrap;z-index:3}.strip-hint{color:var(--faint);font-size:10px}.strip-seg{position:absolute;top:8px;height:12px;min-width:5px;border:0;border-radius:3px;background:var(--surface-strong);cursor:pointer}.strip-seg.active{background:var(--blue)}.strip-seg.focused{background:var(--teal);box-shadow:0 0 0 2px #0f766e38}.strip-marker{position:absolute;top:0;bottom:0;width:14px;transform:translate(-7px);background:transparent;cursor:ew-resize;touch-action:none;z-index:2}.strip-marker:after{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--text);box-shadow:0 0 0 2px #f3f7fae6}.strip-marker:hover:after,.strip-track:not(.smooth) .strip-marker:active:after{width:3px;left:5.5px}.strip-track{cursor:pointer}.strip-meta{display:flex;justify-content:space-between;padding:0 1px;color:var(--faint);font-size:10px}.workbar{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:8px;padding:8px;border:1px solid var(--line);background:var(--surface)}.undo-btn{height:32px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);color:var(--text);cursor:pointer;font-size:12px;font-weight:800}.undo-btn:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.undo-btn:disabled{cursor:default;opacity:.46}.work-status{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.pause-on-type{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.pause-on-type input,.reviewed-check input{accent-color:var(--blue)}.progress{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;color:var(--muted);font-size:12px;font-weight:800}.progress progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:var(--surface-strong)}.progress progress::-webkit-progress-bar{background:var(--surface-strong);border-radius:999px}.progress progress::-webkit-progress-value{background:var(--teal);border-radius:999px}.continue-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:0 14px;border-radius:10px;background:var(--deep);font-size:14px}.continue-btn:hover:not(:disabled){filter:brightness(1.12)}.continue-btn:disabled{cursor:default;opacity:.48}.continue-btn span{font-weight:900}.continue-btn strong{color:var(--deep-ink);font-size:12px;font-weight:800}.export-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.track-label{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}.export-row select{min-width:0;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:13px}.export{padding:0 12px;background:var(--green);font-size:13px}.export:hover:not(:disabled){background:#166534}.export:disabled{cursor:wait;opacity:.58}.hint{padding:9px 10px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:11px;line-height:1.45;text-wrap:pretty;word-break:keep-all}.absorb{min-height:38px;padding:0 12px;background:var(--teal);font-size:13px}.absorb:hover{background:#115e59}.absorb-msg,.error{padding:9px 10px;border:1px solid var(--line);background:var(--surface);font-size:12px;line-height:1.45;white-space:pre-wrap}.absorb-msg{border-color:#15803d40;background:var(--green-soft);color:var(--green)}.error{border-color:#be123c40;background:var(--rose-soft);color:var(--rose)}.keys{margin-top:auto;padding:8px;border:1px solid var(--line);background:var(--surface)}.keys-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 2px 8px;border:0;background:transparent;color:var(--text);cursor:pointer}.keys-toggle span{font-size:13px;font-weight:900}.keys-toggle strong{color:var(--blue);font-size:11px;font-weight:900}.shortcut-groups{display:grid;gap:7px}.shortcut-group{padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}.shortcut-group h3{margin:0 0 7px;color:var(--muted);font-size:11px;font-weight:900}.shortcut-list{display:grid;gap:6px}.shortcut-item{display:grid;grid-template-columns:minmax(88px,auto) minmax(0,1fr);gap:10px;align-items:start}.shortcut-keys{display:flex;flex-wrap:wrap;gap:4px}kbd{display:inline-flex;align-items:center;min-height:22px;padding:1px 6px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;background:var(--field-bg);color:var(--text);font-family:Cascadia Mono,Consolas,monospace;font-size:11px;font-weight:800}.shortcut-copy{display:grid;gap:2px;min-width:0}.shortcut-copy strong{color:var(--text);font-size:12px;line-height:1.25}.shortcut-copy span{color:var(--muted);font-size:11px;line-height:1.3;text-wrap:pretty;word-break:keep-all}.row{position:relative;margin-bottom:10px;padding:12px;border:1px solid var(--line);border-left-width:4px;border-left-color:transparent;border-radius:8px;background:var(--surface);box-shadow:0 1px #0f172a08}.row:hover{border-color:var(--line-strong);border-left-color:var(--line-strong)}.row.active{border-color:var(--blue);border-left-color:var(--blue);box-shadow:0 0 0 2px #2563eb24}.row.focused:not(.active){border-color:#0f766e9e;border-left-color:var(--teal);box-shadow:0 0 0 2px #0f766e1f}.row.active.focused{box-shadow:0 0 0 2px #2563eb29,inset 0 0 0 1px #0f766e2e}.row.needs-attention{border-left-color:var(--amber)}.row.reviewed{border-left-color:var(--green);background:var(--reviewed-bg)}.row.safe{border-left-color:var(--teal);opacity:.82}.row.safe.active,.row.safe.focused{opacity:1}.row-head{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:7px}.time{width:24px;height:24px;padding:0;border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);color:var(--blue);cursor:pointer;font-size:12px;font-weight:900}.time:hover{border-color:var(--blue);background:var(--blue-soft)}.badges{display:flex;flex-wrap:wrap;gap:4px}.badge{display:inline-flex;align-items:center;min-height:20px;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:800}.badge.flag{background:var(--amber-soft);color:var(--amber)}.badge.safe{background:var(--teal-soft);color:var(--teal)}.badge.fast{background:var(--rose-soft);color:var(--rose)}.lowconf{margin-top:5px;padding:4px 9px;border-radius:6px;background:var(--amber-soft);color:var(--amber);font-size:12px;font-weight:600}.lowconf::selection{background:transparent}.ko-ref{display:flex;align-items:flex-start;gap:7px;margin:4px 0 2px;padding:5px 9px;border-left:3px solid var(--blue);border-radius:4px;background:var(--blue-soft);font-size:13px;line-height:1.45}.ko-ref-label{flex:none;font-size:11px;font-weight:700;color:var(--blue);padding-top:1px}.ko-ref-text{color:var(--fg);opacity:.85;-webkit-user-select:text;user-select:text}.badge.unc{background:var(--rose-soft);color:var(--rose)}.badge.ok{background:var(--green-soft);color:var(--green)}.badge.dirty{background:var(--blue-soft);color:var(--blue)}.time-field{width:66px;padding:3px 5px;border:1px solid transparent;border-radius:5px;background:var(--surface-soft);color:var(--muted);font-size:12px;text-align:center}.time-field:hover{border-color:var(--line-strong)}.time-field:focus{border-color:var(--blue);background:var(--focus-bg);outline:none}.time-sep{color:var(--faint);font-size:12px}.cue-rail{position:relative;height:6px;margin:-1px 0 8px;overflow:visible;border-radius:999px;background:var(--surface-strong)}.cue-fill{display:block;height:100%;border-radius:inherit;background:var(--blue)}.cue-dot{position:absolute;top:50%;width:10px;height:10px;transform:translate(-5px,-50%);border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--focus-bg)}.row textarea{width:100%;min-height:74px;padding:10px 11px;resize:vertical;border:1px solid var(--line);border-radius:6px;background:var(--focus-bg);color:var(--text);font-family:inherit;font-size:15px;line-height:1.55}.row textarea:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #2563eb1a}.sources{margin-top:9px;padding:9px 10px;border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:12px;line-height:1.65;text-wrap:pretty;word-break:keep-all}.sources-title{margin-bottom:4px;color:var(--faint);font-size:11px}.src-label{display:inline-flex;align-items:center;margin-right:6px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:900;vertical-align:1px}.src-label.w{background:var(--blue-soft);color:var(--blue-ink)}.src-label.y{background:var(--rose-soft);color:var(--rose)}.sources-title b{color:var(--blue)}.src-line{display:flex;align-items:flex-start;gap:6px;margin-top:3px}.src-line .src-text{flex:1;min-width:0}.src-text.src-empty{color:var(--faint);font-style:italic}.src-fill{flex:0 0 auto;font-size:10px;padding:2px 8px;border:1px solid var(--line);background:var(--surface);border-radius:5px;cursor:pointer;color:var(--blue);white-space:nowrap}.src-fill:hover{background:var(--focus-bg);border-color:var(--blue)}.repair-btn{align-self:flex-start;padding:5px 10px;font-size:12px;font-weight:600;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;cursor:pointer}.repair-btn:hover{border-color:#f0b8b8;color:#b91c1c;background:#fef2f2}.safe-btn{padding:9px 12px;font-size:13px;font-weight:700;border:1px solid #99f6e4;background:var(--teal-soft);color:var(--teal);border-radius:8px;cursor:pointer}.safe-btn:hover{filter:brightness(.97)}.row-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:8px}.reviewed-check{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;font-weight:700}.timing-tools,.structure{display:flex;flex-wrap:wrap;gap:5px}.timing-tools button,.structure button{min-height:28px;padding:4px 8px;border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);color:var(--muted);cursor:pointer;font-size:11px;font-weight:800}.timing-tools button:hover:not(:disabled){border-color:var(--teal);background:var(--teal-soft);color:var(--teal)}.timing-tools button:disabled{cursor:default;opacity:.46}.structure button:hover{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.structure button.danger:hover{border-color:var(--rose);background:var(--rose-soft);color:var(--rose)}.nudge{margin-left:auto;display:flex;gap:3px}.nudge button{padding:2px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);cursor:pointer;font-size:11px}@media(max-width:900px){.editor{grid-template-columns:1fr;height:auto;min-height:100vh}.left{position:static;border-right:0;border-bottom:1px solid var(--line)}.right{padding:12px}.landing-header{gap:8px}}@media(max-width:620px){.landing{padding:24px 14px 40px}.url-box,.export-row{grid-template-columns:1fr}.dashboard-summary{flex-wrap:wrap}.job-grid{grid-template-columns:1fr}.shortcut-item{grid-template-columns:1fr;gap:4px}}.header-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px}.left-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.theme-toggle{flex:0 0 auto;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:15px;line-height:1;cursor:pointer}.theme-toggle:hover{border-color:var(--blue);color:var(--blue)}.workbar{border:0;background:transparent;padding:2px 0}.safe-btn,.repair-btn,.continue-btn,.export,.absorb,.undo-btn,.orientation{border-radius:10px}.row{transition:opacity .14s ease,box-shadow .14s ease,border-color .14s ease,transform .14s ease}.row.focused{border-color:var(--blue);box-shadow:var(--shadow);opacity:1}.right:focus-within .row:not(.focused):not(.active){opacity:.66}.right:focus-within .row:not(.focused):not(.active):hover{opacity:.92}.reviewed-check{color:var(--muted)}.statusbar{display:flex;align-items:center;gap:8px;padding:4px 2px;color:var(--muted);font-size:12px}.save-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 22%,transparent);transition:background var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.save-dot.busy{background:var(--amber);box-shadow:0 0 0 3px color-mix(in srgb,var(--amber) 22%,transparent);animation:dot-pulse 1.1s ease-in-out infinite}@keyframes dot-pulse{50%{opacity:.45}}.statusbar .work-status{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.undo-mini{flex:0 0 auto;width:26px;height:26px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted);cursor:pointer;font-size:13px}.undo-mini:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.undo-mini:disabled{opacity:.4;cursor:default}.flow-hero{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.flow-nums{display:flex;align-items:baseline;gap:5px}.flow-nums strong{font-size:24px;font-weight:900;color:var(--text)}.flow-nums span{font-size:13px;color:var(--faint);font-weight:700}.flow-nums em{margin-left:auto;font-style:normal;font-weight:800;color:var(--teal);font-size:13px}.flow-bar{height:8px;margin:7px 0 5px;border-radius:999px;overflow:hidden;background:var(--surface-strong)}.flow-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),#2dd4bf);transition:width var(--dur-slow) var(--ease)}.flow-remain{color:var(--muted);font-size:12px;font-weight:700}.flow-hero .continue-btn{width:100%;min-height:46px;border-radius:11px;background:linear-gradient(135deg,var(--blue),var(--indigo));transition:filter var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.flow-hero .continue-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.flow-hero .continue-btn:active:not(:disabled){transform:translateY(0)}.flow-hero .continue-btn strong{color:#fff}.tools{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.tool{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:700;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.tool:hover{border-color:var(--blue);color:var(--blue)}.tool.accent{border-color:color-mix(in srgb,var(--teal) 45%,transparent);background:var(--teal-soft);color:var(--teal)}.tool.accent:hover{filter:brightness(1.04)}.tool.toggle{margin-left:auto;cursor:pointer;border-style:dashed}.tool.toggle input{accent-color:var(--blue)}.timing-done{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer}.timing-done.on{border-color:color-mix(in srgb,var(--green) 45%,transparent);background:var(--green-soft);color:var(--green)}.timing-done input{accent-color:var(--green)}.lbadge.tbadge.owed{background:var(--amber-soft);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 40%,transparent)}.export-footer{display:grid;gap:6px;margin-top:2px}.export-footer .hint{margin:0}.reviewed-check input{transition:transform var(--dur-fast) var(--ease)}.reviewed-check input:checked{animation:check-pop var(--dur) var(--ease)}@keyframes check-pop{0%{transform:scale(.7)}55%{transform:scale(1.18)}to{transform:scale(1)}}.row.reviewed{transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.cc-overlay span{animation:cc-in .2s var(--ease)}@keyframes cc-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.wm-word{transition:opacity var(--dur-fast) var(--ease),height var(--dur-fast) var(--ease),top var(--dur-fast) var(--ease)}.wm-word.on{opacity:1;top:10px;height:22px;box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 70%,transparent)}.strip-track.smooth .strip-seg.active{animation:strip-breathe 1.6s ease-in-out infinite}@keyframes strip-breathe{50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 32%,transparent)}}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:16px;padding:28px 26px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 12px 40px #00000024}.login-head{display:flex;align-items:center;gap:12px}.login-logo{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--teal, var(--blue)),var(--blue));color:#fff;font-weight:900;font-size:14px}.login-head h1{margin:0;font-size:18px;color:var(--text)}.login-head p{margin:2px 0 0;font-size:13px;color:var(--muted)}.login-field{display:flex;flex-direction:column;gap:6px}.login-field>span{font-size:12px;font-weight:700;color:var(--muted)}.login-opt{font-weight:400;opacity:.65}.login-field input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:var(--field-bg, var(--surface));color:var(--text);font-size:15px}.login-field input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 22%,transparent)}.login-pw{position:relative;display:flex}.login-pw input{padding-right:44px}.login-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer;font-size:17px;padding:6px 8px;border-radius:8px;line-height:1}.login-eye:hover{background:color-mix(in srgb,var(--blue) 12%,transparent)}.login-error{font-size:13px;color:var(--rose, #e11d48);background:var(--rose-soft, color-mix(in srgb, #e11d48 12%, transparent));padding:8px 10px;border-radius:8px}.login-submit{margin-top:2px;padding:12px;border:0;border-radius:10px;background:var(--blue);color:#fff;font-weight:800;font-size:15px;cursor:pointer;transition:filter var(--dur-fast) var(--ease)}.login-submit:hover:not(:disabled){filter:brightness(1.08)}.login-submit:disabled{opacity:.5;cursor:default}.user-chip{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--text);padding:3px 3px 3px 4px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.role-badge{font-size:11px;font-weight:800;color:#fff;padding:3px 8px;border-radius:999px;background:var(--muted)}.role-badge.admin{background:var(--blue)}.user-name{font-weight:800;padding:0 2px}.switch-btn{border:0;background:color-mix(in srgb,var(--line) 55%,transparent);color:var(--muted);font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.switch-btn:hover{color:var(--text);background:color-mix(in srgb,var(--blue) 14%,transparent)}.brand-inf{font-size:.78em;vertical-align:.06em;margin-left:2px}.deploy-tag{color:var(--muted);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;white-space:nowrap}.dd{position:relative;display:inline-block}.dd-btn{display:inline-flex;align-items:center;gap:8px;width:100%;padding:7px 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.dd-btn:hover{border-color:var(--blue)}.dd.open .dd-btn{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 18%,transparent)}.dd-val{flex:1 1 auto;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dd-arrow{flex:none;font-size:10px;color:var(--muted);transition:transform var(--dur-fast) var(--ease)}.dd.open .dd-arrow{transform:rotate(180deg);color:var(--blue)}.dd-menu{position:absolute;z-index:60;top:calc(100% + 6px);left:0;min-width:100%;max-height:280px;overflow-y:auto;padding:5px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:0 14px 40px #0000002e;animation:dd-in .12s var(--ease)}@keyframes dd-in{0%{opacity:0;transform:translateY(-4px)}}.dd-opt{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);font-size:13px;font-weight:600;text-align:left;white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease)}.dd-opt-label{flex:1 1 auto}.dd-opt:hover:not(:disabled){background:color-mix(in srgb,var(--blue) 12%,transparent)}.dd-opt.sel{color:var(--blue)}.dd-opt:disabled{color:var(--faint);cursor:default}.dd-note{font-size:11px;color:var(--muted);font-weight:700}.dd-opt.sel .dd-note{color:var(--blue)}.dd-check{color:var(--blue);font-weight:900}.export-row .dd{width:100%}.dd.card-lang .dd-btn{padding:4px 10px;font-size:11.5px;font-weight:700;border-radius:999px;background:var(--surface-soft);color:var(--muted)}.dd.card-lang .dd-btn:hover{color:var(--blue)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.left{gap:8px}.play-controls{flex-wrap:wrap}.pc-toggle{flex:1 0 100%;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:1px;padding:4px 6px;color:var(--muted);font-size:12px;cursor:pointer}.pc-toggle input{accent-color:var(--blue)}.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px}.tools .tool{min-width:0;max-width:none;justify-content:center;padding:8px 10px;white-space:nowrap}.tools .tool.toggle{display:none}.flow-hero{padding:12px;gap:9px}.findbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:7px;margin-bottom:8px;padding:6px;border-radius:10px}.findbar.open{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow);flex-wrap:wrap}.find-toggle{padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:700;cursor:pointer}.find-toggle:hover{border-color:var(--blue);color:var(--blue)}.find-in{flex:1 1 130px;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--field-bg);color:var(--text);font-size:13px}.find-in:focus{outline:none;border-color:var(--blue)}.find-arrow{color:var(--faint);font-weight:800}.find-count{flex:0 0 auto;color:var(--teal);font-size:12px;font-weight:800;min-width:34px}.find-apply{flex:0 0 auto;padding:7px 12px;border:0;border-radius:8px;background:var(--blue);color:#fff;font-size:12px;font-weight:800;cursor:pointer}.find-apply:disabled{opacity:.4;cursor:default}.find-close{flex:0 0 auto;width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.find-close:hover{border-color:var(--rose);color:var(--rose)}.wordmap{margin-top:9px}.wm-track{position:relative;height:42px;border:1px solid var(--line);border-radius:8px;background:repeating-linear-gradient(90deg,transparent 0,transparent 19px,color-mix(in srgb,var(--line) 55%,transparent) 19px,color-mix(in srgb,var(--line) 55%,transparent) 20px),var(--surface-soft);overflow:hidden;cursor:pointer;touch-action:none}.wm-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--blue) 15%,transparent);border-left:2px solid color-mix(in srgb,var(--blue) 55%,transparent);border-right:2px solid color-mix(in srgb,var(--blue) 55%,transparent)}.wm-word{position:absolute;top:13px;height:16px;border-radius:3px;background:var(--teal);opacity:.55}.wm-marker{position:absolute;top:0;bottom:0;width:2px;transform:translate(-1px);background:var(--text);box-shadow:0 0 0 1px color-mix(in srgb,var(--surface) 70%,transparent);pointer-events:none}.wm-handle{position:absolute;top:0;bottom:0;width:14px;transform:translate(-7px);cursor:ew-resize;z-index:3;touch-action:none;will-change:left}.wm-handle:after{content:"";position:absolute;left:6px;top:2px;bottom:2px;width:2px;border-radius:2px;background:var(--blue)}.wm-handle:hover:after{width:3px;left:5.5px;filter:brightness(1.1)}.wm-handle.s:after{background:var(--teal)}.wm-legend{display:flex;justify-content:space-between;margin-top:3px;padding:0 1px;color:var(--faint);font-size:10px}.wm-hint{color:var(--faint)}.time-edit{display:inline-flex;align-items:center;gap:2px}.nudge-btn{width:18px;height:22px;padding:0;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);color:var(--muted);cursor:pointer;font-size:9px;line-height:1}.nudge-btn:hover{border-color:var(--blue);color:var(--blue)}.editor.preview{grid-template-columns:minmax(480px,56%) minmax(280px,1fr)}.editor.preview .cc-overlay span{font-size:18px;padding:3px 12px}.row.active{border-color:var(--blue);border-left-color:var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 30%,transparent),var(--shadow)}.row.active textarea{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 6%,var(--focus-bg))}.editor.preview .row.active{border-left-width:5px;box-shadow:0 0 0 3px var(--blue),var(--shadow-lift)}.editor.preview .row.active .cp-text,.editor.preview .row.active{scroll-margin:40vh 0}.pc-settings{flex:1 0 100%;display:flex;justify-content:center;gap:14px;margin-top:1px}.pc-settings .pc-toggle{flex:0 0 auto;margin:0;padding:3px 4px}.collapsed-preview{display:none}.row.collapsed{margin-bottom:5px;padding:6px 12px;box-shadow:none;opacity:.7}.row.collapsed:hover{opacity:1;border-color:var(--green)}.row.collapsed>*:not(.collapsed-preview){display:none}.row.collapsed .collapsed-preview{display:flex;align-items:center;gap:9px;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left;color:var(--muted);font:inherit}.cp-check{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:color-mix(in srgb,var(--green) 22%,transparent);color:var(--green);font-size:10px;font-weight:900}.cp-text{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.row.collapsed:hover .cp-text{color:var(--text)}.cp-time{flex:0 0 auto;color:var(--faint);font-size:11px;font-variant-numeric:tabular-nums}.flow-remain{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.flow-eta{font-style:normal;font-weight:700;font-size:11.5px;color:var(--teal);white-space:nowrap}.flow-hero.celebrate{animation:hero-celebrate var(--dur-slow) var(--ease)}.flow-hero.celebrate .flow-bar span{animation:bar-shine .9s var(--ease)}@keyframes hero-celebrate{0%{box-shadow:var(--shadow)}40%{box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 40%,transparent),var(--shadow-lift)}to{box-shadow:var(--shadow)}}@keyframes bar-shine{0%{filter:none}40%{filter:brightness(1.35) saturate(1.2)}to{filter:none}}
