.forest-tarot{box-sizing:border-box;width:min(1060px,94vw);max-height:90dvh;padding:36px;color:#eee4d2;background:radial-gradient(ellipse at top,#30263f,#10151e 70%);border:1px solid #948161;border-radius:20px;overflow:auto}.forest-tarot::backdrop{background:#030713ce;backdrop-filter:blur(5px)}.forest-tarot h2{font-size:clamp(24px,4vw,36px);margin:8px 0 14px}.forest-tarot p{line-height:1.8}.tarot-close{position:absolute;right:16px;top:12px;background:none;color:#dfd2bb;border:0;font-size:30px;cursor:pointer}.tarot-eyebrow{color:#c6ac79;font-size:12px;letter-spacing:2px}.tarot-intro,.tarot-note{color:#b7b1b9}.forest-tarot form{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:24px 0}.forest-tarot select,.tarot-deal{padding:12px 16px;border:1px solid #9c8663;border-radius:7px;background:#211e2e;color:#f5ead4;font:inherit}.tarot-deal{background:#d4bc88;color:#171821;cursor:pointer}.forest-tarot button:focus-visible,.forest-tarot select:focus-visible{outline:3px solid #ecd097;outline-offset:4px}.tarot-status{min-height:28px;color:#d4bc88}.tarot-spread{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:7px}.tarot-choice{position:relative;min-width:0;padding:0;border:1px solid #968268;background:#242235;border-radius:5px;cursor:pointer;overflow:hidden;transition:transform .15s}.tarot-choice img{display:block;width:100%;height:auto}.tarot-choice:not(:disabled):hover{transform:translateY(-6px)}.tarot-choice.chosen{border:2px solid #ffe0a0;opacity:.6}.tarot-choice span{position:absolute;inset:0;display:grid;place-items:center;font-size:26px;color:white;background:#17102588}.tarot-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.tarot-reading-grid article{min-width:0;border-top:1px solid #7b6a55;padding-top:12px}.tarot-reading-grid img{display:block;width:min(100%,180px);height:auto;margin:16px auto;border-radius:8px}.tarot-result{scroll-margin-top:20px;margin-top:28px}.tarot-theme{color:#cfb787}.tarot-action{padding:12px;border-left:2px solid #b79a66;background:#ffffff06}.tarot-note{font-size:12px}.forest-tarot button:disabled{cursor:default}@media(max-width:600px){.forest-tarot{padding:28px 18px}.tarot-spread{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.tarot-reading-grid{grid-template-columns:1fr}.forest-tarot form{gap:10px}.forest-tarot label{width:100%}.tarot-reading-grid img{width:150px}}@media(prefers-reduced-motion:reduce){.tarot-choice{transition:none}}

/* Three overlapping rows deal from a single pile at the left edge. */
.tarot-selected{display:flex;justify-content:center;gap:clamp(14px,5vw,64px);margin:10px 0 28px}.tarot-slot{width:clamp(74px,12vw,120px);text-align:center}.tarot-slot p{font-size:12px;color:#d4bc88;margin:0 0 8px}.tarot-slot-card{aspect-ratio:2/3;border:1px dashed #a58b6266;border-radius:7px;display:grid;place-items:center;color:#a58b62;position:relative;transform-origin:top left}.tarot-slot-card.filled{border:1px solid #d4bc88;z-index:5;box-shadow:0 7px 24px #0008}.tarot-slot-card img{width:100%;height:100%;object-fit:cover;border-radius:6px}.tarot-spread{display:block;position:relative;height:390px;--card-width:76px;--row-height:128px;margin:12px 0 24px}.tarot-spread .tarot-choice{position:absolute;width:var(--card-width);left:calc(var(--column) * (100% - var(--card-width)) / 25);top:calc(var(--row) * var(--row-height));overflow:visible;box-shadow:-3px 1px 7px #0006;transform-origin:top left}.tarot-choice img{border-radius:4px}.tarot-choice.chosen{visibility:hidden}.tarot-choice:not(:disabled):hover,.tarot-choice:focus-visible{z-index:4;transform:translateY(-12px)}.tarot-spread.is-stacked{height:180px}.tarot-stack-card{position:absolute;width:90px;height:135px;left:calc(var(--stack)*2px);top:calc(var(--stack)*2px);border:1px solid #bca576;border-radius:6px;box-shadow:0 2px 5px #0008;transform:rotate(-4deg)}@media(max-width:600px){.tarot-spread{--card-width:48px;--row-height:86px;height:260px}.tarot-selected{gap:20px}.tarot-slot p{font-size:10px}.tarot-spread.is-stacked{height:160px}} 

.tarot-source{position:relative;height:102px;width:76px;margin:0 auto 12px}.tarot-source .tarot-stack-card{width:58px;height:87px;left:calc(var(--stack)*1.4px);top:calc(var(--stack)*1.2px);transform:none}.tarot-spread.is-stacked{height:12px}.tarot-slot-card{perspective:600px}@media(max-width:600px){.tarot-source{height:86px;width:64px}.tarot-source .tarot-stack-card{width:48px;height:72px}.tarot-spread.is-stacked{height:12px}}

/* The pile stays at the original left-hand table position; departing cards
   are layered above its top card, not emitted from under the stack. */
.tarot-table{position:relative;isolation:isolate}.tarot-source{position:absolute;left:0;top:0;width:104px;height:154px;margin:0;z-index:100;pointer-events:none}.tarot-source .tarot-stack-card{width:76px;height:114px;left:calc(var(--stack)*1.5px);top:calc(var(--stack)*1.5px)}.tarot-spread.is-stacked{height:160px}.tarot-source[hidden]{display:none}@media(max-width:600px){.tarot-source{width:74px;height:116px}.tarot-source .tarot-stack-card{width:48px;height:72px}.tarot-spread.is-stacked{height:116px}}

.tarot-reversed{transform:rotate(180deg)}.tarot-orientation{text-align:center;color:#dbc28e;font-size:13px;margin:8px 0 16px}.tarot-orientation.reversed{color:#c5b2df}.tarot-more{margin:24px 0;border-top:1px solid #847052;padding-top:16px}.tarot-more summary{cursor:pointer;color:#dbc28e}.tarot-more section{padding:12px 0}

.forest-tarot .tarot-concern-form{display:block}.tarot-options{border:0;padding:0;margin:16px 0;min-width:0}.tarot-options legend{color:#b7b1b9;font-size:13px;margin-bottom:10px}.tarot-option-buttons{display:flex;gap:9px;flex-wrap:wrap}.tarot-option{font:inherit;color:#eee4d2;background:#211e2e;border:1px solid #77664f;border-radius:7px;padding:10px 15px;cursor:pointer}.tarot-option[aria-pressed=true]{background:#d4bc881a;border-color:#d4bc88;color:#f1d8a3}.tarot-option[hidden],.tarot-options[hidden],.tarot-change[hidden]{display:none}.tarot-change{border:0;background:none;color:#c8b68f;text-decoration:underline;cursor:pointer;margin:0 16px 12px 0;padding:8px 0}.tarot-concern-form .tarot-deal:disabled{opacity:.55}

#tarot-story{display:block;box-sizing:border-box;width:100%;margin-top:10px;padding:14px;background:#131723;color:#eee4d2;border:1px solid #8b7859;border-radius:8px;font:inherit;line-height:1.7;resize:vertical}.tarot-personal blockquote{white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0;padding:14px;border-left:2px solid #bba170;background:#ffffff06}

.forest-tarot .observatory-birth-form{display:flex;flex-direction:column;align-items:stretch;gap:16px;max-width:440px}.observatory-birth-form label{display:flex;flex-direction:column;gap:8px;color:#d9c8aa}.observatory-birth-form label[hidden]{display:none}.observatory-birth-form select{width:100%;box-sizing:border-box}.observatory-birth-form .tarot-deal{margin-top:6px}

.forest-tarot .observatory-birth-form{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));max-width:560px;gap:14px 12px}.observatory-birth-form label:nth-of-type(1),.observatory-birth-form label:nth-of-type(2){grid-column:span 3}.observatory-birth-form label:nth-of-type(3),.observatory-birth-form label:nth-of-type(4),.observatory-birth-form label:nth-of-type(5){grid-column:span 2}.observatory-birth-form label{min-width:0}.observatory-birth-form select{min-width:0;padding:12px 8px}.observatory-birth-form .tarot-deal{grid-column:1 / -1}

.constellation-figure{margin:24px 0 28px;padding:14px;border:1px solid #6484b344;border-radius:16px;background:radial-gradient(ellipse at 50% 45%,#203451 0%,#101d34 45%,#080e1d 100%);overflow:hidden}.constellation-figure svg{display:block;width:100%;max-height:340px}.constellation-figure figcaption{text-align:center;color:#b9cce5;font-size:12px;letter-spacing:1px;padding:4px 0 10px}

.observatory-toolbar{position:sticky;top:-36px;z-index:20;display:flex;justify-content:flex-end;background:#141925;padding:8px 0;border-bottom:1px solid #94816144}.observatory-toolbar .tarot-close{position:static;display:grid;place-items:center;width:44px;height:44px;border:1px solid #948161;border-radius:8px;background:#211e2e;line-height:1}@media(max-width:600px){.observatory-toolbar{top:-28px}}

.observatory-toolbar{align-items:center;justify-content:space-between;gap:16px}.forest-tarot .observatory-toolbar h2{margin:0;font-size:clamp(20px,3vw,28px);line-height:1.35}.observatory-toolbar .tarot-close{flex-shrink:0}
