.astro-sheet-card{background:#fff;border-radius:12px;padding:8px;box-shadow:0 10px 40px #0000004d;opacity:.9}.astro-sheet-card>svg{display:block;width:100%;height:auto}@media (max-width:767px){.astro-sheet-card{padding:4px;border-radius:10px}}@media print{header[data-astro-cid-kqlizb4s],footer[data-astro-cid-kqlizb4s],.btn-outline[data-astro-cid-kqlizb4s],#reset-btn[data-astro-cid-kqlizb4s],a[data-astro-cid-kqlizb4s][href]:not(.btn-grad){display:none!important}body{background:#161b19!important}}.city-results{max-height:min(320px,50vh);overflow-y:auto;overscroll-behavior:contain}.city-opt{display:flex;flex-direction:column;width:100%;text-align:left;padding:10px 16px;border-bottom:1px solid var(--border);transition:background .15s}.city-opt:last-of-type{border-bottom:0}.city-opt:hover,.city-opt:focus-visible{background:#ffffff0d;outline:0}.city-opt b{color:#fff;font-weight:500;font-size:.92rem}.city-opt span{color:#8b928e;font-size:.78rem;margin-top:1px}.city-note{padding:10px 16px;font-size:.8rem;color:#8b928e}.birth-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:18px}.birth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;font-size:.8rem}@media (min-width:640px){.birth-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.birth-grid span{display:block;color:#8b928e;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.birth-grid b{color:#fff;font-weight:500;overflow-wrap:anywhere}.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.pillar{display:flex;align-items:center;gap:8px;min-width:0}.pillar-txt{display:flex;flex-direction:column;min-width:0}.pillar-txt small{color:#8b928e;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}.pillar-txt b{color:#fff;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pillar-ico{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:999px;border:1px solid rgba(201,162,74,.45);background:#c9a24a14;color:#f2e6c8}@media (max-width:420px){.pillar{flex-direction:column;text-align:center}.pillar-ico{width:34px;height:34px}.pillar-txt b{font-size:.8rem}}.zv{padding:0;overflow:hidden;outline:2px solid transparent;transition:outline-color .2s}.zv.is-active{outline-color:var(--accent)}.zv-stage{position:relative;aspect-ratio:1/1;overflow:hidden;touch-action:pan-y;cursor:zoom-in;background:#fff}.zv.is-active .zv-stage{touch-action:none;cursor:grab}.zv-content{width:100%;height:100%;transform-origin:0 0;will-change:transform}.zv-content>svg{display:block;width:100%;height:100%}.zv-hint{position:absolute;left:50%;bottom:10px;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#0e1311d1;color:#f3ece0;font-size:.75rem;pointer-events:none;transition:opacity .2s;white-space:nowrap}.zv.is-active .zv-hint{opacity:0}.zv-bar{display:none;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 8px 12px;background:#0e1311;border-top:1px solid var(--border)}.zv.is-active .zv-bar{display:flex}.zv-tip{color:#9aa19d;font-size:.72rem;line-height:1.2}.zv-btns{display:flex;gap:6px;flex:none}.zv-btns button{min-width:40px;height:40px;padding:0 12px;border-radius:999px;border:1px solid var(--border);color:#f3ece0;font-size:1.15rem;line-height:1}.zv-btns .zv-done{background:var(--accent);border-color:var(--accent);color:#141917;font-size:.85rem;font-weight:700}.acc-group{display:grid;gap:10px}.acc{border:1px solid var(--border);background:var(--surface);border-radius:16px;overflow:hidden}.acc[open]{border-color:#c9a24a59}.acc>summary{list-style:none;display:flex;align-items:center;gap:14px;padding:16px;cursor:pointer;min-height:72px;-webkit-tap-highlight-color:transparent}.acc>summary::-webkit-details-marker{display:none}.acc>summary:active{background:#ffffff08}.acc-head{display:flex;flex-direction:column;flex:1;min-width:0}.acc-title{color:#fff;font-size:1.45rem;font-weight:600;line-height:1.15}.acc-sub{color:#8b928e;font-size:.8rem;margin-top:3px}.acc-chev{color:#c9cfcb;flex:none;transition:transform .25s ease}.acc[open] .acc-chev{transform:rotate(180deg);color:var(--accent-light)}.acc-body{padding:0 16px 16px}.acc .info-card{background:#ffffff06}@media (min-width:768px){.acc>summary{padding:20px 24px}.acc-body{padding:0 24px 24px}.acc-title{font-size:1.55rem}}.section-title{font-size:1.9rem;font-weight:600;color:#fff;margin-bottom:14px}.info-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px}.tag{font-size:.7rem;padding:2px 8px;border-radius:999px;background:#ffffff0f;color:#c9cfcb}.tag-rx{color:#f08c8c;background:#f08c8c1a}.summary-box{border-left:2px solid var(--accent);background:#c9a24a0f;border-radius:0 12px 12px 0;padding:14px 18px}.summary-box p{color:#d7dcd9;font-family:Cormorant Garamond,serif;font-style:italic;font-size:1.15rem;line-height:1.5}.aspect-pairs{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.85rem;color:#e7ebe9}.aspect-pairs li{white-space:nowrap}.shop{border:1px solid var(--border);border-radius:20px;padding:20px;background:linear-gradient(160deg,#c9a24a14,#ffffff05 40%);scroll-margin-top:90px}@media (min-width:768px){.shop{padding:32px}}.shop-head{text-align:center}.shop-grid{display:grid;gap:22px;margin-top:22px}@media (min-width:1024px){.shop-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.shop-config{position:sticky;top:96px}}.shop-stage{position:relative;margin-top:14px}.shop-preview{position:relative;width:100%;aspect-ratio:1/1;border-radius:14px;overflow:hidden;background:#e9e3da;display:flex;align-items:center;justify-content:center;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:pan-y}.shop-preview img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;pointer-events:none;transition:opacity .25s}.shop-preview.is-loading img{opacity:.55}.shop-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#1419179e;color:#f3ece0;backdrop-filter:blur(6px);border:1px solid rgba(243,236,224,.18);transition:background .2s}.shop-arrow:active,.shop-arrow:hover{background:#141917d9}.shop-arrow-prev{left:10px}.shop-arrow-next{right:10px}.shop-viewbar{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:999px;background:#1419179e;backdrop-filter:blur(6px);color:#f3ece0;font-size:.75rem;white-space:nowrap}.shop-dots{display:inline-flex;gap:5px}.shop-dot{width:7px;height:7px;border-radius:999px;background:#f3ece066;padding:0}.shop-dot.is-active{background:#f3ece0}.shop-views{display:flex;gap:10px}.shop-view{display:flex;flex-direction:column;align-items:center;gap:5px;width:84px;font-size:.74rem;color:#9aa19d}.shop-view-img{width:84px;height:84px;border-radius:10px;overflow:hidden;background:#ffffff0f;border:1.5px solid transparent;display:flex;align-items:center;justify-content:center;padding:6px}.shop-view-img img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;display:block;pointer-events:none;border-radius:2px;box-shadow:0 2px 6px #00000059}.shop-view.is-active{color:#fff;font-weight:600}.shop-view.is-active .shop-view-img{border-color:var(--accent);background:#c9a24a1a}.shop-fineprint{margin-top:10px;font-size:.75rem;color:#8b928e}.shop-opts{display:grid;gap:8px;grid-template-columns:1fr 1fr}.shop-opt{text-align:left;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#ffffff08;display:flex;flex-direction:column;gap:4px;transition:border-color .2s,background .2s}.shop-opt.is-active{border-color:var(--accent);background:#c9a24a1a}.shop-opt-top{display:flex;align-items:center;gap:8px}.shop-radio{width:16px;height:16px;border-radius:999px;border:1.5px solid #8b928e;flex:none;position:relative}.shop-opt.is-active .shop-radio{border-color:var(--accent)}.shop-opt.is-active .shop-radio:after{content:"";position:absolute;inset:3px;border-radius:999px;background:var(--accent)}.shop-opt-label{color:#fff;font-weight:600;font-size:.95rem}.shop-opt-desc{color:#9aa19d;font-size:.78rem;line-height:1.35}.shop-segs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px}.shop-segs[hidden]{display:none}.shop-seg{padding:10px;border-radius:12px;border:1px solid var(--border);background:#ffffff08;display:flex;flex-direction:column;align-items:center}.shop-seg b{color:#fff;font-size:.95rem}.shop-seg small{color:#9aa19d;font-size:.72rem}.shop-seg.is-active{border-color:var(--accent);background:#c9a24a1a}.shop-summary{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.shop-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.shop-desc{color:#c9cfcb;font-size:.82rem}.shop-price{font-family:Cormorant Garamond,serif;font-size:1.7rem;font-weight:600;color:#fff;white-space:nowrap}.shop-price.is-ask{font-family:inherit;font-size:.85rem;color:var(--accent-light);font-weight:600}.shop-includes{margin-top:12px;display:grid;gap:6px}.shop-includes li{display:flex;gap:8px;align-items:flex-start;font-size:.82rem;color:#d7dcd9}.shop-includes svg{color:var(--accent-light);flex:none;margin-top:1px}.shop-cta{display:flex;width:100%;justify-content:center;align-items:center;gap:8px;margin-top:16px;padding:14px 20px;font-size:1rem}.shop-alt{display:block;text-align:center;margin-top:4px;font-size:.8rem;color:#9aa19d}.shop-order{display:grid;gap:10px;margin-top:18px}.shop-order .shop-cta{margin-top:4px}.shop-order textarea{resize:vertical;min-height:64px}.shop-done{margin-top:18px;padding:18px;border-radius:14px;border:1px solid rgba(201,162,74,.4);background:#c9a24a14;text-align:center}.downloads-kicker{color:var(--accent-light);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:6px}.downloads-label{color:#8b928e;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}.poster-spinner{width:34px;height:34px;border-radius:999px;border:2px solid var(--accent);border-top-color:transparent;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.poster-thumb-skel{display:block;width:100%;height:100%;background:linear-gradient(90deg,#ffffff08,#ffffff17,#ffffff08);background-size:200% 100%;animation:skel 1.4s ease infinite}@keyframes skel{to{background-position:-200%0}}