@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400&display=swap");@tailwind base;@tailwind components;@tailwind utilities;:root{--bg:#08060a;--bg-raised:#0e0b12;--surface:#141018;--border:#1f1b26;--border-hover:#2e2838;--muted:#55505e;--muted-light:#7a7484;--text:#ddd6ce;--text-dim:#b8b0a8;--gold:#b8962e;--gold-light:#d4b048;--gold-dim:#8a7022;--gold-glow:rgba(184,150,46,.08);--gold-glow-strong:rgba(184,150,46,.15);--card-bg:linear-gradient(170deg,#18141e,#110e16 60%,#0d0b10);--card-face-bg:linear-gradient(170deg,#1c1722,#14101a 60%,#0e0c12);--card-border:rgba(184,150,46,.22);--card-border-active:rgba(184,150,46,.45);--shadow-sm:0 4px 12px -4px rgba(0,0,0,.5);--shadow-md:0 8px 24px -8px rgba(0,0,0,.6);--radius-card:0.625rem;--ease:cubic-bezier(0.25,0.46,0.45,0.94)}*,:after,:before{box-sizing:border-box}body,html{width:100%}body{font-family:Cormorant Garamond,Georgia,serif;background:var(--bg);color:var(--text);min-height:100dvh;margin:0;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 80% 50% at 50% -5%,var(--gold-glow) 0,transparent 60%);pointer-events:none;z-index:0}.font-display{font-family:Cinzel,serif}.app-shell{width:100%;max-width:600px;margin:0 auto;padding:0 1.25rem}.tarot-card{border-radius:var(--radius-card);border:1px solid var(--card-border);box-shadow:var(--shadow-md);overflow:hidden;position:relative}.tarot-card-back{background:var(--card-bg);cursor:pointer;transition:border-color .2s,transform .2s var(--ease)}.tarot-card-back:hover{border-color:var(--card-border-active)}.tarot-card-face{background:var(--card-face-bg)}.card-inner-border{position:absolute;inset:5px;border-radius:5px;border:1px solid rgba(184,150,46,.15);pointer-events:none}.card-back-circle{width:36px;height:36px;border-radius:50%;border:1px solid rgba(184,150,46,.35);display:flex;align-items:center;justify-content:center;background:rgba(14,11,18,.6)}@media (min-width:480px){.card-back-circle{width:42px;height:42px}}.card-back-star{font-family:Cinzel,serif;font-size:16px;line-height:1;color:rgba(184,150,46,.7)}@media (min-width:480px){.card-back-star{font-size:18px}}.card-back-label{font-family:Cinzel,serif;font-size:7px;letter-spacing:.35em;text-transform:uppercase;color:rgba(184,150,46,.45)}@media (min-width:480px){.card-back-label{font-size:8px}}.card-position{font-family:Cinzel,serif;font-size:7px;letter-spacing:.3em;text-transform:uppercase;color:rgba(184,150,46,.7);margin-bottom:4px;position:relative;z-index:1}@media (min-width:480px){.card-position{font-size:8px;margin-bottom:6px}}.card-glyph{font-size:24px;line-height:1;color:rgba(184,150,46,.55);margin-bottom:4px;position:relative;z-index:1}@media (min-width:480px){.card-glyph{font-size:30px;margin-bottom:6px}}.card-numeral{font-family:Cinzel,serif;font-size:11px;letter-spacing:.12em;color:rgba(184,150,46,.6);position:relative;z-index:1}@media (min-width:480px){.card-numeral{font-size:13px}}.card-divider{width:16px;height:1px;background:rgba(184,150,46,.25);margin:6px 0}.card-divider,.card-name{position:relative;z-index:1}.card-name{font-family:Cinzel,serif;font-size:9px;font-weight:500;letter-spacing:.05em;color:var(--text);text-align:center;line-height:1.3;padding:0 4px}@media (min-width:480px){.card-name{font-size:10.5px}}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.625rem;gap:.625rem;width:100%;max-width:390px;margin:0 auto}@media (min-width:480px){.card-grid{gap:.875rem;max-width:420px}}.card-slot{aspect-ratio:2/3;width:100%;position:relative}.btn{font-family:Cinzel,serif;font-weight:500;letter-spacing:.15em;font-size:.8125rem;padding:.75rem 2rem;border-radius:.5rem;border:1px solid transparent;cursor:pointer;transition:all .2s var(--ease);display:inline-flex;align-items:center;justify-content:center}.btn-gold{color:var(--gold);background:var(--gold-glow);border-color:rgba(184,150,46,.3)}.btn-gold:hover:not(:disabled){background:var(--gold-glow-strong);border-color:rgba(184,150,46,.5)}.btn-gold:disabled{opacity:.35;cursor:not-allowed}.btn-text{color:var(--muted);background:transparent;border:none;padding:.5rem 1rem;font-size:.75rem}.btn-text:hover{color:var(--text-dim)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;box-shadow:var(--shadow-sm)}.input-area{width:100%;min-height:140px;background:var(--bg-raised);border:1px solid var(--border);border-radius:.5rem;padding:1rem 1.25rem;color:var(--text);font-family:Cormorant Garamond,Georgia,serif;font-size:1.0625rem;line-height:1.6;resize:none;transition:border-color .25s}.input-area::placeholder{color:var(--muted)}.input-area:focus{outline:none;border-color:rgba(184,150,46,.35)}.reading-body,.reading-body p{color:var(--text)}.reading-body p{line-height:1.75}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);border:none;margin:0}.question-scene{max-width:400px;margin:0 auto;padding:0 4px;text-align:center}.question-ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:28px}.ornament-line{display:block;width:40px;height:1px;background:linear-gradient(90deg,transparent,rgba(184,150,46,.3))}.ornament-line:last-child{background:linear-gradient(90deg,rgba(184,150,46,.3),transparent)}.ornament-symbol{font-size:14px;letter-spacing:.3em;color:rgba(184,150,46,.45)}.question-title{font-size:17px;font-weight:500;letter-spacing:.12em;color:var(--gold);margin-bottom:12px;line-height:1.4}@media (min-width:480px){.question-title{font-size:20px}}.question-subtitle{font-size:15px;color:var(--text-dim);line-height:1.7;margin-bottom:32px;max-width:340px;margin-left:auto;margin-right:auto}.question-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px 20px 16px;box-shadow:var(--shadow-md),0 0 60px -20px rgba(184,150,46,.06);transition:border-color .3s,box-shadow .3s}.question-card:focus-within{border-color:rgba(184,150,46,.25);box-shadow:var(--shadow-md),0 0 40px -10px rgba(184,150,46,.08)}.corner-mark{position:absolute;font-size:14px;color:rgba(184,150,46,.18);line-height:1;pointer-events:none}.corner-tl{top:8px;left:10px}.corner-tr{top:8px;right:10px}.corner-bl{bottom:8px;left:10px}.corner-br{bottom:8px;right:10px}.question-label{display:block;font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:rgba(184,150,46,.55);margin-bottom:12px;text-align:left}@media (min-width:480px){.question-label{font-size:10px}}.question-textarea{width:100%;min-height:130px;background:rgba(8,6,10,.6);border:1px solid rgba(31,27,38,.8);border-radius:8px;padding:16px 18px;color:var(--text);font-family:Cormorant Garamond,Georgia,serif;font-size:16px;line-height:1.65;resize:none;transition:border-color .25s}.question-textarea::placeholder{color:var(--muted);font-style:italic}.question-textarea:focus{outline:none;border-color:rgba(184,150,46,.3)}@media (min-width:480px){.question-textarea{min-height:150px;font-size:17px}}.question-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:0 2px}.question-hint{font-style:italic;letter-spacing:.05em}.question-count,.question-hint{font-size:10px;color:var(--muted)}.question-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.question-cta{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:24px;padding:14px 24px;font-size:13px;font-weight:500;letter-spacing:.15em;color:var(--gold);background:linear-gradient(180deg,rgba(184,150,46,.1),rgba(184,150,46,.04));border:1px solid rgba(184,150,46,.3);border-radius:8px;cursor:pointer;transition:all .25s var(--ease)}.question-cta:hover:not(:disabled){background:linear-gradient(180deg,rgba(184,150,46,.16),rgba(184,150,46,.06));border-color:rgba(184,150,46,.5);box-shadow:0 0 20px -4px rgba(184,150,46,.12)}.question-cta:disabled{opacity:.3;cursor:not-allowed}.cta-icon{font-size:10px;color:rgba(184,150,46,.5)}.question-min-hint{text-align:center;font-size:10px;color:var(--muted);margin-top:8px;letter-spacing:.08em}.question-prompts{margin-top:36px;padding-top:24px;border-top:1px solid rgba(31,27,38,.6)}.prompts-label{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:rgba(184,150,46,.4);margin-bottom:14px}.prompts-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.prompt-chip{font-family:Cormorant Garamond,Georgia,serif;font-size:13px;color:var(--muted-light);background:rgba(20,16,24,.7);border:1px solid rgba(31,27,38,.9);border-radius:20px;padding:6px 16px;cursor:pointer;transition:all .2s}.prompt-chip:hover{color:var(--text-dim);border-color:rgba(184,150,46,.25);background:rgba(184,150,46,.05)}@keyframes spin{to{transform:rotate(1turn)}}