.component{max-width:720px;margin:2rem auto;padding:0;box-sizing:border-box}.component-title{margin-bottom:.75rem;font-family:"Cinzel Decorative","Uncial Antiqua",Georgia,serif;font-size:1.15rem;text-align:center}.search-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:2000;padding:4rem 1rem;overflow-y:auto}.search-modal.open{display:block}.search-modal-inner{background:#fff;max-width:720px;margin:0 auto;padding:1.5rem;border-radius:10px;position:relative}.search-modal-close{position:absolute;top:.5rem;right:.75rem;background:0;border:0;font-size:1.75rem;line-height:1;color:#555;cursor:pointer}.component-tarot-card,.component-tarot-spread{text-align:center}.tarot-card-panel .tarot-card-panel-inner,.component-tarot-spread .tarot-spread-panel-inner{background:linear-gradient(160deg,rgba(26,13,46,0.06) 0%,rgba(106,90,205,0.1) 50%,rgba(212,175,55,0.06) 100%);border:1px solid rgba(106,90,205,0.28);border-radius:14px;padding:1.35rem 1.25rem 1.5rem;box-shadow:0 4px 24px rgba(90,65,120,0.08)}.tarot-component-badge{display:inline-block;margin:0 auto .75rem;padding:.2rem .65rem;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5a4178;background:rgba(106,90,205,0.14);border:1px solid rgba(106,90,205,0.22)}.tarot-panel-title{margin-top:0;margin-bottom:.5rem}.tarot-pull-prompt{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:#5a4178;letter-spacing:.02em}.tarot-pull.is-revealed .tarot-pull-prompt,.component-tarot-card.is-revealed .tarot-pull-prompt{color:#4a3d8f}.tarot-reveal:not(.is-revealed) .tarot-card-front{background:#1a0d2e}.tarot-reveal:not(.is-revealed) .js-tarot-front-img,.tarot-spread-card:not(.is-revealed) .js-tarot-front-img{display:none}.tarot-spread-card:not(.is-revealed) .tarot-card-front{background:#1a0d2e}.tarot-card-flip{width:200px;height:320px;margin:0 auto 1rem;perspective:1200px;cursor:pointer;outline:0}.tarot-card-flip:focus-visible .tarot-card-flip-inner{box-shadow:0 0 0 3px #d4af37}.tarot-card-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(0.4,0.2,0.2,1);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,0.35)}.tarot-card-flip.flipped .tarot-card-flip-inner{transform:rotateY(180deg)}.tarot-card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:12px;overflow:hidden;background:#1a0d2e}.tarot-card-face img{width:100%;height:100%;object-fit:cover;display:block}.tarot-card-front{transform:rotateY(180deg)}.component-tarot-card.tarot-reversed.flipped .tarot-card-flip-inner{transform:rotateY(180deg) rotate(180deg)}.tarot-card-meaning{text-align:left;background:rgba(26,13,46,0.06);border:1px solid rgba(106,90,205,0.12);border-radius:10px;padding:1rem 1.25rem;margin-top:1rem}.tarot-card-meaning[hidden]{display:none!important}.tarot-card-name{font-family:"Cinzel Decorative",Georgia,serif;margin-bottom:.5rem}.tarot-keyword{display:inline-block;font-size:.85rem;color:#5a4178;font-style:italic}.tarot-card-text{margin-bottom:0}.tarot-spread-row{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center}.tarot-spread-card{flex:1 1 200px;max-width:240px;text-align:center}.tarot-spread-card .tarot-card-flip{width:160px;height:256px}.tarot-spread-label{font-family:"Cinzel Decorative",Georgia,serif;font-size:.95rem;margin-bottom:.5rem;color:#5a4178;text-transform:uppercase;letter-spacing:.08em}.tarot-spread-meaning{text-align:left;font-size:.9rem;margin-top:.75rem;background:rgba(26,13,46,0.06);border:1px solid rgba(106,90,205,0.12);border-radius:10px;padding:.75rem .9rem}.tarot-spread-meaning[hidden]{display:none!important}.tarot-spread-meaning h5{font-family:"Cinzel Decorative",Georgia,serif;font-size:1rem;margin-bottom:.35rem;color:#4a3d8f}.tarot-spread-meaning p{margin:0;line-height:1.5;color:#3d3558}.component-rune,.component-rune-cast{text-align:center}.rune-cast-panel .rune-cast-panel-inner,.rune-panel .rune-panel-inner{background:linear-gradient(160deg,rgba(42,31,18,0.06) 0%,rgba(106,90,205,0.08) 55%,rgba(212,175,55,0.07) 100%);border:1px solid rgba(74,53,32,0.28);border-radius:14px;padding:1.35rem 1.25rem 1.5rem;box-shadow:0 4px 24px rgba(42,31,18,0.1)}.rune-component-badge{display:inline-block;margin:0 auto .75rem;padding:.2rem .65rem;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5a4178;background:rgba(106,90,205,0.12);border:1px solid rgba(106,90,205,0.2)}.rune-panel-title{margin-top:0;margin-bottom:.35rem}.rune-cast-subtitle,.rune-cast-prompt,.rune-bag-prompt{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:#5a4178}.rune-bag-stage{margin:0 auto 1rem;max-width:280px}.rune-bag-stage[hidden]{display:none!important}.rune-bag-shake{display:block;margin:0 auto .85rem;padding:0;border:0;background:transparent;cursor:pointer;outline:0}.rune-bag-shake:disabled{cursor:default;opacity:.65}.rune-bag-shake:focus-visible .rune-bag-body{box-shadow:0 0 0 3px #d4af37,0 12px 28px rgba(0,0,0,0.35)}.rune-bag-body{display:block;width:120px;height:100px;margin:0 auto;border-radius:8px 8px 42% 42%;background:radial-gradient(ellipse 80% 50% at 50% 20%,rgba(255,255,255,0.12),transparent 55%),linear-gradient(165deg,#6b4f2e 0%,#3d2a16 45%,#2a1f12 100%);box-shadow:0 12px 28px rgba(0,0,0,0.35),inset 0 -8px 16px rgba(0,0,0,0.35);transition:transform .2s ease}.rune-bag-tie{display:block;width:36px;height:14px;margin:-6px auto 0;border-radius:4px;background:linear-gradient(180deg,#8b6914,#5c4210);box-shadow:0 2px 6px rgba(0,0,0,0.25)}.rune-bag-shake:hover:not(:disabled) .rune-bag-body{transform:translateY(-2px)}.rune-bag-stage.is-shaking .rune-bag-body{animation:rune-bag-shake .55s ease-in-out}@keyframes rune-bag-shake{0%,100%{transform:rotate(0) translateY(0)}15%{transform:rotate(-9deg) translateY(-4px)}30%{transform:rotate(8deg) translateY(2px)}45%{transform:rotate(-7deg) translateY(-3px)}60%{transform:rotate(6deg) translateY(1px)}75%{transform:rotate(-4deg) translateY(-2px)}}.rune-slot-drawn[hidden],[data-rune-pending][hidden]{display:none!important}.rune-slot-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;min-width:140px;margin:0 auto;padding:1rem;border:2px dashed rgba(106,90,205,0.28);border-radius:14px;background:rgba(26,13,46,0.04);color:#6b6278}.rune-slot-num{font-family:"Cinzel Decorative",Georgia,serif;font-size:1.75rem;line-height:1;color:rgba(106,90,205,0.35);margin-bottom:.35rem}.rune-slot-wait{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.rune-single-result{max-width:200px;margin:0 auto}.rune-cast-row{display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:center;margin-top:.5rem}.rune-stone{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:140px;height:180px;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,0.15),transparent 60%),linear-gradient(160deg,#4a3520,#2a1f12);color:#f4e6c1;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,0.3),inset 0 0 18px rgba(0,0,0,0.4);cursor:pointer;margin:0 auto;transition:transform .25s ease,box-shadow .25s ease;outline:0}.rune-stone:hover{transform:translateY(-3px)}.rune-stone:focus-visible{box-shadow:0 0 0 3px #d4af37,0 10px 24px rgba(0,0,0,0.3)}.rune-glyph{font-size:4rem;line-height:1;text-shadow:0 0 8px rgba(212,175,55,0.5)}.rune-name{margin-top:.5rem;font-family:"Cinzel Decorative",Georgia,serif;font-size:1rem;letter-spacing:.05em}.rune-meaning{max-height:0;overflow:hidden;opacity:0;transition:max-height .4s ease,opacity .3s ease,margin-top .3s ease;text-align:left;padding:0 1rem}.component-rune.revealed .rune-meaning,.rune-cast-stone.revealed .rune-meaning,.rune-slot-drawn.revealed .rune-meaning{max-height:600px;opacity:1;margin-top:1rem}.rune-translit{margin-bottom:.5rem}.rune-keyword{font-size:.85rem;color:#5a4178;font-style:italic}.rune-cast-stone{flex:1 1 160px;max-width:200px}.rune-cast-label{font-family:"Cinzel Decorative",Georgia,serif;font-size:.9rem;margin-bottom:.5rem;color:#5a4178;text-transform:uppercase;letter-spacing:.08em}.starsign-wrap{width:100%;max-width:100%}.starsign-wrap>.component{max-width:min(780px,94%);width:100%}.component-starsign{background:linear-gradient(135deg,rgba(106,90,205,0.06),rgba(0,212,255,0.06));border:1px solid rgba(106,90,205,0.18);border-radius:12px;padding:1.5rem}.starsign-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.starsign-glyph{font-size:3rem;line-height:1;color:#6a5acd}.starsign-name{font-family:"Cinzel Decorative",Georgia,serif;margin:0}.starsign-forecast{background:rgba(106,90,205,0.08);border-left:3px solid #6a5acd;border-radius:0 8px 8px 0;padding:.85rem 1rem;margin-bottom:0}.starsign-forecast-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#6a5acd;font-weight:600;margin:0 0 .3rem}.starsign-forecast-text{margin:0;font-style:italic;line-height:1.6}.starsign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.65rem;margin-bottom:.5rem}.starsign-tile{background:rgba(106,90,205,0.07);border:1px solid rgba(106,90,205,0.2);border-radius:10px;padding:.6rem .3rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.2rem;transition:background .18s,border-color .18s,transform .18s}.starsign-tile:hover,.starsign-tile:focus-visible{background:rgba(106,90,205,0.16);border-color:#6a5acd;transform:translateY(-2px);outline:0}.starsign-tile-glyph{font-size:1.6rem;line-height:1}.starsign-tile-name{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#5a4178}.starsign-tabs{display:flex;flex-wrap:nowrap;gap:.35rem;overflow-x:auto;overflow-y:hidden;padding:0 .15rem .5rem;margin:0 0 1rem;border-bottom:1px solid rgba(106,90,205,0.2);scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-padding-inline:.35rem}.starsign-tab{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:2.5rem;padding:.5rem .35rem .6rem;border:1px solid transparent;border-radius:8px 8px 0 0;background:transparent;color:#5a4178;cursor:pointer;transition:background .18s,border-color .18s,color .18s}.starsign-tab:hover,.starsign-tab:focus-visible{background:rgba(106,90,205,0.1);outline:0}.starsign-tab.is-active{background:rgba(106,90,205,0.14);border-color:rgba(106,90,205,0.25);border-bottom-color:transparent;color:#4a3d8f;font-weight:600;margin-bottom:-1px;padding-bottom:calc(0.55rem + 1px)}.starsign-tab-glyph{font-size:1.45rem;line-height:1}.starsign-picker-body{margin-top:0}.starsign-form{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.starsign-form input{flex:1 1 200px;min-width:200px}.starsign-result{margin-top:1rem}.component-starmap .starmap-wrap{position:relative;width:100%;border-radius:12px;overflow:hidden;box-shadow:0 12px 36px rgba(2,0,36,0.3)}.starmap-bg,.starmap-stars,.starmap-graph{position:absolute;inset:0;width:100%;height:100%}.starmap-bg{z-index:0}.starmap-stars{z-index:1;pointer-events:none}.starmap-graph{z-index:2}.kofi-banner{display:flex;align-items:center;gap:1rem 1.25rem;padding:1rem 1.25rem;margin:2rem auto;border-radius:16px;text-decoration:none;color:#2a2633;background:linear-gradient(180deg,#fffbf3 0%,#fff4dc 100%);border:2px solid #edd9a8;box-shadow:0 4px 0 #e8cf9a,0 8px 24px rgba(120,90,40,0.1);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.kofi-banner:hover,.kofi-banner:focus-visible{text-decoration:none;color:#2a2633;transform:translateY(-2px);border-color:#e5c985;box-shadow:0 6px 0 #dfc078,0 14px 28px rgba(120,90,40,0.14)}.kofi-banner:focus-visible{outline:2px solid #6a5acd;outline-offset:3px}.kofi-banner-icon{flex-shrink:0;width:3.25rem;height:3.25rem;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:1.35rem;color:#fff;background:#ff5e5b;box-shadow:inset 0 -2px 0 rgba(0,0,0,0.12);transition:transform .18s ease}.kofi-banner:hover .kofi-banner-icon,.kofi-banner:focus-visible .kofi-banner-icon{transform:rotate(-8deg) scale(1.05)}.kofi-banner-copy{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.kofi-banner-line{font-size:1rem;line-height:1.35;color:#5c5368}.kofi-banner-hook{font-size:1.3rem;font-weight:800;line-height:1.2;letter-spacing:-0.02em;color:#1f1b28}.kofi-banner-note{font-size:.9rem;line-height:1.45;color:#6b6278;margin-top:.2rem}.kofi-banner-pill{flex-shrink:0;padding:.55rem 1rem;border-radius:999px;font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#ff5e5b;box-shadow:inset 0 -2px 0 rgba(0,0,0,0.1);transition:background .18s ease,transform .18s ease}.kofi-banner:hover .kofi-banner-pill,.kofi-banner:focus-visible .kofi-banner-pill{background:#e84a47;transform:scale(1.04)}.article-audio{max-width:720px;margin:0 auto 2rem}.article-audio__native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.article-audio__panel{display:flex;align-items:center;gap:1rem;padding:.9rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 2px rgba(15,23,42,0.04)}.article-audio__play{position:relative;flex-shrink:0;width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:#111827;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,transform .15s ease}.article-audio__play:hover,.article-audio__play:focus-visible{background:#1f2937;outline:0;transform:scale(1.02)}.article-audio__play:disabled{opacity:.55;cursor:not-allowed}.article-audio__icon{width:1rem;height:1rem;display:block}.article-audio__icon--pause,.article-audio__spinner{display:none}.article-audio[data-state="playing"] .article-audio__icon--play{display:none}.article-audio[data-state="playing"] .article-audio__icon--pause{display:block}.article-audio[data-state="loading"] .article-audio__icon{display:none}.article-audio[data-state="loading"] .article-audio__spinner{display:block}.article-audio__spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,0.35);border-top-color:#fff;border-radius:50%;animation:article-audio-spin .7s linear infinite}@keyframes article-audio-spin{to{transform:rotate(360deg)}}.article-audio__content{flex:1;min-width:0}.article-audio__meta{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.45rem}.article-audio__label{font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:#374151}.article-audio__clock{font-size:.75rem;font-variant-numeric:tabular-nums;color:#6b7280;white-space:nowrap}.article-audio__sep{margin:0 .15rem;opacity:.6}.article-audio__track{position:relative;height:1.25rem;display:flex;align-items:center}.article-audio__fill{position:absolute;left:0;top:50%;transform:translateY(-50%);height:4px;width:0;border-radius:999px;background:#111827;pointer-events:none}.article-audio__seek{-webkit-appearance:none;appearance:none;position:relative;z-index:1;width:100%;height:4px;margin:0;background:transparent;cursor:pointer}.article-audio__seek::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#e5e7eb}.article-audio__seek::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:50%;background:#111827;border:2px solid #fff;box-shadow:0 0 0 1px rgba(17,24,39,0.15)}.article-audio__seek::-moz-range-track{height:4px;border-radius:999px;background:#e5e7eb}.article-audio__seek::-moz-range-progress{height:4px;border-radius:999px;background:#111827}.article-audio__seek::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#111827;border:2px solid #fff;box-shadow:0 0 0 1px rgba(17,24,39,0.15)}.article-audio__error{margin:.5rem 0 0;font-size:.8125rem;color:#b45309}.article-audio.is-error .article-audio__panel{border-color:#fcd34d;background:#fffbeb}@media(max-width:575.98px){.article-audio__panel{padding:.85rem;gap:.85rem}.article-audio__play{width:2.5rem;height:2.5rem}}.kofi-banner--inline{margin:2rem auto}.kofi-banner--full{margin:2.5rem auto;padding:1.25rem 1.5rem;gap:1.35rem}.kofi-banner--full .kofi-banner-icon{width:3.75rem;height:3.75rem;font-size:1.55rem}.kofi-banner--full .kofi-banner-line{font-size:1.0625rem}.kofi-banner--full .kofi-banner-hook{font-size:1.45rem}.kofi-banner--sidebar{flex-direction:column;text-align:center;margin:1rem 0;padding:1.15rem 1rem}.kofi-banner--sidebar .kofi-banner-copy{align-items:center}.kofi-banner--sidebar .kofi-banner-pill{width:100%;text-align:center}@media(max-width:600px){.tarot-card-flip{width:170px;height:272px}.tarot-spread-card .tarot-card-flip{width:130px;height:208px}.kofi-banner{flex-wrap:wrap;padding:1rem}.kofi-banner-copy{flex:1 1 calc(100% - 4.5rem);order:1}.kofi-banner-icon{order:0}.kofi-banner-pill{order:2;width:100%;text-align:center;margin-top:.25rem}.kofi-banner-hook{font-size:1.2rem}.kofi-banner--full .kofi-banner-hook{font-size:1.3rem}}