:root {
  color-scheme: dark;
  --bg: #08090b;
  --panel: #111317;
  --panel-2: #17191f;
  --line: #2a2e38;
  --text: #f5f7fb;
  --muted: #969eab;
  --muted-2: #69717d;
  --accent: #d8ff62;
  --accent-ink: #172000;
  --danger: #ff8e91;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg); }
body { color: var(--text); -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button { cursor: pointer; }
button:focus-visible, a:focus-visible, summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.shell { width: min(100%, 1080px); min-height: 100vh; margin: auto; padding: 24px clamp(20px, 5vw, 56px) 28px; display: flex; flex-direction: column; }
.topbar { display: flex; justify-content: space-between; align-items: center; }
.topbar-links { display: flex; align-items: center; gap: 12px; }
.docs-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--muted); font-size: 12px; text-decoration: none; }
.docs-link:hover { color: var(--text); }
.text-button { min-width: 44px; min-height: 44px; padding: 4px 0; border: 0; color: var(--muted); background: transparent; font-size: 12px; }
#download-app:not([hidden]) { display: contents; }
.login-panel { width: min(100%, 390px); margin: clamp(64px, 16vh, 140px) auto; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--panel); }
.login-panel h1 { font-size: clamp(29px, 6vw, 38px); line-height: 1.2; letter-spacing: -.045em; }
.login-copy { margin: 16px 0 22px; color: var(--muted); font-size: 14px; line-height: 1.6; }
.login-panel .primary-button { width: 100%; min-height: 48px; height: auto; padding: 14px 18px; justify-content: center; }
.login-panel label { display: block; margin: 24px 0 8px; font-size: 13px; color: var(--muted); }
#login-code { height: 52px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); font-size: 20px; letter-spacing: .3em; }
#login-code:focus { border-color: var(--accent); outline: 1px solid var(--accent); }
.login-expiry, .login-status { margin: 10px 0; color: var(--muted); font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.login-status { margin-top: 16px; }
.login-status.problem { color: var(--danger); }
.login-panel .docs-link { font-size: 12px; }
#telegram-bot { width: 100%; min-height: 44px; margin-top: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel-2); color: var(--accent); font-size: 13px; font-weight: 650; line-height: 1.5; text-decoration: none; }
#login-panel[hidden], #download-app[hidden], #login-form[hidden], #logout-button[hidden], #telegram-bot[hidden], #pairing-note[hidden] { display: none; }
.brand { color: var(--text); text-decoration: none; font-size: 15px; font-weight: 650; letter-spacing: -.02em; display: inline-flex; gap: 9px; align-items: center; }
.brand-mark { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 9px; background: var(--accent); color: var(--accent-ink); font-size: 14px; font-weight: 800; }
.secure-pill { color: var(--muted); border: 1px solid var(--line); border-radius: 999px; padding: 8px 11px; font-size: 12px; display: inline-flex; gap: 7px; align-items: center; }
.dot { display: block; width: 6px; height: 6px; border-radius: 100%; background: var(--accent); box-shadow: 0 0 12px #d8ff6299; }
.hero { width: min(100%, 710px); margin: clamp(72px, 15vh, 148px) auto 0; text-align: center; }
.eyebrow { margin: 0 0 16px; color: var(--accent); font-size: 11px; line-height: 1; letter-spacing: .22em; font-weight: 700; }
h1 { margin: 0; font-size: clamp(40px, 7vw, 74px); line-height: .98; letter-spacing: -.065em; font-weight: 700; }
h1 span { display: inline-block; }
.lede { max-width: 530px; margin: 24px auto 0; color: var(--muted); font-size: clamp(15px, 2vw, 18px); line-height: 1.55; letter-spacing: -.01em; }
.download-form { margin-top: 36px; display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.input-wrap { min-width: 0; height: 60px; display: flex; align-items: center; gap: 12px; padding: 0 15px; border: 1px solid var(--line); background: var(--panel); border-radius: 15px; transition: border-color .2s, box-shadow .2s; }
.input-wrap:focus-within { border-color: #596272; box-shadow: 0 0 0 4px #ffffff0a; }
.link-icon { color: var(--accent); font-size: 21px; transform: rotate(-35deg); }
input { width: 100%; min-width: 0; color: var(--text); border: 0; outline: 0; background: transparent; font-size: 16px; }
input::placeholder { color: var(--muted-2); }
.clear-button { width: 44px; height: 44px; flex: 0 0 44px; color: var(--muted); background: #242832; border: 0; border-radius: 50%; font-size: 20px; line-height: 1; }
.primary-button { height: 60px; padding: 0 20px; border: 0; border-radius: 15px; display: inline-flex; gap: 18px; align-items: center; color: var(--accent-ink); background: var(--accent); font-size: 15px; font-weight: 700; transition: transform .15s, filter .15s; }
.primary-button:hover { filter: brightness(1.05); transform: translateY(-1px); }
.primary-button:disabled { opacity: .6; cursor: wait; transform: none; }
.recognition { min-height: 28px; margin-top: 18px; color: var(--muted); display: inline-flex; gap: 8px; align-items: center; justify-content: center; font-size: 13px; }
.recognition-icon { color: var(--accent); font-size: 17px; }
.hint { margin: 24px 0 0; color: var(--muted-2); font-size: 12px; line-height: 1.45; }
.tasks { width: min(100%, 710px); margin: 44px auto 0; }
.tasks-head { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.tasks-eyebrow { margin: 0 0 5px; color: var(--accent); font-size: 10px; letter-spacing: .2em; font-weight: 700; }
.tasks h2 { margin: 0; font-size: 21px; letter-spacing: -.04em; }
.secondary-button { min-height: 44px; padding: 8px 13px; color: var(--text); background: var(--panel-2); border: 1px solid var(--line); border-radius: 11px; font-size: 13px; font-weight: 650; }
.secondary-button:hover { border-color: #596272; }
.task-list { display: grid; gap: 10px; }
.task-card { padding: 17px; border: 1px solid var(--line); background: var(--panel); border-radius: 17px; text-align: left; }
.task-top { display: flex; align-items: center; gap: 11px; min-width: 0; }
.task-icon { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; background: #20251a; color: var(--accent); font-size: 17px; }
.task-copy { min-width: 0; flex: 1; }
.task-title, .task-url { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.task-title { font-size: 14px; font-weight: 650; }
.task-url { margin-top: 3px; color: var(--muted-2); font-size: 12px; }
.task-status { color: var(--muted); flex: 0 0 auto; font-size: 12px; }
.task-progress { position: relative; height: 5px; margin: 14px 0 9px; overflow: hidden; background: #292d35; border-radius: 999px; }
.task-progress span { display: block; height: 100%; width: 0; background: var(--accent); border-radius: inherit; transition: width .3s ease; }
.task-progress.indeterminate span { width: 36%; animation: progress-slide 1.3s ease-in-out infinite; }
@keyframes progress-slide { 0% { transform: translateX(-110%); } 100% { transform: translateX(290%); } }
.task-meta { min-height: 18px; color: var(--muted); font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.task-auth { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.task-strategy { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.task-strategy[data-status="used"] { color: var(--accent); }
.task-details { margin-top: 8px; color: var(--muted); font-size: 12px; }
.task-details summary { display: list-item; min-height: 44px; padding: 13px 0; cursor: pointer; }
.task-details pre { margin: 0; padding: 12px; border-radius: 10px; background: var(--bg); white-space: pre-wrap; overflow-wrap: anywhere; font: 12px/1.5 ui-monospace, monospace; }
.task-progress[hidden], .task-auth[hidden], .task-details[hidden], .task-strategy[hidden] { display: none; }
.task-actions { min-height: 0; }
.retry-button { margin-top: 12px; padding: 0; border: 0; color: var(--accent); background: transparent; font-size: 13px; font-weight: 650; }
.task-ready .task-icon { background: #20251a; }
.task-error .task-icon { background: #2a1d1e; color: var(--danger); }
.task-error .task-status, .task-error .task-title { color: var(--danger); }
.result-row { display: flex; align-items: flex-start; gap: 14px; }
.result-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: #20251a; color: var(--accent); font-size: 18px; flex: 0 0 auto; }
.result-copy { min-width: 0; flex: 1; }
.result-title { margin: 1px 0 4px; font-size: 15px; font-weight: 650; overflow-wrap: anywhere; }
.result-meta { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.result-link { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; margin-top: 12px; color: var(--accent); text-decoration: none; font-size: 14px; overflow-wrap: anywhere; }
.error .result-icon { background: #2a1d1e; color: var(--danger); }
.error .result-title { color: var(--danger); }
.spinner { display: inline-block; width: 13px; height: 13px; border: 2px solid #17200055; border-top-color: var(--accent-ink); border-radius: 50%; animation: spin .7s linear infinite; }
.task-icon .spinner, .recognition-icon .spinner { border-color: #d8ff6233; border-top-color: var(--accent); }
@keyframes spin { to { transform: rotate(360deg); } }
.footer { margin-top: auto; padding-top: 72px; text-align: center; color: var(--muted-2); font-size: 11px; }
.footer-sep { margin: 0 8px; color: #343944; }
.strategies { width: min(100%, 710px); margin: 32px auto 0; padding: 18px; background: var(--panel); border: 1px solid var(--line); border-radius: 17px; }
.strategies-head { display: flex; gap: 12px; justify-content: space-between; align-items: center; }
.strategies h2 { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 16px; letter-spacing: -.03em; }
.strategy-count { min-width: 24px; padding: 3px 7px; color: var(--muted); background: var(--panel-2); border-radius: 7px; font-size: 12px; text-align: center; }
.strategies-note, .strategies-state { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.strategies-state.problem { color: var(--danger); }
.strategy-list { max-height: 280px; margin: 14px 0 0; padding: 0; list-style: none; overflow: auto; overscroll-behavior: contain; }
.strategy-list li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 5px 14px; padding: 12px 0; border-top: 1px solid var(--line); }
.strategy-domain { min-width: 0; overflow-wrap: anywhere; color: var(--text); font-size: 13px; font-weight: 600; line-height: 1.5; }
.strategy-status { color: var(--muted); font-size: 12px; line-height: 1.6; }
.strategy-status.verified { color: var(--accent); }
.strategy-date { grid-column: 1 / -1; color: var(--muted-2); font-size: 11px; line-height: 1.5; }
.strategies-state[hidden], .strategy-list[hidden] { display: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@media (max-width: 600px) {
  .shell { padding: 18px 16px 22px; }
  .secure-pill { padding: 7px 9px; font-size: 11px; }
  .topbar-links { gap: 8px; }
  .docs-link { font-size: 11px; }
  .topbar-links:has(#logout-button:not([hidden])) .secure-pill { display: none; }
  .login-panel { padding: 20px; margin: 64px auto 28px; }
  .hero { margin-top: 88px; }
  h1 { font-size: clamp(40px, 13vw, 58px); }
  .lede { margin-top: 18px; font-size: 15px; }
  .download-form { grid-template-columns: 1fr; gap: 10px; margin-top: 30px; }
  .input-wrap, .primary-button { height: 58px; border-radius: 14px; }
  .primary-button { justify-content: space-between; padding: 0 18px; }
  .tasks { margin-top: 34px; }
  .tasks-head { align-items: center; }
  .task-status { font-size: 11px; }
  .strategies { padding: 15px; }
  .strategy-list li { grid-template-columns: minmax(0, 1fr); gap: 3px; }
  .footer { padding-top: 56px; line-height: 1.7; }
}
.task-actions {display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.task-actions .secondary-button {margin-top:12px;min-height:44px}
.retry-button {min-height:44px}
@media (max-height: 500px) { .hero { margin-top: 36px; } }
@media (max-height: 500px) { .login-panel { margin-top: 24px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; } }
.assist-button { border-color: #667b32; }

/* Keep submission, active work and account history on one compact reading column. */
.topbar { width: min(100%, 920px); margin-inline: auto; }
.hero, .tasks, .strategies { width: min(100%, 920px); }
.hero { margin-top: 38px; text-align: left; }
.hero .eyebrow { margin-bottom: 12px; }
.hero h1 { font-size: clamp(28px, 4vw, 40px); line-height: 1.15; letter-spacing: -.045em; }
.hero .lede { margin: 12px 0 0; max-width: none; font-size: 15px; }
.download-form { margin-top: 22px; }
.recognition { margin-top: 12px; justify-content: flex-start; }
.hint { margin-top: 8px; }
.tasks { margin-top: 30px; }
.tasks-head { align-items: center; }
.tasks-eyebrow { display: none; }
.tasks h2 { font-size: 20px; }
.job-group { margin-top: 20px; }
.job-group-head { display: flex; justify-content: space-between; margin-bottom: 10px; }
.job-group h3 { margin: 0; color: var(--muted); font-size: 13px; font-weight: 600; }
.job-group h3 span { margin-left: 5px; color: var(--muted-2); }
.history-state { margin: 12px 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.history-state.problem { color: var(--danger); }
.history-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.task-card { padding: 15px; }
.task-top { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 4px 13px; align-items: start; }
.task-visual { position: relative; grid-row: 1 / span 2; align-self: start; }
.task-preview { position: relative; height: 72px; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--bg); }
.task-preview img { display: block; width: 100%; height: 100%; object-fit: cover; }
.task-preview img.is-loading { opacity: 0; }
.preview-placeholder { position: absolute; inset: 0; display: flex; height: 100%; flex-direction: column; align-items: center; justify-content: center; gap: 4px; color: var(--muted-2); font-size: 10px; }
.preview-placeholder b { font-size: 18px; font-weight: 400; color: var(--muted); }
.task-icon { position: absolute; right: -5px; bottom: -4px; width: 24px; height: 24px; border: 2px solid var(--panel); border-radius: 9px; font-size: 12px; }
.task-icon .spinner { width: 11px; height: 11px; }
.task-copy { grid-column: 2; }
.task-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; overflow-wrap: anywhere; line-height: 1.45; }
.task-status { grid-column: 2; margin-top: 2px; line-height: 1.4; }
.task-progress { margin-top: 16px; }
.task-meta { margin-top: 9px; }
.task-preview-note { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.task-progress:not([hidden]) + .task-meta { margin-top: 0; }
.task-ready .task-progress span { transition: none; }
.task-expired .task-status { color: var(--muted-2); }
.strategies { margin-top: 24px; }
.footer { padding-top: 36px; line-height: 1.8; }
.job-group[hidden], .history-state[hidden], #more-history[hidden], .task-preview img[hidden], .preview-placeholder[hidden] { display: none; }
@media (max-width: 600px) {
  .hero { margin-top: 28px; }
  .hero h1 { font-size: 30px; }
  .download-form { margin-top: 20px; }
  .input-wrap, .primary-button { height: 52px; }
  .tasks { margin-top: 24px; }
  .task-card { padding: 13px; }
  .task-top { grid-template-columns: 80px minmax(0, 1fr); gap: 4px 12px; }
  .task-preview { height: 60px; }
  .task-title { font-size: 14px; }
  .footer { padding-top: 28px; }
}
@media (max-height: 500px) { .hero { margin-top: 20px; } }

/* Search shares the existing queue. Its progress never disables link input. */
.download-tabs { display:flex;gap:4px;width:max-content;max-width:100%;margin-top:22px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--panel); }
.download-tabs button { min-height:44px;padding:8px 16px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:14px; }
.download-tabs [aria-selected="true"] { background:var(--panel-2);color:var(--text); }
#link-panel .download-form { margin-top:16px; }
#link-panel[hidden],#search-panel[hidden],[hidden].search-batch,[hidden]#search-training-link { display:none; }
.search-form { margin-top:16px; }
.search-source-row { display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap; }
.search-field { flex:1;min-width:150px; }
.search-field label,.search-dialog label { display:block;color:var(--muted);font-size:13px;margin:0 0 7px; }
.search-field select,.search-query-row input,.search-dialog input { width:100%;min-width:0;min-height:48px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text);font:inherit;font-size:16px; }
.search-source-row .secondary-button { min-height:48px;padding:10px 13px; }
.search-query-row { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px; }
.search-query-row .primary-button { min-height:48px;height:auto;padding:12px 22px; }
.search-note,.search-status { color:var(--muted);font-size:13px;line-height:1.6;margin:12px 0;overflow-wrap:anywhere; }
.search-status.problem,.search-item-error { color:var(--danger); }
.search-reuse-note { color:var(--muted-2);font-size:12px;line-height:1.6;margin:8px 0; }
.search-expansion { margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel); }
.search-expansion[hidden],.expansion-actions[hidden] { display:none; }
.search-expansion p { margin:0;color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere; }
.expansion-terms { display:flex;flex-wrap:wrap;gap:8px;margin-top:10px; }
.expansion-terms:empty { display:none; }
.expansion-term { min-width:0;max-width:100%;padding:6px 10px;background:var(--panel-2);border-radius:8px;font-size:13px;line-height:1.5;overflow-wrap:anywhere; }
.expansion-actions { display:flex;flex-wrap:wrap;gap:8px;margin-top:10px; }
.expansion-actions button { min-height:44px;padding:10px 14px; }
.search-results { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px; }
.search-result { min-width:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel); }
.search-result.is-selected { border-color:#758a42; }
.search-result.is-submitted { opacity:.75; }
.search-choice { display:grid;grid-template-columns:20px 92px minmax(0,1fr);gap:10px;align-items:start;min-height:70px;cursor:pointer; }
.search-choice input { width:20px;height:20px;min-height:20px;margin:4px 0;accent-color:var(--accent); }
.search-thumb { position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:var(--bg); }
.search-thumb img { width:100%;height:100%;object-fit:cover;display:block; }
.search-thumb span { position:absolute;inset:0;display:grid;place-items:center;color:var(--muted-2);font-size:10px; }
.search-thumb img[hidden],.search-thumb span[hidden] { display:none; }
.search-result-title { display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:14px;font-weight:600;line-height:1.45; }
.search-result-meta { display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere; }
.search-result-bottom { display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;margin-top:6px;font-size:12px; }
.search-result-bottom a { color:var(--muted);min-height:44px;display:flex;align-items:center;text-decoration:none; }
.search-item-state { color:var(--accent); }
.search-item-error { font-size:12px;line-height:1.5;overflow-wrap:anywhere;margin:4px 0; }
.search-batch { position:sticky;top:8px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 4px 16px #0005; }
.search-batch>span { font-size:13px;color:var(--muted); }
.search-selection-summary { min-width:0;color:var(--muted);font-size:13px;line-height:1.5; }
.search-selection-summary .text-button { display:block;min-height:44px;padding:6px 0;font-size:12px; }
.search-selection-summary .text-button[hidden] { display:none; }
.crawl-start-row { display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px; }
.crawl-start-row label { display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px; }
.crawl-start-row input { width:76px;min-height:46px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font:inherit;font-size:16px; }
.crawl-start-row .secondary-button { min-height:46px;padding:10px 14px; }
.search-crawl { padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin:14px 0; }
.search-crawl[hidden],.search-pagination[hidden] { display:none; }
.crawl-heading { display:flex;justify-content:space-between;gap:10px;align-items:center; }
.crawl-heading h2 { margin:0;font-size:16px; }.crawl-heading span { flex:none;color:var(--accent);font-size:12px; }
.search-crawl p { color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere;margin:8px 0; }
.crawl-actions { display:flex;flex-wrap:wrap;gap:8px; }.crawl-actions button { min-height:44px;padding:9px 12px; }
.search-pagination { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px; }
.search-pagination span { text-align:center;color:var(--muted);font-size:12px;line-height:1.5; }
.search-pagination button { flex:none;min-height:44px;padding:10px 12px; }
.search-batch .primary-button { height:auto;min-height:48px;padding:12px 20px; }
.search-dialog { width:min(480px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--panel);color:var(--text); }
.search-dialog::backdrop { background:#000b; }
.search-dialog-title { display:flex;justify-content:space-between;gap:12px;align-items:center; }
.search-dialog h2 { font-size:20px;margin:0; }
.search-dialog-title button { font-size:26px;flex:none; }
.search-dialog p { font-size:13px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere; }
.search-dialog label { margin-top:16px; }
.search-dialog .primary-button { width:100%;height:auto;min-height:48px;padding:12px;justify-content:center;margin-top:14px; }
.recording-assist-launch { margin:18px auto 0; }
.recording-assist-dialog { width:min(960px,calc(100vw - 24px));height:min(860px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden;border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--panel);color:var(--text); }
.recording-assist-dialog::backdrop { background:#000b; }
.recording-assist-dialog .search-dialog-title { flex:none; }
.recording-assist-dialog > p { flex:none;color:var(--muted);font-size:13px;line-height:1.6;margin:8px 0 14px; }
.recording-assist-dialog iframe { display:block;width:100%;height:calc(100% - 96px);min-height:300px;border:1px solid var(--line);border-radius:12px;background:var(--bg); }
@media(max-width:700px) { .search-results{grid-template-columns:1fr}.search-source-row{gap:8px}.search-query-row .primary-button{padding-inline:18px} }
@media(max-width:360px) { .search-source-row .search-field{flex-basis:100%}.search-query-row{grid-template-columns:1fr}.search-query-row .primary-button{justify-content:center}.search-selection-summary{font-size:12px}.search-batch .primary-button{justify-content:center;padding-inline:12px;flex:none}.search-dialog{padding:16px}.search-choice{grid-template-columns:20px 72px minmax(0,1fr);gap:8px} }
@media(max-width:600px) { .recording-assist-dialog { width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:14px; }.recording-assist-dialog iframe{height:calc(100% - 104px);min-height:240px;} }
/* Task management: compact summaries, explicit filters, bounded child lists. */
.task-filter-form{margin:22px 0 14px}.task-filter-main{display:flex;gap:10px}.task-filter-main input{flex:1;min-width:0}.task-filter-form input,.task-filter-form select,.task-edit-dialog input{font:inherit;font-size:16px;min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);padding:10px 12px;width:100%;box-sizing:border-box;color-scheme:dark}.task-filter-main>.secondary-button{flex:none;min-height:46px}.task-sources{display:flex;gap:8px;overflow-x:auto;padding:12px 0}.task-sources button{white-space:nowrap;min-height:44px;flex:none;padding:9px 14px;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:24px;font:inherit;font-size:14px}.task-sources button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.task-filter-details{border:1px solid var(--line);border-radius:14px;padding:0 14px}.task-filter-details summary{padding:14px 0;min-height:46px;cursor:pointer;font-size:14px}.task-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.task-filter-grid label{display:grid;gap:7px;color:var(--muted);font-size:13px;min-width:0}.task-filter-note,.task-retention-note{color:var(--muted);font-size:13px;line-height:1.6;margin:14px 0}.task-filter-actions{display:flex;gap:12px;margin:12px 0}.task-manage{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.task-manage .text-button{min-height:44px}.task-manage span{font-size:12px;color:var(--muted);margin-left:auto}.task-expiry-warning{color:#ffd381;font-size:13px;margin-bottom:0}.search-task-card{border:1px solid var(--line);border-radius:18px;padding:20px;background:var(--panel)}.search-task-head{display:flex;gap:16px;justify-content:space-between;align-items:flex-start}.search-task-head>div{min-width:0}.search-task-head h3{font-size:18px;line-height:1.4;overflow-wrap:anywhere;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-task-head p,.search-task-summary{font-size:13px;color:var(--muted);line-height:1.7;margin:4px 0}.search-task-badge{white-space:nowrap;font-size:11px;color:var(--accent);border:1px solid var(--line);padding:6px 9px;border-radius:8px}.search-task-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:14px}.search-task-actions button{min-height:44px}.task-children{margin-top:18px;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:12px}.task-children[hidden]{display:none}.task-children .task-card{margin:0;padding:16px;border-radius:12px}.task-children .child-count{color:var(--muted);font-size:13px;margin:0}.task-edit-dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:18px;padding:24px;width:min(500px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;box-sizing:border-box}.task-edit-dialog::backdrop{background:#000b}.task-edit-dialog h2{font-size:21px}.task-edit-dialog p{font-size:14px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.task-edit-dialog label{display:block;font-size:13px;margin:14px 0 7px}.task-edit-actions{display:flex;gap:10px;justify-content:flex-end;position:sticky;bottom:-24px;background:var(--panel);padding:16px 0 0}.task-edit-actions button{min-height:46px;height:auto;padding:12px 18px;font-size:15px}.task-edit-dialog [hidden]{display:none!important}.task-retention-note{font-size:12px}#managed-task-list[hidden],#managed-pagination[hidden]{display:none}#managed-task-list{margin-bottom:20px}
@media(max-width:900px){.task-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.task-filter-grid{grid-template-columns:1fr}.task-filter-main{gap:8px}.task-filter-main>.secondary-button{padding-inline:14px}.search-task-card{padding:16px}.search-task-head{gap:8px}.search-task-head h3{font-size:16px}.task-manage{gap:12px}.task-manage span{margin-left:0;width:100%}.task-edit-dialog{padding:18px}.task-edit-actions{bottom:-18px}.task-children .task-card{padding:12px}.search-task-badge{font-size:10px;padding:5px 7px}}
.search-advanced{border:1px solid var(--line);border-radius:14px;margin:16px 0;padding:0 16px;text-align:left}.search-advanced>summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:14px}.search-advanced>summary span{font-size:12px;color:var(--muted);margin-left:8px}.search-advanced fieldset{border:0;border-top:1px solid var(--line);padding:16px 0 4px;margin:18px 0}.search-advanced legend{font-size:14px;color:var(--text);padding-right:10px}.search-advanced p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 12px}.search-advanced-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.search-advanced-grid label{display:grid;gap:7px;min-width:0;font-size:13px;color:var(--muted)}.search-advanced input,.search-advanced select{width:100%;min-width:0;font:inherit;font-size:16px;min-height:46px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);padding:10px;box-sizing:border-box;color-scheme:dark}.search-advanced select:disabled{opacity:.55}.search-advanced>.text-button{min-height:44px;margin-bottom:10px}.crawl-start-row #crawl-page-hint{font-size:13px;color:var(--muted)}
@media(max-width:700px){.search-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.search-advanced-grid{grid-template-columns:1fr}.search-advanced>summary span{display:block;margin:6px 0 0}.search-advanced{padding:0 12px}}
.task-focus{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--accent);background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:7px 12px;margin-bottom:12px}.task-focus .text-button{min-height:44px;font-size:13px;flex:none}.task-focus[hidden]{display:none}
.search-advanced .search-range-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:430px){.search-advanced .search-range-grid{grid-template-columns:1fr}}
/* Creation stays separate from the existing results and download queue. */
.task-composer{margin-top:28px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--panel);text-align:left;scroll-margin-top:16px}.composer-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.composer-heading h2{font-size:18px;letter-spacing:-.02em;margin:0}.composer-heading span{font-size:12px;color:var(--muted-2)}.task-composer .download-tabs{margin-top:18px;background:var(--bg)}.task-composer .input-wrap,.task-composer .search-field select,.task-composer .search-query-row input,.task-composer .search-advanced input,.task-composer .search-advanced select{background:var(--bg)}.task-composer .recognition{justify-content:flex-start;text-align:left;line-height:1.6}.task-composer .hint{margin-top:10px}.task-composer .download-form{grid-template-columns:minmax(0,1fr) auto}.search-query-label{display:block;margin-top:20px;color:var(--muted);font-size:13px}.task-composer .search-query-row{grid-template-columns:1fr;margin-top:8px}.source-state{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0;overflow-wrap:anywhere}.search-create-actions{display:flex;align-items:center;gap:20px}.search-create-actions .primary-button{height:auto;min-height:48px;padding:13px 24px;justify-content:center}.search-create-actions .text-button{font-size:13px;min-height:48px}.search-output{text-align:left;margin-top:24px}.search-result-context{font-size:18px;font-weight:600;line-height:1.5;overflow-wrap:anywhere;margin:0 0 8px}.search-advanced [hidden],#search-output[hidden],#search-result-context[hidden]{display:none}.search-advanced #search-custom-native:not([hidden]){margin-top:12px}
@media(max-width:600px){.task-composer{padding:16px;border-radius:18px}.task-composer .download-form{grid-template-columns:1fr}.task-composer #submit-button{justify-content:center;height:50px}}
@media(max-width:430px){.task-composer{padding:14px}.composer-heading span{display:none}.search-create-actions{gap:14px;justify-content:space-between}.search-create-actions .primary-button{padding-inline:20px}.task-composer .search-source-row .search-field{flex-basis:100%}.task-composer .search-source-row .text-button{margin-left:auto}.task-composer .search-advanced{padding-inline:10px}}
/* Training uses the local input method and reuses the saved verification results. */
.training-preview{max-width:1000px;margin:22px auto;border:1px solid var(--line);border-radius:18px;background:var(--panel);padding:22px}.training-preview[hidden]{display:none}.training-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.training-preview h2{font-size:21px;margin:0}.training-preview h3{font-size:16px;margin:0 0 8px}.training-preview-heading a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.training-preview-heading a[hidden]{display:none}.training-preview>p,.training-preview-expansion>p{font-size:14px;color:var(--muted);line-height:1.6}.training-preview .training-preview-note{font-size:12px}.training-preview .problem{color:var(--danger)}.training-preview-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.training-preview-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;align-items:center;min-width:0}.training-preview-cover{position:relative;aspect-ratio:4/3;border-radius:8px;background:var(--bg);overflow:hidden}.training-preview-cover span{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted-2);font-size:11px}.training-preview-cover img{display:block;width:100%;height:100%;object-fit:cover}.training-preview-cover [hidden]{display:none}.training-preview-video-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.5;font-size:14px;font-weight:600;margin:0}.training-preview-video-meta{font-size:12px;color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0}.training-preview-expansion{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.training-preview-expansion[hidden],.training-preview-expansion [hidden]{display:none}.training-preview .primary-button{min-height:48px;height:auto;padding:12px 16px;font-size:14px}.training-workspace.finished .training-short-guide,.training-workspace.finished .training-privacy,.training-workspace.finished #training-pagination-details{display:none}
@media(max-width:700px){.training-preview{padding:16px}.training-preview-heading{display:block}.training-preview-heading a{margin-top:14px}.training-preview-results{grid-template-columns:1fr}.training-preview-card{grid-template-columns:80px minmax(0,1fr)}}
@media(max-width:430px){.training-preview .expansion-actions{display:grid;grid-template-columns:1fr}.training-preview .expansion-actions button{width:100%;justify-content:center}.training-preview-heading a{width:100%;font-size:13px}.training-preview-card{padding:10px;gap:10px;grid-template-columns:68px minmax(0,1fr)}}

/* Search failures stay compact and require an explicit recovery action. */
.search-recovery{margin-top:24px;text-align:left;border:1px solid var(--line);border-radius:16px;padding:0 18px;background:var(--panel)}
.search-recovery>summary{min-height:52px;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:15px;font-weight:600}
.search-recovery>summary span{color:var(--muted);font-size:13px;font-weight:400}.search-recovery-intro,.search-recovery-status{font-size:13px;line-height:1.6;color:var(--muted);margin:8px 0 14px;overflow-wrap:anywhere}.search-recovery-status.problem{color:var(--danger)}
.search-recovery-toolbar{display:flex;justify-content:space-between;align-items:end;gap:12px}.search-recovery-toolbar label{display:grid;gap:6px;font-size:12px;color:var(--muted);min-width:0;flex:1;max-width:260px}.search-recovery-toolbar select{box-sizing:border-box;width:100%;min-height:44px;font:inherit;font-size:16px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);padding:9px 12px}.search-recovery-toolbar button{min-height:44px;flex:none}
.search-recovery-list{display:grid;gap:10px;margin:14px 0}.search-recovery-card{border-top:1px solid var(--line);padding:14px 0 8px;min-width:0}.search-recovery-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.search-recovery-heading h3{font-size:14px;line-height:1.5;margin:0;overflow-wrap:anywhere}.search-recovery-stage{color:var(--muted);font-size:12px;white-space:nowrap}.search-recovery-query,.search-recovery-reason{font-size:13px;line-height:1.6;margin:6px 0;overflow-wrap:anywhere}.search-recovery-query{color:var(--muted)}.search-recovery-card details{font-size:12px;color:var(--muted);line-height:1.6}.search-recovery-card details summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.search-recovery-card details p{font-size:12px;line-height:1.6;margin:4px 0 10px;overflow-wrap:anywhere}.search-recovery-actions{display:flex;gap:10px;flex-wrap:wrap}.search-recovery-actions a,.search-recovery-actions button{min-height:44px;height:auto;padding:10px 14px;font-size:13px}.search-recovery .search-pagination{margin:14px 0}.search-recovery [hidden]{display:none!important}
@media(max-width:430px){.search-recovery{padding:0 14px}.search-recovery-heading{flex-wrap:wrap;gap:4px}.search-recovery-actions button{flex:1 1 130px}.search-recovery-toolbar{align-items:end}.search-recovery .search-pagination{gap:8px}.search-recovery .search-pagination button{padding:9px 12px;font-size:13px}}
/* Search results: one summary, one primary action, optional manual selection. */
.search-results-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 0 14px;border-bottom:1px solid var(--line)}.search-results-title{min-width:0}.search-results-heading .search-result-context{margin:0;font-size:18px}.search-result-total{font-size:13px;line-height:1.6;color:var(--muted);margin:6px 0 0}.search-all-actions{display:flex;gap:12px;align-items:center;flex:none}.search-all-actions .primary-button{height:auto;min-height:48px;padding:12px 20px;font-size:15px;justify-content:center}.search-all-actions .text-button{min-height:44px;font-size:13px}.search-output [hidden]{display:none!important}.search-output>.search-status:empty{display:none}.search-output>.search-status{font-size:12px;margin:10px 0}.search-output .search-batch{position:sticky;top:8px;box-shadow:0 3px 12px #0004;background:var(--panel);border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:6px 0;margin:12px 0 0;gap:12px}.search-output .search-selection-summary{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px}.search-output .search-batch .secondary-button{min-height:44px;padding:10px 14px;font-size:13px;flex:none}.search-output .search-crawl{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:14px;row-gap:0;border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:10px 0;margin:0 0 8px}.search-output .crawl-heading{justify-content:flex-start;gap:12px}.search-output .crawl-heading h2{font-size:13px;font-weight:500;color:var(--muted)}.search-output .crawl-heading span{font-size:12px}.search-output .search-crawl #crawl-progress{grid-column:1;grid-row:2;font-size:12px;margin:3px 0}.search-output .crawl-actions{grid-column:2;grid-row:1 / span 2;align-self:start}.search-output .crawl-actions button{font-size:12px;padding:6px 10px}.search-output #crawl-detail{grid-column:1 / -1;color:var(--muted);font-size:12px;min-width:0}.search-output #crawl-detail summary{cursor:pointer;min-height:32px;display:flex;align-items:center;list-style:none}.search-output #crawl-detail summary::before{content:'›';font-size:16px;margin-right:7px}.search-output #crawl-detail[open] summary::before{transform:rotate(90deg)}.search-output #crawl-detail p{margin:0 0 6px}.search-output .search-pagination{justify-content:flex-end;margin:8px 0;gap:16px}.search-output .search-pagination button{border:0;background:transparent;color:var(--muted);font-size:13px;padding:8px 6px}.search-output .search-pagination span{font-size:12px}.search-bulk{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:16px;margin:14px 0}.search-bulk-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.search-bulk-heading h3{font-size:14px;margin:0}.search-bulk-heading span{font-size:12px;color:var(--accent)}.search-bulk p{font-size:12px;line-height:1.6;color:var(--muted);margin:7px 0;overflow-wrap:anywhere}.search-bulk p.problem{color:var(--danger)}.search-bulk progress{appearance:none;display:block;width:100%;height:4px;margin:12px 0;border:0;border-radius:4px;overflow:hidden;background:var(--line);accent-color:var(--accent)}.search-bulk progress::-webkit-progress-bar{background:var(--line)}.search-bulk progress::-webkit-progress-value{background:var(--accent)}.search-bulk-actions{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}.search-bulk-actions button,.search-bulk-actions a{font-size:12px;min-height:44px;margin:0;padding:8px 0;display:flex;align-items:center}.search-bulk-actions .secondary-button{padding:8px 12px}.search-bulk .search-bulk-note{color:var(--muted-2);font-size:11px}
@media(max-width:600px){.search-results-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.search-all-actions{flex:1 1 100%;justify-content:space-between}.search-all-actions .primary-button{flex:1;font-size:15px}.search-all-actions .text-button{flex:none;padding-inline:12px}.search-output .search-batch{align-items:center}.search-output .search-selection-summary{display:block;font-size:12px}.search-output .search-selection-summary .text-button{padding:4px 0;min-height:36px}.search-output .search-crawl{column-gap:8px}.search-output .search-pagination{justify-content:space-between;gap:8px}.search-bulk{padding:14px}.search-bulk-actions{gap:6px 13px}}

.search-recovery-clear{margin:8px 0 16px;color:var(--muted)}.search-recovery-clear summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:14px}.search-recovery-clear p{font-size:14px;line-height:1.6}.search-recovery-delete{color:#e99b9b}.search-expansion h3{margin:0 0 10px;font-size:16px}.search-expansion #continue-expanded-search{margin:12px 0 0}.search-expansion .expansion-term{overflow-wrap:anywhere}
