:root {
  color-scheme:light;
  --bg:#F5F7F8;
  --panel:#FFFFFF;
  --panel-2:#EEF2F4;
  --text:#17212B;
  --muted:#556371;
  --line:#D9E1E6;
  --control-border:#7E8D99;
  /* Bright brand accents are decorative; darker inks carry readable text. */
  --accent-cyan:#25F4EE;
  --accent-rose:#FE2C55;
  --accent-ink:#006F75;
  --accent-soft:#E8FAFA;
  --rose-ink:#B31B3B;
  --rose-soft:#FFF1F4;
  --warning-ink:#8A4C00;
  --warning-border:#B9781A;
  --warning-soft:#FFF7E6;
  --danger-ink:#B31B3B;
  --success-ink:#006F75;
  --link:var(--accent-ink);
  /* Legacy names remain available to existing page styles. */
  --lime:var(--accent-cyan);
  --pink:var(--accent-rose);
  --blue:var(--accent-ink);
  --shadow:0 2px 5px rgba(22,35,46,.025),0 16px 40px -20px rgba(22,35,46,.13);
  --radius-card:18px;
  --radius-control:10px;
  --focus-ring:0 0 0 3px var(--accent-soft);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; background:var(--bg); color:var(--text); font:16px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:var(--link); text-underline-offset:.18em; text-decoration-thickness:1px; }
