/* Author rooms: inherit the main site's tokens and research-room components. */
.auctor-room .research-room-shell { width:min(1240px,calc(100% - 64px)); padding-top:28px; }
.auctor-room a { text-underline-offset:.2em; color:var(--accent); }
.auctor-room .research-room-toolbar { font-size:.9rem; margin-bottom:22px; }
.auctor-room .site-name { color:var(--ink); font-family:var(--serif-font); font-size:1.3rem; font-weight:700; text-decoration:none; }
.auctor-room .site-name .site-name-initial { color:var(--accent); }
.crumb { margin:0 12px; color:var(--line); }
.study-label { color:#6e655a; font-size:.76rem; }
.auctor-room .panel { box-shadow:0 8px 28px rgba(47,35,18,.045); }
.author-identity { padding:32px 36px 0; margin-bottom:24px; }
.virgil-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:stretch; padding-bottom:26px; }
.virgil-hero-illustration { margin:0; min-width:0; position:relative; }
.virgil-hero-illustration img { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top; border-radius:16px; }
.virgil-illustration-caption { margin:20px 0 0; font-family:var(--ui-font); font-size:1rem; line-height:1.6; color:#675f54; }
.virgil-hero-copy { min-width:0; padding-top:4px; }
.virgil-hero-copy .author-resources { margin-bottom:0; }
.virgil-hero-copy .perseus-work-resources { margin:16px 0 0; }
.virgil-hero-copy .room-navigation { margin-top:20px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
@media(max-width:900px) { .virgil-hero-layout { grid-template-columns:1fr; gap:26px; } .virgil-hero-illustration { max-width:560px; } .virgil-hero-illustration img { position:static; height:auto; } }
.identity-top,.section-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.author-identity .panel-heading-with-manicula { gap:14px; }
.author-identity .panel-manicula-trigger { width:40px; height:40px; min-width:40px; flex:0 0 40px; }
.author-identity h1 { font-family:var(--display-font); font-size:var(--type-size-site-title); line-height:.98; letter-spacing:-.04em; margin:3px 0 0; font-weight:400; -webkit-text-stroke:0; }
.author-name-initial { color:var(--accent); font-weight:inherit; }
.author-identity h1 a { color:var(--ink); text-decoration:none; }
.author-identity h1::first-letter { color:var(--accent); }
.author-identity h1 a:hover { color:var(--accent); }
.out-arrow { font-family:var(--ui-font); color:var(--accent); font-size:1.35rem; vertical-align:top; display:inline-block; margin-top:8px; }
.life-dates { font-family:var(--serif-font); color:#746957; font-size:1.1rem; }
.latin-name { margin:10px 0 0; font-family:var(--serif-font); font-size:1.15rem; font-style:italic; color:#6a5e50; }
.author-lead { margin:15px 0 20px; line-height:1.6; font-size:1rem; }
.author-resources { margin:0 0 26px; display:flex; gap:26px; flex-wrap:wrap; }
.author-resources a { font-size:.9rem; font-weight:650; color:var(--accent); text-decoration:none; }
.author-resources span { display:block; font-size:.74rem; font-weight:450; color:#6e655a; margin-top:5px; }
.author-resources a:hover { text-decoration:underline; }
.author-resource-layout { container-type:inline-size; }
.author-resource-layout .author-resources { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 26px; }
@container(min-width:760px) { .author-resource-layout .author-resources { grid-template-columns:repeat(4,minmax(0,1fr)); } }
.auctor-room .author-resources a{font-size:1rem;}
.auctor-room .author-resources span{font-size:.9rem;line-height:1.45;max-width:29ch;}
.auctor-room .work-resources{margin:12px 0 10px;gap:18px;}
.auctor-room .resource-edition-note{font-size:.95rem;margin-bottom:20px;}
.room-navigation { display:flex; flex-wrap:wrap; gap:26px; border-top:1px solid var(--line); }
.room-navigation a { padding:16px 0 13px; color:#62594c; font-size:.88rem; font-weight:700; text-decoration:none; border-bottom:3px solid transparent; }
.room-navigation .is-current { color:var(--accent); }
.room-navigation a:hover { color:var(--accent); border-color:var(--accent); }
.auctor-room .research-room-panel { padding:28px 32px; scroll-margin-top:20px; }
.auctor-room h2 { font-family:var(--serif-font); font-size:1.8rem; margin:5px 0 10px; line-height:1.2; }
.secondary-title { font-size:1.05rem; font-weight:400; color:#766958; margin-left:12px; }
.edition-note,.section-note,.view-note { color:#675f54; font-size:.86rem; line-height:1.6; }
.edition-note { margin:0 0 22px; }
.inline-work-link { font-size:.82rem; white-space:nowrap; }
.view-controls { display:inline-flex; padding:3px; border:1px solid var(--line); border-radius:7px; gap:3px; background:rgba(217,207,188,.16); }
.view-button { appearance:none; background:none; border:0; padding:9px 15px; font-family:var(--ui-font); font-size:.82rem; color:#665e52; border-radius:4px; cursor:pointer; }
.view-button.is-active { background:var(--accent); color:var(--panel); }
.view-note { margin:12px 0 20px; }
.work-browser { display:grid; grid-template-columns:minmax(235px,.8fr) minmax(0,1.6fr); border-top:1px solid var(--line); min-height:490px; }
.work-tree { padding:14px 20px 12px 0; border-right:1px solid var(--line); max-height:580px; overflow-y:auto; scrollbar-width:thin; }
.book { border-bottom:1px solid rgba(217,207,188,.55); }
.book > summary { cursor:pointer; padding:13px 2px; font-family:var(--serif-font); font-size:1.08rem; font-weight:700; }
.book > summary::marker { color:var(--accent); font-size:.75rem; }
.book[open] > summary { position:sticky; top:0; background:var(--bg); z-index:1; }
.book-stat { float:right; font-family:var(--ui-font); font-size:.72rem; color:#776b5b; margin-top:4px; }
.passage-list { list-style:none; padding:0 0 10px 17px; margin:0; }
.passage-button { width:100%; text-align:left; background:none; border:0; border-left:2px solid transparent; border-radius:0 4px 4px 0; font-family:var(--ui-font); padding:9px 10px; font-size:.84rem; color:var(--ink); cursor:pointer; }
.passage-button:hover { background:rgba(140,59,42,.055); }
.passage-button[aria-current="true"] { border-left-color:var(--accent); background:var(--accent-soft); color:var(--accent); font-weight:650; }
.passage-detail { padding:29px 0 20px 30px; min-width:0; }
.passage-detail h3 { font-family:var(--serif-font); font-size:1.6rem; margin:5px 0 10px; }
.passage-detail p { line-height:1.6; }
.evidence-caption { color:#675f54; font-size:.86rem; }
.raw-citation { margin:18px 0; font-family:var(--serif-font); font-size:1.16rem; border-left:2px solid var(--line); padding:4px 0 4px 16px; }
.source-text-link { display:inline-block; color:var(--accent); font-weight:600; font-size:.85rem; margin:0 0 22px; }
.evidence-locus { border-top:1px solid var(--line); padding:18px 0; }
.evidence-locus h4 { font-family:var(--serif-font); font-size:1.16rem; margin:0 0 9px; }
.evidence-locus p { margin:8px 0; font-size:.85rem; }
.evidence-locus details { font-size:.75rem; color:#746958; overflow-wrap:anywhere; margin-top:10px; }
.evidence-locus details summary { cursor:pointer; }
.empty-explanation { font-size:.9rem; color:#746958; }
.unlocated { border-top:1px solid var(--line); padding-top:18px; margin-top:12px; font-size:.88rem; }
.unlocated > summary { cursor:pointer; color:var(--accent); font-weight:600; }
.unlocated p { line-height:1.6; color:#675f54; }
.poem-references { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:22px; }
.poem-reference { border-top:1px solid var(--line); padding-top:18px; }
.poem-reference a { font-size:.85rem; font-weight:600; }
.poem-reference blockquote { font-family:var(--serif-font); font-size:1.22rem; margin:12px 0; line-height:1.5; }
.reverse-tree { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:22px; align-items:start; }
.cantica > summary { font-family:var(--serif-font); font-size:1.15rem; padding:12px 0; border-top:1px solid var(--line); cursor:pointer; }
.canto > summary { font-size:.82rem; cursor:pointer; padding:10px 0; }
.canto > summary span { float:right; color:#776b5b; font-size:.72rem; }
.reverse-locus { padding:12px; margin-bottom:8px; background:rgba(217,207,188,.17); border-radius:5px; font-size:.8rem; line-height:1.5; }
.reverse-locus p { margin:7px 0; }
.quiet-count { color:#776b5b; font-size:.78rem; }
.source-disclosure { padding:14px 0; border-bottom:1px solid var(--line); font-size:.9rem; line-height:1.6; }
.source-disclosure summary { cursor:pointer; }
.study-footer { display:flex; gap:22px; justify-content:space-between; padding:10px 4px; font-family:var(--serif-font); }
.study-footer span { font-family:var(--ui-font); font-size:.73rem; color:#766958; }
.study-footer a { font-family:var(--ui-font); font-size:.8rem; }
.auctor-room button:focus-visible,.auctor-room a:focus-visible,.auctor-room summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.error { color:var(--accent); }
@media(max-width:720px) {
 .auctor-room .research-room-shell { width:calc(100% - 24px); padding-top:16px; }
 .author-identity { padding:24px 20px 0; }
 .author-identity .panel-manicula { width:30px; height:30px; }
 .latin-name,.author-lead,.author-resources { margin-left:0; }
 .life-dates { font-size:.88rem; }
 .author-resources { gap:20px; }
 .room-navigation { gap:0; display:grid; grid-template-columns:1fr 1fr; }
 .room-navigation a { font-size:.8rem; padding:12px 0; }
 .auctor-room .research-room-panel { padding:23px 19px; }
 .auctor-room h2 { font-size:1.65rem; }
 .secondary-title { display:block; margin:6px 0 0; }
 .section-heading { align-items:flex-start; gap:12px; }
 .inline-work-link { font-size:.74rem; margin-top:10px; }
 .work-browser { display:block; }
 .work-tree { max-height:330px; border-right:0; border-bottom:1px solid var(--line); padding-right:0; }
 .passage-detail { padding:23px 0 0; scroll-margin-top:12px; }
 .poem-references,.reverse-tree { grid-template-columns:1fr; gap:12px; }
 .study-footer { flex-wrap:wrap; gap:10px; }
 .study-footer span { order:3; width:100%; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
.author-canto-heatmap { margin:24px 0; }
.heatmap-row { display:grid; grid-template-columns:100px minmax(0,1fr); align-items:center; gap:14px; margin:10px 0; }
.heatmap-label { font-family:var(--serif-font); font-size:1rem; }
.heatmap-cells { display:grid; grid-template-columns:repeat(34,minmax(0,1fr)); gap:3px; }
.heatmap-cell { min-width:0; height:28px; padding:0; border:1px solid rgba(54,88,79,.18); border-radius:3px; cursor:pointer; background:rgba(54,88,79,var(--heat)); color:var(--ink); font-family:var(--ui-font); font-size:10px; font-variant-numeric:tabular-nums; }
.heatmap-cell.is-dark { color:#fff; }
.heatmap-cell[aria-pressed="true"] { outline:2px solid var(--accent); outline-offset:2px; }
.heatmap-note { color:var(--muted); font-size:.78rem; line-height:1.6; }
.heatmap-detail h3 { font-family:var(--serif-font); }
.room-commentary-cards { display:grid; gap:10px; margin:12px 0 18px; }
.room-commentary-cards[hidden],.room-record-body[hidden] { display:none; }
.room-commentary-card { border:1px solid rgba(93,75,49,.15); border-radius:12px; background:rgba(255,252,246,.74); overflow:hidden; }
.room-commentary-card > .authority-inline-record { border:0; background:transparent; border-radius:0; transform:none; }
.room-commentary-card.is-open { border-color:rgba(140,59,42,.32); }
.room-commentary-card .authority-inline-record-body[hidden] { display:none; }
.room-record-body { margin:0; padding:0 12px 12px; min-width:0; }
.room-record-body .reading-body { overflow-wrap:anywhere; }
.room-record-body .reading-body p { font-size:inherit; }
.record-provenance { display:block; color:var(--muted); font-size:.7rem; }
.source-excerpt { background:rgba(217,207,188,.18); border-left:2px solid var(--accent); padding:18px; margin:0 0 24px; }
.latin-line { display:grid; grid-template-columns:28px minmax(0,1fr); gap:8px; margin:6px 0; font-family:var(--serif-font); font-size:1.08rem; }
.verse-number { color:var(--muted); font-family:var(--ui-font); font-size:.7rem; padding-top:5px; }
.excerpt-credit { display:block; margin-top:16px; font-size:.68rem; line-height:1.6; }
.poem-references .poem-reference { display:block; text-decoration:none; padding:18px; }
.poem-reference .occurrence-context-line { color:var(--ink); font-family:var(--dante-quote-font); font-weight:var(--dante-quote-weight); font-size:1.25rem; margin-bottom:0; }
.source-disclosure h3 { font-family:var(--serif-font); font-size:1.1rem; margin:0 0 10px; }
@media(max-width:720px){
 .heatmap-row { grid-template-columns:minmax(0,1fr); gap:5px; }
 .heatmap-label { font-size:.75rem; }
 .heatmap-cells { gap:1px; }
 .heatmap-cell { height:28px; border-radius:2px; font-size:clamp(6px,1.8vw,10px); border:0; }
 .source-excerpt { padding:12px; }
 .latin-line { font-size:1rem; grid-template-columns:24px minmax(0,1fr); }
}
/* Supporting copy follows the main site's current readable UI scale. */
.auctor-room :is(.study-label,.research-room-toolbar,.author-resources a,.author-resources span,.room-navigation a,.edition-note,.section-note,.view-note,.inline-work-link,.view-button,.book-stat,.passage-button,.evidence-caption,.source-text-link,.empty-explanation,.unlocated,.quiet-count,.source-disclosure,.heatmap-note,.excerpt-credit,.study-footer span,.study-footer a) { font-size:1rem; line-height:1.6; }
.auctor-room .evidence-locus p { font-size:1rem; }
.auctor-room .room-record-body .reading-body p { font-size:inherit; }
.auctor-room .record-provenance,.auctor-room .evidence-locus details { font-size:.94rem; overflow-wrap:anywhere; }
.auctor-room .verse-number { font-size:.94rem; }
.auctor-room .poem-reference.occurrence-row { display:grid; gap:4px; padding:11px 12px; border-radius:14px; background:rgba(255,255,255,.66); }
.auctor-room .poem-reference .occurrence-meta { font-size:1.03rem; color:var(--accent); }
.name-tags { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0; }
.auctor-room .name-tags span { font-family:var(--ui-font); font-size:1.03rem; padding:7px 12px; border-radius:999px; background:var(--panel-strong); border:1px solid var(--line); }
.room-pointer-trigger { font:inherit; color:inherit; padding:0; border:0; background:none; cursor:pointer; }
.room-pointer-choices:not([hidden]) { display:inline-flex; flex-wrap:wrap; gap:12px; padding:6px 10px; border:1px solid var(--line); border-radius:8px; }
.room-record-body .authority-citation-action { font:inherit; }

/* The canonical author-room consumer retains the approved two-column design. */
.auctor-room .research-room-shell{width:min(1240px,calc(100% - 64px));}
.auctor-room .author-work-inline{list-style:none;margin-bottom:24px;}
.auctor-room .author-work-inline > .section-heading{margin-bottom:12px;}
.auctor-room .author-work-inline-content{padding:0;}
.auctor-room .passage-detail > .authority-room-source-list{padding:0;list-style:none;}
.auctor-room .authority-room-source-locus{border:0;padding:0;list-style:none;}
.auctor-room .authority-room-locus-list{padding:0;list-style:none;}
.auctor-room .author-room-reading-body{font-size:var(--type-size-commentary-body);line-height:1.75;}
.auctor-room .author-room-reading-paragraph{font-family:var(--ui-font);font-size:inherit;line-height:inherit;}
.auctor-room .author-room-commentary-card{padding:18px;}
.auctor-room .author-room-commentary-preview{font-family:var(--ui-font);font-size:var(--type-size-commentary-body);line-height:1.75;margin:0 0 14px;}
.auctor-room .author-room-commentary-heading{display:block;font-family:var(--ui-font);font-size:1.1rem;line-height:1.5;margin:0 0 10px;color:var(--ink);text-decoration:none;}
.auctor-room .author-room-commentary-heading:hover,.auctor-room .author-room-commentary-heading:focus-visible{color:var(--accent);text-decoration:underline;}
.auctor-room .author-room-commentary-toggle{padding:0;margin:0 0 10px;}
.auctor-room .author-room-commentary-full{padding:0;}
.auctor-room .author-poem-reference-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:18px 0 0;}
.auctor-room .author-poem-reference-list > li{grid-row:var(--quote-row,auto);grid-column:var(--quote-column,auto);}
.auctor-room .author-room-commentary-locus{border-top:1px solid var(--line);padding-top:18px;}
.auctor-room .authority-room-inline-source,.auctor-room .author-poem-reference{padding:14px;border:1px solid rgba(140,59,42,.16);border-radius:16px;background:rgba(255,255,255,.66);}
.auctor-room .authority-room-inline-source{margin:18px 0 24px;}
.auctor-room .authority-room-reading-card{padding:14px;border:1px solid rgba(140,59,42,.16);border-radius:16px;background:rgba(255,255,255,.66);margin:18px 0 24px;}
.auctor-room .authority-room-reading-card .authority-room-inline-source{background:transparent;border:0;border-radius:0;padding:0;margin:0 0 14px;}
.auctor-room .authority-room-reading-card h4{border-top:1px solid var(--line);padding-top:14px;margin:14px 0 0;}
.auctor-room .authority-room-reading-card h4:first-child{border-top:0;padding-top:0;}
.auctor-room .authority-room-reading-card .author-poem-reference{background:transparent;border:0;border-radius:0;padding:0;}
.auctor-room .authority-room-source-lines{font-family:var(--dante-quote-font);font-size:1.0625rem;line-height:1.45;color:var(--coverage);font-weight:var(--dante-quote-weight);}
.auctor-room .authority-room-source-prose{font-family:var(--ui-font);font-size:1.125rem;line-height:1.75;font-weight:var(--dante-quote-weight);}
.auctor-room .authority-room-source-prose p{margin:0 0 1em;}
.auctor-room .authority-room-source-line{display:block;margin:0;padding:0;font-size:inherit;line-height:inherit;}
.auctor-room .authority-room-source-line span{font-weight:900;}
.auctor-room .authority-room-source-heading{font-family:var(--ui-font);font-size:1.125rem;line-height:1.45;font-weight:700;color:var(--ink);margin:0 0 4px;}
.auctor-room .authority-room-reading-card .authority-room-source-heading{border:0;padding:0;margin:0 0 4px;}
@media(max-width:720px){.auctor-room .author-poem-reference-list{grid-template-columns:1fr;}.auctor-room .author-poem-reference-list > li{grid-row:auto;grid-column:auto;}}
.auctor-room .author-poem-reference{min-width:0;display:grid;gap:4px;text-decoration:none;}
.auctor-room .author-poem-reference .occurrence-meta{color:var(--ink);font-family:var(--ui-font);font-size:1.125rem;font-weight:700;}
.auctor-room .author-poem-reference .occurrence-context-line{color:var(--coverage);font-family:var(--dante-quote-font);font-size:1.125rem;font-weight:var(--dante-quote-weight);line-height:1.45;overflow-wrap:break-word;}
.auctor-room .author-poem-reference:hover,.auctor-room .author-poem-reference:focus-visible{border-color:rgba(140,59,42,.36);}
.auctor-room .author-canto-heatmap-scroll{width:100%;overflow:visible;}
.auctor-room .author-canto-heatmap-grid{width:100%;min-width:0;grid-template-columns:90px repeat(34,minmax(0,1fr));gap:3px;}
.auctor-room .author-canto-heatmap-row-label{font-family:var(--ui-font);font-size:1em;font-weight:700;text-align:left;padding-left:0;}
.auctor-room .author-canto-heatmap-cell,.auctor-room .author-canto-heatmap-empty{width:100%;min-width:0;padding:0;font-size:10px;}
.auctor-room .author-room-panel .panel-head{margin-bottom:14px;}
.auctor-room .author-room-panel h2{margin-top:0;}
.auctor-room .author-name-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;}
.auctor-room .author-name-tags .compare-chip{font-family:var(--ui-font);font-size:1.03rem;line-height:1.35;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel-strong);}
.auctor-room .author-name-tags .authority-active-author,
.auctor-room .author-room-reading-body .authority-active-author { background:rgba(247,220,111,.36);color:var(--ink);box-shadow:inset 0 -.12em 0 rgba(226,183,43,.16); }
.auctor-room .work-title-forms .compare-chip-row { display:flex;flex-wrap:wrap;gap:8px;margin:12px 0; }
.auctor-room .work-title-forms .pill { font-family:var(--ui-font);font-size:1.03rem;line-height:1.35;padding:7px 12px;border-radius:999px; }
.auctor-room .authority-room-spine-list{list-style:none;padding-left:12px;}
.auctor-room .source-disclosure{margin-top:12px;}
.auctor-room .work-tree .passage-button[aria-current=true]{border-color:var(--accent);background:var(--panel-strong);}
@media(max-width:720px){.auctor-room .research-room-shell{width:calc(100% - 24px);}.auctor-room .author-canto-heatmap-grid{grid-template-columns:repeat(17,minmax(0,1fr));gap:3px;}.auctor-room .author-canto-heatmap-cell{font-size:10px;}.auctor-room .author-canto-heatmap-row-label{grid-column:1/-1;text-align:left;margin-top:10px;}}
.author-work-switcher { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px; }
.author-work-switcher .view-button { font:inherit; font-weight:700; border:1px solid var(--line); padding:12px 20px; }
.author-work-switcher .view-button.is-active { background:var(--accent);color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.12); }
.author-work-browser .author-work-inline { background:transparent;border:0;box-shadow:none;padding:0; }
.author-work-inline[hidden] { display:none; }
.perseus-work-resources { margin:12px 0 22px;font-size:1rem; }
.perseus-work-resources summary { cursor:pointer;font-weight:700;color:var(--accent); }
.perseus-work-resources ul { display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0; }
.perseus-work-resources p { color:var(--muted);font-size:1rem; }
.author-source-division-map { border-top:1px solid var(--line);padding:16px 0; }
.author-source-division-bar { display:flex;flex-wrap:nowrap;gap:0;width:100%;height:30px; }
.author-source-division-bar-wrapped { display:grid;grid-template-columns:repeat(auto-fill,minmax(max(42px,calc((100% - 69px)/24)),1fr));grid-auto-rows:30px;gap:3px;height:auto; }
.author-source-division-cell { flex:1 1 0;min-width:0;border:0;box-shadow:inset -1px 0 rgba(255,255,255,.65);border-radius:0;padding:0;cursor:pointer;background:rgba(54,88,79,var(--source-heat-alpha));font:700 .95rem var(--ui-font);color:var(--ink); }
.author-source-division-cell span { display:block;margin-top:4px;font-weight:400; }
.author-source-division-cell[aria-pressed=true],.author-source-division-cell:focus-visible { outline:2px solid var(--accent);outline-offset:-2px;position:relative;z-index:1; }
.author-source-navigation-map { margin-top:16px; }
.author-source-navigation-bar .author-source-division-cell { padding:0; }
.author-source-navigation-detail { margin-top:12px; }
