/* Reflection reuses YogiSoul's existing layout, colours and type. */
.rf-section{padding-bottom:clamp(48px,8vw,96px)}
.rf-link-card{display:flex;flex-direction:column;padding:28px;text-decoration:none;gap:12px}
.rf-link-card h2{font-size:clamp(27px,3vw,38px);margin:0}
.rf-link-card p{margin:0;line-height:1.65}
.rf-symbol{display:block;font-size:48px;line-height:1.2;color:var(--clay);margin:0 0 12px}
.rf-sign-glyph{color:var(--clay)}
.rf-link-card .c-link{margin-top:auto;padding-top:12px}
.rf-notebook{margin:28px 0}
.rf-draw{margin:28px 0}
.rf-tarot-card{padding:24px}
.rf-draw .rf-tarot-card:only-child{max-width:600px;width:100%;margin:auto}
.rf-card-face{padding:28px 20px;border:1px solid var(--line);border-radius:14px;text-align:center;background:var(--sand);margin:16px 0 24px}
.rf-card-face>span{display:block;font:400 72px/1.3 var(--display);color:var(--clay)}
.rf-card-face h2{font-size:36px;margin:12px 0 0}
.rf-card-face p{font:500 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--bark-2)}
.rf-horoscope,.rf-chart-summary,.rf-planet-prompt{padding:24px}
.rf-horoscope .rf-symbol{font-size:32px}
.rf-birth-form{max-width:850px}
.rf-birth-form .grid{gap:18px}
.rf-birth-form details{margin:18px 0}
.rf-place-field{position:relative;margin-top:20px}
.rf-place-field ul{list-style:none;padding:8px;margin:0;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.rf-place-field ul[hidden]{display:none}
.rf-place-field li{padding:0}
.rf-place-field button{width:100%;text-align:left;border:0;background:none;padding:12px 10px;color:var(--bark);font:450 15px/1.5 var(--sans)}
.rf-place-field button:hover,.rf-place-field button:focus-visible{background:var(--sand);outline:2px solid var(--clay)}
.rf-chart-result{margin:48px 0}
.rf-chart-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center;margin:24px 0}
.rf-chart-summary h3{font:400 30px/1.15 var(--display);margin:8px 0}
.rf-chart-summary p{margin:8px 0;line-height:1.6}
.rf-wheel{width:100%;max-width:620px;height:auto;display:block;margin:auto}
.rf-aspects{margin:28px 0;padding:20px;border:1px solid var(--line);border-radius:12px}
.rf-planet-prompt summary{font:500 15px/1.5 var(--sans)}
.rf-chart-result .c-prose{max-width:none}
@media(max-width:760px){.rf-chart-grid{grid-template-columns:1fr}.rf-birth-form .grid.two{grid-template-columns:1fr}.rf-link-card{padding:22px}.rf-tarot-card{padding:18px}}

.rf-result-heading{display:block}.rf-result-heading h2{font:400 clamp(36px,5vw,60px)/1.05 var(--display);margin:14px 0}.rf-result-heading p{max-width:850px;line-height:1.6}

