.ogham-page { padding-top:12px; }
.ogham-page .breadcrumbs { margin-bottom:12px; }
.ogham-page .cabinet-header { padding-bottom:16px; margin-bottom:20px; }
.ogham-page .cabinet-header .eyebrow { margin:0 0 4px; }
.ogham-page .cabinet-header h1 { margin:4px 0 8px; }
.ogham-page .intro { margin:0; }
.title-with-info { display:flex; align-items:center; gap:12px; }
.info-link { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:50%; }
.info-link svg { width:25px; height:25px; }
.ogham-page a { color:var(--gold); text-underline-offset:3px; }
.oracle-workspace { padding:24px; background:var(--panel); border:1px solid var(--line); border-radius:16px; }
.layout-field { display:grid; gap:8px; max-width:360px; color:var(--gold); font-size:.85rem; }
.ogham-page select { width:100%; min-height:44px; padding:10px 32px 10px 10px; border:1px solid var(--line); border-radius:7px; background-color:var(--bg); color:var(--ink); font:inherit; }
.layout-description { color:var(--muted); margin:12px 0 18px; }
.cast-actions,.reading-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.cast-actions button,.reading-actions button { min-height:44px; padding:12px 18px; border:1px solid var(--gold); border-radius:8px; cursor:pointer; background:var(--primary); color:var(--primary-ink); font:600 .9rem/1.3 system-ui,sans-serif; }
.cast-actions .secondary { background:transparent; color:var(--ink); }
.cast-actions button:disabled { opacity:.45; cursor:not-allowed; }
.ogham-page :is(button,select,summary):focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.source-note { font-size:.82rem; line-height:1.6; color:var(--muted); }
.stave-slots { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:20px 0; }
.stave-slots[data-count="1"] { grid-template-columns:minmax(0,240px); justify-content:center; }
.stave-slots[data-count="5"] { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.stave-slot { min-width:0; display:grid; gap:10px; }
.stave-slot label { color:var(--gold); font-size:.85rem; }
.stave-art { width:100%; aspect-ratio:1; border-radius:12px; overflow:hidden; background:var(--bg); border:1px solid var(--line); display:grid; place-items:center; }
.stave-art img { width:100%; height:100%; object-fit:contain; }
.stave-placeholder { font:3rem/1 Palatino,'Palatino Linotype',Georgia,serif; color:var(--gold); opacity:.65; }
.stave-slot select { font-size:.8rem; }
#reading-status { color:var(--muted); margin:14px 0; font-size:.88rem; }
.reading-actions { margin-top:20px; }
.sign-in-note { font-size:.83rem; }
.reading-actions:has([data-save-reading]:not([hidden])) .sign-in-note { display:none; }
.reading { margin-top:24px; border-top:1px solid var(--gold); }
.reading-item { padding:24px 0; border-bottom:1px solid var(--line); }
.reading-item:last-child { border-bottom:0; padding-bottom:0; }
.reading-item h3 { margin:6px 0 8px; font-size:1.8rem; }
.reading-item .eyebrow { margin:0; }
.stave-keywords { color:var(--gold); font-size:.9rem; }
.stave-meaning { font:1.17rem/1.7 Palatino,'Palatino Linotype',Georgia,serif; }
.reading-item h4 { margin:20px 0 4px; font-size:.8rem; font-weight:600; color:var(--gold); text-transform:uppercase; letter-spacing:.1em; }
.reading-item p { margin:8px 0; }
.stave-question { color:var(--muted); font-style:italic; }
.ogham-page [hidden] { display:none!important; }
.stave-gallery { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.gallery-stave { min-width:0; }
.gallery-stave img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; border-radius:12px; }
.gallery-stave h3 { margin:10px 0 4px; font-size:1.2rem; }
.gallery-stave p { margin:4px 0; font-size:.85rem; color:var(--muted); }
.gallery-stave summary { padding:12px 0; cursor:pointer; color:var(--gold); font-size:.85rem; }
.guide-section { margin:32px 0; }
.guide-section h2 { font-size:1.6rem; }
.guide-section li { line-height:1.7; margin-bottom:12px; }
@media(max-width:720px) { .oracle-workspace { padding:20px 14px; } .stave-slots[data-count="5"] { grid-template-columns:repeat(3,minmax(0,1fr)); } .stave-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .ogham-page { padding-inline:14px; } .stave-slots { gap:8px; } .stave-slot label { font-size:.75rem; } .stave-slot select { padding-left:6px; font-size:.75rem; } .reading-actions button { flex:1 1 130px; } .sign-in-note { flex-basis:100%; } }
@media(max-width:480px) {
  .stave-slots:not([data-count="1"]) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 12px; }
  .stave-slots:not([data-count="1"]) .stave-slot:last-child { grid-column:1 / -1; width:calc(50% - 6px); justify-self:center; }
  .stave-slot select { font-size:16px; }
  .stave-slot label { font-size:.85rem; }
}

.ogham-controls-fields { display:grid; grid-template-columns:repeat(2,minmax(0,360px)); gap:16px; }
.artwork-status { margin:8px 0 16px; }
@media(max-width:600px) { .ogham-controls-fields { grid-template-columns:1fr; gap:12px; } .ogham-page .layout-field select { font-size:16px; } }
