[hidden]{display:none!important}
.logo{text-decoration:none;color:inherit}
#appHomeLink{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:100;display:flex;align-items:center;justify-content:center;min-width:100px;min-height:48px;padding:10px 20px;border:1px solid var(--gold);border-radius:28px;background:var(--ink);color:var(--gold);font:600 15px var(--sans);text-decoration:none;box-shadow:0 3px 14px #0008}
#appHomeLink:focus-visible{outline:2px solid var(--moon);outline-offset:4px}
body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
body.reading-flow #input,body.reading-flow #result{display:none}
body.reading-flow .hero .tate,body.reading-flow #lensBar,body.reading-flow #lensOverview{display:none!important}
body.reading-flow #input .hero{padding:32px 0 24px}
body.reading-flow #input .hero h1{font-size:clamp(26px,6vw,40px)}
.reading-nav{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 26px}
.reading-nav a,.reading-back{display:inline-flex;align-items:center;min-height:44px;color:var(--gold);text-decoration:none;padding:8px 0}
.reading-home h1{font-family:var(--serif);font-size:clamp(28px,6vw,40px);margin:32px 0 14px}
.reading-home h1:focus,.reading-report h1:focus,.reading-simple h1:focus,#input h1:focus{outline:none}
.reading-intro{color:var(--text-dim);line-height:1.9;margin-bottom:28px}
.reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.reading-tile{display:block;padding:22px 18px;border:1px solid var(--gold-dim);border-radius:14px;background:var(--ink-2);color:var(--text);text-decoration:none;min-height:150px}
.reading-tile:hover,.reading-tile:focus-visible{border-color:var(--gold);background:var(--ink-3)}
.reading-tile strong{display:block;font-family:var(--serif);font-size:20px;color:var(--moon);margin-bottom:10px}
.reading-tile span{display:block;font-size:14px;line-height:1.8;color:var(--text-dim)}
.reading-tile small{display:block;color:var(--gold);margin-top:14px;font-size:12px}
.reading-tile.aggregate{grid-column:1/-1;min-height:0}
.reading-section{padding:26px 0;border-bottom:1px solid var(--gold-dim)}
.reading-section h2{font-family:var(--serif);font-size:21px;color:var(--gold);margin-bottom:14px}
.reading-section p{margin:0 0 14px;line-height:2.05;overflow-wrap:anywhere}
.reading-report h1{font-family:var(--serif);font-size:clamp(25px,5vw,35px);line-height:1.6;margin:8px 0 20px}
.reading-home h1,.reading-report h1,.reading-simple h1,.reading-section h2,.aggregate-mode h1{text-wrap:balance;line-break:strict}
.reading-phrase{display:inline-block;max-width:100%;vertical-align:top}
.reading-kicker{color:var(--gold);font-size:14px}
.reading-report{max-width:720px;margin:auto}
.reading-limit{font-size:13px;color:var(--text-dim);margin-top:26px}
.reading-simple{max-width:620px;margin:auto;padding:26px 0}
.reading-simple h1{font-family:var(--serif);font-size:28px;margin-bottom:18px}
.reading-simple label{display:block;margin:24px 0 10px}
.reading-simple select{font:inherit;font-size:16px;background:var(--ink-2);color:var(--text);border:1px solid var(--gold-dim);border-radius:8px;padding:14px;width:100%;min-height:48px}
.reading-simple button{margin-top:24px}
.reading-simple input{box-sizing:border-box;width:100%;min-height:48px;padding:14px;border:1px solid var(--gold-dim);border-radius:8px;background:var(--ink-2);color:var(--text);font:inherit}
#nameHint,#nameYChoices p{font-size:14px;line-height:1.8;color:var(--text-dim);margin-top:12px}
#nameError{color:#ffb9ae;margin-top:18px}
#result .reading-method{display:none!important}
.reading-mode-buttons{display:flex;gap:8px;margin:18px 0 22px}
.reading-mode-buttons button{flex:1;min-height:48px;border:1px solid var(--gold-dim);border-radius:10px;background:var(--ink-2);color:var(--text);font:inherit;font-size:16px;cursor:pointer}
.reading-mode-buttons button[aria-pressed="true"]{background:var(--gold);color:var(--ink);border-color:var(--gold);font-weight:bold}
.reading-mode-buttons button:focus-visible{outline:2px solid var(--moon);outline-offset:3px}
#result.easy-aggregate > :not(.aggregate-mode){display:none!important}
.aggregate-mode{margin-bottom:24px}
.aggregate-easy>p{line-height:1.9;color:var(--text-dim)}
/* Owner request 2026-11-11: the single drawn card is shown large (was 180px). */
.drawn-card{display:block;width:min(78%,300px);height:auto;margin:24px auto;border-radius:10px}
.drawn-card.reversed{transform:rotate(180deg)}
body.reading-flow input,body.reading-flow select{font-size:16px}
@media(max-width:480px){.reading-grid{grid-template-columns:1fr}.reading-tile{min-height:0;padding:20px}.reading-section h2{font-size:19px}.reading-section p{font-size:15px}}
.rune-symbol{display:block;width:132px;height:132px;margin:24px auto 32px;padding:18px;border:1px solid var(--gold-dim);border-radius:24px;color:var(--gold);background:var(--ink-2)}
.iching-symbol{display:block;width:148px;height:148px;margin:24px auto 32px;padding:18px;border:1px solid var(--gold-dim);border-radius:24px;color:var(--gold);background:var(--ink-2)}
.iching-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;max-width:440px;margin:24px auto 32px}
.iching-pair figure{margin:0;min-width:0;text-align:center}
.iching-pair .iching-symbol{width:100%;max-width:148px;height:auto;aspect-ratio:1;margin:0 auto 12px;padding:10px}
.iching-pair figcaption{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.iching-pair-arrow{font-size:24px;color:var(--gold);align-self:start;margin-top:40px}
.iching-symbol [data-changing="true"]{stroke:#f2ead9}
.iching-change-mark{stroke:var(--gold)}
.iching-cast{margin-top:24px;padding:22px 18px;border:1px solid var(--gold-dim);border-radius:20px;background:var(--ink-2)}
.iching-coins{display:flex;justify-content:center;gap:16px;margin:12px 0 24px;perspective:600px}
.iching-coin{display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;border:2px solid var(--gold);border-radius:50%;box-shadow:inset 0 0 0 4px var(--ink-2),inset 0 0 0 5px var(--gold-dim);background:var(--ink-3);color:var(--gold);font:600 20px var(--serif)}
.iching-coin[data-face="3"]{background:var(--gold);color:var(--ink)}
.iching-cast-status{min-height:7em;font-size:15px;line-height:1.9}
.iching-cast-lines{list-style:none;padding:0;margin:20px 0;display:flex;flex-direction:column-reverse;gap:12px}
.iching-cast-lines li{display:grid;grid-template-columns:3.2em minmax(40px,1fr) 6.5em;gap:10px;align-items:center;font-size:12px;min-height:24px}
.iching-line-number{color:var(--text-dim)}
.iching-line-state{text-align:right}
.iching-line-placeholder{height:4px;border-top:1px dashed var(--gold-dim)}
.iching-drawn-line{height:6px;background:var(--gold)}
.iching-drawn-line.yin{background:linear-gradient(to right,var(--gold) 43%,transparent 43%,transparent 57%,var(--gold) 57%)}
.iching-cast-lines li[data-changing="true"] .iching-line-state{color:var(--gold);font-weight:700}
.iching-cast .btn-main{width:100%;min-height:48px}
.iching-cast .btn-main:disabled{opacity:.55;cursor:wait}
.iching-cast-cancel{display:block;width:100%;min-height:44px;margin:12px 0 0;border:1px solid var(--gold-dim);border-radius:8px;background:transparent;color:var(--text);font:inherit;cursor:pointer}
.iching-cast-cancel:hover{background:var(--ink-3)}
.iching-cast button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.is-tossing .iching-coin{animation:iching-toss .8s ease-in-out both}
.is-tossing .iching-coin:nth-child(2){animation-delay:.025s}
.is-tossing .iching-coin:nth-child(3){animation-delay:.05s}
@keyframes iching-toss{0%{transform:translateY(0) rotateY(0)}45%{transform:translateY(-16px) rotateY(540deg)}100%{transform:translateY(0) rotateY(1080deg)}}
@media(prefers-reduced-motion:reduce){.is-tossing .iching-coin{animation:none}}
.reading-error{margin-top:18px;color:#ffb9ae;line-height:1.8}
.reading-simple select:focus-visible{outline:2px solid var(--moon);outline-offset:3px}
.tarot-spread{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0;align-items:start}
.tarot-spread figure{min-width:0;text-align:center}
.tarot-spread figcaption{font-size:13px;color:var(--gold);min-height:3em}
.tarot-spread .drawn-card{width:100%;max-width:100%;margin:8px 0 12px;aspect-ratio:2/3;object-fit:contain}
.tarot-spread figure p{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
/* Touch-and-tilt foil for drawn tarot cards (card_tilt.js). The light is masked to the card's gold linework,
   so the frame, lettering and gold details shine like foil stamping. Vertical drags still scroll. */
.drawn-card{touch-action:pan-y;-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}
.drawn-card[data-rare]{cursor:grab;will-change:transform;touch-action:none}
.card-holo{position:fixed;z-index:60;pointer-events:none;overflow:hidden;--mx:50%;--my:50%;--bx:50%;--by:50%;--sx:50%;--o:0;--on:0}
.card-holo.on{--on:1}
.card-holo>*{position:absolute;inset:0}
.card-holo .reversed{transform:rotate(180deg)}
.card-holo-art{background-size:100% 100%;transition:filter .35s}
/* The surface dims a little while tilted, so the lit gold lines stand out. */
.card-holo.on .card-holo-art{filter:brightness(.7) saturate(1.08) contrast(1.06)}
.card-holo-foil{-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mix-blend-mode:screen;opacity:var(--on);transition:opacity .35s;
 background:linear-gradient(115deg,transparent 28%,#ffffff 46%,#ffffff 54%,transparent 72%) var(--bx) var(--by)/240% 240% no-repeat,radial-gradient(circle at var(--mx) var(--my),#ffffffcc 0,transparent 38%),linear-gradient(115deg,#ff7d78,#ffe66a,#96ff7a,#6cfff1,#7b93ff,#dc78ff,#ff7d78,#ffe66a,#96ff7a) var(--bx) var(--by)/300% 300%}
.card-holo-rare .card-holo-foil{background:linear-gradient(115deg,transparent 30%,#ffffff 46%,#ffffff 54%,transparent 70%) var(--bx) var(--by)/240% 240% no-repeat,linear-gradient(115deg,#ff5a54,#ffe23c,#6dff4a,#3dfff0,#5677ff,#d24dff,#ff5a54,#ffe23c,#6dff4a) var(--bx) var(--by)/260% 260%}
.card-holo-bloom{filter:blur(3px) brightness(2.4) saturate(2.4);mix-blend-mode:screen;opacity:calc(var(--on)*(.8 + var(--o)*.2));transition:opacity .35s}
.card-holo-bloom .card-holo-foil{position:absolute;inset:0;mix-blend-mode:normal;opacity:1}
.card-holo-glare{background:radial-gradient(farthest-corner circle at var(--mx) var(--my),#fff4d470 0,#ffe2a024 22%,transparent 46%);mix-blend-mode:screen;opacity:calc(var(--on)*(.4 + var(--o)*.6));transition:opacity .35s}
/* A few thin diagonal glints cross the whole card as it tilts, with a faint rainbow wash over the surface. */
.card-holo::after{content:'';position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;opacity:calc(var(--on)*(.25 + var(--o)*.75));transition:opacity .35s;
 background:linear-gradient(115deg,transparent 49.15%,#ffffff33 49.55%,#ffffffd9 50%,#ffffff33 50.45%,transparent 50.85%,transparent 52.7%,#ffffff8c 52.95%,transparent 53.2%) var(--sx) 0/300% 100% no-repeat,linear-gradient(115deg,transparent 46.2%,#ffffff66 46.45%,transparent 46.7%) var(--sx) 0/300% 100% no-repeat,linear-gradient(115deg,#ff7d7824,#ffe66a24,#96ff7a24,#6cfff124,#7b93ff24,#dc78ff24,#ff7d7824,#ffe66a24,#96ff7a24) var(--bx) var(--by)/300% 300%}
/* Rich look (html[data-card-foil=rich]): rim light along figures and objects, star flares on the brightest gold, golden aura. */
.card-holo-rich{box-shadow:0 0 calc(var(--on)*26px) calc(var(--on)*3px) #ffd98a8c,calc(var(--on)*-14px) 0 calc(var(--on)*46px) calc(var(--on)*2px) #6cf3ff2e,calc(var(--on)*14px) 0 calc(var(--on)*46px) calc(var(--on)*2px) #d67cff33,0 calc(var(--on)*12px) calc(var(--on)*52px) #ffb45e33;transition:box-shadow .35s}
.card-holo-rich.on .card-holo-art{filter:brightness(.6) saturate(1.15) contrast(1.1)}
.card-holo-rim{-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mix-blend-mode:screen;opacity:var(--on);transition:opacity .35s;
 background:radial-gradient(circle at var(--mx) var(--my),#ffffff 0,#fff2c8 8%,#ffd24ae6 15%,#8dff6ab3 23%,#4df3ffa6 31%,#6f86ff8c 39%,#e06bff59 47%,transparent 58%)}
.card-holo-rimbloom{filter:blur(3px) brightness(1.3) saturate(2.4);mix-blend-mode:screen;opacity:calc(var(--on)*.55);transition:opacity .35s}
.card-holo-rimbloom .card-holo-rim{position:absolute;inset:0;mix-blend-mode:normal;opacity:1}
.card-holo-flares{mix-blend-mode:screen;opacity:var(--on);transition:opacity .3s}
.card-holo-flares i{position:absolute;width:64px;height:64px;margin:-32px 0 0 -32px;opacity:0;transform:scale(var(--s,.4)) rotate(18deg);
 background:radial-gradient(circle,#fff 0,#fffc 5%,#ffe9b08c 12%,transparent 32%),linear-gradient(90deg,transparent 48.6%,#fff 50%,transparent 51.4%),linear-gradient(0deg,transparent 48.6%,#fff 50%,transparent 51.4%);
 -webkit-mask-image:radial-gradient(circle,#000 0,#0008 30%,transparent 66%);mask-image:radial-gradient(circle,#000 0,#0008 30%,transparent 66%)}
/* Rich look leans harder into rainbow: saturated foil on the gold lines and a stronger wash over the surface. */
.card-holo-rich .card-holo-foil{background:linear-gradient(115deg,transparent 32%,#ffffff 47%,#ffffff 53%,transparent 68%) var(--bx) var(--by)/240% 240% no-repeat,linear-gradient(115deg,#ff5a54,#ffe23c,#6dff4a,#3dfff0,#5677ff,#d24dff,#ff5a54,#ffe23c,#6dff4a) var(--bx) var(--by)/220% 220%}
.card-holo-rich .card-holo-bloom{filter:blur(3px) brightness(2.2) saturate(3.2)}
.card-holo-rich::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:soft-light;opacity:calc(var(--on)*(.12 + var(--o)*.3));transition:opacity .35s;background:linear-gradient(115deg,#ff5a54,#ffe23c,#6dff4a,#3dfff0,#5677ff,#d24dff,#ff5a54,#ffe23c,#6dff4a) var(--bx) var(--by)/240% 240%}
/* Automatic pass after the reveal: only the travelling light, no colour wash over the whole surface. */
.card-holo-sweep::before{display:none}
.card-holo-sweep.on .card-holo-art{filter:brightness(.8) saturate(1.1)}
/* The copy fades in and out over the real card, so the hand-over never pops. */
.card-holo-sweep .card-holo-art{opacity:var(--on);transition:opacity .4s,filter .4s;background-size:cover;background-position:center}
/* In the reveal the card crops its artwork (object-fit:cover); the copy and the light masks must crop the same way. */
.card-holo-sweep .card-holo-foil,.card-holo-sweep .card-holo-rim{-webkit-mask-size:cover;mask-size:cover;-webkit-mask-position:center;mask-position:center}
.card-holo-sweep .card-holo-foil,.card-holo-sweep .card-holo-rim,.card-holo-sweep .card-holo-bloom,.card-holo-sweep .card-holo-rimbloom,.card-holo-sweep .card-holo-glare,.card-holo-sweep .card-holo-flares,.card-holo-sweep::after{transition-duration:.45s}
.card-holo-sweep.card-holo-rich{transition:box-shadow .45s}
@media(prefers-reduced-motion:reduce){.drawn-card{cursor:auto}.card-holo{display:none}}

/* Tarot album (tarot_collection.js): the count line under a result, and the screen that lists all 78 cards. */
.collection-line{margin:22px 0 4px}
.collection-news{margin:0 0 8px;color:var(--gold);font-size:14px;line-height:1.7}
.collection-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 16px;border:1px solid var(--gold-dim);border-radius:12px;background:rgba(216,184,120,.06);color:var(--gold);font-size:15px;text-decoration:none}
.collection-link:hover{background:rgba(216,184,120,.12)}
.collection-link:focus-visible,.collection-card:focus-visible,.collection-close:focus-visible,.collection-reset:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.collection-entry{margin-top:16px}
.tarot-collection{max-width:760px;margin:0 auto;padding:0 0 40px}
.tarot-collection h1{margin:8px 0 10px}
.collection-total{margin:14px 0 6px;font-size:17px;color:#f4ecdc}
.collection-total strong{font-size:28px;color:var(--gold);font-weight:600}
.collection-total span{margin-left:18px;font-size:15px;color:#c9c2b4}
.collection-total span strong{font-size:20px}
.collection-group{margin-top:26px}
.collection-group h2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--gold-dim);font-size:17px;color:var(--gold)}
.collection-group h2 span{font-size:14px;color:#c9c2b4;font-weight:400}
.collection-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:14px 10px}
@media(max-width:520px){.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px}}
.collection-card{display:flex;flex-direction:column;align-items:stretch;gap:11px;width:100%;margin:0;padding:0;border:0;background:none;color:#f4ecdc;font:inherit;text-align:center}
button.collection-card{cursor:pointer}
.collection-art{position:relative;display:block;aspect-ratio:2/3;border:1px solid #59606a;border-radius:7px;overflow:hidden;background:#101c36 url(cards/back.webp) center/cover no-repeat}
/* The picture is laid over the frame instead of sizing it: a frame that lets its diamond hang outside (overflow visible) must not grow with its content. */
.collection-art{min-width:0;min-height:0}
.collection-art img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
button.collection-card:hover .collection-art{border-color:var(--gold)}
/* A card drawn rare: no label on the artwork. It is told apart by a fine double gold frame, a slow pass of foil
   light across the picture, a small gold diamond set into the lower edge (the diamond of the Lunamiru mark), and its name in gold. */
.collection-card.is-rare .collection-art{overflow:visible;border-color:#e9d3a2;box-shadow:0 0 0 1px rgba(10,15,34,.9),0 0 0 2px rgba(216,184,120,.55),0 6px 18px rgba(216,184,120,.16)}
.collection-card.is-rare .collection-art img{border-radius:6px}
.collection-card.is-rare .collection-art::before{content:'';position:absolute;inset:3px;z-index:1;border:1px solid rgba(233,211,162,.5);border-radius:4px;pointer-events:none}
.collection-card.is-rare .collection-art::after{content:'';position:absolute;inset:0;z-index:1;border-radius:6px;pointer-events:none;mix-blend-mode:screen;opacity:.55;
 background:linear-gradient(115deg,transparent 38%,rgba(255,244,212,.5) 47%,rgba(160,230,255,.28) 50%,rgba(230,170,255,.26) 53%,transparent 62%) 130% 0/300% 100% no-repeat;animation:collection-foil 7s ease-in-out infinite}
@keyframes collection-foil{0%,62%{background-position:130% 0}100%{background-position:-30% 0}}
.collection-badge{position:absolute;left:50%;bottom:-11px;z-index:2;width:10px;height:10px;transform:translateX(-50%) rotate(45deg);background:linear-gradient(135deg,#f6eedb,#d8b878 55%,#b99a5e);box-shadow:0 0 0 2px var(--ink),0 0 6px rgba(216,184,120,.5)}
.collection-card.is-rare .collection-name{color:var(--gold)}
@media(prefers-reduced-motion:reduce){.collection-card.is-rare .collection-art::after{animation:none;background-position:50% 0;opacity:.35}}
.collection-card.is-missing .collection-art{opacity:.38;filter:saturate(.4)}
.collection-card.is-missing .collection-name{color:#8f8a80}
.collection-name{display:block;min-height:2.9em;font-size:12px;line-height:1.45}
.collection-draw{display:block;margin-top:26px;text-align:center;text-decoration:none}
.collection-reset{display:block;margin:18px auto 0;min-height:44px;padding:8px 18px;border:1px solid #59606a;border-radius:10px;background:none;color:#c9c2b4;font:inherit;font-size:14px;cursor:pointer}
.collection-reset:hover{border-color:#c9c2b4;color:#f4ecdc}
.collection-reset[hidden]{display:none}
.collection-viewer{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(5,8,20,.86);overflow:auto}
.collection-viewer-panel{position:relative;width:min(100%,340px);padding:52px 20px 22px;border:1px solid var(--gold-dim);border-radius:16px;background:var(--ink-2);text-align:center}
.collection-viewer-panel h2{margin:16px 0 6px;font-size:20px;color:#f4ecdc}
.collection-viewer-panel p{margin:0;font-size:14px;color:#c9c2b4;line-height:1.7}
.collection-viewer-panel .collection-rare-note{margin-top:6px;color:var(--gold)}
.collection-large{display:block;width:min(100%,240px);height:auto;aspect-ratio:2/3;margin:0 auto;border:1px solid var(--gold);border-radius:10px}
.collection-close{position:absolute;right:6px;top:6px;width:44px;height:44px;border:1px solid var(--gold-dim);border-radius:50%;background:none;color:var(--gold);font-size:24px;line-height:1;cursor:pointer}
.collection-close:hover{background:rgba(216,184,120,.12)}
html.collection-open,html.collection-open body{overflow:hidden}

/* Lenormand (lenormand_reading.js): a card face set in type. Number, name, English name and the playing-card inset. */
.lenormand-card{position:relative;overflow:hidden;min-height:0;display:grid;grid-template-rows:auto 1fr auto auto;row-gap:5px;justify-items:center;align-items:center;width:208px;aspect-ratio:2/3;margin:24px auto 32px;padding:14px 10px 12px;box-sizing:border-box;border:1px solid var(--gold);border-radius:12px;background:linear-gradient(160deg,#1a2644,#0e1730);color:var(--gold);box-shadow:inset 0 0 0 4px #0e1730,inset 0 0 0 5px var(--gold-dim)}
.lenormand-no{font-family:Georgia,serif;font-size:30px;line-height:1;color:#f4ecdc}
.lenormand-name{font-size:19px;font-weight:600;line-height:1.3;text-align:center;color:#f4ecdc}
.lenormand-en{font-family:Georgia,serif;font-size:10px;line-height:1.3;letter-spacing:.14em;text-align:center;color:var(--gold-soft)}
.lenormand-inset{padding:1px 8px;border:1px solid var(--gold-dim);border-radius:6px;font-family:Georgia,serif;font-size:13px;line-height:1.5;color:#dfe5f0}
.lenormand-inset.is-red{color:#f0a9a0}
.lenormand-spread{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0 28px}
.lenormand-spread figure{margin:0;text-align:center}
.lenormand-spread figcaption{margin-bottom:8px;font-size:12px;line-height:1.45;color:var(--gold)}
.lenormand-spread .lenormand-card{width:100%;max-width:132px;margin:0 auto}
@media(max-width:400px){.lenormand-spread .lenormand-name{font-size:15px}.lenormand-spread .lenormand-no{font-size:24px}.lenormand-spread .lenormand-en{font-size:8px;letter-spacing:.06em}}

/* The painted card lies over the type face; the Japanese name is shown under the card. */
.lenormand-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:11px}
/* In the three-card row the cards are small, so the name is repeated under each card in page text. */
.lenormand-label{margin:8px 0 0;text-align:center;font-size:13px;line-height:1.4;color:#f4ecdc}