/* Reflection reading controls */
[data-rf-panel][hidden],[data-zodiac-element][hidden]{display:none!important}
.rf-filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.rf-filter-bar>span{margin-left:auto}
.rf-pill,.rf-chart-tabs button{appearance:none;border:1px solid var(--line);border-radius:100px;background:transparent;padding:12px 22px;font:500 14px/1.2 var(--sans);color:var(--bark);cursor:pointer}
.rf-pill[aria-pressed=true],.rf-chart-tabs button[aria-selected=true]{background:var(--bark);color:var(--paper);border-color:var(--bark)}
.rf-pill:focus-visible,.rf-chart-tabs button:focus-visible,.rf-sign-tab:focus-visible,.rf-prompt-btn:focus-visible{outline:2px solid var(--clay);outline-offset:4px}
.rf-horoscope-reader{display:grid;grid-template-columns:290px minmax(0,1fr);gap:36px;align-items:start;margin-bottom:28px}
.rf-sign-chooser{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rf-sign-tab{display:flex;align-items:center;gap:10px;padding:18px 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--bark);cursor:pointer;font:500 14px/1.2 var(--sans)}
.rf-sign-tab>span:first-child{font-size:25px;color:var(--clay)}
.rf-sign-tab[aria-selected=true]{border-color:var(--clay);background:var(--sand);box-shadow:inset 0 0 0 1px var(--clay)}
.rf-reading-stage .rf-horoscope{padding:clamp(28px,5vw,56px);border-radius:24px;box-shadow:none;background:var(--paper)}
.rf-reading-stage .rf-horoscope h2{font:400 clamp(44px,6vw,70px)/1.05 var(--display);margin:6px 0 22px}
.rf-reading-stage .rf-horoscope>p:not(.c-kicker):not(.rf-symbol){font-size:18px;line-height:1.75;max-width:680px}
.rf-reading-stage .rf-symbol{font-size:52px}
.rf-reading-stage .c-note{padding:24px;border-left:2px solid var(--clay);border-radius:0 14px 14px 0}
.rf-chart-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}
.rf-chart-result [role=tabpanel]{outline:none}
.rf-spread-picker{display:flex;gap:12px;flex-wrap:wrap;border:0;margin:0;padding:0;flex:1}
.rf-spread-picker legend{font:500 11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;color:var(--bark-2)}
.rf-spread-picker label{display:block;flex:1;min-width:200px;position:relative;cursor:pointer;margin:0}
.rf-spread-picker input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.rf-spread-picker label>span{display:flex;flex-direction:column;gap:7px;border:1px solid var(--line);border-radius:14px;padding:20px 24px;background:var(--paper)}
.rf-spread-picker label strong{font:400 26px/1.1 var(--display)}
.rf-spread-picker label small{font:450 13px/1.4 var(--sans);color:var(--bark-2)}
.rf-spread-picker input:checked+span{border-color:var(--clay);box-shadow:inset 0 0 0 1px var(--clay);background:var(--sand)}
.rf-spread-picker input:focus-visible+span{outline:2px solid var(--clay);outline-offset:4px}
.rf-draw-controls{display:flex;align-items:end;gap:28px}
.rf-draw-controls>.c-btn{white-space:nowrap;margin-bottom:3px;min-height:58px}
.rf-deck-rest{display:flex;justify-content:center;gap:20px;padding:36px 0 18px}
.rf-deck-rest>div{display:grid;place-items:center;width:140px;aspect-ratio:2/3;border-radius:14px;border:1px solid var(--clay);outline:1px solid var(--line);outline-offset:-9px;background:var(--sand);font:400 55px/1 var(--display);color:var(--clay)}
.rf-card-face{position:relative;min-height:255px;display:flex;flex-direction:column;justify-content:center;outline:1px solid var(--line);outline-offset:-9px}
.rf-card-face:before,.rf-card-face:after{content:'✧';position:absolute;color:var(--clay);font-size:18px}
.rf-card-face:before{top:16px;left:18px}.rf-card-face:after{bottom:16px;right:18px}
.rf-prompt-btn{border:0;border-bottom:1px solid var(--clay);background:none;color:var(--clay);font:500 14px/1.4 var(--sans);padding:8px 0;cursor:pointer}
.rf-active-prompt{font:400 27px/1.35 var(--display);max-width:700px;border-left:2px solid var(--clay);padding-left:18px;margin:20px 0}
.rf-notebook{padding:clamp(24px,4vw,44px);border-radius:22px}
.rf-notebook h2{font:400 clamp(32px,4vw,46px)/1.1 var(--display)}
@media(max-width:760px){.rf-horoscope-reader{grid-template-columns:1fr;gap:22px}.rf-sign-chooser{grid-template-columns:repeat(3,minmax(0,1fr))}.rf-sign-tab{padding:14px 8px;gap:6px;font-size:12px}.rf-sign-tab>span:first-child{font-size:21px}.rf-draw-controls{flex-direction:column;align-items:stretch;gap:18px}.rf-spread-picker label{min-width:130px}.rf-spread-picker label>span{padding:17px 14px}.rf-spread-picker label strong{font-size:23px}.rf-deck-rest{gap:12px}.rf-deck-rest>div{width:92px;font-size:35px}.rf-chart-tabs{gap:8px}.rf-chart-tabs button{padding:12px 15px;font-size:12px}.rf-filter-bar>span{width:100%;margin-left:0}.rf-pill{padding:11px 17px}}

.rf-hub-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:65px;align-items:center}.rf-hub-hero .c-actions{margin-top:30px;align-items:center;gap:24px}.rf-orbit-art{color:var(--clay);text-align:center;max-width:390px;margin:auto}.rf-orbit-art svg{width:100%;height:auto}.rf-orbit-art span{display:block;font:500 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.22em;margin-top:15px}.rf-reading-stage p.rf-symbol{font-size:52px;line-height:1.2;color:var(--clay)}.rf-link-card{box-shadow:none}.rf-link-card:focus-visible{outline:2px solid var(--clay);outline-offset:4px}
@media(max-width:760px){.rf-hub-hero{grid-template-columns:1fr;gap:35px}.rf-orbit-art{max-width:220px}.rf-hub-hero .c-actions{gap:18px}}

#birth-result,#reflection-notebook{scroll-margin-top:110px}

.c-page-head .c-wrap.rf-hub-hero{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.c-page-head .rf-hub-hero>div{grid-column:auto}.c-page-head .rf-hub-hero .rf-orbit-art{width:100%;max-width:390px}
@media(max-width:760px){.c-page-head .c-wrap.rf-hub-hero{grid-template-columns:1fr}.c-page-head .rf-hub-hero .rf-orbit-art{max-width:220px}}

.c-page-head .c-wrap.rf-hub-hero>div{grid-column:auto!important}
