body{font-family:"Noto Serif TC","PingFang TC","Microsoft JhengHei",serif}.origin-badge{display:inline-block;border:1px solid #c9a58e;border-radius:99px;padding:8px 18px;color:#714f55;background:#fff8f2;font-size:14px;letter-spacing:.08em}.hero-ayaka{position:relative;max-width:470px;margin:auto}.hero-ayaka img,.profile-portrait img{width:100%;display:block;border-radius:48% 48% 12px 12px}.hero-ayaka-name{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:42px;color:#fff;text-shadow:0 2px 12px #513841}.hero-ayaka-name small{display:block;font-size:12px;letter-spacing:.2em}.topics{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.topics button{border:1px solid #bea0a5;border-radius:40px;background:#fff8f3;padding:12px 22px;color:#5d3d4b}.topics .selected{background:#895466;color:#fff}.birth-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.birth-grid fieldset{border:1px solid #d4bab6;padding:20px;grid-column:1/-1;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.birth-grid legend{padding:0 10px}.birth-grid label{display:block}.birth-grid input,.birth-grid select{width:100%;box-sizing:border-box;min-height:46px}.partner-toggle{display:flex!important;gap:10px;align-items:center;margin:24px 0}.partner-toggle input{width:auto!important}.consult form>input{width:100%;box-sizing:border-box;margin:12px 0 20px;padding:12px}.reading-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:32px 0}.tarot-art{background-image:url('../tarot-atlas.png')!important;background-size:600% 400%;aspect-ratio:2/3}.tarot-art.reversed{transform:rotate(180deg)}.letter p{white-space:pre-line}.tw-unlock{max-width:760px;margin:40px auto;padding:35px;border:1px solid #bc9299;background:#fff7f5;text-align:center;border-radius:22px}.tw-unlock details{margin-top:24px}.tw-unlock summary{cursor:pointer;padding:16px;text-decoration:underline}.tw-orbit{display:flex;justify-content:center;gap:20px;margin:15px auto 35px}.tw-orbit span{font-size:45px;padding:16px 25px;border:1px solid #c5a16b;border-radius:8px;animation:float 2.8s ease-in-out infinite}.tw-orbit span:nth-child(2){animation-delay:.4s}.tw-orbit span:nth-child(3){animation-delay:.8s}@keyframes float{50%{transform:translateY(-12px) rotate(4deg)}}progress{display:block;width:min(480px,85%);height:10px;margin:26px auto;accent-color:#b9858c}.astro-pills{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.astro-pills span{padding:7px 13px;background:#f5e4e6;border-radius:20px;font-size:14px}.faq summary{cursor:pointer}.method-grid article{padding:20px}.result-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}#share-image{display:block;width:100%;max-width:480px;margin:20px auto}#share-dialog{max-width:560px}.print-only{display:none}button:disabled{opacity:.6;cursor:wait}[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #975470;outline-offset:4px}@media(max-width:700px){header nav{gap:10px}header .wordmark{font-size:25px}header nav a,header nav button{font-size:12px}.hero-headline{font-size:clamp(32px,8vw,48px)!important}.birth-grid fieldset{grid-template-columns:1fr}.reading-cards{gap:8px}.reading-card{padding:10px!important}.reading-card h3{font-size:17px}.hero-ayaka{max-width:340px}.tw-unlock{padding:22px}.input-meta{display:block}.letter{padding:25px!important}}@media(prefers-reduced-motion:reduce){.tw-orbit span{animation:none}*{scroll-behavior:auto!important}}@media print{body>*{display:none!important}body>.print-only{display:block!important;padding:20px;background:white;color:#30232c}.print-only h1{font-size:24px}.print-only p{white-space:pre-line;line-height:1.9}.print-only section{break-inside:avoid}.print-only h2{font-size:19px}}
.hero>.hero-ayaka{position:relative;right:auto;bottom:auto;width:100%;max-width:430px;aspect-ratio:3/4;margin:15px auto;border-radius:220px 220px 20px 20px}.hero>.hero-ayaka .hero-ayaka-name{z-index:3;font-size:60px;bottom:25px}.hero>.hero-ayaka .hero-ayaka-name small{font-size:12px}@media(max-width:700px){.hero>.hero-ayaka{width:78%;max-width:330px}.hero>.hero-ayaka .hero-ayaka-name{font-size:48px}}
