:root{
  --ink:#38253f;
  --ink-2:#56364d;
  --plum:#693f5c;
  --lilac:#ad688b;
  --lilac-2:#eed1de;
  --gold:#9c5a28;
  --cream:#fffaf7;
  --paper:#fff9f5;
  --muted:#684f63;
  --line:rgba(133,70,108,.27);
  --shadow:0 18px 45px rgba(111,57,83,.13);
  --pastel-berry:#8b3f69;
  --pastel-berry-hover:#743052;
  --pastel-honey:#9c5a28;
  --pastel-rose:#f7dfe7;
  --pastel-surface:rgba(255,238,243,.91);
}

html,body,.app-shell{background:#fff2ed}
body{color:var(--ink)}
.app-shell:before{
  position:fixed;inset:0;z-index:0;height:auto;opacity:1;
  background:#fff2ed url('./assets/tarot-pink-background.png') center center/contain no-repeat;
}
.app-shell:after{display:none}
@media (min-width:650px) and (orientation:portrait){
  .app-shell:before{background-image:url('./assets/tarot-pink-tablet.png');background-size:cover}
}
@media (min-width:650px) and (orientation:landscape){
  .app-shell:before{background-image:url('./assets/tarot-pink-desktop.png');background-size:cover}
}
@media (max-width:649px){
  .app-shell:before{
    inset:-18px;
    background-image:url('./assets/tarot-pink-background.png');
    background-size:cover;
    filter:blur(18px);
  }
  .app-shell:after{
    content:"";
    display:block;
    position:fixed;
    inset:0;
    z-index:0;
    width:auto;
    height:auto;
    aspect-ratio:auto;
    transform:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    opacity:1;
    background:transparent url('./assets/tarot-pink-background.png') center center/contain no-repeat;
    pointer-events:none;
  }
}
@media (max-width:649px) and (min-aspect-ratio:1/2){
  .app-shell:before,.app-shell:after{background-image:url('./assets/tarot-pink-short-phone.png')}
}

.site-header{background:rgba(255,249,246,.65);border-bottom:1px solid rgba(133,70,108,.14);backdrop-filter:blur(10px)}
.brand,.brand-mark,.header-link,.icon-button{color:#51304d}
.brand-mark{border-color:#a96b8b;box-shadow:none}
.header-link:hover,.icon-button:hover{background:rgba(139,63,105,.09);color:var(--pastel-berry)}
.demo-ribbon{background:rgba(255,246,243,.72);color:#77546b;border-color:rgba(133,70,108,.14)}
.eyebrow{color:var(--pastel-honey)}
.hero-content h1,.form-heading,.draw-content h2,.spread-intro h1,.loading-stage h2,.reading-top h1,.reading-paper h2,.reading-paper h3,.stage h1,.stage h2{color:var(--ink)}
.gold,.hero-content h1 em{color:var(--pastel-berry)}
.hero-content p,.deck-home p,.lead,.draw-content .draw-sub,.draw-question,.spread-intro p,.reading-question,.reading-top .small-note,.reading-paper p,.loading-stage .lead,.loading-stage .small-note{color:#594258}
.small-note,.step-label,.field-meta,.example-box,.empty-state,.site-footer{color:#684f63}
.home-below div{border-color:var(--line)}
.home-below strong{color:var(--pastel-honey)}
.home-below p{color:#604960}

.button-primary,.deck-option-cta{
  background:var(--pastel-berry);border:1px solid #793257;color:#fff;
  box-shadow:0 9px 23px rgba(115,48,82,.22);
}
.button-primary:hover,.deck-option:hover .deck-option-cta{background:var(--pastel-berry-hover);box-shadow:0 11px 28px rgba(115,48,82,.27)}
.button-secondary{background:rgba(255,249,246,.84);border:1px solid #b6829e;color:#713657}
.button-secondary:hover{background:#fbe8ee}
.button-text{color:#74385b}
.button-text:hover{color:#552743}
.button:focus-visible,.deck-option:focus-visible,.topic:focus-visible{outline:3px solid #9a3d69;outline-offset:3px}

.deck-home .home-quota{background:rgba(255,248,241,.94);border-color:#d7ac81;color:var(--pastel-honey);box-shadow:0 5px 18px rgba(132,69,104,.08)}
.deck-option{background:var(--pastel-surface);border:1px solid #d8adbf;color:#493149;box-shadow:0 10px 31px rgba(118,59,89,.11)}
.deck-option:hover,.deck-option:focus-visible{background:rgba(255,238,243,.98);border-color:#a65881;box-shadow:0 15px 33px rgba(118,59,89,.17)}
.deck-option-art .card{box-shadow:0 7px 20px rgba(81,39,62,.22)}
.deck-option strong{color:var(--pastel-honey)}

.input-label,.topic-heading{color:var(--pastel-honey)}
.question-input{background:rgba(255,251,248,.92);border:1px solid #cda1b8;color:#38253f;box-shadow:0 12px 26px rgba(118,59,89,.1)}
.question-input::placeholder{color:#796677}
.question-input:focus{border-color:#9a3d69;box-shadow:0 0 0 3px rgba(154,61,105,.15)}
.topic{background:rgba(255,250,247,.88);border-color:#d7a8bf;color:#6f3657;box-shadow:0 4px 14px rgba(118,59,89,.07)}
.topic:hover,.topic.active,.topic-more:hover{background:#9a4a73;border-color:#9a4a73;color:#fff}
.topic-more{background:#f5dce6;border-color:#c98fae;color:#6d3154}
.question-quote,.position-list li,.ritual{color:#49334c}
.position-list li span{border-color:#bb87a1;color:#843c63}
.quota-note{background:rgba(255,250,247,.86);border-color:#d7a8bf;color:#49334c}
.quota-note strong{color:#843c63}
.example-box{border-color:#ad5d85}

.draw-count{background:#8b3f69;border-color:#a85d82;color:#fff}
.draw-content h2{color:var(--ink)}
.draw-slot-visual{background:rgba(255,250,247,.88);border-color:#b983a0;color:#713657}
.draw-slot.current .draw-slot-visual{border-color:#8b3f69;box-shadow:0 0 0 4px rgba(139,63,105,.12)}
.draw-slot label,.deck-heading,.deck-heading span,.draw-hint,.deck-card{color:#51384f}
.deck-heading strong{color:var(--pastel-honey)}
.draw-question{color:#664b61}
.card-face{border-color:#b783a1}
.draw-slot .card-face{border-color:#b783a1}

.spread-item strong{color:var(--pastel-honey)}
.spread-item small{color:#644a60}
.spread-intro p{color:#594258}
.reveal-stage .spread-bottom{background:rgba(255,248,246,.95);border-top:1px solid #dfb6c9;box-shadow:0 -10px 32px rgba(104,49,79,.13);backdrop-filter:blur(12px)}
.loading-orbit{border-color:#9a3d69}
.loading-orbit:after{color:#9a3d69}

.reading-top{border-color:var(--line)}
.reading-question{color:#4b3450}
.reading-nav-shell{background:rgba(255,246,243,.94);border-color:#dfb6c9;backdrop-filter:blur(10px)}
.reading-nav{background:transparent}
.reading-nav a{background:rgba(255,250,247,.93);border-color:#d6a8be;color:#74385b}
.reading-nav a:hover{background:#f6dfe8}
.reading-nav-arrow{background:#fff7f5;border-color:#c28ba8;color:#823c62}
.reading-nav-arrow:hover:not(:disabled){background:#f5dce6}
.reading-nav-arrow:focus-visible{outline-color:#9a3d69}
.reading-paper h2,.reading-paper h3{color:#38253f}
.reading-paper p{color:#4b3a4c}
.reading-section,.reading-summary{border-color:var(--line)}
.reading-section .section-kicker,.reading-summary .section-kicker,.reading-section-head h3{color:var(--pastel-honey)}
.reading-section-head .card-label{color:#72576d}
.reading-section-head .card{border-color:#aa7195;box-shadow:0 0 0 7px rgba(170,113,149,.13),0 16px 35px rgba(80,39,60,.2)}
.reflection-box{background:rgba(255,250,247,.91);border-left:4px solid #ad5d85;box-shadow:0 8px 25px rgba(110,49,79,.08)}
.reflection-box strong{color:var(--pastel-honey)}
.reflection-box p{color:#38253f}
.disclaimer{color:#6a5368!important}
.reading-actions .button-secondary{background:#fffaf7;border-color:#c996b0;color:#713657}
.coffee-box{background:rgba(255,250,247,.94);border:1px solid #d7a8bf;color:#38253f;box-shadow:0 13px 30px rgba(110,49,79,.1)}
.coffee-box h3{color:var(--pastel-honey)}
.coffee-box p{color:#594258}
.coffee-box .button-text{color:#74385b}
.history-item{background:var(--pastel-surface);border-color:#d7a8bf;color:#38253f}
.history-item:hover{background:rgba(255,238,243,.98);border-color:#a65881}
.history-item small{color:#72576d}
.site-footer{border-color:var(--line)}

.modal-backdrop{background:rgba(54,32,50,.48)}
.modal{background:#fff9f6;border:1px solid #d5a8be;color:#38253f;box-shadow:0 -20px 70px rgba(71,32,54,.22)}
.modal h2,.modal .icon-button,.modal .button-text{color:#38253f}
.modal .eyebrow{color:var(--pastel-honey)}
.modal p,.modal li{color:#594258}
.modal-handle{background:#cba6ba}
.modal-quote{background:#f8e6ed;border-color:#ddb7c9;color:#58394f}
.toast{background:#fff9f6;color:#65304e;border:1px solid #d4a7bf}
.api-error{background:#fff1f1;border-color:#b66b82;color:#612841}
.api-error p,.api-error small{color:#612841}
@media(max-width:760px){.mobile-history{color:#51304d}}