a:hover { color:var(--text); }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:2px solid var(--accent-ink); outline-offset:3px; }
img,video,canvas { max-width:100%; }
main,section,article,form,fieldset { min-width:0; }
h1,h2,h3,h4,p,li,dd { overflow-wrap:anywhere; }
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select { min-height:46px; }
input[type="checkbox"],input[type="radio"],input[type="range"] { accent-color:var(--accent-ink); }
input:disabled,textarea:disabled,select:disabled { color:var(--muted); background:var(--panel-2); cursor:not-allowed; opacity:1; }
[aria-invalid="true"] { border-color:var(--danger-ink); }
:where([role="status"])[data-tone="error"] { color:var(--danger-ink); }
:where([role="status"])[data-tone="warning"] { color:var(--warning-ink); }
:where([role="status"])[data-tone="success"] { color:var(--success-ink); }
.button[aria-disabled="true"] { color:var(--muted); border-color:var(--line); background:var(--panel-2); cursor:not-allowed; }
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
.shell { width:min(1140px,calc(100% - 36px)); margin:0 auto; padding:22px 0 72px; }
.topbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; margin-bottom:34px; padding:0 0 20px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:12px; color:var(--text); font-size:13px; font-weight:850; letter-spacing:3px; text-decoration:none; }
.brand::before { content:""; width:22px; height:22px; flex:0 0 22px; border-radius:6px; background:url("/assets/anglecue-icon.svg") center / contain no-repeat; }
.brand span { color:var(--accent-ink); }
.nav-links { display:flex; flex:1 1 400px; flex-wrap:wrap; align-items:center; gap:4px 18px; min-width:0; margin-right:auto; color:var(--muted); font-size:13px; }
.nav-links a { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); text-decoration:none; overflow-wrap:anywhere; }
.nav-links a[aria-current="page"] { color:var(--text); font-weight:700; text-decoration:underline; text-decoration-color:var(--accent-ink); text-underline-offset:6px; }
.nav-links a:hover,.text-link:hover { color:var(--accent-ink); }
.nav-cta { display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:9px 14px; border:1px solid var(--line); border-radius:var(--radius-control); color:var(--text); background:var(--panel); font-size:13px; font-weight:650; text-decoration:none; }
.nav-cta:hover { border-color:var(--accent-ink); background:var(--accent-soft); }
.hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,.7fr); gap:70px; align-items:center; padding-bottom:94px; }
.kicker { margin:0 0 11px; color:var(--accent-ink); font-size:11px; font-weight:850; letter-spacing:2px; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:730px; margin-bottom:19px; font-size:clamp(36px,5.8vw,68px); line-height:1.07; letter-spacing:-.045em; text-wrap:balance; }
h1 em { color:var(--text); font-style:normal; text-decoration:underline; text-decoration-color:var(--accent-cyan); text-decoration-thickness:.08em; text-underline-offset:.12em; }
h2 { margin-bottom:13px; font-size:clamp(26px,3.3vw,38px); line-height:1.16; letter-spacing:-.03em; }
h3 { margin-bottom:9px; font-size:20px; line-height:1.25; }
.lead { max-width:690px; margin-bottom:22px; color:var(--muted); font-size:18px; }
.hero-actions,.form-actions,.result-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.button { display:inline-flex; justify-content:center; align-items:center; gap:9px; min-height:46px; max-width:100%; border-radius:var(--radius-control); padding:11px 18px; font:inherit; font-size:15px; line-height:1.45; font-weight:700; text-align:center; white-space:normal; overflow-wrap:anywhere; text-decoration:none; cursor:pointer; transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease; }
.button.primary { border:1px solid var(--text); color:var(--panel); background:var(--text); }
.button.primary:hover:not(:disabled) { background:#283B49; border-color:#283B49; box-shadow:0 3px 10px rgba(22,35,46,.12); }
.button.ghost { border:1px solid var(--control-border); color:var(--text); background:var(--panel); }
.button.ghost:hover:not(:disabled) { background:var(--panel-2); }
.button.secondary { border:1px solid var(--accent-ink); color:var(--accent-ink); background:var(--accent-soft); }
.button.secondary:hover:not(:disabled) { color:var(--text); background:#D4F3F3; }
.button:disabled { color:var(--muted); background:var(--panel-2); border-color:var(--line); cursor:not-allowed; transform:none; }
.quiet-note { margin:12px 0 0; color:var(--muted); font-size:12px; }
.hero-card,.form-card,.why-card,.result-card,.upgrade,.pricing,.faq,.example-grid article { border:1px solid var(--line); border-radius:var(--radius-card); background:var(--panel); box-shadow:var(--shadow); }
.hero-card { padding:23px; border-top-color:var(--accent-cyan); background:var(--panel); }
.mini-top { display:flex; gap:8px; align-items:center; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:1.8px; }
.status-dot { width:7px; height:7px; border-radius:50%; background:var(--accent-cyan); box-shadow:0 0 0 4px var(--accent-soft); }
.mini-label,.card-label { margin:24px 0 8px; color:var(--muted); font-size:11px; font-weight:850; letter-spacing:1.7px; }
.mini-label { color:var(--rose-ink); }
.hero-card h2 { margin-bottom:22px; font-size:24px; line-height:1.25; }
.mini-row { display:flex; justify-content:space-between; gap:20px; padding:11px 0; border-top:1px solid var(--line); font-size:12px; }
.mini-row span { color:var(--muted); }
.mini-row b { max-width:180px; text-align:right; font-weight:650; }
.mini-caption { margin:0 0 4px; color:var(--muted); font-size:12px; }
.mini-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; margin-top:16px; }
.mini-actions .button { min-height:44px; padding:8px 14px; font-size:14px; }
.mini-source { color:var(--muted); font-size:12px; }
.mini-stamp { display:inline-flex; margin-top:20px; padding:6px 9px; border:1px solid var(--accent-ink); border-radius:999px; color:var(--accent-ink); background:var(--accent-soft); font-size:10px; letter-spacing:1px; }
.tool-section,.content-section,.pricing,.faq { scroll-margin-top:30px; }
.tool-section { padding:24px 0 64px; }
.section-intro { max-width:670px; margin-bottom:24px; }
.section-intro p:last-child,.content-section > div > p,.pricing > div > p { color:var(--muted); }
.tool-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr); gap:18px; align-items:start; }
.form-card,.why-card { padding:26px; }
.why-card { background:var(--panel-2); }
.why-card p { color:var(--muted); }
.why-card ul { display:grid; gap:15px; list-style:none; padding:0; margin:25px 0 0; }
.why-card li { display:grid; gap:2px; padding-top:13px; border-top:1px solid var(--line); }
.why-card li span { color:var(--muted); font-size:14px; }
label { display:grid; gap:6px; min-width:0; margin-top:18px; color:var(--text); font-weight:650; }
label span { color:var(--muted); font-size:12px; font-weight:400; }
textarea,input,select { width:100%; min-width:0; max-width:100%; border:1px solid var(--control-border); border-radius:var(--radius-control); padding:12px 13px; margin-top:6px; color:var(--text); background:var(--panel); font:inherit; outline:none; }
textarea::placeholder,input::placeholder { color:var(--muted); opacity:1; }
textarea { min-height:106px; resize:vertical; }
textarea:focus,input:focus,select:focus { border-color:var(--accent-ink); box-shadow:var(--focus-ring); }
.field-meta { display:flex; flex-wrap:wrap; gap:4px 10px; justify-content:space-between; margin-top:5px; color:var(--muted); font-size:12px; }
.grid-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.grid-fields > * { min-width:0; }
.form-actions { margin-top:23px; }
.form-status { margin:0; color:var(--muted); font-size:12px; }
.result { padding:24px 0 76px; }
.result-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:14px; }
.mode-pill { display:inline-flex; flex:0 0 auto; white-space:nowrap; padding:6px 10px; border:1px solid var(--accent-ink); border-radius:999px; color:var(--accent-ink); background:var(--accent-soft); font-size:11px; font-weight:800; letter-spacing:1px; }
.result-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.result-card { padding:20px; box-shadow:none; }
.result-wide { grid-column:span 2; }
.result-card ul,.result-card ol { margin:0; padding-left:20px; }
.result-card li { margin:8px 0; }
.muted { color:var(--muted); }
.paywall-card { border-top-color:var(--accent-rose); background:var(--rose-soft); }
.quiet-button { min-height:44px; border:0; padding:8px 0; color:var(--muted); background:transparent; font:inherit; cursor:pointer; }
.quiet-button:hover { color:var(--text); }
.brief-task-quality { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:12px; }
.brief-task-quality .quiet-button[aria-pressed="true"] { color:var(--text); text-decoration:underline; text-underline-offset:4px; }
.brief-task-quality [role="status"] { color:var(--muted); font-size:14px; }
.upgrade { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:14px; padding:20px; border-color:var(--line); background:var(--panel-2); box-shadow:none; }
.upgrade p:last-child { margin-bottom:0; color:var(--muted); }
.content-section { padding:56px 0 26px; }
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:22px; }
.steps article { padding:20px 0; border-top:1px solid var(--line); }
.steps article > span { color:var(--accent-ink); font-size:12px; font-weight:800; letter-spacing:1px; }
.steps p { margin-bottom:0; color:var(--muted); }
.campaign-visual { margin:36px 0 0; }
.campaign-visual img { display:block; width:100%; height:auto; border:1px solid var(--line); border-radius:20px; }
.campaign-visual figcaption { margin-top:10px; color:var(--muted); font-size:13px; }
.examples { display:grid; grid-template-columns:.55fr 1fr; gap:30px; align-items:start; }
.example-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.example-grid article { padding:18px; box-shadow:none; }
.example-grid article h3 { font-size:17px; }
.example-grid article p:last-child { margin-bottom:0; color:var(--muted); font-size:13px; }
.pricing { display:grid; grid-template-columns:.75fr 1.25fr; gap:24px; margin-top:72px; padding:25px; box-shadow:none; }
.price-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.price-grid article { display:grid; align-content:start; gap:8px; padding:16px; border:1px solid var(--line); border-radius:14px; }
.price-grid article.price-featured { border-color:var(--accent-ink); background:var(--accent-soft); }
.price-label { color:var(--muted); font-size:10px; font-weight:850; letter-spacing:1.5px; }
.price-grid strong { font-size:25px; }
.price-grid strong span { color:var(--muted); font-size:13px; font-weight:400; }
.price-grid p { margin:0; color:var(--muted); font-size:12px; }
.price-note { color:var(--accent-ink); font-size:10px; }
.pilot-choice { display:grid; gap:8px; margin-top:10px; padding-top:10px; border-top:1px solid var(--line); }
.pilot-choice-actions { display:flex; flex-wrap:wrap; gap:7px; }
.pilot-choice-actions .button { min-height:44px; padding:8px 10px; font-size:12px; }
.pilot-choice-actions .button[aria-pressed="true"] { color:var(--panel); border-color:var(--accent-ink); background:var(--accent-ink); }
.pilot-choice .quiet-note { margin:0; }
.faq { margin-top:72px; padding:24px; box-shadow:none; }
.faq details { padding:14px 0; border-top:1px solid var(--line); }
.faq summary { min-height:44px; padding:8px 0; cursor:pointer; font-weight:650; line-height:1.5; }
.faq details p { margin:9px 0 0; color:var(--muted); }
footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:18px 28px; margin-top:55px; padding-top:26px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; line-height:1.9; }
footer > span { flex:1 1 250px; min-width:0; overflow-wrap:anywhere; }
footer a { color:var(--text); text-decoration:none; }
/* Theme bridge: page-local component CSS retains layout, while these more
   specific selectors replace legacy dark fills and bright text colors. */
