.ritual-catalog{display:grid;gap:clamp(34px,4vw,52px)}
.ritual-catalog .ritual-result-card__title-link.information-route-link{margin:-15px -15px 0;padding:15px;overflow:hidden;background:linear-gradient(90deg,rgba(126,190,214,.035),rgba(8,17,23,.12) 72%,rgba(214,168,95,.025));box-shadow:inset 0 -1px rgba(126,190,214,.12)}.ritual-catalog .ritual-result-card__title-link.information-route-link:hover,.ritual-catalog .ritual-result-card__title-link.information-route-link:focus-visible{background:radial-gradient(circle at 100% 0,rgba(214,168,95,.11),transparent 48%),linear-gradient(90deg,rgba(126,190,214,.055),rgba(10,20,27,.42));box-shadow:inset 0 -1px rgba(214,168,95,.18)}
.ritual-catalog .ritual-catalog-browser__head .meta-label{display:block;margin:0 0 5px;color:var(--accent-amber-light);font:600 var(--text-2xs)/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}
.ritual-catalog .ritual-custom-link{flex-wrap:wrap;justify-content:flex-end}.ritual-catalog .ritual-personal-link{display:inline-flex;align-items:center;gap:7px}
.ritual-catalog__intro{display:grid;gap:var(--space-2);max-width:780px}.ritual-catalog__intro h1,.ritual-catalog__lead{margin:0}.ritual-catalog__intro h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.08}.ritual-catalog__lead{max-width:760px;color:var(--text-soft);font-size:1.05rem;line-height:1.58}
.ritual-path-section{position:relative;display:grid;gap:var(--space-4);scroll-margin-top:96px}
.ritual-catalog__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.ritual-catalog-card{min-height:360px}.ritual-catalog-card h2,.ritual-catalog-card h3{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-xl)}.ritual-catalog-card__facts{display:grid;gap:var(--space-2);width:100%;padding:var(--space-4) 0 0;margin:var(--space-4) 0 0;border-top:1px solid var(--glass-line-soft);color:var(--text-muted);font-size:var(--text-sm)}.ritual-catalog-card__facts span::before{content:"\2726";margin-right:var(--space-2);color:var(--accent-amber)}.ritual-catalog-card__availability{display:block;margin-top:auto;padding-top:var(--space-5);color:var(--text-main)}.ritual-catalog-card .btn{width:100%;margin-top:var(--space-4)}
.ritual-finder{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) clamp(236px,24vw,306px);overflow:hidden;border:1px solid var(--glass-line);border-radius:var(--radius-lg);background:radial-gradient(circle at 78% 20%,rgba(138,207,231,.1),transparent 27%),radial-gradient(circle at 95% 92%,rgba(214,168,95,.07),transparent 32%),linear-gradient(135deg,rgba(12,35,46,.97),rgba(7,17,24,.98) 62%,rgba(20,21,22,.97));box-shadow:inset 0 1px 0 rgba(220,238,245,.07),0 20px 52px rgba(0,0,0,.16)}
.ritual-finder>.ambient-sparks{z-index:0;border-radius:inherit;opacity:.62}.ritual-finder__main{position:relative;z-index:2;display:grid;align-content:center;gap:12px;padding:clamp(18px,2vw,26px)}.ritual-finder__heading{display:grid;gap:6px;max-width:650px}.ritual-finder__title-row{display:flex;align-items:center;gap:10px}.ritual-finder__heading h2,.ritual-finder__heading h3{margin:0;font-size:clamp(1.3rem,1.7vw,1.6rem)}.ritual-finder__heading p{max-width:610px;margin:0;color:var(--text-soft);line-height:1.5}
.ritual-finder__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;width:min(100%,760px)}.ritual-finder__question{display:grid;overflow:hidden;border:1px solid rgba(126,190,214,.28);border-radius:var(--radius-md);background:rgba(4,14,20,.72);box-shadow:inset 0 1px 0 rgba(220,240,248,.04);transition:border-color var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default)}.ritual-finder__question:focus-within{border-color:rgba(126,190,214,.52);background:rgba(5,18,25,.85);box-shadow:0 0 0 3px rgba(126,190,214,.06),inset 0 1px 0 rgba(220,240,248,.07)}.ritual-finder__question>.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.ritual-finder__question .textarea{min-height:64px;padding:11px 14px;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;resize:vertical}.ritual-finder__actions{display:flex;align-items:stretch;justify-content:flex-end;gap:10px}.ritual-finder__actions .btn{min-width:176px;height:100%}
.ritual-help{position:relative}.ritual-help p{position:absolute;z-index:20;right:0;bottom:calc(100% + 10px);width:min(320px,calc(100vw - 48px));margin:0;padding:12px 14px;border:1px solid var(--glass-line);border-radius:12px;color:var(--text-soft);background:rgba(7,18,25,.98);box-shadow:0 18px 42px rgba(0,0,0,.38);font-size:var(--text-xs);line-height:1.55}
.ritual-finder__familiar.familiar-magic-stage{position:relative;z-index:1;display:grid;width:100%;height:auto;min-height:214px;margin:0;padding-block:9px 8px;place-items:end center;overflow:hidden;border:0;border-radius:0;background:none;box-shadow:none}.ritual-finder__familiar .familiar-magic-stage__ornament{top:50%;width:min(100%,306px);height:100%}.ritual-finder__familiar .familiar-magic-stage__ornament::before{inset:10% 5% 3%;filter:blur(15px)}.ritual-finder__familiar.familiar-magic-stage::after{z-index:1;height:13px;filter:blur(4px)}.ritual-finder__familiar .familiar-magic-stage__subject{position:relative;z-index:3;top:auto;bottom:auto;left:auto;display:block;width:auto;height:clamp(190px,15vw,208px);max-width:92%;transform:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 24px rgba(0,0,0,.34)) drop-shadow(0 0 18px rgba(126,190,214,.055));pointer-events:none}
.ritual-finder-modal .modal__dialog{width:min(900px,100%);gap:var(--space-3);padding:clamp(24px,3.2vw,38px)}.ritual-finder-modal .modal__dialog>h2{max-width:calc(100% - 48px);margin:0;font-size:clamp(1.55rem,2.4vw,2rem)}.ritual-finder-modal__lead{max-width:720px;margin:0;color:var(--text-soft);font-size:var(--text-base);line-height:1.6}.ritual-finder-modal__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:var(--space-2) 0 0;padding:0;list-style:none}.ritual-finder-modal__steps li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--space-3);align-content:start;padding:var(--space-4);border:1px solid rgba(126,190,214,.16);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(126,190,214,.055),rgba(5,14,20,.58));box-shadow:inset 0 1px rgba(228,242,247,.035)}.ritual-finder-modal__steps li>span{display:grid;width:30px;aspect-ratio:1;place-items:center;border:1px solid rgba(126,190,214,.28);border-radius:50%;color:var(--accent-ice);font:600 var(--text-xs)/1 var(--font-mono)}.ritual-finder-modal__steps div{display:grid;gap:5px}.ritual-finder-modal__steps strong{font-size:var(--text-sm);line-height:1.4}.ritual-finder-modal__steps p{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.ritual-finder-modal__privacy{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--space-3);align-items:start;margin-top:var(--space-2);padding:var(--space-4);border-left:1px solid rgba(214,168,95,.4);background:linear-gradient(90deg,rgba(214,168,95,.055),transparent)}.ritual-finder-modal__privacy>span{display:grid;width:32px;aspect-ratio:1;place-items:center;border:1px solid rgba(214,168,95,.28);border-radius:50%;color:var(--accent-amber-light);font:600 var(--text-sm)/1 var(--font-mono)}.ritual-finder-modal__privacy p{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.55}.ritual-finder-modal__privacy strong{display:block;margin-bottom:2px;color:var(--text-main)}
.ritual-recommendations{display:grid;gap:var(--space-4);overflow:hidden;padding:clamp(22px,2.8vw,34px);border:1px solid rgba(104,169,206,.28);border-radius:var(--radius-xl);background:linear-gradient(145deg,rgba(13,34,44,.94),rgba(7,16,22,.97));box-shadow:inset 3px 0 rgba(126,190,214,.22);opacity:1;max-height:3000px;transition:opacity .36s ease,max-height .48s ease,padding .36s ease,border-color .36s ease}.ritual-recommendations[hidden]{display:none}.ritual-recommendations.is-entering{opacity:0;max-height:0;padding-top:0;padding-bottom:0;border-color:transparent}.ritual-recommendations.is-leaving{opacity:0;max-height:0;padding-top:0;padding-bottom:0;border-color:transparent}.ritual-recommendations__head{display:flex;justify-content:space-between;gap:var(--space-4);align-items:end}.ritual-recommendations__head h2,.ritual-catalog-browser__head h2{margin:4px 0 0;font-size:var(--text-xl)}.ritual-recommendations__head p,.ritual-catalog-browser__head p{margin:var(--space-1) 0 0;color:var(--text-muted)}.ritual-recommendations__reset>.ritual-icon{width:15px;height:15px}.ritual-recommendations__grid,.ritual-catalog-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.ritual-result-card{display:grid;grid-template-rows:142px 1fr;min-width:0;overflow:hidden;border:1px solid var(--glass-line-soft);border-radius:var(--radius-lg);background:linear-gradient(150deg,rgba(8,20,27,.92),rgba(5,13,18,.97));box-shadow:inset 0 1px 0 rgba(225,239,245,.035);transition:border-color var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default),opacity .4s ease}.ritual-result-card.is-appearing{opacity:0}.ritual-result-card:hover{border-color:rgba(126,190,214,.34);box-shadow:inset 0 1px 0 rgba(226,244,250,.07),0 18px 42px rgba(0,0,0,.2)}
.ritual-result-card__preview{position:relative;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--glass-line-soft);background:radial-gradient(circle at 50% 46%,rgba(126,190,214,.15),transparent 40%),radial-gradient(circle at 86% 0,rgba(214,168,95,.09),transparent 44%),linear-gradient(135deg,rgba(12,36,47,.88),rgba(13,17,21,.94))}.ritual-result-card__preview--relationships{background:radial-gradient(circle at 42% 45%,rgba(174,92,115,.16),transparent 42%),radial-gradient(circle at 92% 0,rgba(214,168,95,.09),transparent 42%),linear-gradient(135deg,rgba(40,24,36,.94),rgba(10,20,28,.97))}.ritual-result-card__preview--self-reflection,.ritual-result-card__preview--arcana{background:radial-gradient(circle at 46% 44%,rgba(120,126,204,.17),transparent 40%),radial-gradient(circle at 88% 0,rgba(214,168,95,.1),transparent 44%),linear-gradient(135deg,rgba(22,28,58,.95),rgba(8,20,29,.97))}.ritual-result-card__preview--cycles{background:radial-gradient(circle at 46% 45%,rgba(91,178,174,.17),transparent 42%),radial-gradient(circle at 90% 0,rgba(196,211,218,.09),transparent 42%),linear-gradient(135deg,rgba(9,43,48,.95),rgba(8,20,28,.97))}.ritual-result-card__preview--work,.ritual-result-card__preview--decisions{background:radial-gradient(circle at 42% 46%,rgba(92,149,187,.18),transparent 42%),radial-gradient(circle at 91% 0,rgba(214,168,95,.08),transparent 42%),linear-gradient(135deg,rgba(13,36,55,.96),rgba(11,18,27,.97))}.ritual-result-card__preview--money{background:radial-gradient(circle at 43% 46%,rgba(95,154,119,.16),transparent 42%),radial-gradient(circle at 88% 0,rgba(214,168,95,.11),transparent 44%),linear-gradient(135deg,rgba(15,42,37,.95),rgba(10,21,26,.98))}.ritual-result-card__preview::before{content:"";position:absolute;width:188px;aspect-ratio:1;border:1px solid rgba(183,222,231,.105);border-radius:50%;box-shadow:0 0 0 18px rgba(126,190,214,.02),0 0 38px rgba(126,190,214,.055)}
.ritual-catalog-spread.spread-preview{position:absolute;z-index:1;inset:0;width:100%;min-height:0;border-radius:0;overflow:hidden}.ritual-result-card__preview .ritual-catalog-spread .spread-preview__stage{border-radius:0}.ritual-result-card__preview .ritual-catalog-spread .spread-preview__sparkfield .ambient-sparks{opacity:.42}
.ritual-layout-preview{position:relative;z-index:1;width:220px;height:104px}.ritual-layout-preview i{position:absolute;left:calc(50% - 15px);top:28px;width:30px;height:46px;border:1px solid rgba(224,240,246,.3);border-radius:4px;background:linear-gradient(150deg,rgba(20,58,72,.96),rgba(9,24,34,.98));box-shadow:0 7px 16px rgba(0,0,0,.3),inset 0 1px rgba(231,243,247,.045)}.ritual-layout-preview--row i{left:calc(50% - 15px + var(--position-offset,0)*38px)}.ritual-layout-preview--single i{left:calc(50% - 17px);top:20px;width:34px;height:52px}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i{transform:translate(-50%,-50%)}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i:nth-child(1){left:50%;top:50%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i:nth-child(2){left:27%;top:50%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i:nth-child(3){left:50%;top:22%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i:nth-child(4){left:73%;top:50%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-5 i:nth-child(5){left:50%;top:78%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i{transform:translate(-50%,-50%)}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(1){left:50%;top:15%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(2){left:37%;top:48%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(3){left:63%;top:48%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(4){left:24%;top:79%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(5){left:50%;top:79%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-6 i:nth-child(6){left:76%;top:79%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i{width:27px;height:42px;transform:translate(-50%,-50%) rotate(var(--preview-rotation,0deg))}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(1){left:17%;top:72%;--preview-rotation:-10deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(2){left:27%;top:40%;--preview-rotation:-7deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(3){left:41%;top:20%;--preview-rotation:-3deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(4){left:50%;top:13%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(5){left:59%;top:20%;--preview-rotation:3deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(6){left:73%;top:40%;--preview-rotation:7deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-7 i:nth-child(7){left:83%;top:72%;--preview-rotation:10deg}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i{width:18px;height:28px;transform:translate(-50%,-50%)}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(1){left:36%;top:49%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(2){left:36%;top:49%;transform:translate(-50%,-50%) rotate(90deg)}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(3){left:25%;top:49%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(4){left:47%;top:49%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(5){left:36%;top:18%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(6){left:36%;top:80%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(n+7){left:70%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(7){top:8%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(8){top:22%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(9){top:36%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(10){top:50%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(11){top:64%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(12){top:78%}.ritual-layout-preview--adaptive-grid.ritual-layout-preview--count-13 i:nth-child(13){top:92%}
.ritual-result-card__price{position:absolute;z-index:3;top:10px;left:10px;padding:5px 8px;border:1px solid rgba(214,168,95,.22);border-radius:999px;color:rgba(239,207,145,.86);background:rgba(5,13,18,.78);font:600 var(--text-2xs)/1 var(--font-mono)}.ritual-result-card__preview-meta{position:absolute;z-index:3;right:10px;bottom:9px;left:10px;display:flex;align-items:center;gap:8px;color:rgba(211,225,231,.78);font-size:var(--text-2xs)}.ritual-result-card__preview-meta span+span::before{content:"\00b7";margin-right:8px;color:rgba(214,168,95,.72)}
.ritual-result-card__content{display:grid;align-content:start;gap:10px;padding:15px}.ritual-result-card__favorite{position:absolute;z-index:4;top:9px;right:9px;display:grid;width:32px;aspect-ratio:1;place-items:center;border:1px solid rgba(183,222,231,.2);border-radius:50%;color:rgba(198,225,234,.72);background:rgba(5,14,20,.74);cursor:pointer;transition:color var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default)}.ritual-result-card__favorite>.ritual-icon{width:15px;height:15px}.ritual-result-card__favorite-icon--active{display:none}.ritual-result-card__favorite[aria-pressed=true] .ritual-result-card__favorite-icon--idle{display:none}.ritual-result-card__favorite[aria-pressed=true] .ritual-result-card__favorite-icon--active{display:inline-grid}.ritual-result-card__favorite:hover,.ritual-result-card__favorite:focus-visible,.ritual-result-card__favorite[aria-pressed=true]{outline:0;color:#f0c97c;border-color:rgba(214,168,95,.46);background:rgba(26,23,19,.84);box-shadow:0 0 18px rgba(214,168,95,.15)}.ritual-result-card__favorite:disabled{cursor:not-allowed;opacity:.42}
.ritual-result-card__title-link.information-route-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;text-decoration:none;overflow:visible}.ritual-result-card__title-link.information-route-link:hover,.ritual-result-card__title-link.information-route-link:focus-visible{border:0;background:none;box-shadow:none}.ritual-result-card__title-link h3,.ritual-result-card__title-link h4{margin:0;color:var(--text-main);font-size:1rem;font-weight:580;line-height:1.35}.ritual-result-card__title-link small{display:block;margin-top:3px;color:var(--text-muted);font-size:var(--text-2xs)}.ritual-result-card__summary{margin:0;color:var(--text-soft);font-size:var(--text-base);line-height:1.58}.ritual-result-card__example{display:grid;gap:3px;margin:0;padding:8px 0 0;border:0;border-top:1px solid rgba(126,190,214,.13);background:none}.ritual-result-card__example>span,.ritual-result-card__section-label{color:rgba(226,190,122,.72);font:600 var(--text-2xs)/1.35 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.ritual-result-card__example p{margin:0;color:rgba(214,229,235,.82);font-size:var(--text-xs);font-style:normal;line-height:1.48}.ritual-result-card__position-group{display:grid;gap:7px;margin:0;padding-top:9px;border-top:1px solid rgba(126,190,214,.13)}.ritual-result-card__section-label{margin:0}.ritual-result-card__positions{display:grid;gap:7px;margin:0;padding:0;list-style:none}.ritual-result-card__positions li{display:grid;grid-template-columns:22px 1fr;gap:7px;align-items:start}.ritual-result-card__positions li>span{padding-top:2px;color:var(--accent-ice);font:500 var(--text-2xs)/1.3 var(--font-mono)}.ritual-result-card__positions div{display:grid;gap:2px}.ritual-result-card__positions strong{font-size:var(--text-xs);font-weight:580;line-height:1.38}.ritual-result-card__positions small{color:var(--text-muted);font-size:var(--text-2xs);line-height:1.42}.ritual-result-card__more{justify-self:start;margin:0;padding:1px 0 2px;border:0;border-bottom:1px solid rgba(126,190,214,.24);border-radius:0;color:rgba(167,207,221,.78);background:none;font:500 var(--text-2xs)/1.4 var(--font-sans);text-align:left;cursor:pointer;transition:color var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),text-shadow var(--dur-default) var(--ease-default)}.ritual-result-card__more:hover,.ritual-result-card__more:focus-visible{outline:0;color:var(--accent-ice);border-color:rgba(126,190,214,.64);background:none;box-shadow:none;text-shadow:0 0 12px rgba(126,190,214,.18)}.ritual-result-card__why{display:grid;gap:3px;margin:0;padding-top:9px;border-top:1px solid rgba(214,168,95,.12);color:var(--text-muted);font-size:var(--text-xs);line-height:1.45}.ritual-result-card__why strong{color:rgba(239,207,145,.82);font-size:var(--text-2xs);letter-spacing:.04em;text-transform:uppercase}.ritual-result-card__footer{align-self:end;margin-top:auto;padding-top:10px;border-top:1px solid rgba(126,190,214,.11)}.ritual-result-card__tags{display:flex;flex-wrap:wrap;gap:5px}.ritual-result-card__tags span{padding:4px 7px;border:1px solid rgba(126,190,214,.15);border-radius:999px;color:rgba(180,218,231,.76);background:rgba(126,190,214,.035);font-size:var(--text-2xs)}
.ritual-result-card__example p{font-size:var(--text-base);line-height:1.58}.ritual-result-card__more{display:inline-flex;align-items:center;justify-self:start;gap:6px;width:auto;min-width:0;min-height:0;margin-left:29px;padding:2px 0;border:0;appearance:none;color:rgba(155,194,208,.68);background:none;font:600 var(--text-2xs)/1.35 var(--font-mono);letter-spacing:.05em;text-decoration:none}.ritual-result-card__more-mark{position:relative;display:block;flex:0 0 16px;width:16px;height:16px;border:1px solid rgba(126,190,214,.2);border-radius:50%;color:rgba(177,216,229,.76);transition:color var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default)}.ritual-result-card__more-mark::before,.ritual-result-card__more-mark::after{content:"";position:absolute;top:50%;left:50%;width:7px;height:1px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}.ritual-result-card__more-mark::after{transform:translate(-50%,-50%) rotate(90deg)}.ritual-result-card__more:hover,.ritual-result-card__more:focus-visible{color:var(--accent-ice);border:0;text-shadow:0 0 10px rgba(126,190,214,.16)}.ritual-result-card__more:hover .ritual-result-card__more-mark,.ritual-result-card__more:focus-visible .ritual-result-card__more-mark{color:var(--text-main);border-color:rgba(126,190,214,.48);background:rgba(126,190,214,.08);box-shadow:0 0 12px rgba(126,190,214,.1)}
.ritual-result-card__more-mark{box-sizing:border-box}

.ritual-position-modal .modal__dialog{isolation:isolate;width:min(820px,100%);max-height:min(760px,calc(100svh - clamp(32px,6vw,64px)));grid-template-rows:auto minmax(0,1fr);gap:0;padding:0;overflow:hidden;border-color:rgba(126,190,214,.2);background:radial-gradient(circle at 12% 18%,rgba(181,222,235,.13) 0 1px,transparent 2px),radial-gradient(circle at 78% 13%,rgba(232,196,126,.14) 0 1px,transparent 2px),radial-gradient(circle at 91% 64%,rgba(181,222,235,.1) 0 1px,transparent 2px),radial-gradient(ellipse 70% 95% at 0 0,rgba(104,169,206,.1),transparent 72%),radial-gradient(ellipse 66% 82% at 100% 100%,rgba(214,168,95,.075),transparent 72%),rgba(8,17,23,.98)}.ritual-position-modal .modal__dialog::after{content:"";position:absolute;z-index:-1;left:-132px;bottom:-206px;width:390px;aspect-ratio:1;border:1px solid rgba(214,168,95,.11);border-radius:50%;box-shadow:0 0 0 42px rgba(126,190,214,.022),0 0 0 84px rgba(214,168,95,.015);pointer-events:none}.ritual-position-modal__header{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-5);align-items:end;padding:clamp(24px,3vw,32px) clamp(24px,3.5vw,36px) clamp(20px,2.5vw,26px);border-bottom:1px solid rgba(126,190,214,.15);background:linear-gradient(110deg,rgba(16,40,51,.62),rgba(8,18,24,.2) 62%,rgba(33,27,20,.3))}.ritual-position-modal__header>div{display:grid;gap:8px}.ritual-position-modal__header .eyebrow{margin:0;padding-right:48px}.ritual-position-modal__header h2{max-width:none;margin:0;font-size:clamp(1.45rem,2.5vw,2rem)}.ritual-position-modal__count{margin-right:46px;padding:7px 10px;border:1px solid rgba(214,168,95,.22);border-radius:999px;color:rgba(239,207,145,.86);background:rgba(19,18,16,.56);font:500 var(--text-2xs)/1 var(--font-mono);white-space:nowrap}.ritual-position-modal__content{position:relative;z-index:1;min-height:0;padding:0 clamp(24px,3.5vw,36px) clamp(22px,3vw,30px);overflow-y:auto;scrollbar-gutter:stable}.ritual-position-modal__list{display:grid;grid-template-columns:1fr;gap:0;margin:0;padding:0;list-style:none}.ritual-position-modal__list li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--space-3);align-content:start;padding:clamp(14px,2vw,18px) 8px;border:0;border-bottom:1px solid rgba(126,190,214,.14);border-radius:0;background:linear-gradient(90deg,rgba(126,190,214,.025),transparent 56%);box-shadow:none}.ritual-position-modal__list li:last-child{border-bottom-color:rgba(214,168,95,.18)}.ritual-position-modal__list li>span{padding-top:3px;color:var(--accent-ice);font:500 var(--text-xs)/1.3 var(--font-mono)}.ritual-position-modal__list li>div{display:grid;gap:4px}.ritual-position-modal__list strong{color:var(--text-main);font-size:var(--text-base);font-weight:580;line-height:1.38}.ritual-position-modal__list p{max-width:680px;margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.48}
.ritual-position-modal .modal__dialog::after{z-index:0}
.ritual-position-modal .modal__dialog{width:min(1040px,100%)}.ritual-position-modal__workspace{position:relative;z-index:1;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(390px,1.2fr);min-height:0;overflow:hidden}.ritual-position-modal__preview{position:relative;display:grid;min-width:0;min-height:280px;place-items:stretch;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(126,190,214,.08),transparent 58%),rgba(4,13,18,.32)}.ritual-position-modal__preview::after{content:"";position:absolute;right:-96px;bottom:-138px;width:280px;aspect-ratio:1;border:1px solid rgba(214,168,95,.09);border-radius:50%;box-shadow:0 0 0 34px rgba(126,190,214,.018),0 0 0 68px rgba(214,168,95,.012);pointer-events:none}.ritual-position-modal__spread.spread-preview[data-spread-size=medium]{z-index:1;width:100%;height:100%;min-height:100%;border-radius:0;background:transparent}.ritual-position-modal__spread .spread-preview__stage{border-radius:0;background:transparent}.ritual-position-modal__content{padding:0;overflow-y:auto;border-left:1px solid rgba(126,190,214,.14);scrollbar-gutter:stable}.ritual-position-modal__list li{padding-inline:16px}.ritual-position-modal__list li:last-child{border-bottom:0}
.ritual-quick-section,.ritual-catalog-browser{display:grid;gap:var(--space-4)}.ritual-section-head,.ritual-catalog-browser__head{display:grid;gap:var(--space-1)}.ritual-section-head h2{margin:3px 0 0;font-size:var(--text-xl)}.ritual-section-head p{margin:0;color:var(--text-muted)}.ritual-catalog-browser__head{grid-template-columns:minmax(0,1fr) auto;align-items:end}.ritual-custom-link{display:flex;align-items:center;gap:8px}.ritual-custom-link .ritual-help p{bottom:calc(100% + 8px)}
.ritual-catalog-filters{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(140px,.7fr)) minmax(156px,.65fr) auto;gap:var(--space-3);align-items:end;padding:var(--space-4);border:1px solid var(--glass-line-soft);border-radius:var(--radius-lg);background:rgba(7,16,22,.66)}.ritual-catalog-filters .field{gap:var(--space-1)}.ritual-catalog-filters .field label{font-size:var(--text-xs)}.ritual-catalog-filters .input,.ritual-catalog-filters .select,.ritual-catalog-filters .btn{min-height:46px}.ritual-favorite-filter{min-height:46px;padding:0 var(--space-3) 0 var(--space-4);border-radius:var(--radius-md);color:var(--text-main);background:radial-gradient(ellipse 88% 120% at 0% 0%,rgba(104,169,206,.06),transparent 66%),linear-gradient(180deg,rgba(174,205,218,.045),rgba(174,205,218,.012)),var(--surface-field);box-shadow:inset 0 1px 0 rgba(214,229,237,.08),0 12px 30px rgba(0,0,0,.12)}.ritual-favorite-filter .switch-control__text strong{font-family:inherit;font-size:var(--text-regular);font-weight:400;line-height:1.2}.ritual-favorite-filter .switch-control__track{width:44px;height:26px;padding:3px}.ritual-favorite-filter .switch-control__knob{width:18px;height:18px;flex-basis:18px}.ritual-catalog-empty{padding:var(--space-6);border:1px dashed var(--glass-line);border-radius:var(--radius-lg);color:var(--text-soft);text-align:center}.ritual-catalog-empty__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-4)}
.ritual-search-control{position:relative}.ritual-search-control .input{width:100%;padding-right:52px}.ritual-search-apply{position:absolute;top:50%;right:6px;display:grid;width:34px;height:34px;padding:0;place-items:center;transform:translateY(-50%);border:1px solid rgba(126,190,214,.2);border-radius:var(--radius-sm);color:var(--accent-ice);background:rgba(126,190,214,.07);box-shadow:inset 0 1px rgba(225,240,246,.045);cursor:pointer;transition:color var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default)}.ritual-search-apply:hover,.ritual-search-apply:focus-visible{outline:0;color:var(--text-main);border-color:rgba(214,168,95,.48);background:rgba(214,168,95,.12);box-shadow:0 0 14px rgba(214,168,95,.1)}.ritual-search-apply:focus-visible{box-shadow:0 0 0 2px rgba(7,16,22,.92),0 0 0 4px rgba(126,190,214,.5)}.ritual-search-apply:disabled{cursor:default}.ritual-search-apply .ritual-icon{display:none}.ritual-search-apply__icon,.ritual-search-apply__spinner{display:none;grid-area:1/1}.ritual-search-apply__icon{position:relative;width:18px;height:18px}.ritual-search-apply__icon--search::before{content:"";position:absolute;top:1px;left:1px;width:10px;height:10px;border:1.7px solid currentColor;border-radius:50%}.ritual-search-apply__icon--search::after{content:"";position:absolute;right:1px;bottom:2px;width:7px;height:1.7px;border-radius:2px;background:currentColor;transform:rotate(45deg);transform-origin:right center}.ritual-search-apply__icon--check::before{content:"";position:absolute;top:3px;left:2px;width:12px;height:7px;border-bottom:1.8px solid currentColor;border-left:1.8px solid currentColor;transform:rotate(-45deg)}.ritual-search-field[data-search-state=dirty] .ritual-search-apply{color:#f0c97c;border-color:rgba(214,168,95,.38);background:rgba(214,168,95,.1)}.ritual-search-field[data-search-state=dirty] .ritual-search-apply__icon--search,.ritual-search-field[data-search-state=applied] .ritual-search-apply__icon--check{display:block}.ritual-search-field[data-search-state=applied] .ritual-search-apply{color:rgba(161,211,199,.82);border-color:rgba(131,196,181,.2);background:rgba(131,196,181,.055)}.ritual-search-apply__spinner{width:15px;height:15px;border:2px solid rgba(126,190,214,.22);border-top-color:var(--accent-ice);border-radius:50%;animation:ritual-search-spin 700ms linear infinite}.ritual-search-field[data-search-state=applying] .ritual-search-apply__spinner{display:block}@keyframes ritual-search-spin{to{transform:rotate(360deg)}}
.ritual-catalog-navigation{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);align-items:center}.ritual-pagination{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.ritual-pagination__status{margin-right:6px;color:var(--text-muted);font-size:var(--text-xs)}.ritual-pagination>a{display:grid;min-width:36px;height:36px;padding:0 8px;place-items:center;border:1px solid var(--glass-line-soft);border-radius:9px;color:var(--text-muted);background:rgba(7,16,22,.62);text-decoration:none;transition:color var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default)}.ritual-pagination>a:hover,.ritual-pagination>a:focus-visible,.ritual-pagination>a[aria-current=page]{outline:0;color:var(--text-main);border-color:rgba(214,168,95,.38);background:rgba(214,168,95,.09);box-shadow:0 0 16px rgba(214,168,95,.09)}.ritual-pagination__ellipsis{display:grid;min-width:22px;height:36px;place-items:center;color:var(--text-muted)}.ritual-pagination__control .ritual-icon{width:15px;height:15px}
.is-ritual-analyzing .route-loader{opacity:1}.is-ritual-analyzing .route-loader span{animation:route-loader-pass 900ms cubic-bezier(.4,0,.2,1) infinite}
.ritual-preview-page{padding-block:clamp(24px,3vw,44px) clamp(64px,7vw,96px)}.ritual-preview-page>.page-context-layout{margin-bottom:clamp(22px,3vw,34px)}.ritual-preview{display:grid;gap:clamp(24px,3vw,38px)}.ritual-preview__hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(24px,4vw,54px);padding:clamp(26px,4vw,50px);overflow:hidden;border:1px solid var(--glass-line);border-radius:var(--radius-xl);background:radial-gradient(circle at 82% 18%,rgba(214,168,95,.1),transparent 30%),linear-gradient(118deg,rgba(10,32,44,.97),rgba(7,19,27,.97) 58%,rgba(25,21,18,.96));box-shadow:inset 0 1px rgba(226,240,246,.055),0 28px 70px rgba(0,0,0,.18)}.ritual-preview__hero::after{content:"";position:absolute;z-index:-1;right:-84px;bottom:-150px;width:360px;aspect-ratio:1;border:1px solid rgba(214,168,95,.1);border-radius:50%;box-shadow:0 0 0 44px rgba(126,190,214,.025),0 0 0 88px rgba(214,168,95,.018);pointer-events:none}.ritual-preview__hero>.ambient-sparks{z-index:-1;opacity:.5}.ritual-preview__copy{display:grid;align-content:start;gap:var(--space-3)}.ritual-preview__copy h1{max-width:760px;margin:0;font-size:clamp(1.8rem,3vw,2.35rem)}.ritual-preview__lead{max-width:760px;margin:0;color:var(--text-soft);font-size:var(--text-base);line-height:1.62}.ritual-preview__fit{display:grid;gap:5px;max-width:720px;margin-top:var(--space-1);padding:12px 0 12px 16px;border-left:1px solid rgba(126,190,214,.34)}.ritual-preview__fit span{color:var(--accent-ice);font:600 var(--text-2xs)/1.35 var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.ritual-preview__fit p{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.55}.ritual-preview__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.ritual-preview__overview{align-self:stretch;display:grid;align-content:start;gap:var(--space-3);padding:clamp(18px,2.4vw,26px);border:1px solid rgba(126,190,214,.18);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(126,190,214,.07),rgba(4,13,18,.58) 62%,rgba(214,168,95,.045));box-shadow:inset 0 1px rgba(225,240,246,.045)}.ritual-preview__facts{display:grid;margin:0}.ritual-preview__fact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);align-items:start;padding:12px 0;border-bottom:1px solid rgba(126,190,214,.12)}.ritual-preview__fact:first-child{padding-top:4px}.ritual-preview__fact:last-child{padding-bottom:0;border-bottom:0}.ritual-preview__fact dt{color:var(--text-muted);font-size:var(--text-xs)}.ritual-preview__fact dd{max-width:170px;margin:0;color:var(--text-main);font-size:var(--text-sm);font-weight:590;text-align:right;line-height:1.4}.ritual-preview__examples,.ritual-preview__positions{display:grid;gap:var(--space-4);padding:clamp(22px,3vw,34px);border:1px solid var(--glass-line-soft);border-radius:var(--radius-xl);background:linear-gradient(135deg,rgba(9,24,33,.8),rgba(7,15,21,.7));box-shadow:inset 0 1px rgba(226,240,246,.035)}.ritual-preview__examples{grid-template-columns:minmax(240px,.58fr) minmax(0,1.42fr);gap:clamp(24px,4vw,52px);align-items:start}.ritual-preview__examples .ritual-section-head{align-content:start}.ritual-question-examples{display:grid;gap:0;margin:0;padding:0;border-top:1px solid rgba(126,190,214,.14);list-style:none}.ritual-question-examples li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-4) 0;border-bottom:1px solid rgba(126,190,214,.14)}.ritual-question-examples__number{padding-top:4px;color:var(--accent-ice);font:600 var(--text-xs)/1 var(--font-mono)}.ritual-question-examples p{max-width:880px;margin:0;color:var(--text-soft);font-size:var(--text-base);line-height:1.58}.ritual-position-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.ritual-position-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--space-3);align-content:start;padding:var(--space-4);border:1px solid rgba(126,190,214,.14);border-radius:var(--radius-lg);background:linear-gradient(140deg,rgba(126,190,214,.045),rgba(5,14,20,.62));box-shadow:inset 0 1px rgba(226,240,246,.025)}.ritual-position-list__number{padding-top:3px;color:var(--accent-ice);font:var(--text-xs)/1 var(--font-mono)}.ritual-position-list strong,.ritual-position-list p{display:block;margin:0}.ritual-position-list strong{font-size:var(--text-sm);line-height:1.4}.ritual-position-list p{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}
.ritual-preview__hero::after{z-index:0}.ritual-preview__hero>:not(.ambient-sparks){position:relative;z-index:1}.ritual-preview__hero>.ambient-sparks{z-index:0}.ritual-preview__copy>h3{max-width:760px;margin:0;font-size:clamp(1.8rem,3vw,2.35rem)}
@media(max-width:1000px){.ritual-catalog__grid{grid-template-columns:1fr}.ritual-catalog-card{min-height:300px}.ritual-finder{grid-template-columns:minmax(0,1fr) minmax(210px,30vw)}.ritual-finder__form{grid-template-columns:1fr}.ritual-finder__actions .btn{height:auto}.ritual-finder-modal__steps{grid-template-columns:1fr}.ritual-recommendations__grid,.ritual-catalog-results,.ritual-position-list{grid-template-columns:repeat(2,minmax(0,1fr))}.ritual-catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ritual-preview__hero,.ritual-preview__examples{grid-template-columns:1fr}.ritual-preview__overview{max-width:none}}
@media(max-width:680px){.ritual-catalog{gap:34px}.ritual-finder{grid-template-columns:1fr}.ritual-finder__main{padding:16px}.ritual-finder__familiar.familiar-magic-stage{min-height:138px;padding-block:8px 6px}.ritual-finder__familiar .familiar-magic-stage__ornament{width:min(88%,330px);height:100%}.ritual-finder__familiar .familiar-magic-stage__subject{height:146px;max-width:72%}.ritual-recommendations__grid,.ritual-catalog-results,.ritual-catalog-filters,.ritual-position-list,.ritual-position-modal__list{grid-template-columns:1fr}.ritual-finder__actions{justify-content:flex-end}.ritual-finder__actions .btn,.ritual-catalog-filters .btn{width:auto;min-width:0}.ritual-recommendations__head,.ritual-catalog-browser__head{display:grid;align-items:start}.ritual-result-card{grid-template-rows:132px 1fr}.ritual-catalog-navigation{grid-template-columns:1fr}.ritual-catalog-load-more{width:100%}.ritual-pagination{justify-content:center}.ritual-pagination__status{width:100%;margin:0 0 3px;text-align:center}.ritual-custom-link{justify-content:flex-start}.ritual-position-modal .modal__dialog{padding:0}.ritual-finder-modal .modal__dialog{padding:var(--space-5)}.ritual-position-modal__header{grid-template-columns:1fr;gap:12px;padding:24px 20px 18px}.ritual-position-modal__count{justify-self:start;margin-right:0}.ritual-position-modal__content{padding:0 20px 20px}.ritual-position-modal__list li{grid-template-columns:28px minmax(0,1fr);padding:14px 4px}.ritual-preview-page{padding-block:20px 56px}.ritual-preview__hero,.ritual-preview__examples,.ritual-preview__positions{padding:var(--space-5)}.ritual-preview__actions{display:grid}.ritual-preview__actions .btn{width:100%}.ritual-preview__fact dd{max-width:145px}}
@media(max-width:760px){.ritual-position-modal__workspace{grid-template-columns:1fr;grid-template-rows:minmax(210px,34svh) minmax(0,1fr)}.ritual-position-modal__preview{min-height:210px;border-bottom:1px solid rgba(126,190,214,.14)}.ritual-position-modal__content{padding:0;border-left:0}.ritual-position-modal__list li{padding-inline:20px}}

/* Catalog position modal: interactive spread and card-matched question rhythm. */
.ritual-position-modal__header {
  display: flex;
  min-height: 66px;
  align-items: center;
  padding: 14px 68px 14px 18px;
}
.ritual-position-modal__header h2 { margin: 0; }
.ritual-position-modal__preview,
.ritual-position-modal__content { grid-template-rows: auto minmax(0,1fr); }
.ritual-position-modal__column-label {
  position: relative;
  z-index: 2;
  margin: 0;
  padding: 11px 16px 10px;
  border-bottom: 1px solid rgba(126,190,214,.14);
  color: rgba(226,190,122,.72);
  background: rgba(5,14,20,.22);
}
.ritual-position-modal__preview-stage { position: relative; z-index: 1; min-height: 0; overflow: hidden; }
.ritual-position-modal__content { display: grid; overflow: hidden; }
.ritual-position-modal__content-body { min-height: 0; overflow-y: auto; scrollbar-gutter: stable; }
.ritual-position-modal .modal__dialog::after { content: none; }
.ritual-position-modal__preview::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: auto;
  bottom: -138px;
  left: -96px;
  width: 280px;
  aspect-ratio: 1;
  border: 1px solid rgba(214,168,95,.09);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(126,190,214,.018), 0 0 0 68px rgba(214,168,95,.012);
  pointer-events: none;
}
.ritual-position-modal__preview[data-spread-tone="relationships"] { background: radial-gradient(circle at 42% 45%,rgba(174,92,115,.16),transparent 42%),radial-gradient(circle at 92% 0,rgba(214,168,95,.09),transparent 42%),linear-gradient(135deg,rgba(40,24,36,.94),rgba(10,20,28,.97)); }
.ritual-position-modal__preview[data-spread-tone="self"],
.ritual-position-modal__preview[data-spread-tone="arcana"] { background: radial-gradient(circle at 46% 44%,rgba(120,126,204,.17),transparent 40%),radial-gradient(circle at 88% 0,rgba(214,168,95,.1),transparent 44%),linear-gradient(135deg,rgba(22,28,58,.95),rgba(8,20,29,.97)); }
.ritual-position-modal__preview[data-spread-tone="lunar"] { background: radial-gradient(circle at 46% 45%,rgba(91,178,174,.17),transparent 42%),radial-gradient(circle at 90% 0,rgba(196,211,218,.09),transparent 42%),linear-gradient(135deg,rgba(9,43,48,.95),rgba(8,20,28,.97)); }
.ritual-position-modal__preview[data-spread-tone="work"] { background: radial-gradient(circle at 42% 46%,rgba(92,149,187,.18),transparent 42%),radial-gradient(circle at 91% 0,rgba(214,168,95,.08),transparent 42%),linear-gradient(135deg,rgba(13,36,55,.96),rgba(11,18,27,.97)); }
.ritual-position-modal__preview[data-spread-tone="general"] { background: radial-gradient(circle at 50% 46%,rgba(126,190,214,.15),transparent 40%),radial-gradient(circle at 86% 0,rgba(214,168,95,.09),transparent 44%),linear-gradient(135deg,rgba(12,36,47,.88),rgba(13,17,21,.94)); }
.ritual-position-modal__list li {
  display: block;
  padding: 0;
  border: 0;
  background: none;
}
.ritual-position-modal__list li > button {
  display: grid;
  grid-template-columns: 22px minmax(0,1fr);
  gap: 7px;
  width: 100%;
  padding: 14px 16px;
  border: 0;
  border-bottom: 1px solid rgba(126,190,214,.14);
  border-radius: 0;
  color: inherit;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: color var(--dur-default) var(--ease-default), background var(--dur-default) var(--ease-default), border-color var(--dur-default) var(--ease-default), box-shadow var(--dur-default) var(--ease-default);
}
.ritual-position-modal__list li:last-child > button { border-bottom: 0; }
.ritual-position-modal__list li > button > span:first-child {
  padding-top: 2px;
  color: var(--accent-ice);
  font: 500 var(--text-2xs)/1.3 var(--font-mono);
}
.ritual-position-modal__copy { display: grid; min-width: 0; gap: 2px; }
.ritual-position-modal__copy strong { color: var(--text-main); font-size: var(--text-xs); font-weight: 580; line-height: 1.38; }
.ritual-position-modal__copy small { color: var(--text-muted); font-size: var(--text-2xs); line-height: 1.42; }
.ritual-position-modal__list li > button:is(:hover,:focus-visible) { outline: 0; color: var(--text-main); background: linear-gradient(90deg,rgba(126,190,214,.075),rgba(126,190,214,.02)); }
.ritual-position-modal__list li > button:focus-visible { box-shadow: inset 3px 0 rgba(126,190,214,.48); }
.ritual-position-modal__list li > button[aria-pressed="true"] { border-color: rgba(214,168,95,.22); background: linear-gradient(90deg,rgba(214,168,95,.095),rgba(126,190,214,.025) 78%,transparent); box-shadow: inset 2px 0 rgba(214,168,95,.58); }
.ritual-position-modal__list li > button[aria-pressed="true"] > span:first-child { color: var(--accent-amber-light); }

@media(max-width:680px) {
  .ritual-position-modal__header { padding-right: 68px; }
  .ritual-position-modal__column-label { padding-inline: 20px; }
  .ritual-position-modal__list li > button { padding-inline: 20px; }
}

/* Detailed ritual page */
.ritual-preview-page > .page-context-layout { margin-bottom: 20px; }
.ritual-preview { gap: 22px; }
.ritual-preview__hero {
  grid-template-columns: minmax(0, 1fr) minmax(380px, .78fr);
  align-items: start;
  column-gap: clamp(24px, 2.8vw, 34px);
  row-gap: 16px;
  padding: 18px;
  border-radius: var(--radius-md);
  background: radial-gradient(circle at 50% 46%,rgba(126,190,214,.15),transparent 40%),radial-gradient(circle at 86% 0,rgba(214,168,95,.09),transparent 44%),linear-gradient(135deg,rgba(12,36,47,.88),rgba(13,17,21,.94));
}
.ritual-preview__hero--relationships { background: radial-gradient(circle at 42% 45%,rgba(174,92,115,.16),transparent 42%),radial-gradient(circle at 92% 0,rgba(214,168,95,.09),transparent 42%),linear-gradient(135deg,rgba(40,24,36,.94),rgba(10,20,28,.97)); }
.ritual-preview__hero--self-reflection, .ritual-preview__hero--arcana { background: radial-gradient(circle at 46% 44%,rgba(120,126,204,.17),transparent 40%),radial-gradient(circle at 88% 0,rgba(214,168,95,.1),transparent 44%),linear-gradient(135deg,rgba(22,28,58,.95),rgba(8,20,29,.97)); }
.ritual-preview__hero--cycles { background: radial-gradient(circle at 46% 45%,rgba(91,178,174,.17),transparent 42%),radial-gradient(circle at 90% 0,rgba(196,211,218,.09),transparent 42%),linear-gradient(135deg,rgba(9,43,48,.95),rgba(8,20,28,.97)); }
.ritual-preview__hero--work, .ritual-preview__hero--decisions { background: radial-gradient(circle at 42% 46%,rgba(92,149,187,.18),transparent 42%),radial-gradient(circle at 91% 0,rgba(214,168,95,.08),transparent 42%),linear-gradient(135deg,rgba(13,36,55,.96),rgba(11,18,27,.97)); }
.ritual-preview__hero--money { background: radial-gradient(circle at 43% 46%,rgba(95,154,119,.16),transparent 42%),radial-gradient(circle at 88% 0,rgba(214,168,95,.11),transparent 44%),linear-gradient(135deg,rgba(15,42,37,.95),rgba(10,21,26,.98)); }
.ritual-preview__hero::after { display: block; }
.ritual-preview__favorite { position: absolute !important; z-index: 4 !important; top: 14px; right: 14px; }
.ritual-preview__copy { display: flex; flex-direction: column; align-self: stretch; gap: 11px; padding: 4px 8px 4px 2px; }
.ritual-preview__copy h1 { padding-right: 42px; font-size: clamp(1.75rem, 2.6vw, 2rem); line-height: 1.14; }
.ritual-preview__tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: auto; padding-top: 11px; padding-right: 44px; }
.ritual-preview__tags > span { display: inline-flex; gap: 5px; align-items: baseline; max-width: 100%; min-height: 26px; padding: 5px 9px; border: 1px solid rgba(126,190,214,.16); border-radius: 999px; background: rgba(126,190,214,.045); line-height: 1; }
.ritual-preview__tags small { color: var(--text-muted); font-size: var(--text-xs); font-weight: 400; line-height: 1.4; }
.ritual-preview__tags strong { min-width: 0; color: var(--text-main); font-size: var(--text-xs); font-weight: 590; line-height: 1.4; }
.ritual-preview__fit { margin-top: 0; padding-block: 8px; }
.ritual-preview__actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; padding-top: 16px; border-top: 1px solid rgba(126,190,214,.13); }
.ritual-preview__admin-action { color: var(--text-muted); }
.ritual-preview__overview { align-self: start; gap: 13px; padding: 14px; border-radius: var(--radius-md); background: rgba(4,12,17,.46); }
.ritual-preview__facts { grid-template-columns: repeat(3, max-content); justify-content: space-between; gap: 10px; padding: 0 40px 0 0; border-top: 0; }
.ritual-preview__fact { display: inline-flex; gap: 4px; align-items: center; min-width: 0; padding: 0; border: 0; white-space: nowrap; }
.ritual-preview__fact:first-child { padding: 0; }
.ritual-preview__fact:last-child { padding: 0; }
.ritual-preview__fact + .ritual-preview__fact { padding-left: clamp(12px, 1.5vw, 18px); border-left: 1px solid rgba(126,190,214,.12); }
.ritual-preview__fact dt { display: block; }
.ritual-preview__fact dd { display: inline-flex; gap: 5px; align-items: center; max-width: none; font-size: var(--text-xs); text-align: left; }
.ritual-preview__hero-questions { display: grid; gap: 8px; padding-top: 12px; border-top: 1px solid rgba(126,190,214,.13); }
.ritual-preview__hero-questions :is(h2,h3),
.ritual-position-modal .modal__dialog .ritual-position-modal__column-label { margin: 0; color: rgba(226,190,122,.72); font: 600 var(--text-2xs)/1.35 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; }
.ritual-preview__hero-questions ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.ritual-preview__hero-questions li { display: grid; grid-template-columns: 8px minmax(0,1fr); gap: 9px; margin: 0; padding: 0; color: rgba(214,229,235,.82); font-size: var(--text-base); line-height: 1.58; }
.ritual-preview__hero-questions li::before { color: var(--text-soft); content: "\2022"; }
.ritual-preview__hero-questions li + li { margin-top: 7px; padding-top: 7px; border-top: 1px solid rgba(126,190,214,.09); }
.ritual-preview__positions { position: relative; isolation: isolate; gap: 18px; padding: clamp(18px, 2.4vw, 26px); overflow: clip; border-radius: var(--radius-md); background: linear-gradient(135deg,rgba(7,19,27,.9),rgba(6,12,18,.88) 62%,rgba(18,15,13,.84)); }
.ritual-preview__positions .ritual-section-head { gap: 11px; }
.ritual-preview__positions .ritual-section-head :is(h2,h3) { margin: 0; }
.ritual-preview__positions::before { position: absolute; z-index: 0; inset: 0; pointer-events: none; background: radial-gradient(circle at var(--cosmic-x,50%) var(--cosmic-y,42%),rgba(214,168,95,calc(.1 * var(--glow-alpha,1))),transparent 23%),radial-gradient(ellipse 66% 90% at 8% 28%,rgba(74,143,174,.08),transparent 72%); mix-blend-mode: screen; content: ""; }
.ritual-preview__positions::after { position: absolute; z-index: 0; bottom: -150px; left: -84px; width: 360px; aspect-ratio: 1; border: 1px solid rgba(214,168,95,.1); border-radius: 50%; box-shadow: 0 0 0 44px rgba(126,190,214,.025), 0 0 0 88px rgba(214,168,95,.018); pointer-events: none; content: ""; }
.ritual-preview__positions > :not(.ritual-preview__positions-starfield) { position: relative; z-index: 1; }
.ritual-preview__positions-starfield { opacity: .72; }
.ritual-preview__scheme-grid { display: grid; grid-template-columns: minmax(300px,.9fr) minmax(380px,1.1fr); gap: clamp(22px,3vw,38px); align-items: start; }
.ritual-preview__scheme-stage { position: sticky; top: 92px; min-height: 390px; overflow: hidden; border: 1px solid rgba(126,190,214,.14); border-radius: var(--radius-md); background: radial-gradient(circle at 50% 45%, rgba(126,190,214,.055), transparent 60%), rgba(4,13,18,.3); }
.ritual-preview__detail-spread.spread-preview { min-height: 390px; }
.ritual-preview__scheme-questions { display: grid; min-width: 0; gap: 16px; align-content: start; }
.ritual-preview__scheme-actions { display: flex; align-items: center; }
.ritual-preview__scheme-actions--inline { justify-content: flex-end; padding: 2px 0 0; }
.ritual-preview__scheme-actions--footer { display: none; justify-content: flex-end; padding-top: 2px; }
.ritual-preview__positions:has(.ritual-position-list > li:nth-child(6)) .ritual-preview__scheme-actions--inline { display: none; }
.ritual-preview__positions:has(.ritual-position-list > li:nth-child(6)) .ritual-preview__scheme-actions--footer { display: flex; }
.ritual-preview__positions .ritual-position-list { grid-template-columns: 1fr; gap: 0; }
.ritual-preview__positions .ritual-position-list li { display: block; padding: 0; border: 0; background: none; box-shadow: none; }
.ritual-position-list button { width: 100%; display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 12px; align-items: start; padding: 16px 12px; border: 0; border-bottom: 1px solid rgba(126,190,214,.14); border-radius: 0; color: inherit; background: transparent; cursor: pointer; text-align: left; transition:color var(--dur-default) var(--ease-default),background var(--dur-default) var(--ease-default),border-color var(--dur-default) var(--ease-default),box-shadow var(--dur-default) var(--ease-default); }
.ritual-position-list li:first-child button { border-top: 1px solid rgba(126,190,214,.14); }
.ritual-position-list button:is(:hover,:focus-visible) { color: var(--text-main); background: linear-gradient(90deg,rgba(126,190,214,.075),rgba(126,190,214,.02)); outline: none; }
.ritual-position-list button:focus-visible { box-shadow: inset 3px 0 rgba(126,190,214,.48); }
.ritual-position-list button[aria-pressed="true"] { border-color: rgba(214,168,95,.22); background: linear-gradient(90deg,rgba(214,168,95,.095),rgba(126,190,214,.025) 78%,transparent); box-shadow: inset 2px 0 rgba(214,168,95,.58); }
.ritual-position-list button .ritual-position-list__number { width: auto; height: auto; display: block; padding-top: 3px; border: 0; border-radius: 0; color: var(--accent-ice); background: none; font: 600 var(--text-xs)/1.3 var(--font-mono); }
.ritual-position-list button[aria-pressed="true"] .ritual-position-list__number { color: var(--accent-amber-light); }
.ritual-position-list__copy { display: grid; min-width: 0; gap: 4px; }
.ritual-position-list__copy strong, .ritual-position-list__copy p { margin: 0; }
.ritual-position-list__copy strong { font-size: var(--text-base); line-height: 1.38; }
.ritual-position-list__copy p { color: var(--text-muted); font-size: var(--text-sm); line-height: 1.5; }
.ritual-preview__positions .ritual-position-list button .ritual-position-list__number { font: 500 var(--text-2xs)/1.3 var(--font-mono); }
.ritual-preview__positions .ritual-position-list__copy strong { font-size: var(--text-xs); font-weight: 580; line-height: 1.38; }
.ritual-preview__positions .ritual-position-list__copy p { color: var(--text-muted); font-size: var(--text-2xs); line-height: 1.42; }
.ritual-position-variants { display: grid; gap: var(--space-4); padding: clamp(20px,2.7vw,30px); border: 1px solid var(--glass-line-soft); border-radius: var(--radius-xl); background: rgba(5,14,20,.62); }
.ritual-position-variants__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-4); align-items: start; }
.ritual-position-variants__grid > article { min-width: 0; }
.ritual-position-variants__label { display: block; margin-bottom: 10px; color: var(--accent-ice); font: 600 var(--text-2xs)/1.4 var(--font-mono); letter-spacing: .05em; text-transform: uppercase; }
.ritual-position-variants .ritual-position-list { grid-template-columns: 1fr; gap: 0; }
.ritual-position-variants .ritual-position-list li { display: block; padding: 0; border: 0; background: none; box-shadow: none; }
.ritual-position-list[data-position-list-variant="quiet-cards"] { gap: 8px; }
.ritual-position-list[data-position-list-variant="quiet-cards"] li button { border: 1px solid rgba(126,190,214,.13); border-radius: 11px; background: rgba(7,19,26,.54); }
.ritual-position-list[data-position-list-variant="quiet-cards"] li button[aria-pressed="true"] { border-color: rgba(126,190,214,.31); background: rgba(13,32,42,.72); box-shadow: inset 0 1px rgba(226,240,246,.04); }
.ritual-position-list[data-position-list-variant="warm-line"] { overflow: hidden; border: 1px solid rgba(214,168,95,.17); border-radius: 12px; background: rgba(20,17,14,.28); }
.ritual-position-list[data-position-list-variant="warm-line"] li:first-child button { border-top: 0; }
.ritual-position-list[data-position-list-variant="warm-line"] li button[aria-pressed="true"] { background: linear-gradient(90deg,rgba(214,168,95,.12),rgba(214,168,95,.025)); box-shadow: inset 3px 0 rgba(214,168,95,.7); }
.ritual-preview__examples { grid-template-columns: minmax(210px,.42fr) minmax(0,1.58fr); gap: clamp(20px,3vw,36px); padding: clamp(20px,2.7vw,30px); }
.ritual-preview__seal-note { justify-self: center; display: grid; grid-template-columns: 18px minmax(0,auto); gap: 9px; align-items: center; margin: 0; color: var(--text-muted); font-size: var(--text-xs); text-align: left; }
.ritual-preview__seal-note .learning-map__north-star { margin: 0; }
.ritual-access-modal .modal__dialog { max-width: 560px; }
.ritual-access-modal__list { display: grid; gap: 0; margin-top: 18px; border-top: 1px solid var(--glass-line-soft); }
.ritual-access-modal__list > div { padding: 15px 0; border-bottom: 1px solid var(--glass-line-soft); }
.ritual-access-modal__list strong, .ritual-access-modal__list p { display: block; margin: 0; }
.ritual-access-modal__list p { margin-top: 4px; color: var(--text-muted); font-size: var(--text-sm); line-height: 1.5; }
.ritual-preview__positions .ritual-section-head :is(h2,h3),
.ritual-preview .ritual-preview__copy h1,
.ritual-preview .ritual-preview__copy > h3 {
  font-family: var(--font-body);
  font-size: var(--text-xl);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}
.ritual-position-modal .ritual-position-modal__header h2 {
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 580;
  line-height: 1.35;
  letter-spacing: 0;
}

/* Lunar ritual identity and temporal access */
.ritual-result-card__preview--lunar,
.ritual-preview__hero--lunar,
.ritual-preview__positions--lunar,
.ritual-position-modal--lunar .modal__dialog,
.ritual-position-modal--lunar .ritual-position-modal__preview {
  background:
    radial-gradient(circle at 75% 42%,rgba(169,218,236,.16),transparent 24%),
    radial-gradient(circle at 88% 68%,rgba(99,171,202,.08),transparent 31%),
    linear-gradient(124deg,rgba(8,31,45,.98),rgba(5,17,27,.99) 58%,rgba(7,22,34,.98));
}
.ritual-result-card__preview--lunar::before,
.ritual-preview__hero--lunar::after,
.ritual-position-modal--lunar .ritual-position-modal__preview::after { display: none; }
.ritual-result-card--lunar .spread-preview__sparkfield,
.ritual-preview-page--lunar .spread-preview__sparkfield { display: none; }
[data-lunar-sky] > .lunar-starfield,
[data-lunar-sky] > .lunar-center__meteors { position: absolute; z-index: 0; inset: 0; }
.ritual-preview__hero[data-lunar-sky] > :not(.lunar-starfield):not(.lunar-center__meteors),
.ritual-preview__positions[data-lunar-sky] > :not(.lunar-starfield):not(.lunar-center__meteors),
.ritual-position-modal--lunar .modal__dialog > :not(.lunar-starfield):not(.lunar-center__meteors):not(.modal__close) { position: relative; z-index: 1; }
.ritual-position-modal--lunar .modal__dialog > .modal__close { position: absolute; z-index: 5; }

.ritual-result-card__title-link.is-locked { cursor: default; }
.ritual-result-card__title-link.is-locked:is(:hover,:focus-visible) { background: linear-gradient(90deg,rgba(126,190,214,.035),rgba(8,17,23,.12) 72%,rgba(214,168,95,.025)); box-shadow: inset 0 -1px rgba(126,190,214,.12); }
.ritual-result-card__lock-mark { display: grid; flex: 0 0 34px; width: 34px; aspect-ratio: 1; place-items: center; border: 1px solid rgba(145,201,221,.25); border-radius: 11px; color: var(--ice-200); background: linear-gradient(145deg,rgba(24,68,88,.65),rgba(8,25,35,.8)); }
.ritual-lock-icon { display: inline-grid; flex: 0 0 auto; width: 16px; height: 16px; }
.ritual-access-state { margin: 0; }
.ritual-access-state[hidden], .ritual-result-card__lock-mark[hidden], [data-lunar-access-open-mark][hidden] { display: none; }
.ritual-access-state--card { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin: -2px 0 1px; padding: 8px 10px; border: 1px solid rgba(126,190,214,.17); border-radius: 10px; background: linear-gradient(90deg,rgba(19,55,70,.58),rgba(6,22,31,.48)); font-size: var(--text-2xs); }
.ritual-access-state--card span { color: rgba(190,220,231,.72); }
.ritual-access-state--card strong { color: var(--ice-200); font-weight: 600; white-space: nowrap; }
.ritual-access-state--detail { display: inline-grid; grid-template-columns: 18px minmax(0,1fr); gap: 9px; align-items: center; margin-left: auto; color: var(--ice-200); }
.ritual-access-state--detail > span:last-child { display: grid; gap: 2px; }
.ritual-access-state--detail strong, .ritual-access-state--detail small { display: block; }
.ritual-access-state--detail strong { color: var(--text-main); font-size: var(--text-xs); }
.ritual-access-state--detail small { color: rgba(166,209,225,.72); font-size: var(--text-2xs); }
.btn.is-temporally-locked { border-color: rgba(126,190,214,.23); color: rgba(196,222,231,.72); background: linear-gradient(145deg,rgba(19,54,69,.62),rgba(7,23,32,.82)); box-shadow: none; cursor: default; }

.ritual-lunar-context { min-width: 0; }
.lunar-center--ritual { border-radius: var(--radius-md); }
.lunar-center--ritual .lunar-center__main { grid-template-columns: minmax(0,1.25fr) minmax(230px,.55fr); min-height: 238px; }
.lunar-center--ritual .lunar-center__copy { padding: 20px 22px; }
.lunar-center--ritual .lunar-center__visual { min-height: 238px; }
.lunar-center--ritual .lunar-center__visual::before { width: min(68%,184px); }
.lunar-center--ritual .lunar-center__visual::after { width: min(56%,158px); }
.lunar-center--ritual canvas { width: min(66%,202px); }
.lunar-center--ritual .lunar-route { min-height: 68px; }

.ritual-preview__positions--lunar::before { background: radial-gradient(ellipse 58% 76% at 18% 35%,rgba(107,184,214,.09),transparent 72%); }
.ritual-position-modal--lunar .ritual-position-modal__header { background: linear-gradient(110deg,rgba(13,48,64,.78),rgba(6,20,29,.36) 62%,rgba(8,29,40,.42)); }
.ritual-position-modal--lunar .ritual-position-modal__content { background: rgba(4,15,23,.38); }
.ritual-position-modal:not(.ritual-position-modal--lunar) .modal__dialog > :is(.lunar-starfield,.lunar-center__meteors) { display: none; }

@media(max-width:680px) {
  .ritual-access-state--card { align-items: flex-start; flex-direction: column; gap: 2px; }
  .ritual-access-state--detail { width: 100%; margin-left: 0; }
  .lunar-center--ritual .lunar-center__main { grid-template-columns: 1fr; }
}

@media(max-width:1000px){
  .ritual-preview__hero { grid-template-columns: minmax(0,1fr) minmax(370px,.85fr); }
  .ritual-preview__overview { grid-template-columns: 1fr; align-items: start; }
  .ritual-preview__facts { border: 0; padding-right: 40px; }
  .ritual-preview__scheme-grid { grid-template-columns: minmax(280px,.8fr) minmax(340px,1.2fr); gap: 20px; }
  .ritual-position-variants__grid { grid-template-columns: 1fr; }
}
@media(max-width:820px){
  .ritual-preview__hero { grid-template-columns: 1fr; }
  .ritual-preview__scheme-grid { grid-template-columns: 1fr; }
  .ritual-preview__scheme-stage { position: relative; top: auto; }
}
@media(max-width:680px){
  .ritual-preview__hero, .ritual-preview__positions { padding: 16px; }
  .ritual-preview__copy { padding: 8px 0 0; }
  .ritual-preview__overview { grid-template-columns: 1fr; }
  .ritual-preview__facts { border: 0; padding-right: 40px; }
  .ritual-preview__scheme-stage, .ritual-preview__detail-spread.spread-preview { min-height: 330px; }
  .ritual-preview__actions, .ritual-preview__scheme-actions { display: grid; }
  .ritual-preview__actions .btn, .ritual-preview__scheme-actions .btn { width: 100%; }
}
@media(prefers-reduced-motion:reduce){.ritual-recommendations,.ritual-result-card,.ritual-search-apply{transition:none}.ritual-search-apply__spinner{animation:none}}
