.author-workspace { max-width:1120px; margin:0 auto; padding:var(--space-12) 0 var(--space-10); }
.author-workspace h1 { font:400 clamp(34px,4vw,52px)/1.16 var(--serif); letter-spacing:-.03em; margin:var(--space-3) 0 var(--space-6); overflow-wrap:anywhere; }
.author-workspace .eyebrow { margin:0 0 var(--space-3); }
.author-tell,.author-recognize { max-width:740px; }
.author-tell-heading { display:flex; justify-content:space-between; align-items:baseline; gap:20px; }
.author-position { flex:none; color:var(--muted); font:var(--type-small)/1.5 var(--sans); font-variant-numeric:tabular-nums; white-space:nowrap; }
.author-question,.author-invitation { display:block; color:var(--muted); font:21px/1.6 var(--serif); margin:0 0 var(--space-6); max-width:55ch; }
.author-workspace textarea { min-height:180px; padding:var(--space-5) var(--space-6); font:21px/1.65 var(--serif); overflow-wrap:anywhere; }
.author-workspace .author-telling { height:clamp(240px,34svh,340px); min-height:200px; overflow-y:auto; }
.author-workspace .author-thought { min-height:168px; color:var(--action-hover); font-size:clamp(24px,2.6vw,30px); line-height:1.5; }
.author-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:24px; }
.author-heading>div { min-width:0; }
.author-heading h1 { margin-bottom:0; }
.author-spread { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); align-items:start; gap:clamp(30px,4vw,56px); }
.author-workspace .author-scene { aspect-ratio:16/9; height:auto; border-radius:var(--radius-large); overflow:hidden; background:var(--paper-deep); }
.author-scene img { display:block; width:100%; height:100%; object-fit:cover; }
.author-scene-caption { color:var(--muted); font:var(--type-small)/1.6 var(--sans); margin:12px 0 2px; }
.author-reading { min-width:0; padding:2px 0; }
.author-base,.author-noticed { font:20px/1.65 var(--serif); overflow-wrap:anywhere; }
.author-base p+p { margin-top:14px; }
.author-noticed { white-space:pre-wrap; color:var(--action-hover); margin:20px 0; }
.author-inner { white-space:pre-wrap; border-inline-start:2px solid var(--wheat); padding-inline-start:var(--space-6); color:var(--action-hover); font:italic 25px/1.55 var(--serif); margin:24px 0; overflow-wrap:anywhere; }
.author-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px 24px; margin:26px 0 16px; }
.author-workspace .text-button { padding-inline:4px; }
.author-tell-actions { justify-content:space-between; }
.author-tell-actions>span:empty { display:none; }
.author-tell-actions .button { margin-inline-start:auto; }
.author-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:26px 0 14px; border-bottom:1px solid var(--rule); }
.author-tabs .text-button { padding:10px 2px; color:var(--muted); font-size:var(--type-label); border-bottom:2px solid transparent; margin-bottom:-1px; }
.author-tabs [aria-pressed=true] { color:var(--action-hover); border-bottom-color:var(--action); }
.author-pagination { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:16px; border-top:1px solid var(--rule); margin-top:30px; padding-top:12px; color:var(--muted); font:var(--type-small)/1.6 var(--sans); }
.author-pagination>span { text-align:center; }
.author-pagination .text-button:first-child { justify-self:start; }
.author-pagination .text-button:last-child { justify-self:end; }
.author-end { justify-content:center; margin:26px 0 12px; }
.author-note,.author-foot { color:var(--muted); font:var(--type-small)/1.7 var(--sans); }
.author-note { margin:14px 0; overflow-wrap:anywhere; }
.author-next>.author-note { max-width:70ch; text-align:center; margin-inline:auto; }
.author-foot { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 24px; border-top:1px solid var(--rule); margin-top:32px; padding-top:16px; }
.author-foot>span { flex:1 1 260px; }
.author-foot .text-button { flex:none; margin-inline-start:auto; color:var(--muted); }
.author-working-words { max-width:740px; white-space:pre-wrap; font:21px/1.75 var(--serif); overflow-wrap:anywhere; }
.author-working-words p+p { margin-top:20px; }
.author-working-edit { border-top:1px solid var(--rule); margin-top:24px; padding-top:20px; }
.author-working-words blockquote { margin:24px 0; padding-inline-start:20px; border-inline-start:1px solid var(--rule-strong); color:var(--action-hover); font-style:italic; }
.author-working { display:flex; align-items:center; gap:14px; max-width:740px; border-block:1px solid var(--rule); padding:8px 0; margin:28px 0; color:var(--muted); font:var(--type-label)/1.6 var(--sans); }
.author-working>span[data-generation-progress] { flex:1; min-width:0; }
.author-working button { margin-inline-start:auto; }
.author-error { padding-inline-start:14px; border-inline-start:2px solid var(--error); color:var(--error); font:var(--type-label)/1.65 var(--sans); margin:20px 0; overflow-wrap:anywhere; }
.author-error:empty { display:none; }
.author-recognized { color:var(--action-hover); font:17px/1.65 var(--serif); margin:20px 0; }

@media(max-width:900px) {
  .author-spread { gap:28px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .author-base,.author-noticed { font-size:19px; }
  .author-inner { font-size:23px; padding-inline-start:18px; }
}
@media(max-width:700px) {
  .author-workspace { padding:var(--space-8) 0; }
  .author-workspace h1 { font-size:clamp(34px,7vw,40px); margin-bottom:var(--space-5); }
  .author-tell-heading { gap:16px; }
  .author-heading { align-items:flex-start; gap:16px; margin-bottom:22px; }
  .author-heading h1 { margin-bottom:0; }
  .author-spread { grid-template-columns:minmax(0,1fr); gap:22px; }
  .author-question,.author-invitation { font-size:19px; line-height:1.6; margin-bottom:20px; }
  .author-workspace textarea { min-height:164px; padding:var(--space-4) 18px; font-size:20px; }
  .author-workspace .author-telling { height:clamp(200px,28svh,270px); min-height:180px; font-size:21px; }
  .author-workspace .author-thought { min-height:156px; font-size:25px; }
  .author-base,.author-noticed { font-size:19px; line-height:1.6; }
  .author-noticed { margin:16px 0; }
  .author-inner { font-size:23px; margin:20px 0; }
  .author-actions { gap:8px 20px; margin-top:22px; }
  .author-tell-actions .button,.author-recognize>.author-actions .button,.author-end .button { flex-basis:100%; margin-inline-start:0; }
  .author-tabs { gap:10px; margin-top:22px; }
  .author-pagination { gap:8px; margin-top:24px; }
  .author-foot { margin-top:24px; padding-top:12px; }
  .author-working-words { font-size:20px; line-height:1.7; }
}