body .account-card,body .account-note,body .analyzer-form,body .analyzer-note,body .analysis-card,body .trend-card,body .radar-form,body .radar-note,body .signal-card,body .draft-card,body .report-item { background:var(--panel); }
body .account-note,body .analyzer-note,body .radar-note { background:var(--panel-2); }
body .identity-avatar { color:var(--text); border-color:var(--accent-ink); background:var(--accent-cyan); }
body .report-item a:hover { color:var(--accent-ink); }
body .account-status[data-tone="success"],body .analyzer-status[data-tone="success"] { color:var(--success-ink); }
body .account-status[data-tone="error"],body .analyzer-status[data-tone="error"] { color:var(--danger-ink); }
body .account-status[data-tone="warning"],body .analyzer-status[data-tone="warning"] { color:var(--warning-ink); }
body .capability-note b { color:var(--warning-ink); }
body .warning-card { border-color:var(--warning-border); background:var(--warning-soft); }
body .warning-card .card-label { color:var(--warning-ink); }
body .stage-list b { color:var(--success-ink); }
body .stage-list b[data-status="provided"] { color:var(--accent-ink); }
body .stage-list b[data-status="failed"],body .stage-list b[data-status="empty"] { color:var(--danger-ink); }
body .stage-list b[data-status="not_configured"],body .stage-list b[data-status="not_applicable"],body .stage-list b[data-status="offline"] { color:var(--muted); }
body .mode-pill[data-mode="partial"] { color:var(--warning-ink); border-color:var(--warning-border); background:var(--warning-soft); }
body .mode-pill[data-mode="offline"] { color:var(--muted); border-color:var(--control-border); background:var(--panel-2); }
body .proof-choice { border-color:var(--control-border); background:var(--panel); }
body .proof-choice:has(input:checked) { border-color:var(--accent-ink); background:var(--accent-soft); }
body .proof-choice input,body .manual-toggle input { accent-color:var(--accent-ink); }
body .draft-card h4 { color:var(--accent-ink); }
body .draft-judgment[aria-pressed="true"] { color:var(--accent-ink); border-color:var(--accent-ink); background:var(--accent-soft); }
.draft-judgments,.draft-reason-choices { display:flex; flex-wrap:wrap; gap:8px; }
.draft-change-reasons { min-width:0; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--panel-2); }
.draft-reason-prompt { margin:0 0 9px; color:var(--muted); font-size:12px; }
.draft-reason-choice { min-height:44px; padding:9px 11px; font-size:12px; text-align:left; white-space:normal; }
body .draft-reason-choice[aria-pressed="true"] { color:var(--accent-ink); border-color:var(--accent-ink); background:var(--accent-soft); }
.draft-reason-choice:focus-visible,.draft-judgment:focus-visible { outline:2px solid var(--accent-ink); outline-offset:2px; }
body .draft-card[data-recommended="true"] { border-color:var(--accent-ink); }
body .draft-suggestion { width:fit-content; padding:3px 8px; color:var(--accent-ink); border:1px solid var(--accent-ink); border-radius:6px; background:var(--accent-soft); }
body .ai-recommendation { border-color:var(--accent-ink); background:var(--accent-soft); }
body .ai-recommendation h4 { color:var(--accent-ink); }
body .draft-grid { align-items:start; }
/* Revisions are a compact workspace inside the delivered draft. The local
   dark palette leaves the rest of the site and its status states unchanged. */
