@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;1,400;1,500&family=Noto+Sans+SC:wght@300;400;500&family=Noto+Serif+SC:wght@400;500;600&display=swap";@font-face{font-family:Noto Sans Symbols;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-symbols-symbols-400-normal-C2ShR-cw.woff2) format("woff2"),url(/assets/noto-sans-symbols-symbols-400-normal-BYzMNpiK.woff) format("woff")}@font-face{font-family:"Noto Sans Symbols 2";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-symbols-2-symbols-400-normal-Crk7i-NV.woff2) format("woff2"),url(/assets/noto-sans-symbols-2-symbols-400-normal-1543TeiR.woff) format("woff")}:root{--gold-1: #e8c77a;--gold-2: #d4a574;--cream: #f5eedb;--bg-1: #0b0e2a;--bg-2: #1b1240;--bg-deep: #04060f;--bg-window: #07091f;--elem-fire: #e8b879;--elem-earth: #a9b275;--elem-air: #9dafd2;--elem-water: #7e8cc9;--tone-good: rgba(212, 165, 116, .6);--tone-tense: rgba(204, 122, 116, .6);--tone-neutral: rgba(245, 238, 219, .28);--report-fs: 14px;font-variant-emoji:text}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg-deep);color:var(--cream)}body{font-family:Noto Sans Symbols,"Noto Sans Symbols 2",Noto Sans SC,PingFang SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-variant-emoji:text}button,input{font:inherit;color:inherit}button{cursor:pointer}.app-shell{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(900px 520px at 18% 0%,rgba(70,44,120,.34),transparent),radial-gradient(600px 460px at 90% 100%,rgba(35,48,96,.25),transparent),linear-gradient(#06081c,#04060f)}.app-window{position:relative;width:min(430px,100vw);height:min(932px,100dvh);min-height:100dvh;overflow:hidden;background:var(--bg-window);box-shadow:0 38px 110px #00000085}.phone-screen{position:relative;height:100%;overflow-y:auto;scrollbar-width:none}.phone-screen::-webkit-scrollbar{display:none}.screen{position:relative;min-height:100%;padding:max(22px,env(safe-area-inset-top)) 20px 34px}.star-field{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 30% 0%,rgba(75,42,107,.55),transparent 60%),radial-gradient(ellipse at 88% 72%,rgba(42,55,110,.36),transparent 60%),radial-gradient(ellipse at 10% 90%,rgba(60,40,90,.22),transparent 65%),linear-gradient(#0b0e2a,#07091f)}.star-field i{position:absolute;display:block;border-radius:50%;background:var(--cream);box-shadow:0 0 4px #f5eedb80;animation:twinkle ease-in-out infinite alternate}@keyframes twinkle{0%{opacity:.15}to{opacity:1}}@keyframes twk-spin{to{transform:rotate(360deg)}}@keyframes twk-spin-rev{to{transform:rotate(-360deg)}}@keyframes twk-pulse{0%,to{transform:scale(1);opacity:.75}50%{transform:scale(1.18);opacity:1}}@keyframes twk-twinkle{0%,to{opacity:.55}50%{opacity:1}}@keyframes twk-twinkle-halo{0%,to{opacity:.1;transform:scale(1)}50%{opacity:.45;transform:scale(1.12)}}@keyframes twk-sweep{0%{transform:translate(-100%);opacity:0}20%{opacity:1}to{transform:translate(100%);opacity:0}}@keyframes fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.eyebrow{margin:0;color:var(--gold-2);font:italic 12px Cormorant Garamond,serif;letter-spacing:6px}.divider{width:138px;height:1px;margin:14px auto;background:linear-gradient(90deg,transparent,rgba(232,199,122,.72),transparent)}.gold-divider{width:100%;height:1px;margin:12px 0;border:0;background:linear-gradient(90deg,transparent,rgba(232,199,122,.45),transparent)}.poem{max-width:290px;color:#f5eedbb8;font:14px/1.9 "Noto Serif SC",serif;letter-spacing:1.5px}.home-screen,.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.home-screen h1{margin:14px 0 0;font:500 40px "Noto Serif SC",serif;letter-spacing:9px;text-shadow:0 0 24px rgba(212,165,116,.34)}.home-orbit{position:relative;width:240px;height:240px;margin:42px 0 30px;display:grid;place-items:center}.home-orbit .ring-layer{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(212,165,116,.34);box-shadow:inset 0 0 50px #e8c77a0f,0 0 60px #e8c77a0f;animation:twk-spin 60s linear infinite}.home-orbit .ring-layer.mid{inset:24px;border-style:dashed;border-color:#d4a5743d;animation:twk-spin-rev 90s linear infinite}.home-orbit .ring-layer.inner{inset:56px;border-color:#d4a57424;animation:none}.home-orbit .dot{position:absolute;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--gold-1);box-shadow:0 0 10px #e8c77acc;animation:twk-pulse 2.4s ease-in-out infinite}.home-orbit .core{position:relative;color:var(--gold-1);font-size:46px;text-shadow:0 0 24px rgba(232,199,122,.8);animation:twk-twinkle 2.4s ease-in-out infinite}.home-orbit .center-tag{position:absolute;inset:auto 0 38px;color:#f5eedb7a;font:11px "Noto Serif SC",serif;letter-spacing:5px}.home-foot{margin-top:32px;color:#f5eedb57;font:italic 10px Cormorant Garamond,serif;letter-spacing:4px}.gold-btn{border:0;border-radius:999px;padding:14px 28px;color:var(--bg-1);background:linear-gradient(135deg,#f0cd78,#c99a55);box-shadow:0 12px 28px -12px #e8c77acc;font:500 14px "Noto Serif SC",serif;letter-spacing:4px;transition:transform .2s ease,box-shadow .2s ease}.gold-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 18px 32px -12px #e8c77ab3}.gold-btn:disabled{opacity:.45;cursor:not-allowed}.gold-btn.wide{width:100%}.text-btn,.ghost-btn{border:0;background:transparent;color:#f5eedb8c;margin-top:14px;letter-spacing:2px}.text-btn:hover,.ghost-btn:hover{color:var(--cream)}.top-bar{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding-bottom:16px}.top-bar .nav-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(245,238,219,.12);background:#f5eedb0f;color:var(--cream);font-size:22px;display:grid;place-items:center}.top-bar .center{text-align:center}.top-bar .center strong{display:block;font:500 15px "Noto Serif SC",serif;letter-spacing:4px}.top-bar .center small{display:block;margin-top:2px;color:#f5eedb6b;font:italic 9px Cormorant Garamond,serif;letter-spacing:3px}.top-bar .right{color:var(--gold-2);font-size:18px;min-width:36px;text-align:right}.top-bar .right button{border:1px solid rgba(212,165,116,.32);background:#e8c77a14;color:var(--gold-1);border-radius:12px;padding:4px 8px;font:italic 12px Cormorant Garamond,serif;letter-spacing:2px}.form-screen h2,.topics-screen h2,.report-screen .cover h2,.loading-screen h2{position:relative;z-index:1;margin:14px 0 18px;font:500 24px/1.55 "Noto Serif SC",serif;letter-spacing:4px}.steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:4px 0 18px}.steps .step{border-top:2px solid rgba(232,199,122,.2);padding-top:6px;color:#f5eedb66;font-size:10px;letter-spacing:2px;transition:color .25s,border-color .25s}.steps .step.active,.steps .step.done{color:var(--gold-2);border-color:#e8c77ac7}.form-control{position:relative;z-index:1;display:block;margin:13px 0}.form-control>span{display:block;color:#d4a574c7;font:italic 11px Cormorant Garamond,serif;letter-spacing:3px;margin-bottom:6px}.form-control input{width:100%;border:1px solid rgba(212,165,116,.2);border-radius:16px;outline:none;padding:14px 15px;color:var(--cream);background:#f5eedb0d}.form-control input:focus{border-color:#e8c77aad;box-shadow:0 0 0 3px #e8c77a14}.field-hint{margin:6px 2px 0;color:#f5eedb6b;font:italic 10.5px Cormorant Garamond,serif;letter-spacing:2px}.warn-box{margin:8px 0 0;padding:8px 12px;border-radius:12px;border:1px solid rgba(232,199,122,.22);background:#e8c77a0f;color:#f5eedba8;font-size:11px;letter-spacing:1px;line-height:1.6}.warn-box b{color:var(--gold-1);margin-right:6px}.gender-row{position:relative;z-index:1;display:flex;gap:10px;margin:18px 0 14px}.gender-row button{flex:1;border-radius:14px;border:1px solid rgba(245,238,219,.12);background:#f5eedb0a;color:var(--cream);padding:11px}.gender-row .selected{border-color:#e8c77aa6;color:var(--gold-1);background:#e8c77a24}.form-note{position:relative;z-index:1;color:#f5eedb80;font-size:12px;line-height:1.7;margin:14px 0 20px}.loading-orbit{width:240px;height:240px;margin:36px 0 28px;position:relative;display:grid;place-items:center}.loading-orbit .ring{position:absolute;border-radius:50%;border:1px solid rgba(232,199,122,.34)}.loading-orbit .ring.r1{inset:0;animation:twk-spin 22s linear infinite;border-style:dashed}.loading-orbit .ring.r2{inset:22px;animation:twk-spin-rev 16s linear infinite;border-color:#e8c77a73}.loading-orbit .ring.r3{inset:48px;animation:twk-spin 10s linear infinite;border-style:dashed;border-color:#e8c77a38}.loading-orbit .halo{position:absolute;width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,rgba(232,199,122,.55),transparent 70%);animation:twk-twinkle-halo 2.6s ease-in-out infinite}.loading-orbit .core{position:relative;color:var(--gold-1);font-size:56px;text-shadow:0 0 28px rgba(232,199,122,.9);animation:twk-twinkle 2.6s ease-in-out infinite .2s}.sweep-bar{position:relative;width:240px;height:1px;margin:8px 0 22px;background:#e8c77a24;overflow:hidden}.sweep-bar:after{content:"";position:absolute;inset:0;width:40%;background:linear-gradient(90deg,transparent,rgba(232,199,122,.9),transparent);animation:twk-sweep 2.2s ease-in-out infinite}.tab-row{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(5,1fr);margin:0 -20px;padding:0 12px;border-bottom:1px solid rgba(212,165,116,.18);background:#090a20d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.tab-row button{position:relative;padding:11px 0;border:0;background:transparent;color:#f5eedb99}.tab-row .active{color:var(--gold-1)}.tab-row small{display:block;font:italic 8px Cormorant Garamond,serif;letter-spacing:1px;margin-top:2px}.reading-panel,.chart-panel,.energy-panel,.houses-panel,.ziwei-panel{position:relative;z-index:1;padding:18px 0 4px}.profile-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}.profile-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(232,199,122,.45);background:radial-gradient(circle,#e8c77a2e,#0b0e2a66);color:var(--gold-1);font-size:22px;text-shadow:0 0 12px rgba(232,199,122,.8)}.profile-meta strong{display:block;font:500 14px "Noto Serif SC",serif;letter-spacing:3px}.profile-meta small{display:block;margin-top:2px;color:#f5eedb80;font-size:11px}.intro-line{margin:6px 0 16px;padding-left:14px;border-left:1px solid rgba(232,199,122,.45);color:#f5eedbb3;font:italic 13px/1.85 "Noto Serif SC",serif}.big-card{margin-bottom:14px}.big-card .head{display:flex;align-items:baseline;gap:10px}.big-card .head b{color:var(--gold-1);font-size:28px;text-shadow:0 0 14px rgba(232,199,122,.55)}.big-card .head h3{margin:0;font:500 16px "Noto Serif SC",serif;letter-spacing:3px}.big-card .head .essence{margin-left:auto;color:var(--gold-2);font:italic 11px Cormorant Garamond,serif;letter-spacing:2px}.big-card .meta{margin:6px 0 0;color:#f5eedb80;font-size:11px;letter-spacing:2px}.big-card .poetic{margin:10px 0 0;color:#f5eedbd6;font:italic 13.5px/1.95 "Noto Serif SC",serif}.big-card p{color:#f5eedbbd;font-size:13px;line-height:1.95;margin:8px 0 0}.kw-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.kw-row span{padding:3px 10px;border-radius:999px;border:1px solid rgba(232,199,122,.28);background:#e8c77a0f;color:var(--gold-2);font-size:10.5px;letter-spacing:2px}.glass-card,.unlock-card{border:1px solid rgba(212,165,116,.18);border-radius:18px;padding:16px;margin-bottom:14px;background:linear-gradient(#1b1240a3,#0b0e2a7a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.unlock-card{text-align:center;margin-top:20px}.unlock-card h3{margin:6px 0;font:500 18px "Noto Serif SC",serif;letter-spacing:3px}.unlock-card .price{margin:10px 0 14px;color:var(--gold-1);font:italic 22px Cormorant Garamond,serif}.unlock-card .price del{color:#f5eedb66;font-size:13px;margin-right:8px}.unlock-card p{color:#f5eedbad;line-height:1.7}.chart-panel h3{margin:8px 0;font:500 16px "Noto Serif SC",serif;letter-spacing:3px;display:flex;justify-content:space-between;align-items:center}.chart-panel h3 .pill{font:italic 10px Cormorant Garamond,serif;letter-spacing:2px;color:var(--gold-2);padding:3px 10px;border:1px solid rgba(212,165,116,.32);border-radius:999px;background:#e8c77a0f}.natal-chart{width:100%;max-width:340px;display:block;margin:8px auto 18px}.ring{fill:none;stroke:#d4a5746b;stroke-width:.7}.ring.faint{stroke:#d4a5742e}.sector-fill-odd{fill:#e8c77a09}.tick-1{stroke:#d4a5742e;stroke-width:.35}.tick-5{stroke:#d4a57459;stroke-width:.45}.tick-10{stroke:#e8c77a99;stroke-width:.55}.sector-line{stroke:#d4a57459;stroke-width:.6}.house-line{stroke:#d4a57440;stroke-width:.5;stroke-dasharray:2 3}.axis-line{stroke:#e8c77ac7;stroke-width:1}.zodiac{fill:var(--gold-1);font-size:14px;font-family:Noto Sans Symbols,"Noto Sans Symbols 2","Noto Serif SC",serif;font-variant-emoji:text}.house-num{fill:#f5eedb66;font:italic 9px Cormorant Garamond,serif}.angle-label{fill:#e8c77ad9;font:italic 8px Cormorant Garamond,serif;letter-spacing:1.5px}.aspect-line.good{stroke:#e8c77a;stroke-dasharray:none}.aspect-line.tense{stroke:#cc7a74;stroke-dasharray:4 3}.aspect-line.neutral{stroke:#f5eedb;stroke-dasharray:1.5 3}.aspect-line.hl-active{filter:brightness(1.4)}.aspect-line.hl-dimmed{stroke-opacity:.08!important}.conjunction-mark{fill:#e8c77abf;font:11px Noto Sans Symbols,"Noto Sans Symbols 2",serif;font-variant-emoji:text;pointer-events:none}.conjunction-mark.hl-active{fill:#e8c77a;filter:brightness(1.4)}.conjunction-mark.hl-dimmed{opacity:.12}.planet-halo{fill:#e8c77a73}.planet-dot{fill:var(--cream)}.planet-label{fill:var(--gold-1);font-size:12px;font-family:Noto Sans Symbols,"Noto Sans Symbols 2","Noto Serif SC",serif;font-variant-emoji:text}.planet-label .retro{fill:#cc7a74f2;font-size:7px}.center-sigil .halo{fill:none;stroke:#e8c77a8c;stroke-width:.8;transform-origin:170px 170px;animation:twk-twinkle-halo 2.6s ease-in-out infinite}.center-sigil .star{fill:var(--gold-1);filter:drop-shadow(0 0 8px rgba(232,199,122,.9));animation:twk-twinkle 2.6s ease-in-out infinite 1.3s}.center-sigil circle.dot{fill:var(--cream)}.center-sigil text{fill:#e8c77aa8;font:italic 7px Cormorant Garamond,serif;letter-spacing:2px}.planet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.planet-grid .row{border-radius:12px;border:1px solid rgba(245,238,219,.08);background:#f5eedb0a;padding:9px 10px;font-size:11.5px;color:#f5eedbcc;display:flex;align-items:center;gap:6px}.planet-grid .row .g{color:var(--gold-1);font-size:16px}.planet-grid .row .s{color:var(--gold-2)}.planet-grid .row .h{color:#f5eedb6b;margin-left:auto;font-size:10.5px}.planet-grid .row .r{color:#cc7a74e6;font:italic 10px Cormorant Garamond,serif}.ziwei-panel h3{margin:8px 0;font:500 16px "Noto Serif SC",serif;letter-spacing:3px;display:flex;justify-content:space-between;align-items:center}.ziwei-panel h3 .pill{font:italic 10px Cormorant Garamond,serif;color:var(--gold-2);padding:3px 10px;border:1px solid rgba(212,165,116,.32);border-radius:999px;letter-spacing:2px}.ziwei-grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);aspect-ratio:1 / 1;gap:4px;margin:8px 0 16px;padding:4px;border-radius:14px;background:#d4a5740d;border:1px solid rgba(212,165,116,.18)}.ziwei-cell{position:relative;padding:7px 8px;border-radius:10px;background:#0b0e2a73;color:#f5eedbc7;font-size:10.5px;display:flex;flex-direction:column;overflow:hidden}.ziwei-cell.ming{border:1px solid rgba(232,199,122,.5);background:linear-gradient(#e8c77a1f,#0b0e2a8c)}.ziwei-cell .stars{line-height:1.55;color:var(--cream);display:flex;flex-wrap:wrap;gap:2px 4px;align-content:flex-start}.ziwei-cell .stars .empty{color:#f5eedb52;font-size:14px;line-height:1}.ziwei-cell.ming .stars{color:var(--gold-1);text-shadow:0 0 8px rgba(232,199,122,.45)}.ziwei-cell .star-item{white-space:nowrap;font:500 10.5px "Noto Serif SC",serif}.ziwei-cell .star-item em{display:inline-block;margin-left:1px;padding:0 3px;font:italic 8px Cormorant Garamond,serif;color:var(--bg-1);background:#e8c77ac7;border-radius:3px;vertical-align:middle;transform:translateY(-1px);letter-spacing:0;font-style:normal}.ziwei-cell .foot i{font-style:normal;color:var(--gold-2);margin-left:2px}.ziwei-cell .foot{margin-top:auto;display:flex;justify-content:space-between;color:#f5eedb7a;font-size:9.5px}.ziwei-cell .branch{color:#e8c77a99}.ziwei-center{grid-column:2 / span 2;grid-row:2 / span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:transparent;border:1px dashed rgba(212,165,116,.22);border-radius:10px}.ziwei-center .latin{color:var(--gold-2);font:italic 11px Cormorant Garamond,serif;letter-spacing:3px}.ziwei-center h4{margin:4px 0 2px;font:500 17px "Noto Serif SC",serif;color:var(--gold-1);letter-spacing:4px}.ziwei-center .sub{margin-top:2px;color:#f5eedb9e;font-size:11px;letter-spacing:2px}.ziwei-center .body-tag{margin-top:8px;font:italic 10px Cormorant Garamond,serif;color:#f5eedb8c;letter-spacing:2px}.energy-panel .glass-card h4{margin:0 0 12px;font:500 14px "Noto Serif SC",serif;letter-spacing:3px;color:var(--gold-1)}.element-row{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;margin-bottom:12px}.element-row .g{color:var(--gold-1);font-size:18px;text-align:center}.element-row .bar{height:4px;border-radius:8px;background:#f5eedb14;position:relative;overflow:hidden}.element-row .bar i{display:block;height:100%;border-radius:8px;box-shadow:0 0 8px currentColor}.element-row.fire .bar i{background:var(--elem-fire);color:var(--elem-fire)}.element-row.earth .bar i{background:var(--elem-earth);color:var(--elem-earth)}.element-row.air .bar i{background:var(--elem-air);color:var(--elem-air)}.element-row.water .bar i{background:var(--elem-water);color:var(--elem-water)}.element-row .name{display:block;color:var(--cream);font-size:12.5px;letter-spacing:2px}.element-row .desc{display:block;margin-top:2px;color:#f5eedb80;font-size:10.5px}.element-row .pct{color:var(--gold-1);font:italic 14px Cormorant Garamond,serif}.element-poem{margin:8px 0 0;padding-top:12px;border-top:1px solid rgba(232,199,122,.16);color:#f5eedbb3;font:italic 12px/1.9 "Noto Serif SC",serif}.modality-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px}.modality-card{padding:14px 10px;text-align:center;border-radius:14px;border:1px solid rgba(212,165,116,.18);background:#f5eedb0a}.modality-card .pct{display:block;color:var(--gold-1);font:italic 22px Cormorant Garamond,serif}.modality-card .name{display:block;margin-top:2px;color:var(--cream);font-size:12px;letter-spacing:3px}.modality-card .latin{display:block;margin-top:2px;color:#f5eedb6b;font:italic 9px Cormorant Garamond,serif;letter-spacing:2px}.polarity-card{display:flex;align-items:center;gap:14px}.polarity-card .text{flex:1;font-size:12px;color:#f5eedbbd;line-height:1.8}.polarity-card .text b{color:var(--gold-1);font-style:italic;font-family:Cormorant Garamond,serif}.polarity-card .dots{display:flex;align-items:center;gap:8px}.polarity-card .dots .y{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle,#f0cd78,#c99a55);box-shadow:0 0 16px #e8c77ab3}.polarity-card .dots .n{width:16px;height:16px;border-radius:50%;background:#7e8cc98c}.houses-panel h4{margin:14px 0 8px;color:var(--gold-2);font:italic 11px Cormorant Garamond,serif;letter-spacing:4px}.houses-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.house-cell{border-radius:12px;border:1px solid rgba(245,238,219,.08);background:#f5eedb0a;padding:10px}.house-cell b{display:block;color:var(--gold-1);font:500 12.5px "Noto Serif SC",serif;letter-spacing:2px}.house-cell strong{display:block;margin:4px 0;color:var(--cream);font-size:11px}.house-cell p{margin:0;color:#f5eedb80;font-size:10.5px;line-height:1.55}.aspect-list{display:flex;flex-direction:column;gap:8px}.aspect-row{position:relative;padding:10px 12px 10px 16px;border-radius:12px;background:#f5eedb0a;display:flex;flex-direction:column;gap:4px}.aspect-row:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:4px;background:var(--tone-neutral)}.aspect-row.good:before{background:var(--tone-good)}.aspect-row.tense:before{background:var(--tone-tense)}.aspect-row .head{display:flex;align-items:center;gap:6px;color:var(--cream);font-size:13px}.aspect-row .head b{color:var(--gold-1);font-size:14px}.aspect-row .head .type{margin-left:auto;color:#f5eedb75;font:italic 10px Cormorant Garamond,serif;letter-spacing:2px}.aspect-row .note{margin:0;color:#f5eedb9e;font-size:11px;line-height:1.6}.topic-card{position:relative;display:block;width:100%;margin:14px 0;padding:18px 18px 16px;border:0;border-radius:18px;text-align:left;overflow:hidden;color:var(--cream);background:var(--card-bg, linear-gradient(135deg, var(--accent), #1b1240 60%, #0b0e2a));transition:transform .25s ease}.topic-card:hover{transform:translateY(-2px)}.topic-card .watermark{position:absolute;right:-16px;top:-22px;font-size:132px;color:#e8c77a24;text-shadow:0 0 40px rgba(232,199,122,.35);pointer-events:none;font-family:Noto Sans Symbols,"Noto Sans Symbols 2","Noto Serif SC",serif}.topic-card .meta{display:flex;justify-content:space-between;align-items:center;color:var(--gold-2);font:italic 10px Cormorant Garamond,serif;letter-spacing:3px}.topic-card .meta .tag{padding:2px 8px;border-radius:999px;background:#e8c77a2e;color:var(--gold-1);font-style:normal;letter-spacing:2px}.topic-card .title{display:block;margin:12px 0 6px;font:500 19px "Noto Serif SC",serif;letter-spacing:3px;color:var(--gold-1)}.topic-card .sub{display:block;max-width:260px;color:#f5eedbb3;font-size:12px;line-height:1.7}.topic-card .foot{margin-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:0}.topic-card .foot .time{color:#f5eedb9e;letter-spacing:0}.topic-card .foot .price{padding:4px 12px;border-radius:999px;background:#e8c77a29;color:var(--gold-1);letter-spacing:0}.topic-card.unlocked{border:1px solid rgba(232,199,122,.4)}.topic-card .meta .unlocked-tag{background:#6eb48c38;color:#b7e4c8}.topic-card.unlocked .foot .price{background:#6eb48c2e;color:#c5ecd5}.bundle-card{position:relative;display:block;width:100%;margin:18px 0 4px;padding:18px;text-align:center;background:#e8c77a0d;border:1px dashed rgba(232,199,122,.45);border-radius:18px;color:var(--cream)}.bundle-card .title{font:500 17px "Noto Serif SC",serif;letter-spacing:3px;color:var(--gold-1)}.bundle-card .desc{margin:8px 0;color:#f5eedb9e;font-size:11.5px;line-height:1.7}.bundle-card .price{margin-top:10px;color:var(--gold-1);font:italic 24px Cormorant Garamond,serif}.bundle-card .price del{color:#f5eedb66;font-size:13px;margin-right:8px;font-style:normal}.topics-intro{margin:14px 0 6px;color:#f5eedba8;font:italic 12.5px/1.85 "Noto Serif SC",serif}.paywall-mask{position:fixed;top:0;bottom:0;left:50%;transform:translate(-50%);width:min(430px,100vw);z-index:200;display:flex;align-items:flex-end;background:#07091fb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.paywall-sheet{width:100%;padding:14px 22px max(22px,env(safe-area-inset-bottom));border-radius:28px 28px 0 0;border:1px solid rgba(212,165,116,.35);background:linear-gradient(#1b1240,#0b0e2a 82%);text-align:center}.grabber{display:block;width:38px;height:3px;margin:0 auto 14px;border-radius:3px;background:#f5eedb52}.pay-glyph{color:var(--gold-1);font-size:38px;text-shadow:0 0 16px rgba(232,199,122,.7)}.paywall-sheet h2{margin:4px 0 2px;font:500 22px "Noto Serif SC",serif;letter-spacing:4px}.pay-sub{color:#f5eedb9e;font:italic 12px/1.7 "Noto Serif SC",serif;margin:0}.benefits{padding:0;margin:14px 0;list-style:none;text-align:left}.benefits li{display:grid;grid-template-columns:24px 1fr;gap:10px;margin:10px 0;align-items:start}.benefits b{color:var(--gold-1);font-size:18px;text-align:center;line-height:1.4}.benefits strong{display:block;color:var(--cream);font:500 13px "Noto Serif SC",serif;letter-spacing:2px}.benefits small{display:block;color:#f5eedb8c;margin-top:2px;font-size:11px;line-height:1.55;letter-spacing:0}.price-box{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:#e8c77a0f;border:1px solid rgba(212,165,116,.25)}.price-box .label{color:#f5eedb80;font-size:12px;letter-spacing:2px}.price-box .num{color:var(--gold-1);font:italic 24px Cormorant Garamond,serif}.price-box .num del{color:#f5eedb6b;font-size:12px;margin-left:6px;font-style:normal}.pay-methods{display:flex;gap:10px;justify-content:center;margin:14px 0 18px}.pay-methods .pill{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border-radius:10px;border:1.5px solid rgba(245,238,219,.12);background:#f5eedb0a;color:#f5eedb73;font-size:13px;line-height:1;letter-spacing:1px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s,border-color .15s,background .15s}.pay-methods .pill svg{flex-shrink:0;vertical-align:middle}.pay-methods .pill.wechat.selected{color:#4faf78;border-color:#4faf78;background:#4faf7814}.pay-methods .pill.alipay.selected{color:#5aa3d6;border-color:#5aa3d6;background:#5aa3d614}.pay-note{margin:6px 0 12px;color:#f5eedb5c;font:italic 10px Cormorant Garamond,serif;letter-spacing:1px}.login-sheet .login-input{margin:14px 0 4px}.login-sheet .login-input input{font:500 18px "Noto Serif SC",serif;letter-spacing:1px;text-align:center}.login-sheet .login-hint{margin:8px 0 0;padding:8px 12px;border-radius:10px;background:#e8c77a0f;border:1px dashed rgba(232,199,122,.3);color:#f5eedb9e;font-size:12px;letter-spacing:1px;text-align:center}.login-sheet .login-hint b{margin:0 4px;color:var(--gold-1);font:italic 16px Cormorant Garamond,serif;letter-spacing:4px}.login-sheet .login-error{margin:10px 0 0;color:#e88c8ce6;font-size:12px;text-align:center;letter-spacing:1px}.login-sheet .login-actions{display:flex;justify-content:space-between;align-items:center;margin:10px 0 12px}.login-sheet .login-actions .text-btn{margin:0;font:italic 12px Cormorant Garamond,serif;letter-spacing:2px}.login-sheet .login-actions .text-btn:disabled{color:#f5eedb4d;cursor:not-allowed}.report-screen{padding-top:0}.report-screen .scroll-progress{position:sticky;top:0;left:0;z-index:6;height:2px;background:#e8c77a14;margin:0 -20px}.report-screen .scroll-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--gold-2),var(--gold-1));box-shadow:0 0 10px #e8c77ab3;transition:width .15s linear}.report-screen .report-top{position:sticky;top:2px;z-index:5;margin:0 -20px;padding:12px 20px 8px;background:#090a20d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.report-body{font-size:var(--report-fs);padding-top:18px}.report-body .cover{text-align:center;margin-bottom:22px}.report-body .cover .glyph{color:var(--gold-1);font-size:46px;text-shadow:0 0 20px rgba(232,199,122,.7)}.report-body .cover .chapter{margin:8px 0 0;color:var(--gold-2);font:italic 12px Cormorant Garamond,serif;letter-spacing:6px}.report-body .cover h2{margin:8px 0 6px;font:500 26px "Noto Serif SC",serif;letter-spacing:5px}.report-body .cover .sub{color:#f5eedb99;font-size:12px;line-height:1.7}.poem-card{text-align:center;padding:22px 16px;font:italic 16px/2.1 "Noto Serif SC",serif;color:var(--cream);letter-spacing:2px}.poem-card p{margin:0}.poem-card.is-loading{padding:34px 16px}.poem-card .stream-sigil{font-size:34px;color:var(--gold-1);text-shadow:0 0 22px rgba(232,199,122,.7);animation:twk-twinkle 2.4s ease-in-out infinite;margin-bottom:12px;line-height:1}.poem-card .poem-placeholder{margin:0;color:#f5eedb8c;font-style:italic;letter-spacing:4px}.poem-card .poem-placeholder .dots{display:inline-flex;gap:4px;margin-left:6px;vertical-align:middle}.poem-card .poem-placeholder .dots i{width:4px;height:4px;border-radius:50%;background:var(--gold-1);opacity:.25;animation:dot-pulse 1.4s ease-in-out infinite}.poem-card .poem-placeholder .dots i:nth-child(2){animation-delay:.2s}.poem-card .poem-placeholder .dots i:nth-child(3){animation-delay:.4s}@keyframes dot-pulse{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1.25)}}.stream-trail{text-align:center;padding:14px 0 6px}.stream-trail .cursor{display:inline-block;color:var(--gold-1);font:18px/1 Cormorant Garamond,serif;text-shadow:0 0 8px rgba(232,199,122,.5);animation:cursor-blink 1.1s steps(2,jump-none) infinite}@keyframes cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.report-section{margin:26px 0}.report-section .head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.report-section .head .num{font:italic 18px Cormorant Garamond,serif;color:var(--gold-1);letter-spacing:2px;min-width:26px}.report-section .head h3{margin:0;font:500 15px "Noto Serif SC",serif;color:var(--gold-1);letter-spacing:3px;flex:1}.report-section .head .line{flex:1;height:1px;background:linear-gradient(90deg,rgba(232,199,122,.55),transparent)}.report-section p{margin:12px 0;color:#f5eedbc7;line-height:2;text-indent:2em;letter-spacing:.5px}.quote-card{position:relative;margin:28px 0;padding:28px 20px 22px;border-radius:18px;border:1px solid rgba(212,165,116,.32);background:linear-gradient(135deg,#5d3b7a73,#0b0e2a99);text-align:center}.quote-card:before{content:"“";position:absolute;top:6px;left:14px;font:italic 36px Cormorant Garamond,serif;color:#e8c77a73}.quote-card .q{margin:0;font:italic 15px/2 "Noto Serif SC",serif;color:var(--cream);letter-spacing:2px}.quote-card .sig{margin-top:14px;color:var(--gold-2);font:italic 11px Cormorant Garamond,serif;letter-spacing:3px}.chapter-end{text-align:center;margin:30px 0 60px}.chapter-end .label{margin:12px 0 14px;color:var(--gold-2);font:italic 11px Cormorant Garamond,serif;letter-spacing:5px}.chapter-end .next{display:inline-block;padding:10px 22px;border-radius:999px;border:1px solid rgba(232,199,122,.5);background:transparent;color:var(--gold-1);font:500 12.5px "Noto Serif SC",serif;letter-spacing:3px}.chapter-end-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}.field-btn{width:100%;text-align:left;border:1px solid rgba(212,165,116,.2);border-radius:16px;padding:14px 15px;color:var(--cream);background:#f5eedb0d;font:500 15px/1.3 "Noto Serif SC",serif;letter-spacing:4px;display:flex;justify-content:space-between;align-items:center;transition:border-color .2s,box-shadow .2s}.field-btn:hover{border-color:#e8c77a73}.field-btn .placeholder{color:#f5eedb6b;letter-spacing:2px}.field-btn .chev{color:var(--gold-2);font:italic 12px Cormorant Garamond,serif;letter-spacing:1px}.picker-mask{position:fixed;top:0;bottom:0;left:50%;transform:translate(-50%);width:min(430px,100vw);z-index:200;display:flex;align-items:flex-end;background:#07091fb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.picker-sheet{width:100%;padding:12px 18px max(18px,env(safe-area-inset-bottom));border-radius:28px 28px 0 0;border:1px solid rgba(212,165,116,.35);background:linear-gradient(#1b1240,#0b0e2a 82%)}.picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px}.picker-head strong{font:500 14px "Noto Serif SC",serif;letter-spacing:4px;color:var(--cream)}.picker-btn{border:0;background:transparent;font:italic 13px Cormorant Garamond,serif;letter-spacing:3px;padding:6px 10px}.picker-btn.ghost{color:#f5eedb8c}.picker-btn.gold{color:var(--gold-1)}.picker-cols{position:relative;display:flex;gap:8px;height:180px;margin:6px 0 4px;padding:0 8px}.picker-bar{position:absolute;left:8px;right:8px;top:50%;transform:translateY(-50%);height:36px;border-top:1px solid rgba(232,199,122,.32);border-bottom:1px solid rgba(232,199,122,.32);background:#e8c77a0f;border-radius:10px;pointer-events:none}.picker-col{flex:1;height:100%;overflow-y:scroll;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;text-align:center}.picker-col::-webkit-scrollbar{display:none}.picker-pad{height:36px;scroll-snap-align:center}.picker-item{height:36px;line-height:36px;color:#f5eedb73;font:500 16px "Noto Serif SC",serif;letter-spacing:2px;scroll-snap-align:center;transition:color .2s}.picker-item.active{color:var(--gold-1);text-shadow:0 0 12px rgba(232,199,122,.4)}.elements-radar{display:block;width:100%;max-width:240px;margin:6px auto 4px}.radar-grid{fill:none;stroke:#e8c77a1f;stroke-width:.6}.radar-axis{stroke:#e8c77a33;stroke-width:.6}.radar-data{fill:#e8c77a2e;stroke:var(--gold-1);stroke-width:1.4;filter:drop-shadow(0 0 8px rgba(232,199,122,.4));transition:all .4s ease}.radar-dot{stroke:var(--bg-1);stroke-width:.8}.radar-dot.fire{fill:var(--elem-fire)}.radar-dot.earth{fill:var(--elem-earth)}.radar-dot.air{fill:var(--elem-air)}.radar-dot.water{fill:var(--elem-water)}.radar-label{font-family:"Noto Serif SC",serif;font-size:13px;font-weight:500;letter-spacing:3px}.radar-label.fire{fill:var(--elem-fire)}.radar-label.earth{fill:var(--elem-earth)}.radar-label.air{fill:var(--elem-air)}.radar-label.water{fill:var(--elem-water)}.modality-block h4{margin:0 0 12px;font:500 14px "Noto Serif SC",serif;letter-spacing:3px;color:var(--gold-1)}.modality-poem{margin:4px 0 0;padding-top:12px;border-top:1px solid rgba(232,199,122,.16);color:#f5eedbb8;font:italic 12.5px/1.85 "Noto Serif SC",serif}.polarity-card .polarity-stats{display:block;color:#f5eedbbd;font-size:12px;margin:0 0 4px}.polarity-card .polarity-stats b{color:var(--gold-1);font:italic 13px Cormorant Garamond,serif}.polarity-card .polarity-poem{margin:6px 0 0;color:#f5eedbb8;font:italic 12px/1.8 "Noto Serif SC",serif}.big-card .head{display:flex;align-items:baseline;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.big-card .head .chev{margin-left:8px;color:var(--gold-2);font:200 22px "Noto Serif SC",serif;line-height:1;transition:transform .3s ease;flex-shrink:0}.big-card.collapsed .head .chev{color:var(--gold-1)}.big-card .card-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .38s cubic-bezier(.4,0,.2,1),margin-top .38s cubic-bezier(.4,0,.2,1),opacity .25s ease;opacity:1;margin-top:6px}.big-card .card-body .card-body-inner{overflow:hidden;min-height:0}.big-card.collapsed .card-body{grid-template-rows:0fr;margin-top:0;opacity:0}.planet-grid .row{transition:background .18s ease,border-color .18s ease}.planet-grid .row.highlighted{background:#e8c77a1f;border-color:#e8c77a80}.planet-highlight-ring{fill:none;stroke:var(--gold-1);stroke-width:1.2;opacity:.7;animation:planet-ring-pulse 1.4s ease-in-out infinite}@keyframes planet-ring-pulse{0%,to{opacity:.45;stroke-width:1}50%{opacity:.9;stroke-width:1.6}}.detail-sheet{text-align:left!important;max-height:78vh;overflow-y:auto;scrollbar-width:none}.detail-sheet::-webkit-scrollbar{display:none}.detail-sheet .ghost-btn{display:block;margin:16px auto 0}.detail-head{display:flex;align-items:center;gap:14px;margin:4px 0 12px}.detail-glyph{font-size:38px;line-height:1;color:var(--gold-1);text-shadow:0 0 18px rgba(232,199,122,.65);font-family:Noto Sans Symbols,"Noto Sans Symbols 2","Noto Serif SC",serif;flex-shrink:0}.detail-title-block{flex:1;min-width:0}.detail-title-block h2{margin:0;font:500 20px "Noto Serif SC",serif!important;letter-spacing:4px!important;color:var(--cream)}.detail-title-block .detail-sub{margin:4px 0 0;color:var(--gold-2);font:italic 12px Cormorant Garamond,serif;letter-spacing:3px}.detail-badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.detail-badges .badge{padding:3px 10px;border-radius:999px;border:1px solid rgba(232,199,122,.32);background:#e8c77a14;color:var(--gold-2);font:11px "Noto Serif SC",serif;letter-spacing:1px}.detail-body{font-size:13px;color:#f5eedbc7}.detail-vibe{margin:12px 0 6px;color:var(--cream);font:italic 14px/1.85 "Noto Serif SC",serif;letter-spacing:1px}.detail-domain{margin:0 0 14px;color:#f5eedb8c;font-size:12px;letter-spacing:1px}.detail-section{margin-top:16px}.detail-section h4{margin:0 0 8px;color:var(--gold-1);font:500 13px "Noto Serif SC",serif;letter-spacing:3px}.detail-empty{margin:0;color:#f5eedb80;font-size:12px;line-height:1.7;font-style:italic}.detail-aspects{display:flex;flex-direction:column;gap:6px}.detail-aspect-row{display:flex;align-items:center;gap:6px;padding:8px 12px 8px 14px;border-radius:10px;background:#f5eedb0a;font-size:12px;position:relative}.detail-aspect-row:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:4px;background:var(--tone-neutral)}.detail-aspect-row.good:before{background:var(--tone-good)}.detail-aspect-row.tense:before{background:var(--tone-tense)}.detail-aspect-row b{color:var(--gold-1);font-size:14px}.detail-aspect-row em{margin-left:auto;color:#f5eedb80;font:italic 11px Cormorant Garamond,serif;letter-spacing:1px}.detail-planet-list{display:flex;flex-direction:column;gap:6px}.detail-planet-row{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:10px;background:#f5eedb0d;font-size:12.5px}.detail-planet-row .g{color:var(--gold-1);font-size:17px}.detail-planet-row .s{color:var(--gold-2);font-size:11.5px}.detail-planet-row .r{margin-left:auto;color:#cc7a74e6;font:italic 10px Cormorant Garamond,serif}.trinity-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 12px}.trinity-cell{padding:10px;border-radius:10px;border:1px solid rgba(245,238,219,.08);background:#f5eedb0a}.trinity-cell.self{border-color:#e8c77a66;background:#e8c77a14}.trinity-cell small{display:block;color:var(--gold-2);font:italic 10px Cormorant Garamond,serif;letter-spacing:2px}.trinity-cell strong{display:block;margin:4px 0 2px;color:var(--cream);font:500 13px "Noto Serif SC",serif}.trinity-cell span{color:#f5eedba8;font-size:11px;line-height:1.5}.trinity-hint{margin:8px 0 0;color:#f5eedb80;font-size:11.5px;line-height:1.7;font-style:italic}.clickable{cursor:pointer;transition:transform .1s,background .2s}.clickable:hover{background:#e8c77a12}.clickable:active{transform:scale(.985);transition:transform .06s}.planet-hit{cursor:pointer}.disambig-popup{filter:drop-shadow(0 6px 12px rgba(0,0,0,.55))}.disambig-bg{fill:#141838f5;stroke:#e8c77ab3;stroke-width:1.2}.disambig-item{cursor:pointer}.disambig-dot{fill:#e8c77a24;stroke:#e8c77a99;stroke-width:1;transition:fill .15s}.disambig-dot.active,.disambig-item:hover .disambig-dot{fill:#e8c77a66}.disambig-glyph{fill:#f5eedbfa;font:13px Noto Sans Symbols,"Noto Sans Symbols 2",serif;pointer-events:none}.panel-hint{margin:4px 0 12px;color:#f5eedb6b;font:italic 11px Cormorant Garamond,serif;letter-spacing:2px;text-align:center}.houses-panel h4 .hint-inline,.ziwei-panel h3 .hint-inline{font:italic 10px Cormorant Garamond,serif;letter-spacing:1.5px;color:#f5eedb6b;margin-left:6px}.poster-offscreen{position:fixed;left:-9999px;top:0;pointer-events:none}.poster-canvas{position:relative;width:750px;height:1334px;padding:90px 70px 80px;background:radial-gradient(ellipse 800px 500px at 50% 0%,rgba(75,42,107,.55),transparent 70%),radial-gradient(ellipse 600px 400px at 50% 100%,rgba(42,55,110,.4),transparent 70%),linear-gradient(180deg,#0b0e2a,#04060f);color:var(--cream);font-family:Noto Sans Symbols,"Noto Sans Symbols 2",Noto Sans SC,PingFang SC,sans-serif;overflow:hidden;display:flex;flex-direction:column;text-align:center;box-sizing:border-box}.poster-halo{position:absolute;top:-200px;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(232,199,122,.18),transparent 60%);pointer-events:none}.poster-stars{position:absolute;inset:0;pointer-events:none}.poster-stars i{position:absolute;border-radius:50%;background:var(--cream);box-shadow:0 0 4px #f5eedb99}.poster-header{position:relative;z-index:2}.poster-sigil{font-size:88px;color:var(--gold-1);text-shadow:0 0 50px rgba(232,199,122,.9),0 0 20px rgba(232,199,122,.6);line-height:1;margin-bottom:28px;font-family:Noto Sans Symbols,"Noto Sans Symbols 2","Noto Serif SC",serif}.poster-eyebrow{margin:0 0 18px;color:var(--gold-2);font:italic 22px Cormorant Garamond,serif;letter-spacing:10px}.poster-title{margin:0 0 14px;font:500 56px "Noto Serif SC",serif;letter-spacing:12px;color:var(--gold-1);text-shadow:0 0 30px rgba(232,199,122,.3)}.poster-sub{margin:0 0 32px;color:#f5eedbb3;font:22px/1.7 "Noto Serif SC",serif;letter-spacing:4px}.poster-divider{width:180px;height:1px;margin:12px auto;background:linear-gradient(90deg,transparent,rgba(232,199,122,.7),transparent)}.poster-divider.small{width:80px}.poster-mid-divider{width:60%;height:1px;margin:40px auto;background:linear-gradient(90deg,transparent,rgba(232,199,122,.35),transparent);position:relative;z-index:2}.poster-poem{position:relative;z-index:2;margin:30px 0;font:italic 30px/2 "Noto Serif SC",serif;letter-spacing:4px;color:var(--cream)}.poster-poem p{margin:0}.poster-quote{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 30px}.poster-quote .quote-mark{font:italic 72px Cormorant Garamond,serif;color:#e8c77a8c;line-height:.5;margin-bottom:18px}.poster-quote p{margin:4px 0;font:italic 26px/1.95 "Noto Serif SC",serif;letter-spacing:3px;color:var(--cream)}.poster-foot{position:relative;z-index:2;margin-top:auto}.poster-signature{margin:30px 0 18px;color:var(--gold-2);font:italic 20px Cormorant Garamond,serif;letter-spacing:6px}.poster-brand-en{margin:14px 0 4px;color:var(--gold-2);font:italic 18px Cormorant Garamond,serif;letter-spacing:8px}.poster-brand-cn{margin:0;color:#f5eedb80;font:16px "Noto Serif SC",serif;letter-spacing:8px}.poster-sheet h2{margin:4px 0 16px!important;font:500 18px "Noto Serif SC",serif!important;letter-spacing:4px!important}.poster-stage{position:relative;width:100%;margin:16px 0;min-height:280px;display:flex;align-items:center;justify-content:center}.poster-preview{width:100%;max-width:280px;border-radius:18px;overflow:hidden;box-shadow:0 18px 60px -20px #e8c77a66,0 8px 24px #00000080}.poster-preview img{display:block;width:100%;height:auto}.poster-loading{position:relative;width:100px;height:100px;display:grid;place-items:center}.poster-loading .ring{position:absolute;border-radius:50%;border:1px dashed rgba(232,199,122,.45)}.poster-loading .ring.r1{inset:0;animation:twk-spin 14s linear infinite}.poster-loading .ring.r2{inset:18px;animation:twk-spin-rev 10s linear infinite}.poster-loading b{color:var(--gold-1);font-size:28px;text-shadow:0 0 18px rgba(232,199,122,.8);animation:twk-twinkle 2.4s ease-in-out infinite}.poster-error{color:#e88c8ce6;text-align:center;font-size:13px;padding:20px}.page-enter-active{transition:opacity .32s cubic-bezier(.4,0,.2,1),transform .32s cubic-bezier(.4,0,.2,1)}.page-leave-active{transition:opacity .22s cubic-bezier(.4,0,1,1),transform .22s cubic-bezier(.4,0,1,1)}.page-enter-from{opacity:0;transform:translateY(14px)}.page-leave-to{opacity:0;transform:translateY(-8px)}.tab-enter-active{transition:opacity .22s ease-out,transform .22s ease-out}.tab-leave-active{transition:opacity .14s ease-in,transform .14s ease-in}.tab-enter-from{opacity:0;transform:translateY(6px)}.tab-leave-to{opacity:0;transform:translateY(-4px)}.sheet-enter-active,.sheet-leave-active{transition:opacity .28s ease}.sheet-enter-from,.sheet-leave-to{opacity:0}.sheet-enter-active .paywall-sheet,.sheet-enter-active .picker-sheet{transition:transform .4s cubic-bezier(.16,1,.3,1)}.sheet-leave-active .paywall-sheet,.sheet-leave-active .picker-sheet{transition:transform .28s cubic-bezier(.4,0,1,1)}.sheet-enter-from .paywall-sheet,.sheet-enter-from .picker-sheet,.sheet-leave-to .paywall-sheet,.sheet-leave-to .picker-sheet{transform:translateY(100%)}.topic-card,.bundle-card,.gold-btn,.field-btn,.gender-row button,.tab-row button,.house-cell,.aspect-row,.chapter-end .next{-webkit-tap-highlight-color:transparent}.topic-card:active:not(:disabled),.bundle-card:active{transform:scale(.985);transition:transform .08s ease-out}.gold-btn:active:not(:disabled){transform:scale(.97);transition:transform .08s ease-out}.field-btn:active,.gender-row button:active,.chapter-end .next:active{transform:scale(.98);transition:transform .08s ease-out}.tab-row button{transition:color .2s ease}.tab-row button:after{content:"";position:absolute;left:24%;right:24%;bottom:0;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--gold-1),transparent);opacity:0;transform:scaleX(.4);transform-origin:center;transition:opacity .28s ease,transform .32s cubic-bezier(.16,1,.3,1);pointer-events:none}.tab-row .active:after{opacity:1;transform:scaleX(1)}@media(min-width:431px){.app-window{min-height:min(932px,100dvh);border:1px solid rgba(232,199,122,.16);border-radius:28px}}
