@font-face{font-family:'Cormorant Garamond';src:url('assets/font-0.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{color-scheme:dark;--ink:#eee6d8;--muted:#b6aeb7;--gold:#c4a873;--gold-light:#dfc69b;--border:#7c6a514d;--velvet:#211c2a;--surface:#2d2635}*{box-sizing:border-box}body{margin:0;background:var(--velvet);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65;min-height:100dvh}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 34%,#4c3d4c55 0,transparent 53%),repeating-linear-gradient(88deg,#ffffff01 0,#ffffff01 1px,transparent 1px,transparent 4px);z-index:-1}.masthead{height:112px;margin:0 auto;max-width:1390px;padding:27px 52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #b99c651f}.brand{display:flex;gap:13px;align-items:center;color:var(--ink);text-decoration:none}.brand-art{width:51px;height:55px;display:grid;place-items:center}.brand-art img{max-width:100%;max-height:100%;object-fit:contain}.wordmark{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;line-height:1.05;letter-spacing:.04em}.wordmark span{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:.43em;padding-left:2px;margin-top:8px;color:var(--gold)}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}.about-link{border:0;background:none;color:var(--muted);font-size:13px;display:flex;gap:16px;align-items:center}.about-link span{font-size:22px;color:var(--gold)}main{max-width:1130px;margin:0 auto;padding:38px 36px 190px}.introduction{text-align:center}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.24em;font-weight:500;display:flex;justify-content:center;align-items:center;gap:16px}.eyebrow>span{height:1px;width:34px;background:var(--border)}h1,h2,h3,p{margin:0}h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(38px,4.8vw,61px);letter-spacing:-.025em;line-height:1.25;margin:9px 0 7px}h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:34px;line-height:1.25}.subtitle{font-size:14px;color:var(--muted);font-weight:400;letter-spacing:.02em}.table{position:relative;margin:42px 0 28px;text-align:center}.table-orbit{position:absolute;left:1%;right:1%;height:235px;top:37px;border:1px solid #ac8a5521;border-radius:50%;pointer-events:none}.spread{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:27px;max-width:824px;margin:0 auto;position:relative}.card-slot{min-width:0;--rotate:0deg}.card-slot:nth-child(1){--rotate:-7deg;padding-top:27px}.card-slot:nth-child(2){--rotate:-3deg;padding-top:7px}.card-slot:nth-child(4){--rotate:3deg;padding-top:7px}.card-slot:nth-child(5){--rotate:7deg;padding-top:27px}.tarot-card{position:relative;display:block;width:100%;aspect-ratio:0.58;border:0;background:transparent;padding:0;transform:rotate(var(--rotate));perspective:800px;transition:transform .4s;cursor:default}.tarot-card.available,.tarot-card.revealed{cursor:pointer}@media(hover:hover) and (pointer:fine){.tarot-card.available:hover,.tarot-card.revealed:hover{transform:rotate(0) translateY(-6px)}}.card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.2,.65,.15,1);border-radius:7px;box-shadow:0 15px 25px #0005}.tarot-card.revealed .card-inner{transform:rotateY(180deg)}.card-back,.card-front{position:absolute;inset:0;backface-visibility:hidden;border-radius:6px;overflow:hidden}.card-back{background:linear-gradient(150deg,#2f2839,#211a2b);border:1px solid #aa8a57;box-shadow:inset 0 0 0 5px #241e2e,inset 0 0 0 6px #aa8a574d;display:flex;align-items:center;justify-content:center}.card-back:before{content:'';position:absolute;inset:14px;border:1px solid #9c7b4860;background:repeating-linear-gradient(45deg,transparent 0,transparent 12px,#ad92551a 12px,#ad92551a 13px),repeating-linear-gradient(-45deg,transparent 0,transparent 12px,#ad92551a 12px,#ad92551a 13px)}.back-symbol{position:relative;width:72%;aspect-ratio:1;border:1px solid #aa8a5788;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#282131;box-shadow:0 0 0 8px #282131,0 0 0 9px #ad925538}.back-symbol:before,.back-symbol:after{content:'';width:52%;height:52%;border:1px solid #b394606b;position:absolute;transform:rotate(45deg)}.back-symbol:after{transform:rotate(0)}.back-symbol span{font-size:39px;line-height:1;color:var(--gold);font-family:Georgia,serif;z-index:1;background:#282131;padding:2px}.card-front{transform:rotateY(180deg);background:#e8dcc5;border:4px solid #d8c6a4}.card-front img{width:100%;height:100%;object-fit:fill;filter:saturate(.63) sepia(.16)}.card-label{font-size:12px;line-height:1.3;color:var(--gold);margin-top:19px;min-height:32px}.card-label .position-name{display:block;font-size:10px;color:#a49aa7;letter-spacing:.025em;margin-bottom:3px}.card-label .card-name{font-size:12px}.spread-caption{font-size:12px;color:#a49ba8;margin-top:13px;letter-spacing:.07em}.table-actions{margin-top:14px}.gold-button{border:1px solid #c4a87375;background:#c4a873;color:#261e29;padding:11px 23px;border-radius:5px;font-size:14px;font-weight:600}.gold-button:hover{background:var(--gold-light)}.gold-button:disabled{opacity:.55;cursor:wait}.text-button{background:none;border:0;color:var(--gold-light);font-size:13px;padding:9px}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.conversation{max-width:720px;margin:22px auto 0}.message{padding:18px 0;animation:arrive .45s ease}.message+.message{border-top:1px solid #c5a7771c}.message.user{text-align:right;padding:15px 0}.message.user .message-text{background:#45374866;border:1px solid #b5966424;border-radius:14px 14px 2px 14px;display:inline-block;text-align:left;padding:11px 17px;max-width:90%;font-size:15px;color:#d9cfdc;white-space:pre-wrap;overflow-wrap:anywhere}.message .speaker{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.22em;color:var(--gold);margin-bottom:9px}.message .speaker:before{content:'✧';font-size:18px;line-height:1}.message.assistant .message-text{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;line-height:1.5;letter-spacing:.005em}.message.assistant .message-text p+p{margin-top:11px}.message.assistant .message-text.small{font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.75}.message-note{font:12px/1.7 'DM Sans',sans-serif;color:#a79faa;margin-top:13px}.message-options{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}.option{border:1px solid #ad925546;border-radius:100px;background:transparent;color:#d4c0a0;font-size:12px;padding:6px 13px}.option:hover{background:#ad92551a}.reading-grid{display:grid;gap:0;margin:8px 0 15px}.reading-item{padding:14px 0;border-bottom:1px solid #b99c6525}.reading-item:last-child{border:0}.reading-item .reading-kicker{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--gold);letter-spacing:.07em;margin-bottom:3px}.reading-item h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:24px}.reading-item p{font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.8;color:#c9c0ce;margin-top:6px}.reading-summary{padding:21px 24px;border:1px solid #c5a77742;background:#3e324030;border-radius:5px;margin:16px 0}.reading-summary h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:500;margin-bottom:8px}.reading-summary p{font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.8}.context-note{font-family:'DM Sans',sans-serif;font-size:12px;color:#a79faa;line-height:1.7}.session-actions{max-width:720px;margin:8px auto 0;display:flex;justify-content:space-between;border-top:1px solid #b99c6525;padding-top:13px}.session-actions[hidden]{display:none}.composer-wrap{position:fixed;bottom:0;left:0;right:0;z-index:10;background:linear-gradient(transparent,#211c2af7 20%,#211c2a);padding:25px max(26px,calc((100vw - 768px)/2)) max(15px,env(safe-area-inset-bottom));}.composer{display:flex;align-items:center;background:#302837;border:1px solid #b99c656b;border-radius:9px;padding:7px 9px 7px 20px;box-shadow:0 7px 40px #0004;gap:9px}.composer:focus-within{border-color:#cfb17c}textarea{display:block;width:100%;min-width:0;max-height:100px;background:transparent;border:0;color:var(--ink);resize:none;padding:9px 0;outline:none!important;font:14px/1.6 'DM Sans',sans-serif}textarea::placeholder{color:#aba0ad}.icon-button{display:grid;place-items:center;padding:10px;background:transparent;border:0;color:#c2b2c6;border-radius:6px}.icon-button svg{width:20px;height:20px}.icon-button:hover{background:#ffffff09}.send{display:flex;gap:12px;align-items:center;background:var(--gold);border:0;border-radius:5px;padding:11px 16px;font-size:13px;color:#251e29;font-weight:600}.send span{font-size:18px;line-height:1}.send:disabled{opacity:.55;cursor:wait}.composer-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:10px;font-size:10px;color:#958a9b}.demo-badge{border:0;border-radius:3px;background:#ad925515;padding:3px 7px;font-size:9px;letter-spacing:.08em;color:#b0a18b;white-space:nowrap}#input-status{font-size:12px;color:var(--gold-light);text-align:center;line-height:1.4}#input-status:not(:empty){margin-top:8px}dialog{max-height:85dvh;width:min(580px,calc(100% - 32px));border:1px solid #a687565e;border-radius:12px;background:#2a2333;color:var(--ink);padding:37px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#0c0819ab;backdrop-filter:blur(6px)}dialog .eyebrow{justify-content:flex-start;font-size:10px;margin-bottom:13px}dialog h2{margin-bottom:16px}dialog h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:23px;margin:22px 0 7px}dialog p{font-size:14px;line-height:1.8;color:#c8bfcd;margin-top:10px}dialog a{color:var(--gold-light)}dialog details{margin-top:23px;font-size:13px;color:var(--gold)}.dialog-close{position:absolute;right:13px;top:10px;font-size:26px;line-height:1;background:none;border:0;color:#baacbf;padding:7px}.dialog-cancel{margin-top:10px}#start-voice{margin-top:23px}#card-detail img{display:block;max-height:44dvh;max-width:80%;margin:0 auto 20px;border:4px solid #d8c6a4;border-radius:4px}#card-detail h2{text-align:center}#card-detail .eyebrow{justify-content:center}.highlight .card-inner{box-shadow:0 0 0 2px var(--gold-light),0 0 34px #d5b17844}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.5}}@media(min-width:1200px) and (min-height:950px){main{padding-top:58px}.table{margin-top:57px}.spread{max-width:880px}.conversation{margin-top:31px}}@media(max-width:700px){.masthead{height:85px;padding:17px 23px}.brand-art{width:40px;height:46px}.wordmark{font-size:24px}.wordmark span{font-size:8px;margin-top:6px}.about-link{font-size:12px;gap:8px}.about-link span{font-size:20px}main{padding:26px 22px 178px}.eyebrow{font-size:9px;gap:10px;letter-spacing:.22em}.eyebrow>span{width:21px}h1{font-size:43px;margin-top:9px}.subtitle{font-size:12px}.table{margin-top:30px}.table-orbit{height:210px;top:135px;left:-5%;right:-5%}.spread{max-width:338px;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 19px}.card-slot{grid-column:span 2}.card-slot:nth-child(1),.card-slot:nth-child(2),.card-slot:nth-child(4),.card-slot:nth-child(5){padding-top:0}.card-slot:nth-child(1){--rotate:-4deg}.card-slot:nth-child(2){--rotate:0deg}.card-slot:nth-child(3){--rotate:4deg}.card-slot:nth-child(4){grid-column:2/span 2;--rotate:-3deg}.card-slot:nth-child(5){grid-column:4/span 2;--rotate:3deg}.tarot-card{aspect-ratio:.62}.back-symbol span{font-size:29px}.card-back:before{inset:10px}.card-label{margin-top:10px;min-height:30px;font-size:10px}.card-label .position-name{font-size:9px}.card-label .card-name{font-size:10px}.spread-caption{font-size:10px;letter-spacing:.035em;margin-top:16px}.conversation{margin-top:21px}.message.assistant .message-text{font-size:22px}.message{padding:13px 0}.message .speaker{font-size:9px}.message-note{font-size:11px}.composer-wrap{padding-left:16px;padding-right:16px;padding-top:25px}.composer{padding-left:14px;gap:3px}.send{padding:12px 13px;font-size:12px;gap:0}.send span{display:none}.icon-button{padding:9px}textarea{font-size:16px;padding:8px 0}.composer-foot{font-size:9px}.demo-badge{font-size:8px}.reading-summary{padding:18px}.message.user .message-text{font-size:14px}.reading-item p{font-size:14px}.session-actions{gap:10px}.text-button{font-size:12px}dialog{padding:30px 24px}}
/* Readability refinements: card labels remain legible on small screens. */
.brand-art img{filter:saturate(.35) brightness(.86)}.card-label .card-name{font-size:14px;line-height:1.3}.card-label .position-name{font-size:12px}.card-label{min-height:48px}.eyebrow{font-size:12px}.about-link{font-size:14px}.option,.text-button{font-size:14px}.composer-foot{font-size:12px}.demo-badge{font-size:10px}.spread-caption{font-size:12px}.message-note{font-size:13px}.context-note{font-size:13px}.reading-item .reading-kicker{font-size:12px}.wordmark span{font-size:10px}.message .speaker{font-size:12px}.send{font-size:14px}@media(max-width:700px){.card-label .position-name{font-size:12px;line-height:1.3}.card-label .card-name{font-size:13px}.card-label{min-height:50px}.eyebrow{font-size:10px}.about-link{font-size:12px}.composer-foot{font-size:10px}.demo-badge{font-size:9px}.spread-caption{font-size:11px}.option,.text-button{font-size:13px}.message-note{font-size:12px}.send{font-size:13px}.wordmark span{font-size:9px}}
/* The phone is the primary canvas, including when opened on a larger screen. */
.masthead{max-width:620px;height:85px;padding:17px 23px}.brand-art{width:40px;height:46px}.wordmark{font-size:24px}.wordmark span{font-size:9px;margin-top:6px}.about-link{font-size:12px;gap:8px}.about-link span{font-size:20px}main{max-width:620px;padding:26px 22px 196px;display:flex;flex-direction:column}.introduction{order:0}h1{font-size:43px;margin-top:9px}.subtitle{font-size:12px}.eyebrow{font-size:10px;gap:10px;letter-spacing:.22em}.eyebrow>span{width:21px}.table{order:2;margin-top:29px}.conversation{order:1;width:100%;margin-top:20px}.session-actions{order:3;width:100%}.has-spread .table{order:1}.has-spread .conversation{order:2}.table-orbit{height:210px;top:135px;left:-3%;right:-3%}.spread{max-width:338px;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 19px}.card-slot{grid-column:span 2}.card-slot:nth-child(1),.card-slot:nth-child(2),.card-slot:nth-child(4),.card-slot:nth-child(5){padding-top:0}.card-slot:nth-child(1){--rotate:-4deg}.card-slot:nth-child(2){--rotate:0deg}.card-slot:nth-child(3){--rotate:4deg}.card-slot:nth-child(4){grid-column:2/span 2;--rotate:-3deg}.card-slot:nth-child(5){grid-column:4/span 2;--rotate:3deg}.tarot-card{aspect-ratio:.62}.back-symbol span{font-size:29px}.card-back:before{inset:10px}.card-label{margin-top:10px;min-height:50px}.card-label .position-name{font-size:12px;line-height:1.3}.card-label .card-name{font-size:13px}.spread-caption{font-size:11px;letter-spacing:.035em;margin-top:16px}.message.assistant .message-text{font-size:22px}.message{padding:13px 0}.composer-wrap{bottom:var(--keyboard-offset,0px);padding:25px max(16px,calc((100vw - 588px)/2)) max(11px,env(safe-area-inset-bottom));}.composer{padding-left:14px;gap:3px}.send{padding:12px 13px;font-size:13px;gap:0}.send span{display:none}.icon-button{padding:9px}textarea{font-size:16px;padding:8px 0}.composer-foot{font-size:10px}.demo-badge{font-size:9px}.install-link{display:block;margin:5px auto 0;border:0;border-bottom:1px solid #c4a87355;background:transparent;color:#b3a493;font-size:11px;padding:1px 2px;line-height:1.5}.install-link:hover{color:var(--gold-light)}.install-link:disabled{opacity:.6}.install-link[hidden]{display:none}.message-note{font-size:12px}.table-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center}@media(min-width:1200px) and (min-height:950px){main{padding-top:26px}.table{margin-top:29px}.spread{max-width:338px}.conversation{margin-top:20px}}@media(max-width:359px){main{padding-left:17px;padding-right:17px}.masthead{padding-left:17px;padding-right:17px}.spread{gap:15px}.card-label .position-name{font-size:11px}.composer-wrap{padding-left:10px;padding-right:10px}.about-link{font-size:11px}h1{font-size:38px}}@media(display-mode:standalone){.masthead{padding-top:max(17px,env(safe-area-inset-top));height:auto;min-height:85px}.install-link{display:none}}
/* A welcome, then a conversation. The cards enter only after the question. */
.table[hidden]{display:none}.welcome-purpose{max-width:29ch;margin:20px auto 0;color:#c5bac9;font-size:16px;line-height:1.75}.welcome-purpose[hidden]{display:none}body:not(.has-question) main{padding-top:36px;padding-bottom:4px}body:not(.has-question) h1{font-size:48px;line-height:1.08;margin:18px 0 16px}body:not(.has-question) .subtitle{font-size:15px;color:var(--gold-light)}body:not(.has-question) .conversation{margin:31px auto 0;max-width:420px}body:not(.has-question) .message.assistant .message-text{font-size:26px;line-height:1.45}body:not(.has-question) .composer-wrap{position:relative;bottom:auto;max-width:620px;margin:0 auto;padding:13px 22px max(18px,env(safe-area-inset-bottom));background:transparent}body:not(.has-question) .message .speaker{display:none}body:not(.has-question) .message-note{font-size:13px;line-height:1.7;margin-top:14px}body:not(.has-question) .composer-foot{margin-top:13px}.has-question .introduction .eyebrow{display:none}.has-question h1{font-size:38px}.has-question .subtitle{font-size:13px}.has-question .conversation{margin-top:21px}@media(max-width:359px){body:not(.has-question)main{padding-top:24px}body:not(.has-question)h1{font-size:42px}body:not(.has-question) .composer-wrap{padding-left:17px;padding-right:17px}.welcome-purpose{font-size:15px}body:not(.has-question) .message.assistant .message-text{font-size:24px}}
/* Stage-based, phone-height canvas: history scrolls inside the chat. */
.ditarot-app{height:var(--app-height,100dvh);min-height:0;overflow:hidden;display:flex;flex-direction:column}.ditarot-app .masthead{width:100%;flex:0 0 auto;min-height:67px;height:67px;padding:10px 21px}.ditarot-app .brand-art{height:39px;width:36px}.ditarot-app .wordmark{font-size:22px}.ditarot-app main{width:100%;max-width:620px;flex:1 1 auto;min-height:0;overflow:hidden;padding:20px 21px 10px!important;gap:0}.ditarot-app .conversation{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#79654b55 transparent;padding-right:3px;margin:0}.ditarot-app .composer-wrap{position:relative!important;bottom:auto!important;flex:0 0 auto;width:100%;max-width:620px;margin:0 auto;padding:10px 16px max(9px,env(safe-area-inset-bottom))!important;background:#211c2a}.ditarot-app .composer{min-height:59px}.ditarot-app .composer-foot{margin-top:7px}.ditarot-app .install-link{margin-top:3px}.ditarot-app .session-actions{flex:0 0 auto;gap:2px;margin:0;padding-top:5px}.ditarot-app .session-actions .text-button{font-size:12px;padding:7px 4px}.ditarot-app .introduction{flex:0 0 auto}.ditarot-app[data-stage="welcome"] h1{font-size:44px;line-height:1.08;margin:15px 0 13px}.ditarot-app[data-stage="welcome"] .subtitle{font-size:15px}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-size:15px;line-height:1.7;margin-top:16px;max-width:32ch}.ditarot-app[data-stage="welcome"] .conversation{margin:20px auto 0;flex:1 1 auto}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{font-size:25px}.ditarot-app[data-stage="welcome"] .message-note{font-size:12px;line-height:1.6;margin-top:10px}.ditarot-app[data-stage="chat"] .introduction,.ditarot-app[data-stage="summary"] .introduction,.ditarot-app[data-stage="cards"] .introduction{display:none}.ditarot-app[data-stage="chat"] .table,.ditarot-app[data-stage="summary"] .table{display:none}.ditarot-app[data-stage="chat"] .conversation{margin:0}.ditarot-app[data-stage="chat"] .message.assistant .message-text{font-size:23px}.ditarot-app[data-stage="cards"] .conversation,.ditarot-app[data-stage="cards"] .session-actions,.ditarot-app[data-stage="cards"] .composer{display:none}.ditarot-app[data-stage="cards"] main{padding-top:9px!important;padding-bottom:3px!important}.ditarot-app[data-stage="cards"] .table{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;justify-content:center;overflow-y:auto;overscroll-behavior:contain;margin:0}.ditarot-app[data-stage="cards"] .composer-wrap{padding-top:3px!important}.ditarot-app .table-orbit{display:none}.ditarot-app .spread{width:100%;max-width:435px;gap:12px 12px;align-items:start}.ditarot-app .tarot-card{height:clamp(96px,18dvh,181px);width:auto;max-width:100%;aspect-ratio:.62;margin:0 auto}.ditarot-app .card-label{min-height:74px;line-height:1.35;margin-top:10px}.ditarot-app .card-label .position-name{font-size:11px;line-height:1.3;color:#aa9dac}.ditarot-app .card-label .card-name{display:block;font-size:14px;color:#efe0c6;line-height:1.3}.card-brief{display:block;font-size:12px;line-height:1.3;color:#bdb0c1;margin-top:4px}.ditarot-app .spread-caption{flex:0 0 auto;font-size:11px;margin-top:10px;letter-spacing:0}.ditarot-app .table-actions{flex:0 0 auto;margin-top:4px}.reveal-progress{font-size:11px;color:#aa9dac}.ditarot-app .table-actions .text-button{font-size:12px}.ditarot-app[data-stage="summary"] .message:not(.reading-message){display:none}.ditarot-app .reading-message{padding-top:5px}.ditarot-app .reading-message .speaker{display:none}.summary-kicker{font-size:11px;letter-spacing:.18em;color:var(--gold);margin-bottom:9px}.reading-message h2{font-size:32px;margin-bottom:14px}.reading-message .summary-question{font-size:13px;color:#bfb0c7;margin-bottom:18px}.reading-message .message-text p{font-size:15px;line-height:1.75;margin-top:13px}.reading-message .summary-next{padding:14px 15px;border-left:2px solid var(--gold);background:#c4a87308}.reading-message .summary-next strong{font-weight:500;color:#eee4d5}.reading-message .message-text .context-note{font-size:12px;line-height:1.6;color:#aa9eaf}.ditarot-app dialog{max-height:calc(var(--app-height,100dvh) - 35px)}@media(max-height:720px){.ditarot-app[data-stage="welcome"] h1{font-size:38px;margin:10px 0}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-size:14px;line-height:1.6;margin-top:12px}.ditarot-app[data-stage="welcome"] .eyebrow{display:none}.ditarot-app[data-stage="welcome"] .conversation{margin-top:13px}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{font-size:23px}.ditarot-app .card-label{min-height:67px}.ditarot-app .card-label .position-name{font-size:10px}.ditarot-app .card-label .card-name{font-size:13px}.card-brief{font-size:11px}}@media(display-mode:standalone){.ditarot-app .masthead{padding-top:max(10px,env(safe-area-inset-top));height:auto;min-height:67px}}
/* Genuine brand, a generous first message, and quiet gold framing. */
.ditarot-app{position:relative}.ditarot-app:after{content:'';position:absolute;pointer-events:none;z-index:30;left:50%;top:7px;transform:translateX(-50%);width:min(calc(100% - 14px),606px);height:calc(var(--app-height,100dvh) - 14px);border:1px solid #b8996540;border-radius:8px}.ditarot-app .masthead{height:76px;min-height:76px;border-bottom:1px solid #c4a87355;padding:9px 23px}.ditarot-app .brand-art{width:51px;height:51px}.ditarot-app .brand-art img{filter:none;border-radius:3px;width:51px;height:51px;object-fit:contain}.ditarot-app[data-stage="welcome"] .eyebrow,.ditarot-app[data-stage="welcome"] .subtitle{display:none}.ditarot-app[data-stage="welcome"] h1{font-size:37px;line-height:1.2;margin:7px 0 0}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;line-height:1.4;color:#d1ba93;margin-top:13px}.ditarot-app[data-stage="welcome"] .conversation{margin-top:21px}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{font-size:24px;line-height:1.45}.ditarot-app[data-stage="welcome"] .composer{position:relative;align-items:flex-end;flex-wrap:wrap;padding:10px 12px 10px 17px;border-color:#d0ae7299;box-shadow:inset 0 0 0 3px #c4a8730b,0 7px 30px #0002}.ditarot-app[data-stage="welcome"] textarea{flex:1 1 100%;height:150px!important;min-height:150px;max-height:150px;line-height:25px;padding:0 0 7px;font-size:16px}.ditarot-app[data-stage="welcome"] .send{padding:10px 19px}.ditarot-app[data-stage="welcome"] .composer:before,.ditarot-app[data-stage="welcome"] .composer:after{content:'';position:absolute;pointer-events:none;width:14px;height:14px;border-color:#d5b579;border-style:solid}.ditarot-app[data-stage="welcome"] .composer:before{left:-5px;top:-5px;border-width:1px 0 0 1px}.ditarot-app[data-stage="welcome"] .composer:after{right:-5px;bottom:-5px;border-width:0 1px 1px 0}.ditarot-app .reading-message{border-top:1px solid #b7996355;padding-top:15px}.ditarot-app .composer{border-color:#bfa16e8f}.ditarot-app .session-actions{border-color:#bfa16e66}@media(max-height:720px){.ditarot-app[data-stage="welcome"] main{padding-top:12px!important}.ditarot-app[data-stage="welcome"] h1{font-size:31px}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-size:21px;margin-top:8px}.ditarot-app[data-stage="welcome"] .conversation{margin-top:12px}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{font-size:22px}.ditarot-app[data-stage="welcome"] textarea{height:128px!important;min-height:128px;max-height:128px;line-height:24px}.ditarot-app[data-stage="welcome"] .composer-wrap{padding-top:6px!important}.ditarot-app .masthead{height:67px;min-height:67px}.ditarot-app .brand-art,.ditarot-app .brand-art img{height:44px;width:44px}}
.ditarot-app[data-stage="welcome"] main{overflow-y:auto;overscroll-behavior:contain}.ditarot-app[data-stage="welcome"] .conversation{min-height:86px;overflow:visible}.ditarot-app .card-label{overflow-wrap:anywhere}.ditarot-app .composer textarea{scrollbar-width:thin}
/* Antique gold and silver, with the user's requested welcome hierarchy. */
.ditarot-app{--gold:#d1b075;--gold-light:#ead2a5;--ink:#f2eadb;--silver:#c4c1c5;background:#1d1723}.ditarot-app .ambient{background:radial-gradient(ellipse at 50% 27%,#6a485a34,transparent 63%),linear-gradient(130deg,#2b202b26,transparent 40%)}.ditarot-app:after{border:1px solid #d1b0758a;box-shadow:inset 0 0 0 4px #211927,inset 0 0 0 5px #b6b2b329;border-radius:9px}.gilded-corners{position:absolute;pointer-events:none;z-index:31;top:12px;left:50%;transform:translateX(-50%);width:min(calc(100% - 24px),596px);height:calc(var(--app-height,100dvh) - 24px)}.gilded-corners i{position:absolute;width:24px;height:24px;border-style:double;border-color:#d9b878;border-width:0}.gilded-corners i:after{content:'';position:absolute;width:5px;height:5px;border:1px solid #c3bfc4;transform:rotate(45deg);background:#241b2a}.gilded-corners i:nth-child(1){top:0;left:0;border-top-width:3px;border-left-width:3px}.gilded-corners i:nth-child(1):after{top:7px;left:7px}.gilded-corners i:nth-child(2){top:0;right:0;border-top-width:3px;border-right-width:3px}.gilded-corners i:nth-child(2):after{top:7px;right:7px}.gilded-corners i:nth-child(3){bottom:0;left:0;border-bottom-width:3px;border-left-width:3px}.gilded-corners i:nth-child(3):after{bottom:7px;left:7px}.gilded-corners i:nth-child(4){bottom:0;right:0;border-bottom-width:3px;border-right-width:3px}.gilded-corners i:nth-child(4):after{bottom:7px;right:7px}.ditarot-app .masthead{border-bottom:1px solid #c7a3626b;position:relative}.ditarot-app .brand-art img{border-radius:0}.ditarot-app .wordmark{color:#e6cca0}.ditarot-app .wordmark span{color:#c7c2cc;letter-spacing:.23em;font-size:11px;text-transform:uppercase}.ditarot-app .about-link{color:#bdb4c4}.ditarot-app[data-stage="welcome"] .masthead{height:103px;min-height:103px;border-bottom:0;justify-content:center;padding-top:19px;padding-bottom:0}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:78px;height:78px}.ditarot-app[data-stage="welcome"] .wordmark{display:none}.ditarot-app[data-stage="welcome"] .about-link{position:absolute;right:22px;top:24px;font-size:11px;gap:6px}.ditarot-app[data-stage="welcome"] .about-link span{font-size:17px}.ditarot-app[data-stage="welcome"] main{padding-top:12px!important}.ditarot-app[data-stage="welcome"] h1{font-size:43px;color:#ecd4a5;letter-spacing:.025em;margin:0;line-height:1.2}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-size:23px;color:#cdc7d0;margin-top:11px}.ditarot-app[data-stage="welcome"] .introduction:after{content:'✧';display:block;font-family:Georgia,serif;font-size:22px;color:#c5a265;line-height:1;margin:20px auto 0}.ditarot-app[data-stage="welcome"] .conversation{margin-top:14px}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{color:#eee4d6;font-size:25px;line-height:1.4}.ditarot-app .composer-wrap{background:#1d1723}.ditarot-app .composer{border:1px solid #d4b67d;background:linear-gradient(145deg,#36293d,#292131);box-shadow:inset 0 0 0 3px #c4a8730d,0 5px 28px #0003}.ditarot-app[data-stage="welcome"] .composer{border-color:#dcc08b;box-shadow:inset 0 0 0 3px #c4a87313,0 5px 35px #0003}.ditarot-app .send,.ditarot-app .gold-button{background:linear-gradient(125deg,#e3c994,#c19c60);color:#281d27;border:1px solid #ead6ad;box-shadow:inset 0 0 0 2px #7d603520}.ditarot-app .send:hover,.ditarot-app .gold-button:hover{background:#e3c994}.ditarot-app textarea::placeholder{color:#beb1c1}.ditarot-app .install-link{color:#c7ad81;border-color:#c7ad815c}.ditarot-app .session-actions{border-color:#cba96d66}.ditarot-app .card-back{border-color:#d6b876;box-shadow:inset 0 0 0 4px #241e2e,inset 0 0 0 5px #bfb7be66,inset 0 0 0 8px #241e2e,inset 0 0 0 9px #b89a594d}.ditarot-app .card-back:before{border-color:#bea57080}.ditarot-app .back-symbol{border-color:#c8b597aa;box-shadow:0 0 0 6px #282131,0 0 0 7px #c3b9be44}.ditarot-app .reading-message{border-color:#d0af7877}.ditarot-app .summary-next{border-color:#d6b47d;background:#c5a16a0e}.ditarot-app dialog{border-color:#d1b07599;box-shadow:inset 0 0 0 4px #2a2333,inset 0 0 0 5px #beb6c230,0 20px 100px #0008}@media(max-height:720px){.ditarot-app[data-stage="welcome"] .masthead{height:88px;min-height:88px;padding-top:14px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{height:65px;width:65px}.ditarot-app[data-stage="welcome"] h1{font-size:35px}.ditarot-app[data-stage="welcome"] .welcome-purpose{font-size:21px;margin-top:8px}.ditarot-app[data-stage="welcome"] .introduction:after{margin-top:12px;font-size:19px}.ditarot-app[data-stage="welcome"] .conversation{margin-top:8px}.ditarot-app[data-stage="welcome"] .message.assistant .message-text{font-size:23px}.ditarot-app[data-stage="welcome"] .about-link{top:21px;font-size:10px}}
/* Centered welcome and initial writing space; long dialogue stays easy to read. */
.ditarot-app[data-stage="welcome"] .conversation{text-align:center}.ditarot-app[data-stage="welcome"] .message{padding-top:8px}.ditarot-app[data-stage="welcome"] textarea{text-align:center;padding:10px 10px 7px}.ditarot-app[data-stage="welcome"] textarea::placeholder{text-align:center}.ditarot-app[data-stage="welcome"] .composer:before,.ditarot-app[data-stage="welcome"] .composer:after{width:21px;height:21px;border-style:double;border-color:#d8ba80}.ditarot-app[data-stage="welcome"] .composer:before{border-width:3px 0 0 3px;left:-6px;top:-6px}.ditarot-app[data-stage="welcome"] .composer:after{border-width:0 3px 3px 0;right:-6px;bottom:-6px}.ditarot-app[data-stage="welcome"] .composer{border-radius:10px}.ditarot-app[data-stage="welcome"] .composer-foot{justify-content:center;gap:14px}.ditarot-app .summary-kicker,.ditarot-app .reading-message h2,.ditarot-app .reading-message .summary-question{text-align:center}.ditarot-app[data-stage="chat"] .message.assistant:not(.reading-message)>.speaker{justify-content:center}.ditarot-app[data-stage="chat"] .message.assistant:not(.reading-message)>.message-text:not(.small){text-align:center}.ditarot-app .message-options{justify-content:center}.ditarot-app .composer textarea:focus{caret-color:#e4c78c}
/* A hand-laid spread: gentle offsets while preserving a readable 3 + 2 layout. */
.ditarot-app .spread{padding-top:8px;padding-bottom:6px;row-gap:13px}.ditarot-app .card-slot:nth-child(1){--rotate:-6deg;transform:translate(2px,5px)}.ditarot-app .card-slot:nth-child(2){--rotate:1.5deg;transform:translate(-1px,-3px)}.ditarot-app .card-slot:nth-child(3){--rotate:5deg;transform:translate(-2px,7px)}.ditarot-app .card-slot:nth-child(4){--rotate:-3.5deg;transform:translate(-3px,2px)}.ditarot-app .card-slot:nth-child(5){--rotate:4deg;transform:translate(3px,-3px)}.card-context-list{margin:16px 0 19px}.card-context-item{padding:12px 0;border-bottom:1px solid #d1b07524}.card-context-item:last-child{border-bottom:0}.card-context-item h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;font-weight:500;color:#e9d0a0;line-height:1.3}.card-context-item h3 span{display:inline-block;font-family:'DM Sans',sans-serif;font-size:11px;color:#b9acbf;border:1px solid #bda17055;border-radius:50%;width:20px;height:20px;line-height:18px;text-align:center;vertical-align:middle;margin-right:7px}.reading-message .card-context-item p{font-size:14px;line-height:1.7;margin-top:6px}.context-lens{color:#c9b594}.reading-message .summary-next{padding:13px 15px}.reading-message .summary-next p{font-size:14px;margin:0}.reading-message .summary-next p+p{margin-top:12px}
/* One optional two-card deepening, then a quiet end to this session. */
.ditarot-app.extra-spread .spread{grid-template-columns:repeat(2,minmax(0,1fr));max-width:316px;gap:26px}.ditarot-app.extra-spread .card-slot{grid-column:auto}.ditarot-app.extra-spread .tarot-card{height:clamp(155px,27dvh,235px)}.ditarot-app.extra-summary[data-stage="summary"] .reading-message:not(.extra-reading-message){display:none}.ditarot-app.session-ended .composer{display:none}.extension-invite{border-top:1px solid #d1b07555;padding:21px 0 8px;margin-top:23px;text-align:center}.extension-invite h3{font-family:'Cormorant Garamond',Georgia,serif;color:#e4c795;font-size:26px;font-weight:400;line-height:1.3}.extension-invite>p{font-size:13px;line-height:1.7;color:#b7aabe;margin:10px 0 14px}.session-closing{text-align:center;border-top:1px solid #cfb07760;padding:19px 8px 10px;margin-top:23px}.session-closing>span{font-size:25px;color:#d4b77e}.session-closing>p{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;line-height:1.45;color:#e3d4bc;margin-top:9px}.ditarot-app.session-ended[data-stage="chat"] .conversation{padding-bottom:18px}
/* Four to five readable lines also remain available for every later answer. */
.ditarot-app:not([data-stage="welcome"]) .composer{align-items:flex-end;flex-wrap:wrap;padding:10px 12px 9px 16px}.ditarot-app:not([data-stage="welcome"]) .composer textarea{flex:1 1 100%;height:122px!important;min-height:122px;max-height:146px;font-size:16px;line-height:25px;padding:3px 4px 8px;text-align:left}.ditarot-app:not([data-stage="welcome"]) .composer .send{padding:9px 18px}.is-typing .message-text:after{content:'▏';color:var(--gold);font-size:.85em;animation:typing-caret 1s steps(1) infinite}.motion-setting{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;margin-top:22px;color:#d9cbb8}.motion-setting input{width:19px;height:19px;accent-color:#c8a66d;flex:0 0 auto;margin-top:2px}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@keyframes typing-caret{50%{opacity:0}}@media(max-height:600px){.ditarot-app:not([data-stage="welcome"]) .composer textarea{height:103px!important;min-height:103px;line-height:24px}}
/* Each reveal breathes: image, then gold name, then its question-related hint. */
.ditarot-app .card-name{opacity:0;transform:translateY(4px);transition:opacity .5s ease,transform .5s ease;color:#e2b967!important}.ditarot-app .card-brief{opacity:0;transform:translateY(3px);transition:opacity .45s ease,transform .45s ease}.ditarot-app .name-shown .card-name,.ditarot-app .hint-shown .card-brief{opacity:1;transform:translateY(0)}.ditarot-app .card-label{min-height:94px}.prior-spread{display:none;position:absolute;top:11%;left:5%;right:5%;height:35%;pointer-events:none;z-index:0;justify-content:center;align-items:center;gap:2%;opacity:.19;filter:blur(2px) saturate(.4) brightness(.65)}.prior-spread img{width:18%;height:auto;max-height:100%;object-fit:contain;transform:rotate(var(--ghost-tilt));border-radius:4px;border:1px solid #c2a167}.ditarot-app.extra-spread .prior-spread{display:flex}.ditarot-app.extra-spread .spread{z-index:2;position:relative}.ditarot-app.extra-spread .spread-caption,.ditarot-app.extra-spread .table-actions{position:relative;z-index:2}.ditarot-app.extra-spread .card-inner{box-shadow:0 12px 45px #09050bc9,0 0 30px #211826}.ditarot-app.extra-spread .card-label{background:#1d1723b3;border-radius:6px;padding:5px 3px;min-height:96px}@media(max-height:720px){.ditarot-app .card-label{min-height:84px}.ditarot-app .tarot-card{height:clamp(89px,16.7dvh,130px)}}
/* Real baroque metalwork replaces the geometric corner placeholders. */
.ditarot-app:after{border:2px solid #b89150;box-shadow:inset 0 0 0 3px #342333,inset 0 0 0 4px #d7c8a65c,0 0 0 1px #f0cd833d;top:8px;width:min(calc(100% - 16px),604px);height:calc(var(--app-height,100dvh) - 16px);border-radius:6px}.gilded-corners{top:8px;width:min(calc(100% - 16px),604px);height:calc(var(--app-height,100dvh) - 16px);z-index:31}.gilded-corners i{width:108px;height:108px;border:0!important;background:url('assets/baroque-corner.png') center/contain no-repeat;filter:drop-shadow(0 2px 3px #09040a99)}.gilded-corners i:after{display:none}.gilded-corners i:nth-child(1){transform:rotate(0)}.gilded-corners i:nth-child(2){transform:rotate(90deg)}.gilded-corners i:nth-child(3){transform:rotate(270deg)}.gilded-corners i:nth-child(4){transform:rotate(180deg)}.ditarot-app main{padding-left:28px!important;padding-right:28px!important}.ditarot-app[data-stage="welcome"] .masthead{height:158px;min-height:158px;padding-top:21px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:132px;height:132px}.ditarot-app[data-stage="welcome"] .about-link{top:130px;right:26px;font-size:11px}.ditarot-app:not([data-stage="welcome"]) .masthead .brand{margin-left:39px}.ditarot-app[data-stage="welcome"] main{justify-content:safe center;padding-top:9px!important}.ditarot-app[data-stage="welcome"] .conversation{flex:0 0 auto;min-height:70px;margin-top:13px}.ditarot-app[data-stage="welcome"] h1{font-size:41px}.ditarot-app .composer-wrap{z-index:35;background:transparent;padding-left:24px!important;padding-right:24px!important}.ditarot-app .composer-foot>span{background:#1d1723e8;padding:1px 4px;border-radius:3px}.ditarot-app .demo-badge{background:#28212f}.ditarot-app .install-link{background:#1d1723;padding-left:6px;padding-right:6px}.ditarot-app .composer{position:relative;border:1px solid #d6b579;box-shadow:inset 0 0 0 3px #ba94521a,0 5px 27px #08040b66}.ditarot-app .composer:before,.ditarot-app .composer:after{content:'';position:absolute;pointer-events:none;width:47px!important;height:47px!important;border:0!important;background:url('assets/baroque-corner.png') center/contain no-repeat;z-index:1;filter:drop-shadow(0 1px 2px #07020966)}.ditarot-app .composer:before{top:-8px!important;left:-8px!important;transform:none}.ditarot-app .composer:after{bottom:-8px!important;right:-8px!important;transform:rotate(180deg)}.ditarot-app:not([data-stage="welcome"]) .composer textarea{padding-left:22px;padding-right:19px}.ditarot-app .composer .send{margin-right:12px}.ditarot-app .ambient{background:radial-gradient(ellipse at 50% 21%,#81512d22,transparent 57%),radial-gradient(ellipse at 50% 68%,#643a5326,transparent 72%),#1d1723}@media(max-height:720px){.gilded-corners i{width:91px;height:91px}.ditarot-app[data-stage="welcome"] .masthead{height:129px;min-height:129px;padding-top:17px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:108px;height:108px}.ditarot-app[data-stage="welcome"] .about-link{top:108px;font-size:10px}.ditarot-app[data-stage="welcome"] h1{font-size:34px}.ditarot-app[data-stage="welcome"] .introduction:after{margin-top:10px}.ditarot-app .composer-wrap{padding-left:21px!important;padding-right:21px!important}}
/* Size the real D mark by its visible artwork rather than the old square canvas. */
.ditarot-app[data-stage="welcome"] .masthead{height:181px;min-height:181px;padding-top:18px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:198px;height:156px;max-width:none;max-height:none;object-fit:contain}.ditarot-app[data-stage="welcome"] .about-link{top:157px;right:26px}@media(max-height:720px){.ditarot-app[data-stage="welcome"] .masthead{height:148px;min-height:148px;padding-top:14px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:164px;height:129px}.ditarot-app[data-stage="welcome"] .about-link{top:126px;font-size:10px}}
/* Deliberate reading rhythm and a separate overall interpretation. */
.instant-animation{display:block;margin:5px auto 1px;border:1px solid #c7ab744d;border-radius:100px;background:#1d1723;color:#cfbb96;font-size:11px;line-height:1.5;padding:3px 13px}.instant-animation[hidden]{display:none}.text-typing:after{content:'▏';color:var(--gold);font-weight:400;animation:typing-caret 1s steps(1) infinite}.is-typing .message-text:after{display:none}.ditarot-app .card-inner{transition-duration:1.5s}.ditarot-app .card-name{transition-duration:1.15s}.ditarot-app .card-brief{transition-duration:.6s}.ditarot-app .card-brief.text-typing:after{font-size:12px}.ditarot-app[data-stage="context-summary"] .introduction,.ditarot-app[data-stage="context-summary"] .table,.ditarot-app[data-stage="context-summary"] .composer{display:none}.ditarot-app[data-stage="context-summary"] .message:not(.context-reading-message){display:none}.ditarot-app.overall-summary[data-stage="summary"] .reading-message:not(.overall-reading-message){display:none}.context-reading-message .card-context-item[hidden]{display:none}.reading-next-action{text-align:center;margin:23px 0 16px}.reading-next-action button[hidden]{display:none}.overall-reading-message h2{min-height:2.5em}.overall-copy{margin:21px 0}.reading-message .overall-copy p{font-size:17px;line-height:1.85;margin:18px 0}.ditarot-app:not([data-stage="welcome"]) .message.assistant .message-text{text-align:left}.ditarot-app .reading-message h2,.ditarot-app .summary-kicker,.ditarot-app .summary-question{text-align:center}.ditarot-app .card-context-item h3{text-align:center;margin-bottom:9px}.ditarot-app .card-context-item p{text-align:left}.ditarot-app:not([data-stage="welcome"]) .masthead{height:86px;min-height:86px;justify-content:center;z-index:34}.ditarot-app:not([data-stage="welcome"]) .masthead .brand{margin-left:0!important;padding:2px 6px;background:#1d1723f0;border-radius:7px}.ditarot-app:not([data-stage="welcome"]) .brand-art,.ditarot-app:not([data-stage="welcome"]) .brand-art img{width:76px;height:60px;max-width:none;max-height:none;object-fit:contain}.ditarot-app:not([data-stage="welcome"]) .about-link{position:absolute;right:24px;top:31px;font-size:0;gap:0}.ditarot-app:not([data-stage="welcome"]) .about-link span{font-size:20px}.ditarot-app:not([data-stage="welcome"]) .wordmark{font-size:23px}.ditarot-app:not([data-stage="welcome"]) .wordmark span{font-size:10px}.ditarot-app[data-stage="context-summary"] .session-actions{display:none}.reduce-motion .text-typing:after{display:none}
.animation-instant *,.animation-instant *:before,.animation-instant *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* The history owns scrolling; the composer keeps its existing writing dimensions. */
.ditarot-app{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh)}.ditarot-app .conversation{scroll-padding-top:12px;scroll-padding-bottom:20px;overflow-anchor:none}.ditarot-app main{min-height:0}.ditarot-app .composer-wrap{flex-shrink:0}.ditarot-app.keyboard-open .masthead{height:calc(57px + env(safe-area-inset-top));min-height:calc(57px + env(safe-area-inset-top));padding-top:max(5px,env(safe-area-inset-top));padding-bottom:5px}.ditarot-app.keyboard-open .brand-art,.ditarot-app.keyboard-open .brand-art img{width:58px;height:45px;max-width:none;max-height:none;object-fit:contain}.ditarot-app.keyboard-open .masthead .brand{margin:0!important}.ditarot-app.keyboard-open .wordmark{font-size:19px}.ditarot-app.keyboard-open .wordmark span{font-size:9px}.ditarot-app.keyboard-open .about-link{top:18px!important;font-size:0!important}.ditarot-app.keyboard-open .composer-foot,.ditarot-app.keyboard-open .install-link{display:none}.ditarot-app.keyboard-open .composer-wrap{padding-top:4px!important;padding-bottom:max(5px,env(safe-area-inset-bottom))!important}.ditarot-app.keyboard-open main{padding-top:8px!important;padding-bottom:4px!important}.ditarot-app.keyboard-open .instant-animation{margin-top:3px;margin-bottom:0}.ditarot-app .conversation{transition:opacity .55s ease,transform .55s ease}.ditarot-app.leaving-chat .conversation{opacity:0;transform:translateY(-7px)}.ditarot-app[data-stage="cards"] .table{animation:enter-card-room .65s ease both}.ditarot-app .card-inner{transition-duration:2.2s}.ditarot-app .card-label .card-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;line-height:1.1;color:#e8bd69!important;transition-duration:1.5s;text-shadow:0 1px 5px #b17e2a22}.ditarot-app .card-label{min-height:102px}.ditarot-app .card-brief{line-height:1.45}@keyframes enter-card-room{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-height:720px){.ditarot-app .card-label .card-name{font-size:18px}.ditarot-app .card-label{min-height:94px}}
.ready-for-summary{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:25px!important;line-height:1.45!important;text-align:center!important;color:#e6d1ad!important;margin:27px 10px 13px!important}.reading-next-action .gold-button{max-width:100%;white-space:normal;line-height:1.6;padding:12px 21px;font-size:14px}.ditarot-app .overall-reading-message{position:relative;border:1px solid #d2b0798f;border-radius:9px;padding:28px 23px 24px;margin:8px 0 12px;background:radial-gradient(ellipse at top,#9b683b15,transparent 64%),#241b2cb8;box-shadow:inset 0 0 0 4px #211926,inset 0 0 0 5px #bd9c5e31}.overall-reading-message:before,.overall-reading-message:after{content:'';position:absolute;width:56px;height:56px;background:url('assets/baroque-corner.png') center/contain no-repeat;pointer-events:none;opacity:.92}.overall-reading-message:before{left:0;top:0}.overall-reading-message:after{right:0;bottom:0;transform:rotate(180deg)}.overall-reading-message h2{font-size:37px;color:#e8c688;padding:4px 7px 10px;line-height:1.2}.overall-reading-message .summary-kicker{letter-spacing:.23em;color:#cab790}.overall-reading-message .overall-copy p{font-size:16px;line-height:1.9}.ditarot-app .table-actions #next-card{font-size:12px;padding:8px 15px}.ditarot-app .table-actions{gap:12px}
.ditarot-document{height:100%;overflow:hidden}.ditarot-app{position:fixed;left:0;right:0;top:var(--viewport-top,0px);width:100%;margin:0}
.ditarot-app[data-stage="cards"] .table{justify-content:safe center}
.animation-mode{display:block;margin:4px auto 2px;border:0;border-bottom:1px solid #b89c6355;background:#1d1723;color:#bfb099;font-size:10px;line-height:1.5;padding:1px 5px}.animation-mode[hidden]{display:none}.animation-mode-detail[hidden]{display:none}.ditarot-app .card-label .position-name{display:none}.ditarot-app .card-label{min-height:82px}
.ditarot-app .card-brief{font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;font-weight:400;line-height:1.18;color:#ead8b6;letter-spacing:.015em;text-shadow:0 1px 2px #09040a88}.ditarot-app .card-label{min-height:86px}.ditarot-app .card-label .card-name{margin-bottom:7px}.ditarot-app[data-stage="reading-transition"] .introduction,.ditarot-app[data-stage="reading-transition"] .table,.ditarot-app[data-stage="reading-transition"] .composer,.ditarot-app[data-stage="reading-transition"] .session-actions{display:none}.ditarot-app[data-stage="reading-transition"] .conversation{display:flex;align-items:safe center;justify-content:center}.ditarot-app[data-stage="reading-transition"] .message:not(.reading-transition-message){display:none}.reading-transition-message{text-align:center;width:100%;max-width:390px}.reading-transition-message .speaker{justify-content:center}.ditarot-app .reading-transition-message .message-text{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;line-height:1.5;text-align:center!important;color:#e5c89e}.context-reading-message{position:relative;border:1px solid #c8a86e75;border-radius:9px;padding:25px 21px 20px!important;background:radial-gradient(ellipse at top,#8a5d3414,transparent 65%),#241b2cb3;box-shadow:inset 0 0 0 4px #211926,inset 0 0 0 5px #b5976233}.context-reading-message:before,.context-reading-message:after{content:'';position:absolute;width:47px;height:47px;background:url('assets/baroque-corner.png') center/contain no-repeat;pointer-events:none}.context-reading-message:before{top:0;left:0}.context-reading-message:after{bottom:0;right:0;transform:rotate(180deg)}.context-reading-message h2{font-size:34px;color:#e8c68c;padding:0 9px;line-height:1.25}.context-reading-message .summary-question{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px!important;line-height:1.55!important;color:#d4c5d0;font-style:italic}.context-reading-message .card-context-item h3{font-size:24px}.context-reading-message .card-context-item p{font-size:15px;line-height:1.8}@media(max-height:720px){.ditarot-app .card-brief{font-size:19px}.ditarot-app .card-label{min-height:79px}}
/* One consistent centered brand stack; the reading flow presents only its next decision. */
.ditarot-app .introduction{display:none!important}.ditarot-app .masthead{justify-content:center!important}.ditarot-app .masthead .brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;margin:0!important;padding:0!important;background:transparent!important}.ditarot-app .masthead .wordmark{display:flex!important;flex-direction:column;align-items:center;line-height:1;text-align:center}.ditarot-app .masthead .wordmark>span{display:block;padding:0;margin:0;letter-spacing:0;text-transform:none;font-family:'Cormorant Garamond',Georgia,serif;color:#e7ca95}.ditarot-app[data-stage="welcome"] .masthead{height:274px;min-height:274px;padding:13px 0 8px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:198px;height:156px}.ditarot-app[data-stage="welcome"] .brand-digigin{font-size:22px;line-height:1.15;letter-spacing:.08em!important}.ditarot-app[data-stage="welcome"] .brand-ditarot{font-size:40px;line-height:1.1}.ditarot-app[data-stage="welcome"] .brand-subtitle{font-size:17px;line-height:1.5;color:#cbc3cb!important}.ditarot-app[data-stage="welcome"] .about-link{top:154px}.ditarot-app:not([data-stage="welcome"]) .masthead{height:106px;min-height:106px;padding:4px 0 5px}.ditarot-app:not([data-stage="welcome"]) .brand-art,.ditarot-app:not([data-stage="welcome"]) .brand-art img{width:61px;height:48px}.ditarot-app:not([data-stage="welcome"]) .brand-digigin{font-size:11px;line-height:1.05;letter-spacing:.06em!important}.ditarot-app:not([data-stage="welcome"]) .brand-ditarot{font-size:22px;line-height:1.05}.ditarot-app:not([data-stage="welcome"]) .brand-subtitle{font-size:11px;line-height:1.2;color:#cbc3cb!important}.ditarot-app:not([data-stage="welcome"]) .about-link{top:35px}.ditarot-app.keyboard-open .masthead{height:calc(70px + env(safe-area-inset-top))!important;min-height:calc(70px + env(safe-area-inset-top))!important;padding:3px 0!important}.ditarot-app.keyboard-open .brand-art,.ditarot-app.keyboard-open .brand-art img{width:43px!important;height:34px!important}.ditarot-app.keyboard-open .brand-digigin{font-size:9px!important;line-height:1!important}.ditarot-app.keyboard-open .brand-ditarot{font-size:16px!important;line-height:1!important}.ditarot-app.keyboard-open .brand-subtitle{font-size:9px!important;line-height:1.15!important}.ditarot-app.keyboard-open .about-link{top:24px!important}.ditarot-app #view-cards,.ditarot-app #why,.ditarot-app #review-extra{display:none!important}.ditarot-app .session-actions{justify-content:center}.ditarot-app.awaiting-followup-choice[data-stage="summary"] .composer,.ditarot-app.extra-summary[data-stage="summary"] .composer{display:none}.ditarot-app .extension-options{flex-direction:column;align-items:center;gap:10px}.ditarot-app .extension-options .option{min-width:210px;font-size:14px;padding:10px 18px}@media(max-height:720px){.ditarot-app[data-stage="welcome"] .masthead{height:225px;min-height:225px;padding-top:10px}.ditarot-app[data-stage="welcome"] .brand-art,.ditarot-app[data-stage="welcome"] .brand-art img{width:162px;height:128px}.ditarot-app[data-stage="welcome"] .brand-digigin{font-size:19px}.ditarot-app[data-stage="welcome"] .brand-ditarot{font-size:34px}.ditarot-app[data-stage="welcome"] .brand-subtitle{font-size:15px}.ditarot-app[data-stage="welcome"] .about-link{top:124px}}

.ditarot-app .send{touch-action:manipulation}

/* Card captions share one readable serif; both appear softly after the flip. */
.ditarot-app .card-label .card-name,.ditarot-app .card-label .card-brief{font-family:'Cormorant Garamond',Georgia,serif;transition:opacity 1.2s ease,transform 1.2s ease}.ditarot-app .card-label .card-brief{font-size:16px;font-weight:400;line-height:1.3;letter-spacing:0}.ditarot-app .card-label .card-name{font-size:20px}@media(max-height:720px){.ditarot-app .card-label .card-brief{font-size:15px}.ditarot-app .card-label .card-name{font-size:18px}}



/* Stable full-text layout, three-dot lead-in, then individual blur-in words. */
.ditarot-app .pending-reveal,.ditarot-app .card-label .card-name.pending-reveal{color:transparent!important;text-shadow:none!important}.word-reveal-text{position:relative}.word-reveal-text:after,.ditarot-app .text-typing:after{display:none!important}.word-reveal-layer{position:absolute;inset:0;display:block;box-sizing:border-box;margin:0;padding:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;text-indent:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit;color:var(--reveal-ink,var(--ink));pointer-events:none}.reveal-word{display:inline;opacity:0;filter:blur(7px);transition:opacity 180ms ease-out,filter var(--word-duration,650ms) cubic-bezier(.33,0,.67,1)}.reveal-word.is-visible{opacity:1;filter:blur(0)}.typing-indicator{position:absolute;inset:0 auto auto 0;width:100%;height:1.6em;color:var(--reveal-ink,var(--gold));text-align:inherit;pointer-events:none}.typing-dots{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border-radius:20px;background:#211926b3;vertical-align:middle}.typing-dots i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.55;animation:typing-dot-bounce .96s ease-in-out infinite}.typing-dots i:nth-child(2){animation-delay:.128s}.typing-dots i:nth-child(3){animation-delay:.256s}@keyframes typing-dot-bounce{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.ditarot-app .card-name.word-reveal-text,.ditarot-app .card-brief.word-reveal-text{transition:none!important;opacity:1!important;transform:none!important}.reduce-motion .typing-indicator,.animation-instant .typing-indicator{display:none}.reduce-motion .reveal-word,.animation-instant .reveal-word{opacity:1;filter:none;transition:none}

/* Card labels arrive whole, separately from conversational word reveals. */
.ditarot-app .card-label .card-name{transition:opacity .8s ease,transform .8s ease}.ditarot-app .card-label .card-brief{transition:opacity .7s ease,transform .7s ease}

/* Three breathing paragraphs remain one continuous, stable-layout reading. */
#overall-one{white-space:pre-line}.extension-options[hidden]{display:none!important}

/* Focused motion polish: no touch-hover jump, stable 3D faces, active-only layers. */
.ditarot-app .tarot-card{transition:transform .52s cubic-bezier(.22,.61,.36,1);perspective-origin:50% 48%;-webkit-tap-highlight-color:transparent}.ditarot-app .tarot-card.is-turning{transform:translate3d(0,-4px,0) rotate(var(--rotate))}.ditarot-app .card-inner{transform:translateZ(0) rotateY(0deg);transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform 2.2s cubic-bezier(.45,0,.2,1)}.ditarot-app .tarot-card.revealed .card-inner{transform:translateZ(0) rotateY(180deg)}.ditarot-app .is-turning .card-inner{will-change:transform}.ditarot-app .card-back,.ditarot-app .card-front{backface-visibility:hidden;-webkit-backface-visibility:hidden}.ditarot-app .card-back{transform:rotateY(0deg) translateZ(.15px)}.ditarot-app .card-front{transform:rotateY(180deg) translateZ(.15px)}.ditarot-app .card-label .card-name{transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}.ditarot-app .card-label .card-brief{transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}.name-entering .card-name,.meaning-entering .card-brief{will-change:opacity,transform}.reveal-word.is-revealing{will-change:filter,opacity}.reveal-word.is-settled{filter:none;opacity:1;transition:none;will-change:auto}

/* The already drawn five stay visible as one compact overview, without a new draw. */
.reading-mini-spread{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;height:clamp(62px,10dvh,86px);width:100%;max-width:320px;margin:10px auto 18px;align-items:stretch;justify-items:center}.reading-mini-spread img{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;filter:drop-shadow(0 2px 3px #09040a77)}
.ditarot-app .card-label .card-name{transform:translate3d(0,6px,0)}.ditarot-app .card-label .card-brief{transform:translate3d(0,4px,0)}.ditarot-app .name-shown .card-name,.ditarot-app .hint-shown .card-brief{transform:translate3d(0,0,0)}

.extra-reading-message .reading-mini-spread{height:clamp(54px,8dvh,68px);margin-bottom:7px}.reading-mini-spread.mini-additional{grid-template-columns:repeat(2,minmax(0,1fr));width:44%;max-width:142px;margin-top:5px;margin-bottom:17px}.reading-message .mini-extra-caption{font-size:10px!important;line-height:1.35!important;text-align:center!important;letter-spacing:.06em;color:var(--gold);margin:2px 0 0!important}#extra-overall{white-space:pre-line}

/* Persisted draw orientation: image only, never the text or flip container. */
.card-front img.card-reversed,.reading-mini-spread img.card-reversed,#card-detail img.card-reversed{transform:rotate(180deg)}
.prior-spread img.card-reversed{transform:rotate(calc(var(--ghost-tilt) + 180deg))}
.ditarot-app.extra-spread .spread{grid-template-columns:minmax(0,1fr);max-width:155px}
.reading-mini-spread.mini-additional.mini-single{grid-template-columns:minmax(0,1fr);width:22%;max-width:68px}

.game-weights{width:100%;border-collapse:collapse;font-size:12px;line-height:1.4;margin-top:12px}.game-weights th,.game-weights td{padding:5px 3px;border-bottom:1px solid #c4a87333;text-align:left;overflow-wrap:anywhere}.game-weights th[scope="row"]{font-weight:400}

/* Whole-word titles: enough side bearing for the gold serif, fitted to the slot. */
.ditarot-app .card-label .card-name{font-size:var(--card-title-size,clamp(12px,3.9vw,20px));line-height:1.18;overflow-wrap:normal;word-break:normal;hyphens:none;-webkit-hyphens:none;white-space:normal;min-width:0;max-width:100%;padding-inline:2px;overflow:visible}
.ditarot-app .card-label{height:auto;overflow:visible}
#card-detail h2{overflow-wrap:normal;word-break:normal;hyphens:none}

.reading-sources{font:12px/1.5 sans-serif;color:var(--muted);margin:12px 0}.reading-sources a{display:block;color:var(--gold-light);margin:7px 0;overflow-wrap:anywhere}

/* Once the turn finishes, paint the image as a flat face. */
.ditarot-app .tarot-card.revealed:not(.is-turning) .card-inner{transform:none;transition:none;transform-style:flat}
.ditarot-app .tarot-card.revealed:not(.is-turning) .card-front{transform:none;backface-visibility:visible;-webkit-backface-visibility:visible}
.ditarot-app .tarot-card.revealed:not(.is-turning) .card-back{display:none}
.ditarot-app .card-front img{display:block}

/* Names remain upright and visible below every result card. */
.reading-mini-spread,.extra-reading-message .reading-mini-spread{height:auto;max-width:440px;align-items:start;margin-bottom:16px}
.mini-card{margin:0;min-width:0;width:100%;display:flex;flex-direction:column;align-items:center}
.reading-mini-spread .mini-card img{height:clamp(62px,10dvh,86px);width:100%;object-fit:contain}
.reading-mini-spread figcaption{display:block;width:100%;margin-top:6px;color:var(--gold-light);font:600 11px/1.25 'DM Sans',sans-serif;text-align:center;overflow-wrap:anywhere}
.reading-mini-spread figcaption span{display:block;margin-top:3px;font-size:9px;font-weight:400;color:var(--muted)}
@media(max-width:480px){.reading-mini-spread{gap:5px}.reading-mini-spread figcaption{font-size:10px}}

.session-closing p{white-space:pre-line}

#site-header .info-circle{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid var(--gold);border-radius:50%;color:var(--gold-light);background:transparent}
#site-header .info-circle span{font:italic 18px/1 Georgia,serif;color:inherit}
.personal-conclusion{margin-top:22px;padding-top:16px;border-top:1px solid var(--border)}
.personal-conclusion p{white-space:pre-line}
#connection-sources a{display:block;color:var(--gold-light);overflow-wrap:anywhere;margin:6px 0}

.card-analysis{margin:24px 0 28px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.card-analysis figure{margin:0 auto 14px;width:100px;text-align:center}.card-analysis figure img{display:block;width:100%;height:170px;object-fit:contain}.card-analysis figure img.card-reversed{transform:rotate(180deg)}
.card-analysis figcaption{font:600 13px/1.3 'DM Sans',sans-serif;color:var(--gold-light);margin-top:7px}.card-analysis figcaption span{display:block;font-size:10px;font-weight:400;color:var(--muted)}
.card-analysis h3,.overall-copy h3{font:500 20px/1.3 'Cormorant Garamond',Georgia,serif;color:var(--gold-light);margin:0 0 8px}
.card-analysis-copy{white-space:pre-line}

/* Choices follow the completed text, including reduced-motion rendering. */
.message-options[hidden]{display:none!important}

#install-app[hidden]{display:none!important}

.ditarot-app[data-stage="summary"] .reading-message .return-visit-invite{display:block!important;margin-top:24px}.ditarot-app .reading-message .return-visit-invite .message-text{font-size:16px;line-height:1.6}.ditarot-app .return-visit-invite .message-options{display:flex;justify-content:center;margin-top:15px}