body .draft-refinement {
  color-scheme:dark;
  --panel:#171C25;
  --panel-2:#202936;
  --text:#F2F5FA;
  --muted:#B5BFCE;
  --line:#394655;
  --control-border:#64748B;
  --accent-ink:#25F4EE;
  --accent-soft:#163A3D;
  --danger-ink:#FF92A8;
  --success-ink:#7EF7ED;
  --warning-ink:#FFD18C;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  width:100%;
  min-width:0;
  max-width:100%;
  margin-top:14px;
  padding:16px;
  border:1px solid var(--line);
  border-top:2px solid var(--accent-cyan);
  border-radius:12px;
  color:var(--text);
  background:#10141C;
}
body .draft-refinement > .draft-reason-prompt {
  margin:0;
  padding-left:10px;
  border-left:3px solid var(--accent-rose);
  color:var(--text);
  font-size:14px;
  font-weight:760;
  line-height:1.4;
}
body .draft-refinement .manual-help {
  margin:0;
  color:var(--muted);
  font-size:12px;
  font-weight:400;
  line-height:1.55;
  overflow-wrap:anywhere;
}
body .draft-refinement .refine-fields {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  min-width:0;
}
body .draft-refinement .refine-fields > label {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:7px;
  min-width:0;
  margin:0;
  color:var(--text);
  font-size:13px;
  font-weight:650;
  line-height:1.5;
}
body .draft-refinement .draft-refine-choice {
  appearance:none;
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:48px;
  margin:0;
  padding:11px 34px 11px 12px;
  border:1px solid var(--control-border);
  border-radius:9px;
  color:var(--text);
  background-color:var(--panel);
  background-image:linear-gradient(45deg,transparent 50%,var(--accent-cyan) 50%),linear-gradient(135deg,var(--accent-cyan) 50%,transparent 50%);
  background-repeat:no-repeat;
  background-position:calc(100% - 16px) center,calc(100% - 11px) center;
  background-size:5px 5px;
  font-size:14px;
  font-weight:500;
  line-height:1.4;
  text-overflow:ellipsis;
  cursor:pointer;
}
body .draft-refinement .draft-refine-choice option { color:var(--text); background:var(--panel); }
body .draft-refinement .draft-refine-choice:hover:not(:disabled) { border-color:var(--accent-cyan); }
body .draft-refinement .refine-fields > div { display:grid; gap:8px; min-width:0; }
body .draft-refinement .proof-choice {
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  align-items:start;
  gap:10px;
  width:100%;
  min-width:0;
  min-height:48px;
  margin:0;
  padding:11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--panel);
}
body .draft-refinement .proof-choice span {
  min-width:0;
  color:var(--text);
  font-size:13px;
  font-weight:400;
  line-height:1.55;
  white-space:normal;
  overflow-wrap:anywhere;
}
body .draft-refinement .draft-refine-fact {
  appearance:auto;
  width:18px;
  height:18px;
  margin:2px 0 0;
  padding:0;
  accent-color:var(--accent-cyan);
  cursor:pointer;
}
body .draft-refinement .proof-choice:has(input:checked) { border-color:var(--accent-cyan); background:var(--accent-soft); }
body .draft-refinement > .analyzer-status {
  min-width:0;
  min-height:0;
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.55;
  overflow-wrap:anywhere;
}
body .draft-refinement > .analyzer-status:not([role]) { padding-top:10px; border-top:1px solid var(--line); }
body .draft-refinement > .analyzer-status[role="status"] { padding:10px; border-left:2px solid var(--accent-rose); border-radius:0 6px 6px 0; color:var(--text); background:var(--panel-2); }
body .draft-refinement > .analyzer-status[role="status"]:empty { display:none; }
body .draft-refinement .draft-refine-submit {
  width:100%;
  min-width:0;
  min-height:48px;
  padding:11px 12px;
  border:1px solid var(--accent-cyan);
  border-radius:9px;
  color:#10141C;
  background:var(--accent-cyan);
  box-shadow:2px 2px 0 var(--accent-rose);
  font-size:13px;
  line-height:1.45;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
}
body .draft-refinement .draft-refine-submit:hover:not(:disabled) { color:#10141C; background:#79FAF5; border-color:#79FAF5; }
body .draft-refinement :is(select,input,button):focus-visible { outline:2px solid var(--accent-cyan); outline-offset:3px; box-shadow:0 0 0 5px #10141C; }
body .draft-refinement .draft-refine-choice:disabled,body .draft-refinement .draft-refine-submit:disabled { opacity:1; color:var(--muted); border-color:var(--line); background-color:var(--panel-2); box-shadow:none; cursor:not-allowed; }
body .draft-refinement .draft-refine-fact:disabled { opacity:.6; cursor:not-allowed; }
@media (max-width:470px) {
  body .draft-change-reasons:has(.draft-refinement) { padding:8px; }
  body .draft-refinement { gap:11px; padding:12px; }
  body .draft-refinement .draft-refine-choice { font-size:16px; }
  body .draft-refinement .proof-choice { gap:8px; padding:10px; }
}
[hidden] { display:none !important; }
@media (max-width:850px) { .nav-links { order:3; flex-basis:100%; } .nav-cta { margin-left:auto; } .hero { grid-template-columns:1fr; gap:35px; } .hero-card { max-width:520px; } .tool-layout { grid-template-columns:1fr; } .examples,.pricing { grid-template-columns:1fr; } .price-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:650px) {
  .shell { width:min(100% - 32px,600px); padding-top:16px; }
  .topbar { gap:10px 16px; margin-bottom:26px; padding-bottom:14px; }
  .nav-links { order:3; flex-basis:100%; width:100%; gap:0 16px; }
  .nav-links a { flex:0 1 auto; min-height:44px; line-height:1.35; }
  .result-head { flex-direction:column; gap:8px; }
  .nav-cta { margin-left:auto; }
  h1 { font-size:clamp(36px,9vw,48px); }
  .result-grid,.steps,.example-grid,.price-grid { grid-template-columns:minmax(0,1fr); }
  .result-wide { grid-column:span 1; }
  .form-actions .button,.result-actions .button { flex:1 1 180px; }
}
@media (max-width:470px) { .form-card,.why-card,.pricing,.faq { padding:19px; } .pricing { margin-top:24px; } .grid-fields { grid-template-columns:1fr; gap:0; } .button.primary { width:100%; } .form-status { width:100%; } .hero-actions .button { width:100%; } }

#brief-task-card { margin:24px 0; padding:24px; background:var(--panel); border:1px solid var(--line); border-radius:16px; }
#brief-task-card .brief-task-help,
#brief-task-card .brief-task-status { font-size:14px; color:var(--muted); white-space:pre-wrap; overflow-wrap:anywhere; }
#brief-task-card .brief-task-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:20px; }
#brief-task-card .brief-task-facts { display:grid; gap:14px; margin:20px 0; }
#brief-task-card .brief-task-fact { display:grid; grid-template-columns:20px minmax(0,1fr); align-items:start; gap:12px; padding:14px; border:1px solid var(--line); border-radius:10px; font-weight:400; }
#brief-task-card .brief-task-fact input { width:18px; height:18px; margin:4px 0; }
#brief-task-card .brief-task-statement { padding:14px; border:1px solid var(--line); border-radius:10px; min-width:0; }
#brief-task-card .brief-task-statement summary { cursor:pointer; font-weight:600; }
#brief-task-card .brief-task-statement p { margin-bottom:0; }
.brief-task-material,
.filming-material-preview { display:grid; gap:10px; min-width:0; margin:18px 0; padding:14px; background:var(--panel); border:1px solid var(--line); border-radius:12px; }
.brief-task-material img,
.filming-material-preview img { display:block; width:100%; max-width:100%; max-height:340px; object-fit:contain; border-radius:6px; background:#101017; }
.brief-task-material figcaption,
.filming-material-preview figcaption,
.filming-material-preview p { margin:0; color:var(--muted); font-size:14px; overflow-wrap:anywhere; }
.brief-task-material a,
.filming-material-preview a { overflow-wrap:anywhere; }
.brief-task-material a:focus-visible,
.filming-material-preview a:focus-visible,
#brief-task-card .brief-task-statement summary:focus-visible { outline:2px solid var(--accent-ink); outline-offset:4px; }
#brief-task-card #brief-task-product-url { max-width:100%; }
#brief-task-card [data-tone="warning"] { color:var(--rose-ink); }
@media(max-width:420px) {
  #brief-task-card { padding:18px; }
  #brief-task-card .brief-task-actions .button { width:100%; }
}

.opening-rationale { min-width:0; margin:16px 0; padding:14px 16px; border:1px solid var(--line); border-left:3px solid var(--accent-cyan); border-radius:10px; background:var(--panel-2); overflow-wrap:anywhere; }
.opening-rationale h5 { margin:0 0 8px; color:var(--text); font-size:14px; }
.opening-rationale p { margin:8px 0; font-size:14px; line-height:1.6; }
.opening-rationale details { margin-top:10px; font-size:13px; }
.opening-rationale summary { cursor:pointer; color:var(--accent-ink); font-weight:600; }
.opening-rationale summary:focus-visible { outline:2px solid var(--accent-ink); outline-offset:4px; }
.opening-rationale h6 { margin:14px 0 6px; font-size:13px; }
.opening-rationale details > p:last-child { color:var(--muted); font-size:12px; }

/* Sample tracker: one-line "since your last visit" hint (public/sample-tracker.js) */
.sample-news { margin:10px 0 0; font-weight:700; }

/* Planned Pro interest test (public/pro-interest.js): small, below results, never a checkout */
.tool-feedback { margin:18px 0 0; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); min-width:0; font-size:14px; overflow-wrap:anywhere; }
.tool-feedback-question { margin:0 0 8px; color:var(--text); font-weight:650; }
.tool-feedback-options { display:flex; flex-wrap:wrap; gap:8px; }
.tool-feedback-option { min-height:44px; max-width:100%; padding:6px 12px; border:1px solid var(--line); border-radius:999px; background:transparent; color:var(--text); font:inherit; cursor:pointer; }
.tool-feedback-option:hover, .tool-feedback-option:focus-visible { border-color:var(--text); }
.tool-feedback-thanks { margin:0; color:var(--muted); }
.pro-teaser { margin:18px 0 0; min-width:0; color:var(--muted); font-size:13px; overflow-wrap:anywhere; }
.pro-teaser > summary { cursor:pointer; width:fit-content; max-width:100%; color:var(--muted); text-decoration:underline; text-underline-offset:3px; }
.pro-teaser > summary:hover { color:var(--text); }
.pro-teaser .pro-body { margin-top:10px; padding:14px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.pro-card .pro-body { margin:0; padding:0; border:0; background:transparent; }
.pro-card h3 { margin:0 0 8px; color:var(--text); }
.pro-teaser .pro-title { margin:0 0 6px; color:var(--text); font-weight:750; }
.pro-teaser .pro-items { margin:0; padding-left:18px; }
.pro-teaser .pro-items li { margin:4px 0; }
.pro-teaser .pro-price { margin:10px 0 2px; color:var(--text); font-weight:700; }
.pro-teaser .pro-notice { margin:0; }
.pro-teaser .pro-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-top:10px; }
.pro-teaser .pro-actions:empty { display:none; }
.pro-teaser .pro-actions .button { min-height:44px; padding:6px 14px; font-size:14px; white-space:normal; }
.pro-teaser .pro-status { margin:8px 0 0; }
.pro-teaser .pro-status:empty { display:none; }

/* Illustrations (2026-10-06, Codex imagegen; sources and prompts in docs/design/art-2026-10-06.md). */
.art-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:28px; align-items:center; }
.art-hero > header { min-width:0; }
.hero-art { margin:0; }
.hero-art img { display:block; width:100%; height:auto; max-width:440px; margin-left:auto; -webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 62%,transparent 100%); mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 62%,transparent 100%); }
.how-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:8px 0 30px; padding:0; list-style:none; }
.how-steps li { display:grid; align-content:start; gap:6px; padding:18px; border:1px solid var(--line); border-radius:var(--radius-card); background:var(--panel); box-shadow:var(--shadow); }
.how-steps img { display:block; width:100%; max-width:200px; height:auto; aspect-ratio:1; margin:0 auto 4px; border-radius:16px; }
.how-steps .step-no { color:var(--accent-ink); font-size:12px; font-weight:850; letter-spacing:2px; text-transform:uppercase; }
.how-steps h3 { margin:0; font-size:18px; }
.how-steps p { margin:0; color:var(--muted); font-size:14px; }
.empty-art { display:block; width:100%; max-width:300px; height:auto; margin:6px auto 0; }
@media (max-width:760px) {
  .art-hero { grid-template-columns:minmax(0,1fr); gap:0; }
  .art-hero .hero-art { display:none; }
  .how-steps { grid-template-columns:minmax(0,1fr); }
  .how-steps li { grid-template-columns:96px minmax(0,1fr); grid-template-rows:auto auto auto; column-gap:14px; align-items:center; padding:14px; }
  .how-steps img { grid-row:1 / span 3; width:96px; margin:0; }
}
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* Signed-in account button (nav-account.js). */
.nav-cta.nav-account-in { display:inline-flex; align-items:center; gap:8px; padding-left:6px; }
.nav-avatar { width:24px; height:24px; flex:0 0 24px; border-radius:50%; object-fit:cover; }
.nav-initial { display:inline-grid; place-items:center; background:var(--accent-ink); color:#fff; font-size:12px; font-weight:800; }
.nav-name { max-width:14ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav-pro { padding:1px 7px; border-radius:999px; background:var(--accent-soft); color:var(--accent-ink); font-size:11px; font-weight:800; letter-spacing:.5px; }

/* ==== 2026-10-06 purchase flow and account (pro-interest.js, account.js, pro-checkout.html) ==== */
.pro-meter { margin:10px 0 0; }
.pro-meter-label { display:flex; justify-content:space-between; gap:10px; margin:0 0 5px; color:var(--text); font-size:13px; font-weight:650; }
.pro-meter-count { color:var(--muted); font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.pro-meter-bar { height:8px; overflow:hidden; border-radius:999px; background:var(--line); }
.pro-meter-fill { display:block; height:100%; min-width:0; border-radius:inherit; background:var(--accent-ink); }
.pro-meter + .pro-notice, .pro-card .pro-notice + .pro-notice { margin-top:8px; }
.pro-welcome { position:relative; margin:0 0 18px; padding:16px 16px 14px; border:1px solid var(--accent-ink); border-radius:14px; background:var(--accent-soft); color:var(--text); }
.pro-welcome h3 { margin:0 0 4px; padding-right:72px; }
.pro-welcome p { margin:0; color:var(--text); }
.pro-welcome .pro-actions .button { min-height:44px; }
.pro-welcome-close { position:absolute; top:10px; right:10px; padding:6px 8px; font-size:13px; }
.acct-empty { display:grid; justify-items:center; gap:12px; text-align:center; }
.acct-empty p { margin:0; }
.acct-empty-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.pro-checkout { max-width:640px; margin:40px 0 0; }
/* ==== end 2026-10-06 purchase flow ==== */
/* ===== 2026-10-06 first-visit fixes (Q4, P4): creator sample check run hint and free checks left. ===== */
.sc-run-hint { color:var(--accent-ink); font-size:14px; font-weight:700; }
.sc-run-hint:empty { display:none; }
.sc-used { display:grid; gap:12px; margin-top:16px; }
.sc-used[hidden] { display:none; }
.sc-used-text { margin:0; padding:10px 14px; border-left:3px solid var(--warning-border); border-radius:8px; background:var(--warning-soft); color:var(--text); font-size:15px; }
/* ===== end 2026-10-06 ===== */

/* Home: links into the public buyer questions library (2026-10-06). */
.home-questions { margin-top:56px; }
.home-questions h2 { margin:0 0 6px; }
.home-questions > p { margin:0 0 16px; color:var(--muted); }
.question-links { display:grid; grid-template-columns:repeat(auto-fill, minmax(min(160px, 100%), 1fr)); gap:10px; margin-bottom:14px; }
.question-links a { display:block; padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--text); font-weight:650; text-decoration:none; }
.question-links a:hover, .question-links a:focus-visible { border-color:var(--accent-ink); color:var(--accent-ink); }

/* Browser print and report-PDF frames share these foundations. */
@media print {
  body { min-width:0; background:#fff; }
  .shell { width:100%; max-width:none; padding:0; }
  .topbar,footer,.button,button,.tool-feedback,.pro-teaser { display:none !important; }
  .hero-card,.form-card,.why-card,.result-card,.upgrade,.pricing,.faq,.example-grid article { box-shadow:none; }
  .result-grid { grid-template-columns:minmax(0,1fr); }
  .result-wide { grid-column:auto; }
  .result-card { break-inside:avoid; }
  pre { white-space:pre-wrap; overflow-wrap:anywhere; max-width:100%; }
}

/* The same language control on every public page; stays visible on narrow screens. */
.site-language { display:inline-flex; gap:3px; align-items:center; flex-shrink:0; padding:3px; border:1px solid var(--line,#d3dce2); border-radius:12px; background:var(--panel,#fff); font-size:12px; }
.site-language a,.site-language span { display:inline-flex; align-items:center; justify-content:center; min-width:42px; min-height:38px; padding:0 9px; border-radius:8px; text-decoration:none; color:var(--muted,#536571); font-weight:650; }
.site-language [aria-current="true"] { background:var(--accent-soft,#e6f6f8); color:var(--accent-ink,#126779); }
.site-language a:hover { color:var(--text,#17202b); }
html[lang="zh-CN"] { line-break:auto; }
html[lang="zh-CN"] h1,html[lang="zh-CN"] h2 { letter-spacing:-.02em; }
@media print { .site-language { display:none; } }

/* The native EN/中文 fallback links and the home language widget are rebuilt by
   site-i18n.js once it loads; hide them from first paint on JS pages so the nav
   does not flash. Without JS the data-js marker never appears and they stay. */
html[data-js]:not([lang^="zh"]) .lang-switch,html[data-js]:not([lang^="zh"]) .home-language{display:none}
