/* DAOQUAN_FRESH_UI14_20260928_R25 — original structural stylesheet, no screenshot backgrounds */
:root{--night:#001324;--night2:#010e1c;--gold:#e8b666;--gold-light:#ffe9ae;--paper:#fdf8ec;--ink:#10243a;--muted:#667383;--red:#d51c2a;--green:#00875a;--gutter:16px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:#000c18}body{margin:0;background:#000c18;color:#fff4d9;font-family:Georgia,'Times New Roman',serif;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ffe09a;outline-offset:2px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.17}p{line-height:1.42}svg{flex:none;vertical-align:middle}#app{min-height:100dvh}
.shell{position:relative;isolation:isolate;width:min(100%,430px);min-height:100dvh;margin:auto;overflow:hidden;padding-bottom:calc(83px + env(safe-area-inset-bottom));background:radial-gradient(circle at 65% 5%,#23486645,transparent 26%),linear-gradient(180deg,#001932 0%,#001324 47%,#010e1c 100%);box-shadow:0 0 30px #0009}.shell:has(.auth-content){padding-bottom:calc(26px + env(safe-area-inset-bottom))}.content{position:relative;z-index:1;padding:0 var(--gutter) 22px;min-width:0}.content>*{max-width:100%}.content>section,.content>form{margin-bottom:10px}
.hero{position:relative;min-height:177px;overflow:hidden;background-image:linear-gradient(90deg,#001324ee 0%,#001324ad 42%,#00132422 78%),linear-gradient(0deg,#001324 0%,transparent 35%),none;background-size:cover,cover,auto 100%;background-position:center,center,right top;background-repeat:no-repeat}.hero.compact{min-height:121px}.hero.auth-hero{min-height:232px}.welcome-page .auth-hero{min-height:316px;background-size:cover,cover,auto 100%}.register-page .auth-hero{min-height:171px}.forgot-page .auth-hero{min-height:213px}.hero-ink{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0013246e,transparent 60%)}.hero-top{position:relative;z-index:1;display:flex;align-items:flex-start;gap:9px;min-height:82px;padding:calc(12px + env(safe-area-inset-top)) 14px 0}.hero-top .emblem{display:block;flex:none;width:68px;height:68px;border-radius:50%;background:url('/images/brand-mark.png') center/cover no-repeat;filter:drop-shadow(0 0 6px #e9b66f6c)}.hero-top .back{margin-right:-5px}.brand{min-width:0;max-width:194px;padding-top:4px;color:#ffdc93;text-shadow:0 2px 4px #0008}.brand strong{display:block;font-size:clamp(24px,7.1vw,31px);line-height:1;white-space:nowrap;font-weight:600}.brand small{display:block;margin-top:6px;font:600 6px/1.6 system-ui,sans-serif;letter-spacing:.21em;white-space:nowrap}.hero-actions{display:flex;gap:2px;margin-left:auto}.icon-button{display:grid;place-items:center;flex:none;width:30px;height:32px;padding:0;border:0;border-radius:50%;background:#0017288c;color:#ffe7af}.hero-title{position:relative;z-index:1;margin:15px 26px 0;max-width:66%;padding-bottom:22px;text-shadow:0 2px 5px #000b}.hero-title i{display:block;width:48px;height:1px;margin-bottom:7px;background:linear-gradient(90deg,#e9bd6f,transparent)}.hero-title h1{font-size:clamp(25px,7.3vw,33px);color:#fff0c9;font-weight:600;overflow-wrap:break-word}.hero-title p{margin-top:4px;color:#f7ebd4;font-size:clamp(11px,3.2vw,14px);line-height:1.26}.hero.compact .hero-title{margin-top:0}.hero.compact .hero-title h1{font-size:27px}.hero.compact .hero-title p{font-size:11px}.hero.auth-hero .hero-title{margin-top:23px;max-width:75%}.welcome-page .hero-top{justify-content:center;align-items:center;flex-direction:column;min-height:178px;gap:0}.welcome-page .hero-top .emblem{width:91px;height:91px}.welcome-page .brand{text-align:center;max-width:none}.welcome-page .brand strong{font-size:35px}.welcome-page .hero-title{max-width:94%;margin:17px auto 0;text-align:center}.welcome-page .hero-title i{margin:0 auto 9px;width:106px}.welcome-page .hero-title h1{font-size:30px}.welcome-page .hero-title p{max-width:300px;margin:7px auto 0}.auth-hero .hero-actions{display:none}.register-page .hero-title{margin-top:2px}.register-page .hero-top{min-height:89px}.forgot-page .hero-title{margin-top:12px}
.paper,.today-card{position:relative;min-width:0;border:1px solid #d39d55;border-radius:16px;background:linear-gradient(135deg,#fffdf7 0%,#fdf8ec 54%,#f6e5c8 100%);color:var(--ink);box-shadow:inset 0 0 0 2px #fff4da,inset 0 0 0 4px #dfa95a44,0 5px 13px #0009}.paper::before{position:absolute;inset:5px auto auto 6px;content:'❧';pointer-events:none;color:#dcae71a8;font-size:23px;line-height:1}.paper::after{position:absolute;inset:auto 7px 1px auto;content:'❧';pointer-events:none;color:#dcae71a8;font-size:23px;transform:rotate(180deg);line-height:1}
.today-card{display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr) 16px;align-items:stretch;gap:4px;width:100%;min-height:97px;padding:10px 7px;margin:0 0 10px;text-align:left}.today-card>span:first-child{display:grid;justify-items:center;align-content:center;border-right:1px solid #d7ae75;padding-right:4px}.today-card>span:first-child small,.today-card>span:first-child b{font-size:11px;white-space:nowrap}.today-card strong{font-size:49px;line-height:.98;color:#c9001c}.today-info{min-width:0;display:grid;align-content:center;text-align:center}.today-info>b{font-size:13px;line-height:1.18;overflow-wrap:anywhere}.today-info hr{width:92%;border:0;border-top:1px solid #d6bb91;margin:6px auto}.zodiac-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.zodiac-row>span{min-width:0;display:grid;align-content:start;gap:3px;border-right:1px solid #dfc69f;padding:1px}.zodiac-row>span:last-child{border-right:0}.zodiac-row small{font-size:8px;color:#6a6a68}.zodiac-row b{font-size:8px;line-height:1.1;overflow-wrap:anywhere}.zodiac-row i{font:18px/1 Georgia;color:#b58440}.today-chevron{align-self:start;color:var(--ink)}
.feature-grid{display:grid;gap:8px;margin:8px 0}.feature-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.feature-tile{position:relative;display:block;min-width:0;aspect-ratio:1.17;overflow:hidden;border:1px solid #dca95f;border-radius:11px;background-color:#06263e;background-size:cover;background-position:center;color:#fff8e9;text-align:center;box-shadow:inset 0 0 0 2px #ffdc9866,0 4px 12px #0009}.feature-tile b{position:absolute;left:6px;right:17px;bottom:8px;font-size:clamp(11px,3.15vw,14px);line-height:1.12;text-shadow:0 1px 4px #000;overflow-wrap:anywhere}.feature-tile svg{position:absolute;bottom:8px;right:3px;filter:drop-shadow(0 1px 3px #000)}.feature-tile.tile-small{aspect-ratio:1.04}.feature-tile.tile-small b{font-size:clamp(9px,2.8vw,12px);right:13px;left:2px}.feature-tile.tile-small svg{width:13px;right:1px}.spotlight{position:relative;display:flex;align-items:center;min-height:148px;padding:11px 10px 11px 46%;overflow:hidden;border:1px solid #e0b46d;border-radius:15px;background:radial-gradient(circle at 30% 50%,#1b4663,#001625 70%);box-shadow:inset 0 0 0 2px #ffe5a04a,0 8px 16px #0007}.spotlight-art{position:absolute;inset:0 49% 0 0;background:linear-gradient(90deg,transparent 60%,#00172aea),url('/images/art-scholar.png') center/cover}.spotlight-copy{position:relative;min-width:0;width:100%}.light-badge{display:inline-block;padding:2px 8px;border-radius:12px;color:#493014;background:#f7d58d;font-size:9px;font-weight:bold}.spotlight h2{margin:4px 0;font-size:19px;color:#ffedc5}.spotlight p{font-size:10px}.micro-points{display:flex;flex-wrap:wrap;gap:2px 6px;margin:5px 0;font-size:9px}.gold-cta{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:45px;padding:5px 7px;border:1px solid #fff1c2;border-radius:999px;background:linear-gradient(170deg,#fff5d0,#f4d48d 32%,#e8b35f 72%,#b9782d);color:#132535;box-shadow:inset 0 2px #fff9,inset 0 0 0 2px #ba772a8a,0 4px 8px #0006;font-size:clamp(14px,3.8vw,19px);font-weight:bold}.gold-cta>span{flex:none;color:#855322}.gold-cta b{min-width:0;overflow-wrap:anywhere}.gold-cta>i{display:grid;place-items:center;flex:none;width:31px;height:31px;margin-left:auto;border:1px solid #fff9cf;border-radius:50%;background:linear-gradient(#eeb35e,#a7671c);color:#fff3d7;font-style:normal}.gold-cta:active{transform:scale(.985)}.gold-cta:disabled{filter:grayscale(1);opacity:.7;cursor:not-allowed}.spotlight .gold-cta{min-height:32px;font-size:12px}.spotlight .gold-cta>span{display:none}.spotlight .gold-cta>i{width:23px;height:23px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 2px 8px}.section-heading h2{display:flex;align-items:center;gap:5px;font-size:clamp(17px,4.6vw,21px);color:#fff1d2}.section-heading h2 svg{color:#f2ce8a}.section-heading>button{display:flex;align-items:center;gap:3px;border:0;background:none;color:#f3c87e;font-size:11px;white-space:nowrap}.article-card{display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr) 18px;gap:8px;width:100%;min-height:91px;margin-bottom:8px;padding:7px;text-align:left}.article-picture{display:block;min-height:76px;border-radius:8px;background-size:cover;background-position:center}.article-copy{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.article-copy strong{font-size:13px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-copy>span{font-size:10px;color:#6e6d69;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-copy em{font:9px/1.2 system-ui,sans-serif;color:#67727c}.article-card>i{align-self:center;color:#102b45}.badge{padding:2px 7px;border-radius:9px;background:#0c2c44;color:#f8d99a;font-size:9px}.article-large{min-height:150px;grid-template-columns:46% minmax(0,1fr) 15px}.article-large .article-picture{min-height:136px}.article-large .article-copy strong{font-size:17px;-webkit-line-clamp:3}.article-large .article-copy>span{font-size:11px;-webkit-line-clamp:3}
.bottom-nav{position:fixed;z-index:12;left:50%;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100%,430px);height:calc(67px + env(safe-area-inset-bottom));transform:translateX(-50%);padding:8px 3px max(5px,env(safe-area-inset-bottom));border:1px solid #d6a766;border-bottom:0;border-radius:35px 35px 0 0;background:linear-gradient(#09283d,#001525 70%);box-shadow:0 -4px 15px #000a}.bottom-nav button{display:grid;align-content:center;justify-items:center;gap:1px;min-width:0;border:0;border-right:1px solid #d7ab6444;background:transparent;color:#f1dfc1;font-size:12px}.bottom-nav button:last-of-type{border-right:0}.bottom-nav button.on{color:#ffdb89;text-shadow:0 0 7px #fbd388;font-weight:bold}.bottom-nav button.on svg{filter:drop-shadow(0 0 5px #ffca62)}.bottom-nav button.on::after{content:'';width:72%;height:2px;background:#f6cc75;box-shadow:0 0 6px #ffd995}.nav-lotus{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:33px;height:23px;text-align:center;font-size:22px;line-height:23px;color:#f5d28f;text-shadow:0 0 4px #edbb65;pointer-events:none}
.calendar-paper{padding:9px}.month-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px}.month-row button{display:grid;place-items:center;min-width:34px;min-height:32px;border:0;border-radius:50%;background:#fff8ec;color:#133351}.month-row h2{font-size:17px}.week-row,.days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}.week-row{padding:7px 0;border-radius:8px;background:#f5e7c9}.week-row b{font-size:clamp(7px,2vw,10px);white-space:normal;line-height:1.15}.week-row b:last-child,.cal-day.sunday{color:#d81726}.days-grid{margin-top:3px}.cal-day{min-width:0;min-height:42px;padding:2px 0;display:grid;align-content:center;gap:1px;border:0;border-right:1px solid #ead9ba;border-bottom:1px solid #ead9ba;background:transparent;color:#132946}.cal-day:nth-child(7n){border-right:0}.cal-day b{font-size:13px}.cal-day small{font-size:8px}.cal-day span{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-day.outside{opacity:.38}.cal-day.selected{border-radius:8px;background:#113554;color:#fff3d0;box-shadow:inset 0 0 0 2px #e1a856}.cal-day.selected small{color:#fbe0a6}.detail-paper{padding:6px 8px 10px}.detail-hero{display:grid;grid-template-columns:40% 60%;min-height:90px}.big-day{display:grid;align-content:center;justify-items:center;border-right:1px solid #d6b681;text-align:center}.big-day b{font-size:12px}.big-day strong{color:#d30d25;font-size:48px;line-height:1}.big-day span{font-size:12px}.big-day small{padding:3px;font-size:9px}.detail-landscape{display:grid;align-content:end;gap:1px;padding:8px;color:#fff3d8;text-shadow:0 1px 3px #000;background:none right center/cover;border-radius:0 8px 8px 0}.detail-landscape b,.detail-landscape em{font-size:12px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:8px}.detail-grid>div{display:grid;grid-template-columns:25px minmax(0,1fr);gap:2px 5px;min-width:0;padding:6px;border:1px solid #eddbba;border-radius:8px}.detail-grid svg{grid-row:span 2;color:#b37b33}.detail-grid small{font-size:9px}.detail-grid b{font-size:11px;overflow-wrap:anywhere}.day-details{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:5px;margin:7px 0}.info-strip{padding:7px;border-radius:7px;background:#f7e9ce}.info-strip h3{font-size:10px}.info-strip p{font-size:9px}.info-strip.good{background:#eaf4e8}.info-strip.bad{background:#faece8}.actions-row{display:flex;gap:7px}.actions-row button{flex:1;min-height:33px;border:0;border-radius:7px;background:#0e3651;color:#ffe3af;font-size:11px}
.chart-paper{padding:9px}.segmented{display:grid;gap:3px;padding:2px;border:1px solid #d3a25b;border-radius:14px;background:#08283f;color:#f4d7a1}.segmented.two{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented.three{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented.four{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented button{min-width:0;min-height:37px;padding:3px;border:0;border-radius:11px;background:none;color:inherit;font-size:clamp(10px,2.9vw,13px);line-height:1.1;overflow-wrap:anywhere}.segmented button.active{background:linear-gradient(#fff3d0,#eac075);color:#112841;box-shadow:0 2px 5px #0006;font-weight:bold}.form-row{display:grid;grid-template-columns:minmax(0,31%) minmax(0,1fr);gap:8px;align-items:center;min-height:43px;border-bottom:1px solid #e5d2b0;padding:6px 2px}.form-row:last-of-type{border-bottom:0}.row-label{display:flex;align-items:center;gap:6px;min-width:0}.row-label svg{color:#092d48}.row-label b{font-size:12px;line-height:1.14;overflow-wrap:anywhere}.row-control{min-width:0}.row-control input,.row-control select,.author-form input,.author-form select,.author-form textarea,.number-form input{display:block;width:100%;min-width:0;min-height:37px;padding:7px 9px;border:1px solid #dbccba;border-radius:8px;background:#fffcf6;color:#122b43;font-size:12px}.row-control input::placeholder{color:#798596}.toggle-row{display:flex;align-items:center;gap:10px;min-height:42px;padding:6px;color:#18324a}.toggle-row input{accent-color:#b78036}.toggle-row span{font-size:12px}.toggle-row small{display:block;font-size:10px;color:#64707c}.systems-panel{padding:12px;border:1px solid #dda65c;border-radius:15px;background:linear-gradient(90deg,#001628eb,#001628aa),url('/images/chart-art.png') center/cover}.systems-panel h2{font-size:20px;color:#fbe0a9}.systems-panel p{margin:7px 0;font-size:11px}.systems-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.systems-grid span{min-width:0;padding:6px 4px;border:1px solid #bd8f58;border-radius:6px;background:#07243d;color:#ffe1ac;font-size:9px;line-height:1.12;overflow-wrap:anywhere}.chart-page .content>.gold-cta{max-width:85%;margin:10px auto}
.identity-card{display:grid;grid-template-columns:82px minmax(0,1fr) 60px;gap:9px;align-items:center;padding:10px}.portrait{display:block;width:78px;height:78px;border:2px solid #d49b55;border-radius:50%;background:url('/images/profile-portrait.png') center/cover}.identity-card h2{font-size:18px}.identity-card p{font-size:11px;margin:3px 0}.identity-card button{display:flex;align-items:center;gap:3px;padding:2px 4px;border:1px solid #d5a261;border-radius:8px;background:#113047;color:#ffe0aa;font-size:10px}.identity-wheel{font-size:47px;color:#ca912b;text-align:center}.empty-card{padding:17px;text-align:center}.empty-card h2{font-size:20px}.empty-card p{font-size:12px;margin:8px 0}.analysis-page .segmented{margin:10px 0}.narrative-panel{padding:12px}.narrative-panel h2{font-size:18px;margin-bottom:7px}.narrative-layout{display:grid;grid-template-columns:42% minmax(0,1fr);gap:10px}.narrative-art{display:block;min-height:93px;border-radius:8px;background:url('/images/article-scene.png') center/cover}.narrative-layout h3{font-size:14px;margin-bottom:4px}.narrative-layout p,.narrative-panel p{font-size:11px;line-height:1.35}.timeline{padding:11px}.timeline h2{font-size:19px;margin-bottom:7px}.timeline button{display:grid;grid-template-columns:75px minmax(0,1fr) 20px;gap:8px;align-items:center;width:100%;min-height:58px;padding:4px 3px;border:0;border-bottom:1px solid #e4d0a8;background:transparent;color:#183046;text-align:left}.timeline button:last-child{border-bottom:0}.timeline-art{display:block;height:52px;border-radius:7px;background:url('/images/article-scene.png') center/cover}.timeline-art.art-1{background-image:url('/images/art-feng.png')}.timeline-art.art-2{background-image:url('/images/art-goodday.png')}.timeline-art.art-3{background-image:none}.timeline-art.art-4{background-image:url('/images/hex-scene.png')}.timeline button b{font-size:14px}.timeline button small{display:block;font-size:10px}.dark-panel{padding:11px;border:1px solid #c49960;border-radius:13px;background:linear-gradient(100deg,#042035f2,#092b42c7),url('/images/member-art.png') center/cover;color:#fce5b7}.dark-panel h2,.dark-panel h3{font-size:18px}.dark-panel p{font-size:11px;margin:5px 0}.dark-panel button{display:flex;gap:5px;align-items:center;border:1px solid #bb8e58;border-radius:7px;padding:5px 9px;background:#f6d08a;color:#13283a;font-size:11px}
.palaces-page .segmented{margin-bottom:7px}.palace-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:2px;width:100%;aspect-ratio:1/1.08;padding:2px;border:1px solid #dda862;border-radius:10px;background:#d1a065}.palace{position:relative;min-width:0;min-height:0;overflow:hidden;display:grid;align-content:start;gap:2px;padding:3px;border:0;border-radius:4px;background:linear-gradient(#fffbf2,#f7e7ce);color:#142c43;text-align:left}.palace .animal{color:#b8772c;font-size:24px;line-height:1}.palace b{font-size:clamp(9px,2.8vw,12px);line-height:1.05;overflow-wrap:anywhere}.palace small{font-size:9px;color:#b45e42}.palace i{font-size:8px;line-height:1.1;font-style:normal;color:#61717a;overflow-wrap:anywhere}.palace-center{grid-area:2/2/4/4;display:grid;align-content:center;justify-items:center;gap:3px;min-width:0;min-height:0;padding:5px;overflow:hidden;background:radial-gradient(circle,#24466b,#001322 73%),none center/cover;color:#fff0bd;text-align:center}.palace-center span{font-size:clamp(35px,11vw,58px);line-height:1;text-shadow:0 0 12px #ffcc67}.palace-center b{font-size:15px;overflow-wrap:anywhere}.palace-center small{font-size:10px;line-height:1.3}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0}.stat-grid>div{min-width:0;min-height:53px;padding:7px 3px;border:1px solid #bd8e57;border-radius:9px;background:linear-gradient(#062a43,#001727);text-align:center}.stat-grid strong{display:block;font-size:12px}.stat-grid small{font-size:9px;color:#f0ca81}
.number-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:5px;align-items:end;padding:8px}.number-form label{min-width:0;color:#18334a;font-size:10px}.number-form input{margin-top:3px}.mini-submit{min-height:36px;padding:4px 7px;border:1px solid #ad7b3e;border-radius:9px;background:#123852;color:#ffdd95;font-size:11px}.demo-note{margin:4px 0 8px;color:#eac586;font-size:10px}.number-profile{display:flex;align-items:center;gap:10px;min-height:90px;padding:7px}.number-portrait{flex:none;width:77px;height:77px;border:1px solid #d39a59;border-radius:50%;background:url('/images/profile-portrait.png') center/cover}.number-profile div{min-width:0}.number-profile small{color:#b27a32;font-size:10px}.number-profile h2{font-size:18px}.number-profile p{font-size:11px}.number-wheel{margin-left:auto;font-size:42px;color:#a76e2e}.numbers-layout{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:6px;align-items:stretch;margin:9px 0}.side-numbers{display:grid;gap:6px}.side-numbers>div{min-width:0;display:grid;justify-items:center;align-content:center;gap:2px;min-height:82px;padding:4px;border:1px solid #bd8a54;border-radius:10px;background:linear-gradient(#123450,#001628);text-align:center}.side-numbers b{font-size:11px}.side-numbers strong{font-size:33px;line-height:1;color:#f8c98a;text-shadow:0 0 6px #da906e}.side-numbers small{font-size:9px}.life-number{text-align:center;min-width:0;padding:0 1px;align-self:center}.life-number>b{font-size:18px;color:#ffe0aa}.life-number>div{display:grid;place-items:center;width:100%;aspect-ratio:1;margin:2px auto;border:2px solid #ffc56e;border-radius:50%;background:radial-gradient(circle,#743760,#332b65 54%,#001b36);box-shadow:0 0 24px #ffa56e99,inset 0 0 19px #db73ac77;font-size:clamp(56px,18vw,83px);color:#ffe8ae;text-shadow:0 0 12px #ffbe86;animation:breath 4s ease-in-out infinite alternate}.life-number strong{display:block;font-size:11px;color:#ffe0a6}.life-number p{margin:3px 0;font-size:9px;line-height:1.25}.number-chart{padding:12px}.number-chart h2{font-size:18px}.bars{height:117px;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;align-items:end;margin-top:8px;border-bottom:1px solid #cda661}.bars>div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;min-width:0}.bars b,.bars small{font-size:10px}.bars span{display:block;width:76%;max-height:73%;min-height:6px;border-radius:5px 5px 0 0;background:linear-gradient(#69caf3,#2e84c8)}.bars .bar-2,.bars .bar-5{background:linear-gradient(#fa9a86,#df6356)}.bars .bar-8{background:linear-gradient(#b88cf0,#875bd1)}.number-chart p{font-size:10px;color:#687681;margin-top:8px}.peaks{position:relative;overflow:hidden}.peaks h2{font-size:17px}.peaks svg{position:absolute;left:10px;right:10px;top:37px;width:calc(100% - 20px);height:48px}.peaks>div{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:8px}.peaks span{display:grid;justify-items:center;gap:2px;min-width:0;text-align:center}.peaks span i{display:grid;place-items:center;width:27px;height:27px;border:1px solid #ffdb98;border-radius:50%;background:#965b28;color:#fff;font-size:14px}.peaks span strong{font-size:24px}.peaks span small{font-size:9px}.number-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:6px}.number-bottom section{padding:10px}.number-bottom h2{font-size:15px}.number-bottom section>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin-top:8px}.number-bottom section>div span{min-width:0;display:grid;justify-items:center}.number-bottom section>div b{font-size:23px;color:#bc5c52}.number-bottom section>div small{font-size:8px;text-align:center}.number-bottom section>strong{font-size:42px;color:#cc372e}.number-bottom section>small{display:block;font-size:9px}
.feng-content{padding-top:0}.compass-scene{display:block;width:min(100%,340px);height:auto;aspect-ratio:1.35;margin:0 auto;border:0;background:transparent}.compass-scene img{display:block;width:100%;height:100%;object-fit:contain}.feng-banner{display:flex;align-items:center;justify-content:center;gap:8px;margin:6px 0 10px;border:1px solid #aa783e;border-radius:28px;background:#022037;color:#ffe0a1;padding:7px;text-align:center}.feng-banner span{font-size:16px}.feng-banner small{display:block;color:#f4e0c1;font-size:10px}.feng-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.feng-grid .feature-tile{aspect-ratio:1.03;text-align:left}.feng-grid .feature-tile b{left:7px;bottom:25px;right:18px;font-size:13px}.feng-grid .feature-tile small{position:absolute;left:7px;right:14px;bottom:6px;color:#fff2d4;font-size:9px;line-height:1.13;overflow-wrap:anywhere}.feng-ruler{position:relative;width:100%;min-height:60px;display:grid;justify-items:end;align-content:center;padding:8px 24px 8px 46%;margin:9px 0;border:1px solid #c18e4d;border-radius:10px;background:linear-gradient(90deg,transparent 0%,#001625d4 60%),url('/images/feng-9.png') center/cover;color:#fff4d0;text-align:left}.feng-ruler b,.feng-ruler span{width:100%}.feng-ruler b{font-size:16px}.feng-ruler span{font-size:10px}.feng-ruler svg{position:absolute;right:6px;top:calc(50% - 9px)}
.hex-page .segmented{margin-bottom:10px}.question-paper{padding:13px}.question-paper label{display:flex;align-items:center;gap:7px;font-weight:bold;font-size:16px}.question-paper textarea{display:block;width:100%;min-height:55px;margin:8px 0;padding:10px;border:1px solid #d9c6ac;border-radius:9px;background:#fffdf7;color:#112b43;resize:vertical;font-size:13px}.question-chips{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.question-chips button{min-height:28px;padding:5px 9px;border:0;border-radius:16px;background:#f2e3c7;color:#152940;font-size:10px}.question-paper .gold-cta{max-width:75%;margin:0 auto -26px}.hex-art{min-height:145px;margin-top:21px;background:url('/images/hex-scene.png') center/cover;border-radius:13px}.hex-result{padding:11px}.hex-result h2{font-size:17px;margin-bottom:7px}.hex-result h3{font-size:16px}.hex-result p{font-size:11px;margin:7px 0}.result-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0;padding:8px;background:#fcf6e9;border-radius:8px}.result-columns>div{text-align:center}.result-columns b{font-size:12px}.result-columns small{display:block;font-size:10px}.hex-lines{display:grid;gap:3px;width:65px;margin:7px auto}.hex-lines>div{display:flex;gap:6px;height:5px}.hex-lines span{flex:1;background:#112d45}.hex-lines .solid span:first-child{display:none}.hex-lines .moving span{background:#c32e35}
.category-scroll{display:flex;gap:5px;overflow:auto;scrollbar-width:none;margin:0 -2px 8px;padding:2px}.category-scroll button{flex:none;min-width:64px;min-height:38px;padding:6px 10px;border:1px solid #c18e55;border-radius:10px;background:#09253c;color:#f8dcaa;font-size:11px}.category-scroll button.on{background:linear-gradient(#fff8e9,#eccc8c);color:#122e47;font-weight:bold}.articles-page .article-card{margin-bottom:8px}.articles-page .section-heading{margin-top:10px}.author-form{display:grid;gap:9px;padding:15px}.author-form h2{font-size:19px}.author-form label{display:grid;gap:5px;font-size:12px;font-weight:bold}.author-form textarea{min-height:112px;resize:vertical}.author-form .check-label{display:flex;align-items:center;gap:7px}.author-form .check-label input{width:16px;min-height:16px}.article-detail{padding:15px}.article-detail img{display:block;width:100%;max-height:195px;object-fit:cover;border-radius:8px}.article-detail h1{margin:11px 0;font-size:23px}.article-detail p{white-space:pre-wrap;font-size:14px;line-height:1.65}.article-detail small,.article-detail footer{font-size:11px;color:#866a44}
.profile-content{margin-top:0}.profile-card{padding:10px}.profile-top{display:grid;grid-template-columns:78px minmax(0,1fr);gap:8px;align-items:center}.profile-top h1{font-size:18px}.profile-top p{font-size:11px;overflow-wrap:anywhere}.profile-top i{font-size:10px}.profile-top>button{grid-column:2;justify-self:start;padding:4px 8px;border:1px solid #d0a36a;border-radius:12px;background:#fff8e8;color:#102e48;font-size:10px}.profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin-top:8px;padding:6px 0;border-radius:8px;background:#f5e7cb}.profile-stats>span{display:grid;justify-items:center;align-content:center;min-width:0;gap:2px;border-right:1px solid #d9b989;text-align:center}.profile-stats>span:last-child{border:0}.profile-stats svg{color:#a87335}.profile-stats small{font-size:8px}.profile-stats b{font-size:9px;overflow-wrap:anywhere}.premium-panel{padding:12px;border:1px solid #b98b4c;border-radius:15px;background:linear-gradient(90deg,#06233bf5,#0a2b42c9),url('/images/member-art.png') center/cover}.premium-panel h2{font-size:17px}.premium-panel>div{display:grid;gap:3px;margin:8px 0 0;padding:9px;border:1px solid #b58b55;border-radius:10px;background:#071e32aa}.premium-panel strong{font-size:16px;color:#ffe2a3}.premium-panel p{font-size:10px}.premium-panel span{font-size:9px;color:#e8bf6d}.premium-panel button{justify-self:start;padding:4px 9px;border:1px solid #d5ab67;border-radius:10px;background:#f4d18c;color:#193249}.profile-group .section-heading{margin:12px 0 6px}.profile-group .section-heading h2{font-size:16px}.profile-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.profile-tiles button{display:grid;justify-items:start;align-content:start;gap:3px;min-width:0;min-height:70px;padding:7px;border:1px solid #d29d59;border-radius:10px;background:linear-gradient(#fffaf0,#f7e8cc);color:#102a40;text-align:left;box-shadow:inset 0 0 0 2px #fff5df}.profile-tiles button>svg:first-child{color:#a96c2a}.profile-tiles button b{font-size:10px;line-height:1.13;overflow-wrap:anywhere}.profile-tiles button small{font-size:8px;line-height:1.2;color:#5a6670}.profile-tiles button>svg:last-child{position:absolute;right:6px;top:50%;display:none}.logout{width:100%;min-height:37px;border:1px solid #b68555;border-radius:9px;background:#13334a;color:#ffe2b2}
.auth-content{padding-top:0}.welcome-choices{display:grid;gap:8px;padding:12px;margin:0 10px 12px}.welcome-choices .gold-cta:first-child{background:linear-gradient(#0b2c46,#001324);color:#ffe2a4}.welcome-choices .gold-cta:first-child>span{color:#f2c67d}.welcome-choices .gold-cta:first-child>i{background:#05263e}.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;min-height:82px;margin:10px 4px}.benefits>div{display:grid;justify-items:center;align-content:center;gap:3px;min-width:0;padding:6px;border-right:1px solid #d7af6e7a;text-align:center}.benefits>div:last-child{border:0}.benefits svg{color:#f5d08c}.benefits b{font-size:12px}.benefits small{font-size:10px}.terms{text-align:center;margin:15px 13px;font-size:10px;color:#f3d9a4}.login-card,.register-card,.recovery-card,.otp-card{padding:16px}.auth-field{display:grid;gap:5px;margin-bottom:11px;color:#172f47;font-size:12px;font-weight:bold}.auth-field>div{display:flex;align-items:center;min-height:49px;border:1px solid #d3b889;border-radius:10px;background:#fffdf7}.auth-field svg:first-child{flex:none;margin:0 11px;color:#102c46}.auth-field input{flex:1;min-width:0;width:100%;min-height:46px;padding:8px 8px 8px 11px;border:0;border-left:1px solid #d7c2a6;outline:0;background:transparent;color:#15314d;font-size:14px}.auth-field input::placeholder{color:#798596}.auth-field .eye{flex:none;width:41px;height:44px;border:0;background:none;color:#183549}.auth-field .eye:empty{display:none}.auth-field .eye svg{margin:0}.remember-row{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;margin:9px 0 17px;color:#142b43;font-size:12px}.remember-row label{display:flex;align-items:center;gap:5px}.remember-row input{accent-color:#17344b}.remember-row button,.auth-switch button,.register-card>p button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#143659;text-decoration:underline;font-size:12px}.login-card .gold-cta{margin-bottom:0}.auth-assurance{display:flex;align-items:center;justify-content:center;gap:5px;margin:14px 0;color:#f8e3c0;font-size:11px}.auth-switch{text-align:center;margin:16px 0 8px;color:#f1d6a8;font-size:12px}.auth-switch button{color:#f8d38d}.register-card{padding:11px}.register-card .form-row{grid-template-columns:minmax(0,31%) minmax(0,1fr);min-height:41px}.register-card .row-control input,.register-card .row-control select{min-height:36px}.register-card .consent{display:flex;gap:6px;align-items:flex-start;margin:12px 0 9px;font-size:11px;color:#192f43}.register-card .consent input{accent-color:#a77432}.register-card>p{margin:9px 0 0;text-align:center;color:#172d43;font-size:12px}.register-card>p button{color:#905616}.recovery-card h2,.otp-card h2{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:20px}.recovery-card .gold-cta{margin-top:10px}.otp-card{margin-top:13px}.otp-card p{font-size:11px;margin-bottom:12px}.otp-frame{position:relative}.otp-frame input{position:absolute;inset:0;z-index:2;width:100%;height:100%;opacity:.01;caret-color:transparent;color:transparent;border:0}.otp-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.otp-boxes span{display:grid;place-items:center;min-width:0;aspect-ratio:1;border:1px solid #d49c4a;border-radius:8px;background:#fffaf0;color:#243549;font-size:20px}.otp-boxes span.filled{border-color:#a16920;background:#fff3d5}.otp-meta{display:flex;justify-content:space-between;align-items:center;gap:4px;flex-wrap:wrap;margin:10px 0;font-size:10px}.otp-meta button{border:0;background:none;color:#143a60;text-decoration:underline;font-size:10px}
.occasion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0}.occasion-grid button{display:grid;justify-items:center;gap:5px;min-height:72px;border:1px solid #cb9b59;border-radius:9px;background:#072940;color:#ffe6b8;font-size:11px}.occasion-grid button span{font-size:30px}.saved-item{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:12px;margin-bottom:7px}.saved-item b{font-size:14px}.saved-item small{display:block;font-size:10px}.saved-item button{border:0;background:none;color:#ac523b;font-size:25px}.toast{position:fixed;z-index:30;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));width:min(92%,400px);transform:translateX(-50%);padding:12px;border:1px solid #e6b164;border-radius:11px;background:#12384f;color:#fff1d2;font:13px/1.4 system-ui,sans-serif;box-shadow:0 6px 25px #000a}.toast.bad{background:#653039}
@keyframes breath{from{transform:scale(1);box-shadow:0 0 15px #ffa56e77}to{transform:scale(1.03);box-shadow:0 0 29px #ffc276bb}}@keyframes orbit{from{transform:rotate(0)}to{transform:rotate(720deg)}}
@media(max-width:360px){:root{--gutter:12px}.hero-top{gap:5px;padding-inline:10px}.hero-top .emblem{width:52px;height:52px}.brand strong{font-size:22px}.brand small{font-size:5px;letter-spacing:.12em}.hero-actions{gap:0}.icon-button{width:25px}.hero-title{margin-left:17px}.hero-title h1{font-size:25px}.today-card strong{font-size:42px}.today-info>b{font-size:11px}.zodiac-row i{font-size:14px}.feature-grid{gap:5px}.feature-tile b{font-size:10px}.feature-tile.tile-small b{font-size:9px}.systems-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.day-details{grid-template-columns:1fr 1fr}.day-details .info-strip:first-child{grid-column:1/-1}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.number-form{grid-template-columns:1fr 1fr}.number-form .mini-submit{grid-column:1/-1}.feng-grid .feature-tile b{font-size:11px}.feng-grid .feature-tile small{font-size:8px}.otp-boxes{gap:6px}}
@media(max-width:380px){.register-card .form-row{grid-template-columns:1fr;gap:3px}.register-card .row-label b{font-size:11px}.register-card .row-control input{font-size:12px}.hero-title p{max-width:250px}.identity-card{grid-template-columns:62px minmax(0,1fr)}.identity-card .portrait{width:60px;height:60px}.identity-wheel{display:none}}
@media(min-width:600px){.shell{border-inline:1px solid #9c733d}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

.history-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:52px;margin-top:7px;padding:7px 10px;border:1px solid #e1cba7;border-radius:9px;background:#fffcf5;color:#14334c;text-align:left}.history-item span{display:grid;gap:2px;min-width:0}.history-item b{font-size:12px;overflow-wrap:anywhere}.history-item small{font-size:10px;color:#6c7480}

/* Decorative images and grid placement are in the stylesheet so strict CSP cannot remove them. */
.asset-art-hex{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-hex.png')}
.asset-art-feng{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-feng.png')}
.asset-art-number{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-number.png')}
.asset-art-analysis{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-analysis.png')}
.asset-art-chart{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-chart.png')}
.asset-art-goodday{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-goodday.png')}
.asset-art-article{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 55%),url('/images/art-article.png')}
.asset-article-scene{background-image:url('/images/article-scene.png')}
.feng-art-1{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-1.png')}
.feng-art-2{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-2.png')}
.feng-art-3{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-3.png')}
.feng-art-4{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-4.png')}
.feng-art-5{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-5.png')}
.feng-art-6{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-6.png')}
.feng-art-7{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-7.png')}
.feng-art-8{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-8.png')}
.feng-art-9{background-image:linear-gradient(0deg,#00101efa,transparent 64%),url('/images/feng-9.png')}
.palace-slot-0{grid-row:1;grid-column:1}
.palace-slot-1{grid-row:1;grid-column:2}
.palace-slot-2{grid-row:1;grid-column:3}
.palace-slot-3{grid-row:1;grid-column:4}
.palace-slot-4{grid-row:2;grid-column:4}
.palace-slot-5{grid-row:3;grid-column:4}
.palace-slot-6{grid-row:4;grid-column:4}
.palace-slot-7{grid-row:4;grid-column:3}
.palace-slot-8{grid-row:4;grid-column:2}
.palace-slot-9{grid-row:4;grid-column:1}
.palace-slot-10{grid-row:3;grid-column:1}
.palace-slot-11{grid-row:2;grid-column:1}
.bar-count-0{height:8%}
.bar-count-1{height:35%}
.bar-count-2{height:60%}
.bar-count-3{height:85%}
.bar-count-4{height:100%}

/* Profile scene follows the reference header proportions without an empty heading. */

/* R24: one contained reading area below the Feng Shui topics. */
.feng-page .feng-grid .feature-tile[aria-pressed="true"],.feng-page .feng-ruler[aria-pressed="true"]{outline:2px solid #f5d78d;outline-offset:2px}
.feng-page .feng-detail{box-sizing:border-box;min-width:0;max-height:min(58vh,530px);margin:11px 0 15px;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;scrollbar-color:#be894c #f6e9d0;scrollbar-width:thin;overflow-wrap:anywhere;background:linear-gradient(145deg,#fffaf0,#f6e9d1);border:2px solid #c99454;border-radius:15px;box-shadow:inset 0 0 0 3px #fff7e5,0 7px 18px #0008}
.feng-page .feng-detail::before,.feng-page .feng-detail::after{display:none}
.feng-detail-head{padding:17px 17px 14px;background:radial-gradient(circle at 90% 0,#f9dfa6,#fff9ed 64%);border-bottom:1px solid #dfc298}
.feng-detail-head small{display:block;margin-bottom:4px;color:#966026;font:700 10px/1.3 system-ui,sans-serif;letter-spacing:.09em}
.feng-page .feng-detail h2{margin:0 0 8px;color:#17324b;font-size:clamp(20px,5vw,25px);line-height:1.2}
.feng-page .feng-detail p{margin:0;color:#273a45;font-size:13px;line-height:1.65;white-space:normal}
.feng-detail-identity{margin:14px 16px 4px;padding:10px 12px;border-left:3px solid #b47b36;border-radius:0 8px 8px 0;background:#efe0c1;color:#24394a;font:600 12px/1.55 system-ui,sans-serif}
.feng-detail-body{padding:2px 16px 19px}
.feng-detail-block{min-width:0;padding:13px 0;border-bottom:1px solid #dcc8a9}
.feng-detail-block:last-of-type{border-bottom:0}
.feng-detail-block h3{margin:0 0 5px;color:#9b5d21;font-size:15px;line-height:1.35}
.feng-detail-note{padding:11px 12px;margin:12px 0 0!important;border-radius:8px;background:#ede2cf;color:#5a5960!important;font-size:11px!important;line-height:1.55!important}
.feng-detail-action{margin:12px 0 0;padding:9px 12px;border:1px solid #ad7b42;border-radius:9px;background:#12364b;color:#ffe3ab;font-size:12px;font-weight:700}
.feng-detail:focus{outline:2px solid #f0c67b;outline-offset:2px}
@media(max-width:360px){.feng-page .feng-detail{max-height:54vh}.feng-detail-head{padding:14px}.feng-detail-identity{margin-inline:14px}.feng-detail-body{padding-inline:14px}}
@media(prefers-reduced-motion:reduce){.feng-page .feng-detail{scroll-behavior:auto}}
.profile-page .hero{min-height:clamp(136px,37vw,160px)}.profile-page .hero-title{display:none}

/* R3: bundled Vietnamese fonts, independent of Android/iOS/Windows defaults. */
@font-face{font-family:"DQ Serif";src:url('/fonts/NotoSerif-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DQ Serif";src:url('/fonts/NotoSerif-Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"DQ Sans";src:url('/fonts/NotoSans-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DQ Sans";src:url('/fonts/NotoSans-Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
body{font-family:"DQ Serif",Georgia,serif;font-synthesis:none}
button,input,textarea,select{font-family:inherit;font-synthesis:none}
.row-control input,.row-control select,.auth-field input,.author-form input,.author-form select,.author-form textarea,.number-form input,.otp-frame input{font-family:"DQ Sans",Arial,sans-serif}
.brand small{font-family:"DQ Sans",Arial,sans-serif}
.article-copy em,.toast{font-family:"DQ Sans",Arial,sans-serif}
.brand strong{font-size:clamp(27px,8.5vw,39px);font-weight:400;letter-spacing:-.03em}
.hero-title h1{font-weight:700}
/* One fixed 4 x 3 zodiac art sheet; Mão is the Vietnamese cat. */
.zodiac{display:inline-block;flex:none;width:33px;height:33px;background-image:url('/images/zodiac-sprite.png');background-size:400% 300%;background-repeat:no-repeat;vertical-align:middle;filter:drop-shadow(0 1px 2px #d8a85c55)}
.zodiac-small{width:27px;height:27px}
.zodiac-0{background-position:0% 0%}.zodiac-1{background-position:33.333% 0%}.zodiac-2{background-position:66.667% 0%}.zodiac-3{background-position:100% 0%}
.zodiac-4{background-position:0% 50%}.zodiac-5{background-position:33.333% 50%}.zodiac-6{background-position:66.667% 50%}.zodiac-7{background-position:100% 50%}
.zodiac-8{background-position:0% 100%}.zodiac-9{background-position:33.333% 100%}.zodiac-10{background-position:66.667% 100%}.zodiac-11{background-position:100% 100%}
.zodiac-row>span{justify-items:center;gap:0}.zodiac-row .zodiac{align-self:end}.zodiac-row b{min-height:19px;display:grid;align-items:center;font-size:clamp(7px,2vw,9px)}
.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.detail-grid>.calendar-info{display:flex;align-items:center;gap:5px;min-height:50px;padding:5px;overflow:hidden;background:#fffaf0}
.detail-grid>.calendar-info:nth-child(2){grid-column:span 2}
.calendar-info-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:6px;background:linear-gradient(#fff8eb,#f4dfba);color:#b57929}
.calendar-info-icon>svg{width:23px;height:23px}.calendar-info-icon .zodiac{width:29px;height:29px}
.calendar-info-copy{display:grid;align-content:center;gap:1px;min-width:0}
.calendar-info-copy small{font-size:clamp(8px,2.1vw,10px);line-height:1.12;color:#263b52}
.calendar-info-copy b{font-size:clamp(9px,2.3vw,11px);line-height:1.13;overflow-wrap:anywhere}
.calendar-info-copy>small:last-child{font-size:8px;color:#6e7781}
.profile-tiles button{position:relative;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;justify-items:start;column-gap:6px;min-height:68px}
.profile-tiles button>svg:first-child{grid-row:1/3;grid-column:1;width:32px;height:32px;padding:4px;border:1px solid #d6aa6f;border-radius:8px;background:linear-gradient(#0b3450,#001b31);color:#ffdfa1}
.profile-tiles button b{grid-row:1;grid-column:2;font-size:10px}
.profile-tiles button small{grid-row:2;grid-column:2;font-size:8px}
@media(max-width:360px){.zodiac-small{width:22px;height:22px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid>.calendar-info:nth-child(2){grid-column:auto}.detail-grid>.calendar-info{min-height:56px}}

.choice-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;min-width:0;border:1px solid #ddcbb1;border-radius:9px;background:#f5e9d4;overflow:hidden}
.choice-row:has(input[name="calendar"]) .choice-group{grid-template-columns:repeat(2,minmax(0,1fr))}
.choice{position:relative;display:grid;min-width:0;min-height:36px;place-items:center;text-align:center}
.choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.choice span{display:grid;place-items:center;width:100%;min-height:36px;padding:4px;border:1px solid transparent;border-radius:8px;color:#172d41;font-size:11px;line-height:1.12}
.choice input:checked+span{border-color:#e8b966;background:linear-gradient(#0b3755,#001b30);box-shadow:inset 0 0 0 1px #f5d78d;color:#ffe2a2;font-weight:700}
.choice input:focus-visible+span{outline:2px solid #eaa84e;outline-offset:-2px}
@media(max-width:360px){.choice span{font-size:10px}}

.demo-notice{margin:5px 0 8px;padding:5px 8px;border:1px solid #b78949;border-radius:8px;background:#102f44;color:#ffe5ae;font-size:10px;text-align:center}
.demo-badge{display:inline-block;padding:2px 5px;border-radius:5px;background:#f3dda9;color:#785120;font:9px/1.2 "DQ Sans",sans-serif;vertical-align:middle}
.palace .animal{display:block;grid-row:span 2;width:36px;height:36px}
.palace .animal .zodiac{width:36px;height:36px}
.palace .palace-branch{color:#bd3840;font-size:clamp(11px,3vw,15px)}
.palace small{font-weight:700;color:#182d43;font-size:clamp(7px,2vw,10px)}
.palace i{margin-top:auto;color:#697586;font-size:8px}
.palace-center{position:relative;isolation:isolate;overflow:hidden;border:2px solid #d19a54;border-radius:50%;box-shadow:inset 0 0 0 4px #001523,0 0 12px #e7b35a77;background:radial-gradient(circle at 50% 47%,#26516a,#001625 74%),none center/cover}
.palace-center>*{position:relative;z-index:1}.palace-center span{filter:drop-shadow(0 0 9px #ffd482)}
@media(max-width:360px){.palace .animal,.palace .animal .zodiac{width:26px;height:26px}.palace i{font-size:7px}}

/* R4: Calendar icon language and phone-safe sizing from references 1–2. */
.calendar-info-icon .calendar-glyph{width:27px;height:27px;filter:drop-shadow(0 1px 1px #9d663b44)}
.calendar-info-icon:has(.glyph-solar){color:#125ca1}
.calendar-info-icon:has(.glyph-lunar){color:#ed1c32}
.calendar-info-icon:has(.glyph-dayseal){color:#e99918}
.calendar-info-icon:has(.glyph-season){color:#129957}
.calendar-info-icon:has(.glyph-duty){color:#f47b1a}
.calendar-info-icon:has(.glyph-star){color:#f49218}
.calendar-info-icon:has(.glyph-sunshine){color:#ff8816}
.calendar-info-icon:has(.glyph-yin){color:#0b2c44}
.calendar-info-icon:has(.glyph-compass){color:#c9832a}
.calendar-info-icon:has(.glyph-lunar,.glyph-star,.glyph-sunshine){background:linear-gradient(#fff8ec,#fff1dc)}
.detail-grid>.calendar-info{min-width:0;min-height:49px}
.calendar-info-copy small,.calendar-info-copy b{min-width:0}
.calendar-info-copy b{word-break:normal;overflow-wrap:anywhere}
.calendar-page .detail-landscape{background-image:linear-gradient(90deg,#0b294155,transparent 60%),none}
.calendar-page .detail-hero{overflow:hidden;border-radius:10px}
.calendar-page .day-details .info-strip{min-width:0;overflow-wrap:anywhere}
.nav-lotus{display:grid;place-items:center;font-size:initial}.nav-lotus svg{filter:drop-shadow(0 0 4px #edbb65)}
@media(max-width:360px){.calendar-info-icon{width:29px;height:29px}.calendar-info-icon .calendar-glyph{width:24px;height:24px}.detail-grid>.calendar-info{padding:4px}.calendar-info-copy b{font-size:9px}}

/* Reference 1 proportions at a 430px logical viewport; compact devices remain scrollable. */
.home-page .hero,.calendar-page .hero{min-height:clamp(181px,45.4vw,196px)}
.home-page .hero-top,.calendar-page .hero-top{min-height:clamp(86px,23.5vw,101px)}
.home-page .hero-top .emblem,.calendar-page .hero-top .emblem{width:clamp(62px,18vw,78px);height:clamp(62px,18vw,78px)}
.home-page .hero-title,.calendar-page .hero-title{margin-top:11px}
.home-page .today-card{min-height:clamp(99px,25.3vw,109px)}
.home-page .feature-tile.tile-small{aspect-ratio:.94}
.home-page .spotlight{min-height:clamp(148px,38.3vw,165px)}
.home-page .bottom-nav,.calendar-page .bottom-nav{height:calc(78px + env(safe-area-inset-bottom))}
.home-page.shell,.calendar-page.shell{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
@media(max-width:360px){.home-page .hero-top,.calendar-page .hero-top{min-height:83px}.home-page .hero-title,.calendar-page .hero-title{margin-top:5px}.home-page .spotlight{min-height:143px}}

/* R5 almanac facts; content grows instead of clipping on narrow phones. */
.calendar-page .day-details{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) minmax(0,1fr)}
.calendar-page .info-strip{min-width:0;border:1px solid #ead6b2}
.calendar-page .info-strip h3{font-size:11px;line-height:1.25}
.calendar-page .info-strip p{margin-top:6px;font-size:10px;line-height:1.34;overflow-wrap:anywhere}
.calendar-page .info-strip>small{display:block;margin-top:7px;font:8px/1.25 "DQ Sans",sans-serif;color:#49616a}
.hour-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin-top:6px}
.hour-chip{display:grid;min-width:0;padding:4px 2px;border:1px solid #e9d4ac;border-radius:5px;background:#fff6e5;text-align:center}
.hour-chip b{font-size:10px}.hour-chip small{font:7px/1.18 "DQ Sans",sans-serif;color:#334a5b;overflow-wrap:anywhere}
.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:7px 0}
.activity-grid section{min-width:0;padding:8px;border-radius:8px;border:1px solid #dbc5a2}
.activity-grid h3{font-size:11px}.activity-grid p{margin-top:3px;font-size:10px;line-height:1.28}
.activity-good{background:#ecf5e9;color:#0b6b43}.activity-bad{background:#fff0ed;color:#b82d38}
/* R28: both activity summaries open full descriptions in place. */
.calendar-page .activity-card{min-width:0;padding:9px;border:1px solid #dbc5a2;border-radius:8px;overflow:hidden}
.calendar-page .activity-card>summary{display:block;list-style:none;cursor:pointer;outline-offset:3px}
.calendar-page .activity-card>summary::-webkit-details-marker{display:none}
.calendar-page .activity-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:11px;line-height:1.25}
.calendar-page .activity-heading b{min-width:0;overflow-wrap:anywhere}
.calendar-page .activity-heading em{white-space:nowrap;font:9px/1.2 "DQ Sans",sans-serif;font-style:normal;text-decoration:underline}
.calendar-page .activity-card[open] .activity-heading em{font-size:0}
.calendar-page .activity-card[open] .activity-heading em::after{content:"Thu gọn";font-size:9px}
.calendar-page .activity-card>summary>small{display:block;margin-top:5px;font:10px/1.35 "DQ Sans",sans-serif;overflow-wrap:anywhere}
.calendar-page .activity-expanded{margin-top:8px;padding-top:8px;border-top:1px solid currentColor;font:10px/1.5 "DQ Sans",sans-serif;overflow-wrap:anywhere}
.calendar-page .activity-expanded p{margin:0 0 6px;font-size:10px;line-height:1.5}
.calendar-page .activity-expanded ul{margin:0;padding-left:17px}.calendar-page .activity-expanded li+li{margin-top:3px}
.almanac-method{padding:5px 7px;color:#546474;font:9px/1.4 "DQ Sans",sans-serif}
@media(max-width:360px){.calendar-page .day-details{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-page .day-details .hours{grid-column:1/-1}.hour-chip small{font-size:8px}.activity-grid{grid-template-columns:1fr}}

/* Almanac details: hours have full line width on mobile. */
.calendar-page .day-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.calendar-page .day-details .hours{grid-column:1/-1}
.calendar-page .hour-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.calendar-page .hour-chip{min-width:0;padding:5px 4px;text-align:center}
.calendar-page .hour-chip small{display:block;white-space:nowrap;font-size:9px}
.calendar-page .detail-landscape{min-width:0}
@media(max-width:340px){.calendar-page .hour-chip small{font-size:8px}}

/* R7: long almanac data stays in flowing cards below the compact day grid. */
.calendar-own-data{margin:7px 2px 0;color:#546474;font:9px/1.45 "DQ Sans",sans-serif}
.calendar-page .hour-chip em{display:block;margin-top:3px;font:8px/1.2 "DQ Sans",sans-serif;color:#8c5a22;font-style:normal;overflow-wrap:anywhere}
.almanac-extra{margin:12px 0 13px}.almanac-extra h2{display:flex;align-items:center;gap:5px;margin:0 0 8px;color:#153a52;font-size:16px}
.almanac-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.almanac-card{min-width:0;padding:11px;border:1px solid #d8c398;border-radius:11px;background:#fff8ec;box-shadow:0 2px 6px #2418070e}
.almanac-card.positive{border-color:#a4d0b1;background:#f2f8ee}.almanac-card.negative{border-color:#e2b8ac;background:#fff2eb}.almanac-card.wide{grid-column:1/-1}
.almanac-card h3{display:flex;align-items:center;gap:5px;margin:0 0 7px;color:#24435a;font-size:12px;line-height:1.3}
.almanac-card p,.almanac-card li,.almanac-card small{font:11px/1.45 "DQ Sans",sans-serif;color:#344b5c;overflow-wrap:anywhere}
.almanac-card p+p{margin-top:6px}.almanac-card ul{margin:0;padding-left:16px}.almanac-card li+li{margin-top:5px}
.almanac-card .unavailable{color:#697d87;font-size:10px}.departure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.departure-row{display:grid;gap:2px;min-width:0;padding:7px;border-radius:7px;background:#f0f4eb}.departure-row.unfavorable{background:#fff0ea}
.departure-row b{font-size:11px}.departure-row small,.departure-row span{font:9px/1.35 "DQ Sans",sans-serif;color:#344b5c;overflow-wrap:anywhere}
@media(max-width:360px){.almanac-card-grid{grid-template-columns:1fr}.almanac-card.wide{grid-column:auto}.departure-grid{grid-template-columns:1fr 1fr}}

/* R8: separate source-attributed suggestions from general day advice. */
/* R26: readable expandable calendar facts and individually attributed sources. */
.calendar-page .detail-grid,.calendar-page .day-details,.calendar-page .almanac-card-grid{min-width:0}
.calendar-page .detail-landscape>small{display:block;margin-top:4px;font:9px/1.3 "DQ Sans",sans-serif;overflow-wrap:anywhere}
.calendar-page .calendar-info{display:block;min-width:0;overflow:hidden}
.calendar-page .calendar-info>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer}
.calendar-page .calendar-info>summary::-webkit-details-marker,.calendar-page .almanac-card>summary::-webkit-details-marker{display:none}
.calendar-page .calendar-info>summary .calendar-info-copy{min-width:0;overflow-wrap:anywhere}
.calendar-page .calendar-info>p{margin:8px 0 0;padding-top:7px;border-top:1px solid #decba9;color:#42596b;font:11px/1.5 "DQ Sans",sans-serif;overflow-wrap:anywhere}
.calendar-page .calendar-info[open]{height:auto;min-height:0}
.calendar-page .dark-hours .hour-chip{background:#f8eef0;border-color:#e6c9ca}
.calendar-page .day-details .dark-hours{grid-column:1/-1}
.calendar-page .almanac-card>summary{display:flex;gap:5px;align-items:center;list-style:none;cursor:pointer;color:#24435a;font-size:12px;line-height:1.35}
.calendar-page .almanac-card>summary>b{flex:1;min-width:0}
.calendar-page .almanac-card>summary>span{white-space:nowrap;font:10px "DQ Sans",sans-serif;color:#8d662e}
.calendar-page .almanac-card[open]>summary>span{font-size:0}
.calendar-page .almanac-card[open]>summary>span::after{content:"Thu gọn";font-size:10px}
.calendar-page .almanac-body{padding-top:9px}
.calendar-page .source-comparison{margin:12px 0;padding:11px;border:1px solid #c8b187;border-radius:11px;background:#faf1dd;color:#314b5a}
.calendar-page .source-comparison>summary{cursor:pointer;font-weight:700}
.calendar-page .source-comparison>summary span{float:right;font:10px "DQ Sans",sans-serif}
.calendar-page .source-comparison>p{font:11px/1.5 "DQ Sans",sans-serif;clear:both;margin:10px 0}
.calendar-page .source-comparison ul{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:10px 0 0;list-style:none}
.calendar-page .calendar-source{display:grid;gap:5px;min-width:0;padding:9px;border:1px solid #dfcdb1;border-radius:8px;background:#fffdf7;font:10px/1.35 "DQ Sans",sans-serif;overflow-wrap:anywhere}
.calendar-page .calendar-source.conflict{border-color:#d49c7e;background:#fff0e8}
.calendar-page .calendar-source.ok{border-color:#a3c8aa;background:#f2f9ef}
.calendar-page .calendar-source small{font:9px/1.3 "DQ Sans",sans-serif}
.calendar-page .calendar-source a{color:#175c78;text-decoration:underline}
.calendar-page .ly-list{display:grid;gap:6px;margin-top:8px}
.calendar-page .ly-row{min-width:0;padding:8px;border-radius:7px;background:#eef7ef;border:1px solid #c6ddc7}
.calendar-page .ly-row.unfavorable{background:#fff0ea;border-color:#e5c8bd}
.calendar-page .ly-row>summary{display:flex;gap:7px;align-items:center;cursor:pointer;list-style:none;font:10px/1.3 "DQ Sans",sans-serif}
.calendar-page .ly-row>summary b{font-size:11px;min-width:105px}
.calendar-page .ly-row>summary span{flex:1;min-width:0;overflow-wrap:anywhere}
.calendar-page .ly-row>summary em{font-style:normal;font-weight:700}
.calendar-page .ly-row p{margin-top:8px}
.calendar-page .ly-verse{font-style:italic;white-space:pre-line}
@media(max-width:600px){.calendar-page .source-comparison ul{grid-template-columns:1fr}.calendar-page .ly-row>summary b{min-width:90px}}
.open-calendar-panel{margin:12px 0;padding:12px;border:1px solid #c5a469;border-radius:11px;background:linear-gradient(140deg,#fff9eb,#f5e8cf)}
.open-calendar-panel h3{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:13px;color:#173951}
.open-calendar-panel>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.open-calendar-panel article{min-width:0;padding:8px;border:1px solid #e2d2b6;border-radius:8px;background:#fffdf7}
.open-calendar-panel article>b{font-size:12px;color:#865c20}.open-calendar-panel p{margin-top:5px;font:10px/1.4 "DQ Sans",sans-serif;color:#344b5c;overflow-wrap:anywhere}
.open-calendar-panel>small{display:block;margin-top:8px;font:9px/1.4 "DQ Sans",sans-serif;color:#566973}
@media(max-width:360px){.open-calendar-panel>div{grid-template-columns:1fr}}

/* R9: screenshot-inspired structural Tử Vi screens; every control remains native. */
.chart-page{background:radial-gradient(circle at 76% 13%,#2443614d,transparent 32%),linear-gradient(180deg,#001322,#001525 58%,#000d1a)}
.chart-page::before{content:'';position:absolute;inset:75px 0 0;z-index:0;pointer-events:none;opacity:.24;background:none center 145px/auto 390px repeat-y}
.chart-page .hero{background-image:linear-gradient(90deg,#00132496,#0013240c 85%),linear-gradient(0deg,#001324 0%,transparent 28%),none;background-size:cover,cover,auto 100%;background-position:center,center,right top}
.chart-page .hero{min-height:188px}
.chart-page .hero-title{max-width:73%;margin:22px 25px 0}
.chart-page .hero-title h1{font-size:clamp(25px,7.5vw,33px)}
.chart-page .hero-title p{font-size:clamp(11px,3vw,13px)}
.chart-page .content{padding-inline:clamp(11px,3vw,16px)}
.chart-page .paper{border-color:#e5aa58;border-radius:15px;background:radial-gradient(circle at 80% 20%,#fffdf9,#fbf1df 75%,#f6e6c9);box-shadow:inset 0 0 0 2px #fff9df,inset 0 0 0 4px #daa05777,0 5px 14px #0008}
.chart-page .chart-paper{padding:8px 14px 11px;margin-top:-2px}
.chart-page .chart-tabbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;border-radius:999px;border:1px solid #dcb979;padding:2px;background:#f3e7d4;box-shadow:inset 0 1px 4px #74562755}
.chart-page .chart-tabbar button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:39px;border:0;border-radius:999px;background:none;color:#1b2d42;font-size:clamp(13px,3.5vw,17px);white-space:nowrap}
.chart-page .chart-tabbar button.active{border:1px solid #f2ca6e;background:linear-gradient(#0b3655,#001626);color:#ffe2a2;box-shadow:0 2px 7px #0007,inset 0 0 0 1px #e4a849}
.chart-page .chart-tabbar button svg{color:#d4a659}
.chart-page .chart-row{display:grid;grid-template-columns:minmax(0,30%) minmax(0,1fr);align-items:center;gap:7px;min-height:39px;padding:4px 1px;border-bottom:1px solid #e8d9c3}
.chart-page .chart-label{display:flex;align-items:center;gap:8px;min-width:0;color:#061e32}.chart-page .chart-label svg{width:23px;height:23px}.chart-page .chart-label b{min-width:0;font-size:clamp(10px,2.9vw,14px);line-height:1.12;font-weight:600;overflow-wrap:anywhere}
.chart-page .chart-control{display:block;min-width:0}.chart-page .chart-control>input{display:block;width:100%;min-width:0;min-height:30px;padding:4px 8px;border:1px solid #dbcdb8;border-radius:8px;background:#fffdf8;color:#12253c;font-size:clamp(11px,2.9vw,14px);color-scheme:light}
.chart-page .chart-control>input::placeholder{color:#879098;opacity:1}
.chart-page .chart-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;overflow:hidden;border:1px solid #e0d3bf;border-radius:9px;background:#f3ecdf}.chart-page .chart-row:has(input[name="calendar"]) .chart-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.chart-page .chart-choices label{position:relative;min-width:0;display:block}.chart-page .chart-choices input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0}.chart-page .chart-choices span{display:flex;align-items:center;justify-content:center;gap:4px;min-height:32px;padding:2px;border:1px solid transparent;border-radius:8px;color:#10283e;font-size:clamp(10px,2.7vw,13px);white-space:nowrap}.chart-page .chart-choices input:checked+span{border-color:#e4b24f;background:linear-gradient(#123b56,#001827);color:#ffe7af;box-shadow:inset 0 0 0 1px #fbdc8b}.chart-page .chart-choices input:focus-visible+span{outline:2px solid #e9a94e;outline-offset:-2px}
.chart-page .chart-unknown{display:grid;grid-template-columns:minmax(0,30%) 38px minmax(0,1fr);gap:7px;align-items:center;padding:6px 1px;min-height:51px}.chart-page .chart-unknown input{appearance:none;width:36px;height:22px;border:1px solid #a39e91;border-radius:30px;background:#b3b5b4;position:relative}.chart-page .chart-unknown input:after{content:'';position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background:white;box-shadow:0 1px 3px #0005;transition:transform .2s}.chart-page .chart-unknown input:checked{background:#c39543}.chart-page .chart-unknown input:checked:after{transform:translateX(14px)}.chart-page .chart-unknown-copy{font-size:clamp(10px,2.6vw,12px);line-height:1.25;color:#1a3043}.chart-page .chart-unknown-copy small{display:block;margin-top:3px;font-size:clamp(9px,2.2vw,10px);color:#636b70}
.chart-page .systems-panel{position:relative;overflow:hidden;min-height:218px;margin-top:8px;padding:12px 9px 10px;border:1px solid #e1b065;border-radius:16px;background:linear-gradient(90deg,#001424 0%,#001424e8 35%,#00142473 75%),url('/images/chart-art.png') right 2px top -32px/47% auto no-repeat,linear-gradient(145deg,#092f48,#001322);box-shadow:inset 0 0 0 2px #dfb97377,0 5px 16px #0009}
.chart-page .systems-head{max-width:66%;min-height:67px}.chart-page .systems-head h2{display:flex;align-items:center;gap:7px;font-size:clamp(18px,5.1vw,25px);color:#ffe7ae;text-shadow:0 1px 5px #000}.chart-page .systems-head h2 svg{color:#f7c669;filter:drop-shadow(0 0 4px #ffc35d)}.chart-page .systems-head p{font-size:clamp(9px,2.5vw,11px);line-height:1.25;color:#f8e7cc}
.chart-page .systems-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-top:4px}.chart-page .systems-grid span{display:flex;align-items:center;gap:3px;min-width:0;min-height:31px;padding:3px;border:1px solid #b89059;border-radius:6px;background:#001a2edb;color:#ffe0a1;text-align:left}.chart-page .systems-grid span svg{width:clamp(14px,4vw,21px);height:clamp(14px,4vw,21px);color:#f1bf67;flex:none}.chart-page .systems-grid span:nth-child(11) svg,.chart-page .systems-grid span:nth-child(12) svg{color:#e64741}.chart-page .systems-grid span:nth-child(14) svg{color:#7fcd70}.chart-page .systems-grid span:nth-child(18) svg{color:#c3a0fa}.chart-page .systems-grid span b{font-size:clamp(7px,1.95vw,9px);line-height:1.07;font-weight:500;overflow-wrap:anywhere}
.chart-page .content>.gold-cta{max-width:82%;min-height:46px;margin:12px auto 10px}
@media(max-width:365px){.chart-page .chart-paper{padding-inline:10px}.chart-page .chart-row{grid-template-columns:minmax(0,32%) minmax(0,1fr)}.chart-page .chart-label{gap:4px}.chart-page .chart-label svg{width:18px;height:18px}.chart-page .chart-unknown{grid-template-columns:32% 34px minmax(0,1fr);gap:5px}.chart-page .systems-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.chart-page .systems-head{max-width:72%}}

.chart-page .chart-control input{font-family:"DQ Sans",Arial,sans-serif}

/* R11: Luận giải uses independent scenery, a full-width hero, and a responsive profile. */
.analysis-page{background:radial-gradient(circle at 84% 12%,#1e52713b,transparent 34%),linear-gradient(180deg,#00182c 0%,#001527 58%,#000d1a 100%)}
.analysis-page::before{inset:110px 0 0;opacity:.075;background:none center 0/100% auto no-repeat}
.analysis-page .analysis-hero{min-height:clamp(126px,32vw,143px);background-image:linear-gradient(90deg,#001321e8 0%,#001321b3 34%,#00132123 76%),linear-gradient(0deg,#00111ff0,transparent 30%),none;background-size:cover,cover,100% auto;background-position:center,center,center 39%;background-repeat:no-repeat;border-bottom:1px solid #ca9854}
.analysis-page .analysis-brand{position:relative;z-index:1;display:flex;align-items:center;gap:8px;min-height:77px;padding:calc(6px + env(safe-area-inset-top)) 12px 2px}
.analysis-page .analysis-brand .emblem{display:block;flex:none;width:70px;height:70px;border-radius:50%;background:url('/images/brand-mark.png') center/cover no-repeat;filter:drop-shadow(0 0 5px #eebf677d)}
.analysis-page .analysis-brand .brand{padding:0;max-width:210px}.analysis-page .analysis-brand .brand strong{font-size:clamp(26px,7.2vw,35px)}.analysis-page .analysis-brand .brand small{font-size:clamp(6px,1.65vw,8px);line-height:1.45;letter-spacing:.17em}
.analysis-page .analysis-heading{position:relative;z-index:1;display:grid;grid-template-columns:30px minmax(0,1fr) 71px;align-items:center;gap:4px;padding:5px 10px 10px;color:#ffe9be;text-shadow:0 2px 5px #000}
.analysis-page .analysis-heading>.icon-button,.analysis-page .analysis-actions .icon-button{width:31px;height:31px;border:1px solid #dba45b;border-radius:50%;background:#001829bb;color:#ffe2a5}
.analysis-page .analysis-heading h1{font-size:clamp(21px,5.6vw,27px);line-height:1.08;white-space:normal}.analysis-page .analysis-heading p{margin-top:4px;font-size:clamp(8px,2.1vw,10px);line-height:1.2;color:#f6dfb9}
.analysis-page .analysis-actions{display:flex;gap:4px;align-items:center;justify-content:flex-end}
.analysis-page .analysis-content{padding-inline:clamp(10px,2.8vw,14px);padding-top:3px}
.analysis-page .paper{overflow:hidden;border-radius:13px;background-color:#fbf2e2}
.analysis-page .identity-card::before,.analysis-page .identity-card::after{z-index:0}.analysis-page .identity-card>*{position:relative;z-index:1}
.analysis-page .portrait{aspect-ratio:1;width:100%;max-width:97px;border:2px solid #d9a04c;box-shadow:0 0 0 2px #fff2cf,0 2px 8px #72400f70;background-image:url('/images/profile-portrait.png')}
.analysis-page .identity-copy{min-width:0}.analysis-page .identity-copy h2{display:flex;align-items:center;gap:4px;font-size:clamp(15px,4.1vw,21px);line-height:1.15;overflow-wrap:anywhere}
.analysis-page .identity-copy p{display:flex;align-items:flex-start;gap:5px;margin:3px 0;font-size:clamp(9px,2.35vw,12px);line-height:1.14}.analysis-page .identity-copy p svg{flex:none;width:14px;height:14px;color:#172e48}.analysis-page .identity-copy p span{min-width:0;overflow-wrap:anywhere}
.analysis-page .identity-copy .edit-profile{display:inline-grid;place-items:center;flex:none;width:22px;height:22px;min-height:22px;padding:0;border:0;background:transparent;color:#bb7625}
.analysis-page .identity-side{align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.analysis-page .identity-side>button{min-height:25px;width:100%;padding:2px 3px;border:1px solid #cf9444;background:linear-gradient(#052741,#001827);color:#ffe9bb;font-size:clamp(8px,2vw,10px);line-height:1;white-space:normal;text-align:center}
.analysis-page .identity-side>button svg{width:11px;height:11px}
.analysis-page .identity-wheel{position:relative;display:grid;place-items:center;flex:none;width:clamp(58px,18vw,79px);height:clamp(58px,18vw,79px);border:2px solid #daa753;border-radius:50%;background:linear-gradient(#57256f93,#21104d9d),url('/images/feng-compass.png') center/139% auto no-repeat;color:#efbe68;box-shadow:0 0 0 2px #211635,0 0 8px #9462a2aa,inset 0 0 8px #1c092a}
.analysis-page .identity-wheel svg{width:33px;height:33px;filter:drop-shadow(0 1px 3px #111)}
.analysis-page .analysis-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;min-height:36px;margin:8px 0 7px;padding:2px;border:1px solid #d8a65b;border-radius:13px;background:linear-gradient(180deg,#0b2e45,#001625);box-shadow:inset 0 0 0 1px #d6a05244,0 3px 9px #0009;overflow:hidden}
.analysis-page .analysis-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:30px;padding:2px 3px;border:1px solid transparent;border-radius:10px;background:transparent;color:#f6e4bf;font-size:clamp(8px,2.55vw,12px);line-height:1.1;white-space:nowrap;text-shadow:0 1px 3px #0008;transition:background .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease}
.analysis-page .analysis-tabs button:not(.active):not(:last-child){border-right-color:#ba874966}
.analysis-page .analysis-tabs button svg{flex:none;width:clamp(14px,4vw,18px);height:clamp(14px,4vw,18px);color:#d8b46f}
.analysis-page .analysis-tabs button.active{z-index:1;border:1px solid #d39844;border-radius:11px;background:linear-gradient(160deg,#fff9e6 0%,#f8e8c3 38%,#eec57e 100%);box-shadow:inset 0 0 0 1px #fffdf3,inset 0 -2px 5px #bd7c2666,0 0 8px #eab96d88,0 2px 4px #0008;color:#132840;font-weight:700;text-shadow:none}
.analysis-page .analysis-tabs button.active svg{color:#b77a29;filter:drop-shadow(0 1px 1px #fff)}
.analysis-page .analysis-tabs button:not(.active):hover{border-color:#a77b4877;border-radius:10px;background:#19405980;color:#fff2d6}
.analysis-page .analysis-tabs button:active{transform:scale(.97)}
.analysis-page .narrative-art.art-career{background-image:url('/images/art-scholar.png')}.analysis-page .narrative-art.art-finance{background-image:url('/images/art-feng.png')}.analysis-page .narrative-art.art-love{background-image:url('/images/art-goodday.png')}
@media(prefers-reduced-motion:reduce){.analysis-page .analysis-tabs button{transition:none}}
.analysis-page .narrative-panel,.analysis-page .timeline{border:2px solid #d49a49;background-image:radial-gradient(circle at 80% 12%,#fffefa,#fbf2df 76%,#f6e3c3)}
.analysis-page .narrative-layout{display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);align-items:stretch;gap:10px}.analysis-page .narrative-art{min-height:80px;aspect-ratio:2.14;border:1px solid #d3a360;border-radius:8px;background:url('/images/article-scene.png') center/cover no-repeat}
.analysis-page .narrative-layout>div{min-width:0}.analysis-page .narrative-layout h3{font-size:clamp(12px,3.2vw,16px);line-height:1.17}.analysis-page .narrative-layout p{font-size:clamp(9px,2.4vw,11px);line-height:1.25;overflow-wrap:anywhere}
.analysis-page .narrative-tags{gap:5px;margin-top:7px}.analysis-page .narrative-tags span{min-height:23px;gap:4px;border-radius:7px;background:#f6e8ce;font-size:clamp(8px,2vw,10px);white-space:normal;text-align:center;line-height:1.1}.analysis-page .narrative-tags svg{flex:none;width:15px;height:15px;color:#c68130}
.analysis-page .timeline button{grid-template-columns:minmax(55px,21%) minmax(56px,23%) minmax(0,1fr) 13px;gap:6px;min-height:58px;margin-bottom:5px;padding:4px;border:1px solid #f0ddbf;border-radius:9px;background:linear-gradient(90deg,#fffdf9,#fff9ed);box-shadow:0 1px 3px #aa783e48}.analysis-page .timeline button:last-child{margin-bottom:0}
.analysis-page .timeline-art{height:50px;min-height:50px;border-radius:7px;background-position:center;background-size:cover}.analysis-page .timeline-name{min-width:0}.analysis-page .timeline-name b{font-size:clamp(11px,3vw,15px)}.analysis-page .timeline-name small{margin-top:4px;font-size:clamp(9px,2.2vw,11px)}.analysis-page .timeline-description{font-size:clamp(8px,2.05vw,10px);line-height:1.2;overflow-wrap:anywhere}
.analysis-page .analysis-ask{display:grid;grid-template-columns:66px minmax(0,1fr);gap:5px;align-items:end;min-height:83px;margin:0 0 9px;padding:8px 9px;border:1px solid #e8b56c;border-radius:13px;background:linear-gradient(95deg,#00172a,#072943ed),none center 60%/cover no-repeat}
.analysis-page .oracle-bot{position:relative;align-self:end;width:57px;height:56px;margin-left:3px;border:3px solid #e9b458;border-radius:22px 22px 17px 17px;background:radial-gradient(ellipse at 50% 46%,#174a77,#011a34 75%);box-shadow:0 0 0 3px #80602c,0 0 12px #f2c35c91}
.analysis-page .oracle-bot::before{content:'';position:absolute;left:23px;top:-14px;width:7px;height:9px;border-radius:5px;background:#efbe6c;box-shadow:0 -4px 0 2px #d59b3d}.analysis-page .oracle-bot::after{content:'';position:absolute;left:17px;bottom:7px;width:19px;height:3px;border-radius:4px;background:#83d5fa;box-shadow:0 0 5px #59bafe}
.analysis-page .bot-eye{position:absolute;top:17px;width:8px;height:10px;border-radius:50%;background:#78d7ff;box-shadow:0 0 7px #59c6ff}.analysis-page .bot-eye-left{left:13px}.analysis-page .bot-eye-right{right:13px}
.analysis-page .ask-copy{min-width:0}.analysis-page .analysis-ask h3{display:flex;align-items:center;gap:5px;font-size:clamp(14px,3.7vw,18px)}.analysis-page .analysis-ask h3 small{padding:2px 5px;border:1px solid #c39655;border-radius:10px;color:#f7d993;font:8px/1.2 'DQ Sans',sans-serif;white-space:nowrap}.analysis-page .analysis-ask p{margin:3px 0 5px;font-size:clamp(9px,2.3vw,11px)}
.analysis-page .ask-field{display:flex;align-items:center;min-width:0;min-height:31px;border:1px solid #d49a4e;border-radius:99px;background:#fff7e9;box-shadow:inset 0 1px 4px #715b4166}.analysis-page .ask-field input{width:100%;min-width:0;min-height:29px;padding:5px 9px;border:0;outline:none;background:transparent;color:#142d44;font-size:11px}.analysis-page .ask-field button{display:grid;place-items:center;flex:none;width:31px;height:29px;margin:0;border:1px solid #f9db9a;border-radius:50%;background:linear-gradient(#f7c87b,#b1772b);color:#fff9e7}
@media(max-width:370px){.analysis-page .analysis-brand .emblem{width:59px;height:59px}.analysis-page .analysis-brand{min-height:66px}.analysis-page .analysis-hero{min-height:123px}.analysis-page .analysis-heading{grid-template-columns:27px minmax(0,1fr) 64px;padding-inline:7px;gap:3px}.analysis-page .analysis-heading>.icon-button,.analysis-page .analysis-actions .icon-button{width:29px;height:29px}.analysis-page .identity-card{grid-template-columns:66px minmax(0,1fr) 56px;gap:4px;padding:7px}.analysis-page .identity-wheel{width:52px;height:52px}.analysis-page .identity-copy p{font-size:9px}.analysis-page .analysis-tabs button{flex-direction:row;gap:2px;min-height:33px;padding-inline:1px;font-size:8px}.analysis-page .analysis-tabs button svg{width:14px;height:14px}.analysis-page .narrative-layout{grid-template-columns:43% minmax(0,1fr);gap:6px}.analysis-page .timeline button{grid-template-columns:54px 58px minmax(0,1fr) 11px;gap:4px}.analysis-page .timeline-art{height:54px}.analysis-page .analysis-ask{grid-template-columns:51px minmax(0,1fr)}.analysis-page .oracle-bot{transform:scale(.77);transform-origin:bottom left}}

/* R10: three editable screens corresponding to reference images 5, 6 and 7. */
.palaces-page,.number-page,.feng-page{background:radial-gradient(circle at 70% 3%,#1b45605e,transparent 26%),linear-gradient(180deg,#00192e,#001322 56%,#000e1c)}
.palaces-page .content,.number-page .content,.feng-page .content{padding-inline:clamp(10px,2.8vw,16px)}
.palaces-page .palace-hero{min-height:126px;background-image:linear-gradient(0deg,#001424 0%,#00142400 37%),linear-gradient(90deg,#0015278c,transparent 80%),none;background-size:cover,cover,auto 125%;background-position:center,center,right 39%;background-repeat:no-repeat}
.palace-hero-top{position:relative;z-index:1;display:flex;align-items:center;gap:8px;padding:calc(13px + env(safe-area-inset-top)) 12px 0;color:#ffe0a0;text-shadow:0 2px 6px #000}
.palace-hero-top .emblem{display:block;flex:none;width:66px;height:66px;border-radius:50%;background:url('/images/brand-mark.png') center/cover;filter:drop-shadow(0 0 5px #e8b65b)}
.palace-hero-top>div{min-width:0;flex:1}.palace-hero-top h1{font-size:clamp(26px,7.2vw,35px);font-weight:400;line-height:1.04;white-space:nowrap}.palace-hero-top p{margin-top:3px;font:600 clamp(6px,1.8vw,8px)/1.45 "DQ Sans",sans-serif;letter-spacing:.12em}.palace-hero-top>.icon-button:last-child{align-self:flex-start;margin-left:auto}
.palaces-page .palace-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:5px 1px 8px}.palace-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:36px;border:1px solid #c39556;border-radius:12px;background:linear-gradient(#092c45,#001628);color:#f7ebcf;font-size:clamp(11px,3.1vw,15px);white-space:nowrap}.palace-tabs button.active{background:linear-gradient(#fff2cf,#e7bc70);color:#172b3b;box-shadow:inset 0 0 0 2px #fff8dc,0 0 8px #edb76788}.palace-tabs button.active svg{color:#84551a}
.palaces-page .palace-grid{gap:1px;width:100%;aspect-ratio:.93;padding:1px;border:1px solid #efc37c;border-radius:12px;background:#c88a3e;box-shadow:0 0 14px #e4a64855;grid-template-rows:repeat(4,minmax(0,1fr))}
.palaces-page .palace{display:flex;flex-direction:column;gap:1px;min-width:0;min-height:0;padding:clamp(3px,.9vw,5px);border:1px solid #c99a5b;border-radius:9px;background:linear-gradient(146deg,#fffdf5,#fbefd9);color:#112a40;box-shadow:inset 0 0 0 1px #fff9e9;overflow:hidden;text-align:left}
.palaces-page .palace-head{display:flex;align-items:center;gap:2px;min-width:0}.palaces-page .palace-head>span:nth-child(2){display:grid;min-width:0}.palaces-page .palace .animal{display:block;flex:none;width:clamp(21px,6vw,28px);height:clamp(21px,6vw,28px)}.palaces-page .palace .animal .zodiac{width:100%;height:100%}.palaces-page .palace .palace-branch{color:#b92f2f;font-size:clamp(10px,3vw,14px);line-height:1}.palaces-page .palace small{color:#17324a;font-size:clamp(6px,1.8vw,8px);line-height:1.1;font-weight:700;overflow-wrap:anywhere}.palaces-page .palace-head em{align-self:start;margin-left:auto;flex:none;padding:1px 3px;border-radius:50%;background:#fffaf0;color:#1d3041;font:8px/1.2 "DQ Sans",sans-serif}
.palaces-page .palace-stars{display:grid;align-content:center;gap:1px;min-width:0;flex:1;border-top:1px solid #ead6ae;border-bottom:1px solid #ead6ae;margin:2px 0;padding:2px 0}.palaces-page .palace-stars>span{display:flex;align-items:center;gap:2px;min-width:0;white-space:nowrap;font:clamp(7px,1.85vw,9px)/1.1 "DQ Sans",sans-serif}.palaces-page .palace-stars i{display:block;flex:none;width:4px;height:4px;border-radius:50%;background:#db4b39}.palaces-page .palace-stars>span:nth-child(2) i{background:#1b75b9}.palaces-page .palace-stars>span:nth-child(3) i{background:#229268}.palaces-page .palace-stars b{margin-left:auto;color:#866a4b;font-weight:400}.palaces-page .palace-foot{display:flex;justify-content:space-between;gap:1px;font:clamp(6px,1.6vw,8px)/1.05 "DQ Sans",sans-serif;color:#435269}.palaces-page .palace-foot span:last-child{text-align:right}
.palaces-page .palace-center{grid-area:2/2/4/4;display:grid;align-content:center;justify-items:center;gap:4px;min-width:0;min-height:0;margin:2px;overflow:hidden;border:2px solid #e3b767;border-radius:50%;background:linear-gradient(#00172842,#0017287a),none center/auto 100% no-repeat;color:#fff0c1;box-shadow:inset 0 0 0 3px #062137,0 0 14px #e5ad5c99;text-align:center}.palaces-page .palace-center:before{content:'';position:absolute;inset:6px;border:1px solid #f6cb79;border-radius:50%;pointer-events:none}.palaces-page .palace-center .palace-yin{display:grid;place-items:center;width:42px;height:42px;margin:0;color:#f6d392;filter:drop-shadow(0 0 8px #ffd079)}.palaces-page .palace-center .palace-yin svg{width:38px;height:38px}.palaces-page .palace-center b{max-width:96%;font-size:clamp(15px,4.4vw,21px);line-height:1.08;overflow-wrap:anywhere}.palaces-page .palace-center small{font-size:clamp(8px,2.05vw,10px);line-height:1.25;color:#fff1ce}.palaces-page .palace-center>i{font:700 7px/1 "DQ Sans",sans-serif;letter-spacing:.13em;color:#f8d27b}
.palaces-page .demo-notice{margin:5px 2px;font:10px/1.2 "DQ Sans",sans-serif;color:#f4d59e}
.palace-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:8px 0}.palace-stats>div{display:grid;grid-template-columns:25px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;column-gap:3px;min-width:0;min-height:52px;padding:4px;border:1px solid #cd9853;border-radius:9px;background:linear-gradient(#092e46,#001a2b);box-shadow:inset 0 0 0 1px #d6a15655}.palace-stats>div>span{grid-row:span 2;display:grid;place-items:center;width:24px;height:24px;border:1px solid #e5b76a;border-radius:50%;color:#f8d28a}.palace-stats b{font-size:clamp(8px,2.2vw,11px);line-height:1.08;overflow-wrap:anywhere}.palace-stats small{font-size:clamp(7px,1.9vw,9px);line-height:1.12;color:#f4d18d}
.palace-fortune{padding:6px;border:1px solid #d8a65d;border-radius:12px;background:linear-gradient(#123650df,#001a2bdc),none center/cover;box-shadow:inset 0 0 0 2px #ffc96944}.palace-fortune h2{display:flex;align-items:center;gap:5px;margin-bottom:5px;color:#fff2d1;font-size:clamp(14px,4vw,18px)}.palace-fortune h2 svg{color:#e8b25c}.palace-fortune>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.palace-fortune button{display:grid;grid-template-columns:22px minmax(0,1fr) 12px;grid-template-rows:auto auto;align-items:center;gap:1px 2px;min-height:51px;padding:4px;border:1px solid #ebd5b0;border-radius:8px;background:linear-gradient(#fffcf4,#f8ecd4);color:#132b41;text-align:left}.palace-fortune button>span{grid-row:span 2;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#9c6b2c;color:#fff3cc}.palace-fortune button>b{font-size:clamp(8px,2.2vw,11px);line-height:1.08}.palace-fortune button>small{font-size:clamp(7px,1.8vw,8px);line-height:1.12}.palace-fortune button>svg{grid-column:3;grid-row:1/3}.palace-selection{margin-top:8px}
.number-page .number-hero{position:relative;display:flex;align-items:flex-start;gap:9px;min-height:112px;padding:calc(14px + env(safe-area-inset-top)) 17px 14px;overflow:hidden;background:linear-gradient(0deg,#001425,transparent 42%),linear-gradient(90deg,#001324bd,transparent 80%),none right 42%/auto 160% no-repeat}.number-hero>div{position:relative;z-index:1;flex:1}.number-hero h1{font-size:clamp(27px,8vw,37px);color:#ffe5ab;font-weight:400}.number-hero p{margin-top:5px;font-size:clamp(11px,3vw,14px);line-height:1.22;color:#fff2df}.number-hero .icon-button{position:relative;z-index:1;color:#ffd995}
.number-page .number-profile{display:grid;grid-template-columns:clamp(68px,22vw,94px) minmax(0,1fr) 69px;gap:9px;align-items:center;min-height:106px;padding:8px;margin-bottom:4px;background:linear-gradient(100deg,#fffdf4,#f9ecd2)}.number-page .number-portrait{width:100%;height:auto;aspect-ratio:1;background:url('/images/profile-portrait.png') center/cover;border:2px solid #d7a259}.number-page .number-profile div{min-width:0}.number-page .number-profile small{font-size:clamp(8px,2.4vw,11px);color:#9a661f;font-weight:700}.number-page .number-profile h2{font-size:clamp(16px,4.2vw,21px);line-height:1.12;overflow-wrap:anywhere}.number-page .number-profile p{display:flex;align-items:center;gap:4px;margin-top:7px;font-size:clamp(10px,2.6vw,12px)}.number-page .number-wheel{display:grid;place-items:center;width:63px;height:63px;margin:0;border:2px solid #b77c2a;border-radius:50%;background:radial-gradient(circle,#4e3457,#0d2b41 70%);color:#f4cf81;box-shadow:0 0 8px #c79348}
.number-edit{margin:0 0 4px;color:#f6d99d}.number-edit summary{cursor:pointer;padding:1px 6px;font-size:10px;text-align:right;list-style:none}.number-edit summary::-webkit-details-marker{display:none}.number-edit summary svg{color:#dba35a}.number-page .number-form{margin-top:4px}.number-page .number-form label{font-size:10px}
.number-page .numbers-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.48fr) minmax(0,1fr);gap:6px;align-items:stretch;margin:4px 0 8px}.number-page .side-numbers{gap:5px}.number-page .side-numbers>div{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:0 3px;min-width:0;min-height:74px;padding:5px;border:1px solid #c79a5c;border-radius:11px;background:linear-gradient(#092d46,#001829);text-align:center}.number-page .side-numbers span{grid-row:1/3;display:grid;place-items:center;width:27px;height:27px;border:1px solid #dfb871;border-radius:50%;color:#f8c79e;box-shadow:0 0 7px #cc7b5688}.number-page .side-numbers b{align-self:center;font-size:clamp(9px,2.5vw,12px)}.number-page .side-numbers strong{grid-column:2;font-size:clamp(25px,7vw,33px);line-height:.98}.number-page .side-numbers small{grid-column:1/-1;font-size:clamp(8px,2vw,10px);line-height:1.1}.number-page .side-numbers>div:first-child strong{color:#f5a7e5}.number-page .side-numbers>div:last-child strong{color:#88ccf2}.number-page .numbers-layout>.side-numbers:last-child>div:first-child strong{color:#ffe19a}.number-page .numbers-layout>.side-numbers:last-child>div:last-child strong{color:#8ddaa8}
.number-page .life-number{display:grid;align-content:center;justify-items:center;gap:3px;min-width:0;padding:1px 0}.number-page .life-number>b{font-size:clamp(13px,3.5vw,17px);white-space:nowrap}.number-page .life-number>div{display:grid;place-items:center;width:min(100%,141px);aspect-ratio:1;margin:0;border:2px solid #efb673;border-radius:50%;background:radial-gradient(circle,#a85381,#3d2858 54%,#001e36);color:#fff0b4;box-shadow:0 0 24px #ff9e6980,inset 0 0 16px #e279ae77;font-size:clamp(55px,17vw,82px);line-height:1;text-shadow:0 0 13px #ffcd8f;animation:breath 4s ease-in-out infinite alternate}.number-page .life-number strong{display:block;max-width:100%;padding:2px 5px;border:1px solid #d9a65e;border-radius:99px;background:#062339;color:#ffe6ac;font-size:clamp(8px,2.4vw,11px);line-height:1.1}.number-page .life-number p{font-size:clamp(7px,1.9vw,9px);line-height:1.15;margin:0;text-align:center}
.number-page .number-chart{padding:8px 10px}.number-page .number-chart h2{display:flex;align-items:center;gap:5px;font-size:clamp(16px,4.2vw,20px)}.number-page .number-chart h2 svg{color:#bd8435}.number-chart-layout{display:grid;grid-template-columns:minmax(0,59%) minmax(0,1fr);gap:8px;align-items:stretch}.number-page .bars{height:92px;margin-top:7px;gap:3px}.number-page .bars b,.number-page .bars small{font-size:clamp(7px,2vw,10px)}.number-page .bars span{width:80%}.number-chart-copy{padding:4px 0}.number-chart-copy h3{font-size:clamp(11px,3vw,15px)}.number-chart-copy p{font-size:clamp(8px,2.2vw,10px);line-height:1.2;color:#3e4c5b;margin:4px 0}.number-chart-copy a{display:flex;align-items:center;justify-content:center;gap:3px;min-height:24px;border:1px solid #e6b664;border-radius:99px;background:linear-gradient(#fff3ca,#e9bc71);color:#182d40;text-decoration:none;font-size:clamp(8px,2.3vw,10px)}
.number-page .peaks{min-height:136px;margin-top:8px;padding:9px;border:1px solid #daa762;background:linear-gradient(#001628d9,#001628d9),none center/cover}.number-page .peaks h2{font-size:clamp(16px,4.4vw,20px)}.number-page .peaks>p{margin:2px 0;font-size:clamp(8px,2vw,10px)}.number-page .peaks svg{top:40px;height:42px}.number-page .peaks>div{margin-top:4px}.number-page .peaks span{gap:2px;min-height:86px;border-right:1px solid #c4975355}.number-page .peaks span:last-child{border:0}.number-page .peaks span i{width:26px;height:26px;background:#a25f27;box-shadow:0 0 8px #eeb96d;font-style:normal}.number-page .peaks span:nth-child(2) i{background:#14549c}.number-page .peaks span:nth-child(3) i{background:#743398}.number-page .peaks span strong{font-size:clamp(21px,6vw,28px);color:#ffe0a6}.number-page .peaks span small{font-size:clamp(8px,2vw,10px);line-height:1.1}
.number-page .number-bottom{grid-template-columns:1.6fr 1fr;gap:7px;margin-top:8px}.number-page .number-bottom section{min-width:0;min-height:110px;padding:8px;border:1px solid #d7a35d}.number-page .number-bottom h2{font-size:clamp(13px,3.5vw,17px)}.number-page .number-bottom section>p{margin:3px 0;font-size:clamp(8px,2vw,10px)}.number-page .number-bottom section>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;margin-top:5px;padding:5px;border-radius:7px;background:#fff7e8}.number-page .number-bottom section>div span{min-width:0;color:#24364b}.number-page .number-bottom section>div b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#c44843;color:#fff;font-size:16px;box-shadow:0 0 4px #e98b83}.number-page .number-bottom section>div span:nth-child(2) b{background:#1a7dbd}.number-page .number-bottom section>div span:nth-child(3) b{background:#208b65}.number-page .number-bottom section>div span:nth-child(4) b{background:#8549ac}.number-page .number-bottom section>div small{font-size:clamp(7px,1.9vw,9px);line-height:1.1}.number-page .number-year{display:grid;align-content:start;text-align:center}.number-page .number-year>small{font-size:10px}.number-page .number-year>strong{font-size:clamp(36px,10vw,50px);line-height:1;color:#f8d587}.number-page .number-year details{margin-top:5px}.number-page .number-year summary{cursor:pointer;border-radius:99px;background:#f3c773;color:#1d2c3d;padding:4px 3px;font-size:clamp(8px,2.2vw,10px)}.number-page .number-year details p{font-size:9px;margin:3px 0}
.feng-page .hero{min-height:178px;background-size:cover,cover,auto 120%;background-position:center,center,right 44%}.feng-page .hero-title{max-width:65%;margin-top:19px}.feng-page .hero-title h1{font-size:clamp(25px,7vw,33px)}.feng-page .hero-title p{font-size:clamp(11px,3vw,14px)}.feng-page .feng-content{padding-top:0;background:linear-gradient(#00132200 0%,#00132290 34%,#001322 64%),none right -10px/auto 430px no-repeat}.feng-page .compass-scene{display:block;width:100%;max-width:430px;aspect-ratio:510/399;margin:-8px auto 0;border:0;background:none;filter:drop-shadow(0 0 10px #c98b4090)}.feng-page .compass-scene img{object-fit:contain}.feng-page .feng-banner{min-height:41px;margin:1px 0 8px;padding:5px;border-color:#c39a5c;border-radius:999px;background:linear-gradient(#092e46,#001729);color:#f4d79e}.feng-page .feng-banner span{font-size:clamp(13px,3.6vw,17px);line-height:1.1}.feng-page .feng-banner small{font-size:clamp(9px,2.3vw,11px);margin-top:2px}.feng-page .feng-grid{gap:6px}.feng-page .feng-grid .feature-tile{aspect-ratio:1.02;border-radius:13px;box-shadow:inset 0 0 0 2px #e6b97288,0 3px 8px #0007}.feng-page .feng-grid .feature-tile b{left:7px;right:17px;bottom:23px;font-size:clamp(11px,3vw,14px)}.feng-page .feng-grid .feature-tile small{left:7px;right:17px;bottom:5px;font-size:clamp(8px,2.15vw,10px);line-height:1.13}.feng-page .feng-ruler{min-height:61px;margin:7px 0 9px;border-radius:12px;padding-left:58%;background:linear-gradient(90deg,#00172600 26%,#001726e5 59%),url('/images/feng-9.png') left center/cover}.feng-page .feng-ruler b{font-size:clamp(13px,3.5vw,17px)}.feng-page .feng-ruler span{font-size:clamp(9px,2.4vw,11px)}
@media(max-width:360px){.palace-hero-top .emblem{width:48px;height:48px}.palace-hero-top h1{font-size:23px}.palace-hero-top p{font-size:5px}.palaces-page .palace-tabs button{font-size:10px}.palaces-page .palace-grid{aspect-ratio:.84}.palaces-page .palace-stars>span{font-size:7px}.palaces-page .palace-foot{font-size:6px}.palace-stats>div{grid-template-columns:1fr;text-align:center;justify-items:center}.palace-stats>div>span{grid-row:auto}.number-page .number-profile{grid-template-columns:66px minmax(0,1fr) 50px}.number-page .number-wheel{width:49px;height:49px}.number-page .number-wheel svg{width:40px;height:40px}.number-page .side-numbers>div{grid-template-columns:1fr;padding:3px}.number-page .side-numbers span{grid-row:auto;width:23px;height:23px;justify-self:center}.number-page .side-numbers strong{grid-column:1}.number-page .side-numbers small{grid-column:1}.number-page .number-chart-layout{grid-template-columns:1fr}.number-page .bars{height:75px}.feng-page .feng-grid{gap:4px}.feng-page .feng-grid .feature-tile b{font-size:10px}.feng-page .feng-grid .feature-tile small{font-size:8px}}

/* R13: aligned interpretation tags and live assistant */
.analysis-page .narrative-tags{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(3px,1.5vw,8px);margin-top:10px}.analysis-page .narrative-tags span{min-width:0;display:flex;align-items:center;justify-content:center;gap:3px;min-height:29px;padding:3px 2px;border:1px solid #edd5ac;border-radius:8px;background:linear-gradient(#fff9e8,#f7e9cd);box-shadow:0 1px 2px #af88463d;font:clamp(7px,1.95vw,10px)/1.17 'DQ Sans',sans-serif;overflow-wrap:anywhere}.analysis-page .narrative-tags svg{width:clamp(11px,3.4vw,16px);height:clamp(11px,3.4vw,16px)}.analysis-page .analysis-ask{align-items:center;grid-template-columns:58px minmax(0,1fr);gap:7px;min-height:120px}.analysis-page .ask-suggestions{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px}.analysis-page .ask-suggestions button{min-height:24px;padding:3px 7px;border:1px solid #b38b54;border-radius:99px;background:#143b50;color:#f8e0ac;font:9px 'DQ Sans',sans-serif}.analysis-page .ai-result,.analysis-page .ai-loading{grid-column:1/-1;min-width:0;padding:10px;border:1px solid #bd995c;border-radius:9px;background:#092b3e;color:#fff0c6;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.55 'DQ Sans',sans-serif}.analysis-page .ai-result b{color:#f7c974}.analysis-page .ai-result p{margin-top:6px;font-size:12px}.analysis-page .ask-field button:disabled{opacity:.5}@media(max-width:350px){.analysis-page .analysis-ask{grid-template-columns:45px minmax(0,1fr)}.analysis-page .ask-suggestions button{font-size:8px;padding-inline:5px}}

.analysis-page .analysis-ai-cta{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-height:29px;margin-top:9px;padding:5px 11px;border:1px solid #c08d41;border-radius:9px;background:linear-gradient(135deg,#fee8b8,#deae62);color:#273343;font:600 10px/1.25 "DQ Sans",sans-serif;box-shadow:0 2px 5px #7550273c}.analysis-page .analysis-ai-cta svg{width:14px;height:14px}

/* R15: one source image that covers the viewport, raised to expose the moon and pagoda. */
.shell,.analysis-page.shell,.chart-page.shell{background:#001322!important}
.dq-wallpaper{--dq-rise:clamp(44px,14vw,60px);position:fixed;top:0;left:50%;transform:translateX(-50%);width:min(100%,430px);height:100dvh;overflow:hidden;z-index:0;pointer-events:none;background:#001322;contain:paint}
.dq-scene-art{position:absolute;left:50%;top:calc(-1 * var(--dq-rise));transform:translateX(-50%);width:max(100%,calc(46.155dvh + 28px));aspect-ratio:852/1846;background:url('/images/daoquan-wallpaper.png') center top/100% 100% no-repeat}
.shell>.hero,.shell .analysis-hero,.shell .palace-hero,.shell .number-hero{background-image:none!important;background-color:transparent!important}
.shell .hero-ink{background:linear-gradient(90deg,#001324ac 0%,#00132451 43%,transparent 82%)}
.shell .hero::before,.shell .hero::after{background-image:none!important}
.shell.chart-page::before,.shell.analysis-page::before{display:none!important;content:none!important}
.shell>.hero,.shell>main,.shell>.bottom-nav{z-index:1}
.shell .bottom-nav{background:linear-gradient(180deg,#09283de0,#001525f5 75%);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);box-shadow:0 -5px 15px #0008}
.article-page .article-detail,.articles-page .article-card{min-width:0;max-width:100%;overflow:hidden}
.article-page .article-detail p,.article-page .article-detail h1{overflow-wrap:anywhere;word-break:normal}
.article-page .article-detail img{max-width:100%;height:auto;max-height:230px;object-fit:cover}
.dq-moon-glow,.dq-moon-surface,.dq-flower,.dq-petal{position:absolute;display:block;pointer-events:none;will-change:transform}
.dq-moon-glow{left:76.6%;top:14.7%;width:32%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0 12%,#fff3bb55 19%,transparent 31% 56%,#efb75d4d 66%,transparent 78%);-webkit-mask:radial-gradient(circle,transparent 54%,#000 67%,transparent 76%);mask:radial-gradient(circle,transparent 54%,#000 67%,transparent 76%);animation:dq-orbit 65s linear infinite;filter:blur(2px)}
.dq-moon-surface{left:76.6%;top:14.7%;width:25%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0 23%,#fff4bf23 34%,transparent 48% 71%,#fff6d322 80%,transparent 92%);-webkit-mask:radial-gradient(circle,#000 0 53%,transparent 65%);mask:radial-gradient(circle,#000 0 53%,transparent 65%);mix-blend-mode:screen;animation:dq-moon-light 112s linear infinite}
.dq-flower{width:6%;aspect-ratio:1;transform-origin:50% 82%;background:radial-gradient(ellipse at 50% 12%,#ffe9dcba 0 17%,transparent 31%),radial-gradient(ellipse at 84% 43%,#f7aba6a8 0 16%,transparent 31%),radial-gradient(ellipse at 70% 83%,#ffe1cc9c 0 16%,transparent 30%),radial-gradient(ellipse at 22% 78%,#f4a2a5a8 0 16%,transparent 31%),radial-gradient(ellipse at 14% 42%,#ffdbcfaa 0 16%,transparent 30%),radial-gradient(circle at 50% 50%,#ffd37a 0 9%,transparent 12%);filter:drop-shadow(0 0 2px #eaa37a);opacity:.6;animation:dq-blossom-sway 5.7s ease-in-out infinite alternate}
.dq-flower-right-a{left:94%;top:10.5%;animation-delay:-2s}.dq-flower-right-b{left:92.7%;top:29.1%;animation-delay:-3.5s}.dq-flower-lotus-a{left:6%;top:79%;width:7%;animation-duration:7.2s;animation-delay:-1.6s}.dq-flower-lotus-b{left:25%;top:89%;width:7%;animation-duration:7.8s;animation-delay:-3.7s}
.dq-petal{width:1.8%;height:1.5%;border-radius:85% 15% 75% 18%;background:linear-gradient(145deg,#fff3d8,#f6a99d 52%,#df6772);box-shadow:0 0 5px #e6a76d88;opacity:0;animation:dq-petal-drift 14s ease-in-out infinite}
.dq-petal-a{left:91%;top:17%;animation-delay:-1s}.dq-petal-b{left:85%;top:31%;animation-delay:-5s}.dq-petal-c{left:13%;top:78%;animation-delay:-9s}
@keyframes dq-orbit{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes dq-moon-light{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes dq-blossom-sway{from{transform:translate(-1px,0) rotate(-2deg)}to{transform:translate(1px,-2px) rotate(2deg)}}
@keyframes dq-petal-drift{0%,12%{opacity:0;transform:translate(0,0) rotate(0)}22%{opacity:.8}72%{opacity:.65}90%,100%{opacity:0;transform:translate(-35px,72px) rotate(240deg)}}
@media(prefers-reduced-motion:reduce){.dq-moon-glow,.dq-moon-surface,.dq-flower,.dq-petal{animation:none!important}.dq-petal{display:none}}

/* R18: a transparent, purpose-built dial floats within the common scenery. */
.feng-page .feng-content{background:none!important}
.feng-page .compass-scene{position:relative;isolation:isolate;display:block;width:min(100%,370px);max-width:none;height:auto;aspect-ratio:600/650;margin:-3px auto 2px;padding:0;overflow:visible;border:0;background:transparent;filter:drop-shadow(0 7px 11px #0009);-webkit-tap-highlight-color:transparent}
.feng-page .compass-scene::before{content:"";position:absolute;z-index:-1;left:17%;top:17%;width:66%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#d795343c 0%,#b7781922 45%,transparent 71%);animation:bagua-aura 5s ease-in-out infinite alternate;pointer-events:none}
.feng-page .bagua-base,.feng-page .bagua-frame{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.feng-page .bagua-base{z-index:0}.feng-page .bagua-frame{z-index:2}
.feng-page .bagua-disc{position:absolute;z-index:1;left:50%;top:40%;display:block;width:80%;height:auto;aspect-ratio:1;transform:translate(-50%,-50%) rotate(0deg);transform-origin:center;animation:bagua-rotate 24s linear infinite;will-change:transform;pointer-events:none}
.feng-page .compass-scene.spin{animation:bagua-light 1.8s ease-out both}
.feng-page .bottom-nav{background:linear-gradient(180deg,#09283d,#001525 75%);-webkit-backdrop-filter:none;backdrop-filter:none}
.feng-page .compass-scene:focus-visible{outline:2px solid #ffe09a;outline-offset:3px}
@keyframes bagua-rotate{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes bagua-light{0%,100%{filter:drop-shadow(0 7px 11px #0009)}45%{filter:drop-shadow(0 0 19px #ffce78b8)}}
@keyframes bagua-aura{from{opacity:.55;transform:scale(.97)}to{opacity:.9;transform:scale(1.05)}}
@media(prefers-reduced-motion:reduce){.feng-page .bagua-disc,.feng-page .compass-scene.spin,.feng-page .compass-scene::before{animation:none!important}.feng-page .bagua-disc{transform:translate(-50%,-50%) rotate(0deg)}}

/* R20: the 3D dragon/cloud plinth is stationary; the exact 36-bearing dial rotates behind it. */
.feng-page .compass-scene{width:min(100%,410px);aspect-ratio:600/710;margin:-4px auto -5px;filter:drop-shadow(0 9px 13px #000b)}
.feng-page .compass-scene::before{left:16%;top:4%;width:68%;z-index:0}
.feng-page .bagua-disc{z-index:1;left:50%;top:38.3%;width:72%;height:auto;aspect-ratio:1;object-fit:contain;animation-duration:36s;filter:drop-shadow(0 9px 9px #000b) drop-shadow(0 0 7px #f3b7586b)}
.feng-page .bagua-base{z-index:2;left:0;right:0;top:14.5%;bottom:auto;width:100%;height:auto;aspect-ratio:1;object-fit:contain;animation:dragon-cloud-float 6s ease-in-out infinite alternate}
.feng-page .bagua-frame{z-index:3;left:50%;top:38.3%;bottom:auto;right:auto;width:72%;height:auto;aspect-ratio:1;object-fit:contain;transform:translate(-50%,-50%)}
.feng-page .compass-scene.paused .bagua-disc{animation-play-state:paused}
.feng-page .compass-caption{margin:0 0 8px;text-align:center;color:#ffe4ad;font:700 clamp(11px,3vw,14px)/1.35 'Noto Sans',sans-serif;letter-spacing:.08em;text-shadow:0 1px 7px #000}
.feng-page .compass-caption span{color:#ba7d39;margin:0 3px}
.feng-page .compass-caption small{display:block;margin-top:3px;color:#e3c58e;font-size:clamp(9px,2.4vw,11px);font-weight:400;letter-spacing:0}
.feng-page .compass-directions{margin:0 0 10px;border:1px solid #9b753f;border-radius:12px;background:linear-gradient(#0d2b3c,#061927);color:#f4d69a}
.feng-page .compass-directions summary{padding:9px 12px;text-align:center;font-size:12px;font-weight:700;cursor:pointer;list-style-position:inside}
.feng-page .compass-bearing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:0 8px 10px}
.feng-page .compass-bearing-grid span{display:grid;justify-items:center;align-content:center;min-height:42px;border:1px solid #b38b4a70;border-radius:7px;background:#091e2d}
.feng-page .compass-bearing-grid b{font-size:13px;color:#ffe8ac}
.feng-page .compass-bearing-grid small{font-size:9px;color:#dec493;text-align:center}
@keyframes dragon-cloud-float{from{transform:translateY(0)}to{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.feng-page .bagua-base{animation:none}}

/* R21: independent luxury dial, two dragon figures, and a stationary cloud plinth. */
.feng-page .compass-scene{width:min(100%,410px);aspect-ratio:600/725;margin:-3px auto -1px;filter:drop-shadow(0 8px 12px #000a)}
.feng-page .compass-scene::before{left:14%;top:7%;width:72%;z-index:0}
.feng-page .bagua-base{z-index:1;left:0;right:0;top:15.2%;bottom:auto;width:100%;height:auto;aspect-ratio:1;object-fit:contain;animation:none}
.feng-page .bagua-rotor{position:absolute;z-index:2;left:7%;top:7.2%;width:86%;aspect-ratio:1;display:block;animation:bagua-rotor-spin 42s linear infinite;will-change:transform;pointer-events:none}
.feng-page .bagua-rotor .bagua-disc,.feng-page .bagua-rotor .bagua-labels{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.feng-page .bagua-rotor .bagua-disc{transform:none;animation:none;filter:drop-shadow(0 7px 7px #000b) drop-shadow(0 0 6px #f7b45260)}
.feng-page .bagua-dragon{position:absolute;z-index:3;left:0;top:29%;width:100%;height:auto;aspect-ratio:1;object-fit:contain;pointer-events:none;will-change:transform;filter:drop-shadow(0 5px 5px #0008)}
.feng-page .bagua-dragon-left{clip-path:inset(0 50% 0 0);transform-origin:23% 80%;animation:bagua-dragon-left 6.6s ease-in-out infinite alternate}
.feng-page .bagua-dragon-right{clip-path:inset(0 0 0 50%);transform-origin:77% 80%;animation:bagua-dragon-right 7.4s ease-in-out -2.1s infinite alternate}
.feng-page .bagua-frame{z-index:4;left:7%;top:7.2%;right:auto;bottom:auto;width:86%;height:auto;aspect-ratio:1;object-fit:contain;transform:none}
.feng-page .compass-scene.paused .bagua-rotor,.feng-page .compass-scene.paused .bagua-dragon{animation-play-state:paused}
@keyframes bagua-rotor-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes bagua-dragon-left{from{transform:translate3d(0,2px,0) rotate(-.45deg)}to{transform:translate3d(2px,-3px,0) rotate(.5deg)}}
@keyframes bagua-dragon-right{from{transform:translate3d(0,-2px,0) rotate(.45deg)}to{transform:translate3d(-2px,3px,0) rotate(-.5deg)}}
@media(prefers-reduced-motion:reduce){.feng-page .bagua-rotor,.feng-page .bagua-dragon{animation:none!important}.feng-page .bagua-rotor .bagua-disc{transform:none!important}}

/* R22: centered compact composition, built-in bearing text, visible separate dragon motion. */
.feng-page .compass-scene{width:clamp(260px,82%,330px);max-width:100%;aspect-ratio:600/725;margin:9px auto 8px}
.feng-page .bagua-rotor{animation-duration:22s}
.feng-page .bagua-rotor .bagua-labels{overflow:visible;filter:drop-shadow(0 1px 2px #000a)}
.feng-page .bagua-labels text{fill:#ffe0a0;stroke:#09111b;stroke-width:3.3px;paint-order:stroke fill;font-family:'Noto Serif',Georgia,serif;font-size:28px;font-weight:700;text-anchor:middle;dominant-baseline:central}
.feng-page .bagua-labels .direction{font-size:40px;stroke-width:4px}
.feng-page .bagua-labels .diagonal{font-size:32px}
.feng-page .bagua-dragon-left{animation:bagua-dragon-rise-left 4.2s ease-in-out infinite alternate}
.feng-page .bagua-dragon-right{animation:bagua-dragon-rise-right 4.7s ease-in-out -1.8s infinite alternate}
.feng-page .bagua-spark{position:absolute;z-index:2;top:53%;width:35%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffe5a05e 0%,#d9943f34 38%,transparent 70%);filter:blur(6px);opacity:.45;pointer-events:none;animation:bagua-spark 2.8s ease-in-out infinite alternate}
.feng-page .bagua-spark-left{left:0}.feng-page .bagua-spark-right{right:0;animation-delay:-1.3s}
.feng-page .compass-scene.paused .bagua-spark{animation-play-state:paused}
@keyframes bagua-dragon-rise-left{from{transform:translate3d(-3px,7px,0) rotate(-1.5deg)}to{transform:translate3d(4px,-8px,0) rotate(1.2deg)}}
@keyframes bagua-dragon-rise-right{from{transform:translate3d(3px,-7px,0) rotate(1.5deg)}to{transform:translate3d(-4px,8px,0) rotate(-1.2deg)}}
@keyframes bagua-spark{from{opacity:.25;transform:scale(.9)}to{opacity:.8;transform:scale(1.18)}}
@media(prefers-reduced-motion:reduce){.feng-page .bagua-spark{animation:none!important}}

/* R26 — Thần số học: readable cards, reference composition and live diagrams. */
.number-page{font-family:'DQ Serif',Georgia,serif}
.number-page .content{padding-inline:clamp(12px,3.2vw,16px);padding-bottom:28px}
.number-page .number-hero{min-height:110px;padding:calc(12px + env(safe-area-inset-top)) 14px 8px;gap:10px;background:linear-gradient(90deg,#001324c4 0%,#00132470 62%,transparent 100%)}
.number-page .number-hero h1{font-size:clamp(30px,8vw,38px);line-height:1.06;font-weight:700;text-shadow:0 2px 5px #000c}
.number-page .number-hero p{font-size:clamp(11px,3vw,14px);line-height:1.22;text-shadow:0 1px 4px #000}
.number-page .number-hero .icon-button{background:#00192880}
.number-page .number-profile{position:relative;isolation:isolate;grid-template-columns:clamp(76px,23vw,98px) minmax(0,1fr) clamp(50px,16vw,70px);gap:11px;min-height:110px;margin-bottom:5px;padding:9px;overflow:hidden;background:linear-gradient(90deg,#fffaec 0 49%,#fff8e7dc 70%,#fff9e5a6),url('/images/daoquan-wallpaper.png') right 19%/auto 310% no-repeat}
.number-page .number-profile::before,.number-page .number-profile::after{z-index:-1}
.number-page .number-portrait{border:2px solid #c48635;box-shadow:0 0 0 3px #fff3d5,0 0 0 4px #d69c54}
.number-page .number-identity{position:relative;z-index:1}
.number-page .number-profile small{display:block;font-size:clamp(8px,2.35vw,11px);line-height:1.2;color:#a85c1d}
.number-page .number-profile h2{font-size:clamp(16px,4.6vw,22px);line-height:1.18;margin-top:6px;color:#142940}
.number-page .number-profile p{font-size:clamp(10px,2.8vw,13px);margin-top:8px;color:#172f44;white-space:nowrap}
.number-page .number-wheel{width:clamp(47px,15vw,64px);height:clamp(47px,15vw,64px);background:radial-gradient(circle,#172a45,#031a30 75%);border:3px double #e9ba62;box-shadow:0 0 0 2px #8b5c2c,0 3px 8px #0008}
.number-page .number-wheel svg{width:72%;height:72%}
.number-page .number-edit{position:relative;z-index:2;margin:0 2px 7px}
.number-page .number-edit summary{display:flex;align-items:center;justify-content:flex-end;gap:5px;width:fit-content;max-width:100%;min-height:27px;margin-left:auto;padding:3px 10px;border:1px solid #dcb36b;border-radius:999px;background:#082b40ef;color:#ffde9b;font:600 clamp(9px,2.65vw,12px)/1.2 'DQ Sans',sans-serif;text-align:left;box-shadow:0 3px 7px #0008}
.number-page .number-edit summary svg{color:#ffe1a7}
.number-page .number-edit summary svg:last-child{transition:transform .2s}
.number-page .number-edit[open] summary svg:last-child{transform:rotate(90deg)}
.number-page .number-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px;margin-top:5px}
.number-page .number-form .mini-submit{grid-column:1/-1;justify-self:end;min-height:34px;padding:5px 15px}
.number-page .numbers-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.42fr) minmax(0,1fr);gap:7px;margin:0 0 10px;min-height:178px}
.number-page .side-numbers{gap:7px}
.number-page .side-numbers .number-trait{position:relative;display:grid;grid-template-columns:38% minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:center;min-height:82px;padding:7px 4px;overflow:hidden;border:1px solid #d8a45f;border-radius:12px;background:linear-gradient(140deg,#0a2d46f5,#001626fa 75%);color:#fff2d8;box-shadow:inset 0 0 0 1px #ffe6ac39,0 2px 7px #0007}
.number-page .side-numbers .number-trait::after{content:'';position:absolute;left:-12px;bottom:-17px;width:68px;height:36px;border:1px solid #d4a56335;border-radius:50%;transform:rotate(-18deg);pointer-events:none}
.number-page .side-numbers .trait-icon{grid-row:1/4;display:grid;place-items:center;justify-self:center;width:clamp(29px,8.5vw,39px);height:clamp(29px,8.5vw,39px);border:1px solid currentColor;border-radius:50%;color:#f5a9e3;background:radial-gradient(circle,#9a438490,#33114a75 72%);box-shadow:0 0 12px currentColor}
.number-page .side-numbers .trait-icon svg{width:65%;height:65%}
.number-page .side-numbers .trait-person{color:#88d5ff;background:radial-gradient(circle,#2285c088,#002b55 72%)}
.number-page .side-numbers .trait-mountain{color:#ffda8b;background:radial-gradient(circle,#bd804f99,#3b251e 72%)}
.number-page .side-numbers .trait-sprout{color:#90e2a6;background:radial-gradient(circle,#378c5b99,#0c3c30 72%)}
.number-page .side-numbers .number-trait b{font-size:clamp(10px,2.8vw,13px);line-height:1.1;white-space:normal;overflow-wrap:normal}
.number-page .side-numbers .number-trait strong{grid-column:2;align-self:center;font-size:clamp(26px,8vw,37px);line-height:1;color:#f5a9e3}
.number-page .side-numbers .number-trait small{grid-column:2;font-size:clamp(8px,2.2vw,11px);line-height:1.15;color:#f5e9d5}
.number-page .side-numbers .number-trait:nth-child(2) strong{color:#88d5ff}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:first-child strong{color:#ffda8b}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:last-child strong{color:#90e2a6}
.number-page .life-number{gap:4px;align-self:stretch;align-content:center;position:relative;text-shadow:0 1px 3px #000}
.number-page .life-number>b{font-size:clamp(15px,4vw,19px);color:#ffe6a8;white-space:nowrap}
.number-page .life-number>b svg{color:#ffe6a8}
.number-page .life-number>div{width:min(100%,146px);font-size:clamp(55px,18vw,87px);border-color:#f0bd76;box-shadow:0 0 17px #fa8f82a6,0 0 0 4px #eab36e37,inset 0 0 21px #e982ad88}
.number-page .life-number strong{padding:4px 8px;white-space:normal;text-align:center;font-size:clamp(9px,2.55vw,12px);line-height:1.12}
.number-page .life-number p{max-width:155px;font-size:clamp(8px,2.2vw,10px);line-height:1.2}
.number-page .number-chart{min-height:154px;padding:10px 11px 11px;margin-bottom:10px;overflow:hidden;background:linear-gradient(125deg,#fffdf8f7,#fff8e9f8),url('/images/auth-flower.png') center/cover}
.number-page .number-chart h2{font-size:clamp(17px,4.5vw,21px);line-height:1.2}
.number-page .number-chart-layout{grid-template-columns:minmax(0,60%) minmax(0,1fr);gap:10px;align-items:end}
.number-page .bars{height:108px;gap:3px;margin-top:6px;border-bottom:1px solid #d6ac72}
.number-page .bars .bar-item{gap:2px}
.number-page .bars .bar-item b,.number-page .bars .bar-item small{font-size:clamp(9px,2.5vw,12px);color:#172c41}
.number-page .bars .bar-item span{max-height:79%;width:78%;min-height:4px;transform-origin:bottom;transform:scaleY(0);opacity:.7;border-radius:5px 5px 0 0;box-shadow:inset 0 2px 3px #fff7}
.number-page .bars .bar-count-0{height:4%;background:linear-gradient(#f1a4a0,#e16e69)}
.number-page .bars .bar-0{background:linear-gradient(#f484b2,#ec5d96)}
.number-page .bars .bar-2{background:linear-gradient(#ffae82,#f17254)}
.number-page .bars .bar-3{background:linear-gradient(#ffdc7c,#edaa4b)}
.number-page .bars .bar-5{background:linear-gradient(#65d7d3,#34aca9)}
.number-page .bars .bar-6{background:linear-gradient(#4fc0fa,#268de3)}
.number-page .bars .bar-8{background:linear-gradient(#c58cf6,#8953e8)}
.number-page .number-chart.is-visible .bar-item span{animation:number-grow .85s cubic-bezier(.19,.86,.34,1) both}
.number-page .bar-item:nth-child(2) span{animation-delay:80ms!important}.number-page .bar-item:nth-child(3) span{animation-delay:160ms!important}.number-page .bar-item:nth-child(4) span{animation-delay:240ms!important}.number-page .bar-item:nth-child(5) span{animation-delay:320ms!important}.number-page .bar-item:nth-child(6) span{animation-delay:400ms!important}.number-page .bar-item:nth-child(7) span{animation-delay:480ms!important}.number-page .bar-item:nth-child(8) span{animation-delay:560ms!important}.number-page .bar-item:nth-child(9) span{animation-delay:640ms!important}
.number-page .number-chart-copy{min-width:0;padding:2px 1px 0;border-left:1px solid #e2be87;padding-left:9px}
.number-page .number-chart-copy h3{font-size:clamp(12px,3.1vw,16px);line-height:1.15}
.number-page .number-chart-copy p{font-size:clamp(9px,2.4vw,11px);line-height:1.24;margin:5px 0 7px;color:#34475a}
.number-page .number-chart-copy a{min-height:29px;padding:3px 7px;font-size:clamp(9px,2.4vw,11px);line-height:1.1;text-align:center}
.number-page .peaks{min-height:160px;margin-bottom:10px;padding:9px 8px 8px;overflow:hidden;background:linear-gradient(180deg,#00192bef,#001725bf 52%,#0013229c),url('/images/daoquan-wallpaper.png') center 53%/cover}
.number-page .peaks h2{font-size:clamp(17px,4.6vw,21px);line-height:1.1}
.number-page .peaks>p{margin:3px 0 0;font-size:clamp(9px,2.4vw,11px);line-height:1.2}
.number-page .peaks .peaks-curve{position:absolute;left:8px;top:46px;width:calc(100% - 16px);height:43px;overflow:visible}
.number-page .peaks .peaks-curve path{fill:none;stroke:#efbf70;stroke-width:2;stroke-dasharray:7 5;stroke-dashoffset:0;filter:drop-shadow(0 0 4px #f6c56a)}
.number-page .peaks.is-visible .peaks-curve path{animation:peak-current 4s linear infinite}
.number-page .peaks .peaks-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:10px}
.number-page .peaks .peak-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:91px;gap:2px;padding:0 2px;border-right:1px solid #d1a05a66;text-align:center;background:linear-gradient(180deg,transparent 40%,#f09d5130)}
.number-page .peaks .peak-item:nth-child(2){background:linear-gradient(180deg,transparent 40%,#178bd045)}
.number-page .peaks .peak-item:nth-child(3){background:linear-gradient(180deg,transparent 40%,#9b50d041)}
.number-page .peaks .peak-item:last-child{border:0}
.number-page .peaks .peak-item i{position:relative;display:grid;place-items:center;width:clamp(29px,8vw,38px);height:clamp(29px,8vw,38px);margin-bottom:1px;border:1px solid #ffdc90;border-radius:50%;background:radial-gradient(circle,#ca7439,#593018);font-size:clamp(17px,4.8vw,23px);font-style:normal;box-shadow:0 0 10px #ffb45b}
.number-page .peaks .peak-item:nth-child(2) i{background:radial-gradient(circle,#258bd9,#072f67);box-shadow:0 0 10px #46b9ff}
.number-page .peaks .peak-item:nth-child(3) i{background:radial-gradient(circle,#ad59d3,#54206d);box-shadow:0 0 10px #d492ff}
.number-page .peaks .peak-item small{font-size:clamp(8px,2.2vw,10px);line-height:1.15;color:#fff0d2}
.number-page .peaks .peak-item strong{font-size:clamp(24px,7vw,34px);line-height:1;color:#ffd58c}
.number-page .peaks .peak-item:nth-child(2) strong{color:#87d8ff}
.number-page .peaks .peak-item:nth-child(3) strong{color:#e6acff}
.number-page .peaks.is-visible .peak-item i{animation:peak-float 3.4s ease-in-out infinite alternate}
.number-page .peaks .peak-item:nth-child(2) i{animation-delay:-.7s}.number-page .peaks .peak-item:nth-child(3) i{animation-delay:-1.4s}.number-page .peaks .peak-item:nth-child(4) i{animation-delay:-2.1s}
.number-page .number-bottom{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:7px;margin:0}
.number-page .number-bottom section{min-height:132px;padding:8px;overflow:hidden;background:linear-gradient(180deg,#04233bee,#001b2ae8),url('/images/daoquan-wallpaper.png') center 68%/cover}
.number-page .number-bottom h2{font-size:clamp(13px,3.5vw,17px);line-height:1.15;white-space:normal}
.number-page .number-bottom h2 svg{width:14px;height:14px}
.number-page .number-bottom section>p{margin:4px 0 6px;font-size:clamp(9px,2.25vw,11px);line-height:1.15}
.number-page .number-challenges .challenge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:6px 2px;border:1px solid #e6c799;border-radius:8px;background:#fff8ea}
.number-page .challenge-grid span{min-width:0;padding:1px;border-right:1px solid #dbc49d;text-align:center}
.number-page .challenge-grid span:last-child{border:0}
.number-page .challenge-grid b{width:clamp(24px,7vw,34px);height:clamp(24px,7vw,34px);margin:0 auto 4px;border:2px solid #fff7d5;background:#d62e34;font-size:clamp(15px,4.2vw,20px);box-shadow:0 0 0 1px #b93632,0 0 8px #ee7575}
.number-page .challenge-grid span:nth-child(2) b{background:#146eda;box-shadow:0 0 0 1px #1768c7,0 0 8px #72aeff}
.number-page .challenge-grid span:nth-child(3) b{background:#128451;box-shadow:0 0 0 1px #18845c,0 0 8px #68c898}
.number-page .challenge-grid span:nth-child(4) b{background:#8744c5;box-shadow:0 0 0 1px #8744c5,0 0 8px #b68bee}
.number-page .challenge-grid small{font-size:clamp(7px,2vw,9px);line-height:1.1;color:#283e52}
.number-page .number-year{display:flex;flex-direction:column;align-items:stretch;padding:7px!important;text-align:center}
.number-page .number-year .year-face{display:grid;grid-template-columns:1fr;place-items:center;align-content:center;flex:1;min-height:72px;margin:4px 0 5px;padding:3px;border:1px solid #e1c188;border-radius:8px;background:linear-gradient(135deg,#fffdf5f9,#fbe7c5f3),url('/images/daoquan-wallpaper.png') right 22%/cover;color:#192d43}
.number-page .year-face small{font-size:clamp(8px,2vw,10px)}
.number-page .year-face strong{font-size:clamp(36px,10vw,52px);line-height:1;color:#c51f26;text-shadow:0 1px #fff}
.number-page .year-face span{font-size:clamp(7px,1.85vw,9px)}
.number-page .number-year details{width:100%;margin:0}
.number-page .number-year summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:3px;min-height:27px;border:1px solid #fff0bd;background:linear-gradient(#ffe4a6,#dfaa54);font-size:clamp(8px,2.25vw,11px);font-weight:700}
.number-page .number-year summary::-webkit-details-marker{display:none}
.number-page .number-year details p{padding:5px;margin:4px 0 0;border-radius:5px;background:#fff7e8;color:#263a4d;line-height:1.3}
@keyframes number-grow{from{transform:scaleY(0);opacity:.65}to{transform:scaleY(1);opacity:1}}
@keyframes peak-current{to{stroke-dashoffset:-48}}
@keyframes peak-float{from{transform:translateY(0)}to{transform:translateY(-4px)}}
@media(max-width:359px){.number-page .numbers-layout{gap:4px}.number-page .side-numbers .number-trait{grid-template-columns:1fr;grid-template-rows:32px auto 1fr auto;justify-items:center;min-height:100px}.number-page .side-numbers .trait-icon{grid-row:1;grid-column:1}.number-page .side-numbers .number-trait strong,.number-page .side-numbers .number-trait small{grid-column:1}.number-page .side-numbers .number-trait b{text-align:center}.number-page .number-chart-layout{grid-template-columns:1fr}.number-page .number-chart-copy{border-left:0;border-top:1px solid #e2be87;padding:6px 0 0}.number-page .bars{height:92px}.number-page .number-bottom{grid-template-columns:1fr}.number-page .number-bottom section{min-height:0}.number-page .number-year .year-face{min-height:85px}}
@media(prefers-reduced-motion:reduce){.number-page .number-chart .bar-item span{transform:scaleY(1);opacity:1;animation:none!important;animation-delay:0ms!important}.number-page .peaks .peaks-curve path,.number-page .peaks .peak-item i{animation:none!important}}

/* R27 — precise birth wheels and a separate scrollable reading. */
.number-page .number-form .number-date-field{min-width:0;color:#18334a;font-size:10px}
.number-page .number-date-field>span{display:block;margin-bottom:3px}
.number-page .number-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;min-width:0;min-height:37px;padding:7px 9px;border:1px solid #dbccba;border-radius:8px;background:#fffcf6;color:#122b43;text-align:left;font:12px 'DQ Sans',sans-serif}
.number-page .number-date-trigger svg{transform:rotate(90deg)}
.number-date-dialog{position:fixed;inset:0;width:min(calc(100% - 20px),400px);max-width:none;max-height:min(83dvh,520px);margin:auto;padding:0;border:1px solid #d7a25a;border-radius:18px;background:#fff9eb;color:#142b43;box-shadow:0 16px 38px #000b;overflow:hidden}
.number-date-dialog::backdrop{background:#00101ed9;backdrop-filter:blur(4px)}
.number-date-picker{padding:17px 13px 12px}
.number-date-picker h3{color:#9e5e20;font-size:21px}
.number-date-picker p{margin:4px 0 11px;font:11px/1.4 'DQ Sans',sans-serif;color:#496073}
.number-wheel-columns{position:relative;display:grid;grid-template-columns:1fr 1fr 1.28fr;gap:7px}
.number-wheel-columns::after{content:'';position:absolute;left:0;right:0;top:calc(50% - 13px);height:44px;border:1px solid #dba85a;border-radius:9px;background:#f7e4bf75;pointer-events:none}
.number-wheel-column{min-width:0}
.number-wheel-column>b{display:block;margin-bottom:5px;text-align:center;font:700 12px 'DQ Sans',sans-serif}
.number-wheel-track{height:220px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:thin;scrollbar-color:#d4a869 transparent;touch-action:pan-y;border:1px solid #e8d0a7;border-radius:10px;background:#fffdf6}
.number-wheel-track::before,.number-wheel-track::after{content:'';display:block;height:88px}
.number-wheel-track button{display:block;width:100%;height:44px;padding:0;border:0;scroll-snap-align:center;background:transparent;color:#5f6c76;font:15px 'DQ Sans',sans-serif}
.number-wheel-track button.selected{position:relative;z-index:1;color:#102b46;font-weight:700;font-size:20px}
.number-wheel-track button:disabled{opacity:.28;cursor:not-allowed}
.number-picker-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:13px}
.number-picker-actions button{min-width:93px;min-height:36px;padding:6px 12px;border:1px solid #c79550;border-radius:999px;background:#fff8e8;color:#19344b;font:700 12px 'DQ Sans',sans-serif}
.number-picker-actions [data-birth-confirm]{background:linear-gradient(#ffe7aa,#dfab56)}
.number-page .number-year .number-year-detail{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:28px;margin-top:auto;border:1px solid #fff0bd;border-radius:999px;background:linear-gradient(#ffe4a6,#dfaa54);color:#1d2c3d;font-size:clamp(9px,2.3vw,11px);font-weight:700}
.number-page .number-reading{margin:12px 0 0;padding:0;overflow:hidden;background:linear-gradient(145deg,#fff9e8,#fff5df 48%,#f7e5c6);box-shadow:inset 0 0 0 2px #fff7df,0 6px 18px #0009}
.number-page .number-reading-scroll{max-height:min(65dvh,620px);padding:16px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#c68c43 #faebd1}
.number-page .reading-eyebrow{display:block;color:#a05e20;font:700 10px/1.2 'DQ Sans',sans-serif;letter-spacing:.08em}
.number-page .number-reading h2{margin:7px 0 9px;color:#12314b;font-size:clamp(21px,5.6vw,27px);line-height:1.16}
.number-page .number-reading h3{margin:17px 0 6px;padding-top:12px;border-top:1px solid #dec49d;color:#aa6328;font-size:clamp(15px,4vw,18px)}
.number-page .number-reading p{margin:0 0 9px;color:#24374b;font-size:clamp(12px,3.25vw,15px);line-height:1.55}
.number-page .reading-note{margin:12px 0;padding:11px 12px;border-left:3px solid #c68c42;border-radius:0 7px 7px 0;background:#efdfbd;color:#173751;font:600 clamp(10px,2.8vw,13px)/1.55 'DQ Sans',sans-serif}
.number-page .reading-years{display:grid;grid-template-columns:28px repeat(5,minmax(0,1fr)) 28px;gap:3px;margin:14px 0}
.number-page .reading-years button{min-width:0;min-height:42px;padding:3px 0;border:1px solid #c9a269;border-radius:8px;background:#fff8e9;color:#284058;font:700 clamp(9px,2.45vw,11px)/1.1 'DQ Sans',sans-serif}
.number-page .reading-years button.active{background:#103a54;color:#ffe7aa;border-color:#e2b067}
.number-page .reading-years button:disabled{opacity:.35}
.number-page .reading-years small{display:block;margin-top:2px;font-size:11px}
.number-page .reading-source a{color:#8d531c;text-decoration:underline}
.number-page .number-reading .reading-disclaimer{margin:14px 0 0;color:#637180;font:11px/1.4 'DQ Sans',sans-serif}
@media(max-width:359px){.number-page .number-reading-scroll{padding:12px}.number-page .reading-years{grid-template-columns:23px repeat(5,minmax(0,1fr)) 23px;gap:2px}.number-page .reading-years button{font-size:8px}.number-date-dialog{width:calc(100% - 12px)}}

/* R23: compact bearing control and matching compass-rose emblems on one row. */
.feng-page .compass-directions{width:fit-content;max-width:calc(100% - 16px);margin:0 auto 10px;border-radius:999px}
.feng-page .compass-directions[open]{width:100%;max-width:100%;border-radius:12px}
.feng-page .compass-directions summary{display:block;padding:7px 14px;list-style:none;white-space:nowrap;font-size:clamp(11px,2.8vw,12px);line-height:1.25}
.feng-page .compass-directions summary::-webkit-details-marker{display:none}
.feng-page .compass-directions summary::before{content:'›';display:inline-block;margin-right:7px;color:#f6d18a;font-size:17px;line-height:0;vertical-align:-1px;transition:transform .2s ease}
.feng-page .compass-directions[open] summary::before{transform:rotate(90deg)}
.feng-page .feng-banner{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;column-gap:5px;align-items:center;justify-items:center;padding:5px 9px}
.feng-page .feng-banner > span{min-width:0;text-align:center;line-height:1.16}
.feng-page .feng-banner-emblem{display:grid;place-items:center;width:28px;height:28px;flex:none;align-self:center;font-style:normal;filter:drop-shadow(0 0 4px #e7ad5880)}
.feng-page .feng-banner-emblem svg{display:block;width:28px;height:28px}

/* R17: persistent retry only when both core startup requests fail. */
.sync-notice{position:fixed;z-index:11;left:50%;bottom:calc(72px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 22px),408px);padding:10px 12px;border:1px solid #dfb576;border-radius:12px;background:#09283df5;color:#fff1d1;box-shadow:0 5px 20px #000a;font:12px/1.3 'DQ Sans',sans-serif;text-align:center}.sync-notice button{margin-left:7px;border:1px solid #f7dca3;border-radius:8px;padding:4px 8px;background:#f7d18b;color:#152a3a;font-weight:700}

/* R29: scenic day status. The image stays clipped inside both rounded corners. */
.calendar-page .detail-hero{overflow:hidden;border-radius:12px;isolation:isolate}
.calendar-page .detail-landscape{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-width:0;min-height:94px;padding:8px;overflow:hidden;border-radius:0 12px 12px 0;background:#071a31;color:#fff9e8}
.calendar-page .detail-landscape::before{content:"";position:absolute;inset:-4%;z-index:0;background:url('/images/calendar-night.png?v=R29') center center/cover no-repeat;transform:translateX(-1%) scale(1.04);will-change:transform;animation:calendar-scenic-pan 18s ease-in-out infinite alternate}
.calendar-page .detail-landscape::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,19,38,.8) 0%,rgba(4,19,38,.35) 67%,rgba(4,19,38,.08) 100%),linear-gradient(0deg,rgba(2,12,26,.54),transparent 75%);pointer-events:none}
.calendar-page .landscape-copy{position:relative;z-index:2;display:grid;gap:3px;max-width:100%;min-width:0;padding:6px 8px;border-left:2px solid #f2d28e;border-radius:0 7px 7px 0;background:linear-gradient(90deg,rgba(2,15,32,.69),rgba(2,15,32,.09));animation:calendar-copy-appear .65s ease-out both}
.calendar-page .landscape-copy b{font-size:clamp(14px,3.8vw,19px);font-weight:800;line-height:1.12;letter-spacing:.01em;color:#fff7df;text-shadow:0 2px 5px #001223,0 0 12px #281600;overflow-wrap:anywhere}
.calendar-page .landscape-copy em{font:normal 700 clamp(10px,2.6vw,12px)/1.3 "DQ Sans",sans-serif;color:#fff6e6;text-shadow:0 2px 5px #001223,0 0 10px #001223;overflow-wrap:anywhere}
@keyframes calendar-scenic-pan{from{transform:translateX(-1%) scale(1.04)}to{transform:translateX(1%) scale(1.09)}}
@keyframes calendar-copy-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.calendar-page .detail-landscape::before,.calendar-page .landscape-copy{animation:none;transform:none}}

/* DAOQUAN_SETTINGS_ABOUT_R31: chỉ áp dụng cho thẻ giới thiệu trong Cài đặt. */
.settings-about{padding:17px 15px 15px;overflow:hidden;background:radial-gradient(circle at 92% 0%,#fff9e6 0%,transparent 39%),linear-gradient(155deg,#fffdf7,#f7ecd5 75%,#efdbb8);box-shadow:inset 0 0 0 2px #fff7e4,inset 0 0 0 4px #d9a75d40,0 6px 18px #0007}
.settings-about>*{position:relative;z-index:1}
.settings-about-kicker{margin:0 18px 7px;color:#96672c;font:700 9px/1.35 system-ui,sans-serif;letter-spacing:.13em}
.settings-about h2{margin:0 0 9px;font-size:24px;line-height:1.12;color:#18344b}
.settings-about .settings-about-lead{margin:0 0 15px;color:#354a56;font-size:12px;line-height:1.55}
.settings-about h3{margin:0 0 9px;color:#755020;font-size:14px;line-height:1.3}
.settings-about-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.settings-about-list li{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:9px 10px;border:1px solid #ddc392;border-radius:10px;background:linear-gradient(115deg,#fffefa,#f7edda);box-shadow:inset 0 1px #fff,0 2px 5px #6c4a1912}
.settings-about-symbol{display:grid;place-items:center;flex:none;width:27px;height:27px;border:1px solid #bd8c42;border-radius:8px;background:linear-gradient(145deg,#fff0c6,#e6bb72);color:#63431b;font:19px/1 Georgia,serif}
.settings-about-list li>span:last-child{display:block;min-width:0}
.settings-about-list strong{display:block;margin:0 0 2px;color:#1b3446;font-size:12px;line-height:1.2}
.settings-about-list small{display:block;color:#53616b;font-size:10.5px;line-height:1.4;overflow-wrap:anywhere}
.settings-about-thanks{margin-top:15px;padding:14px 12px 12px;border:1px solid #b98b4a;border-radius:12px;background:linear-gradient(140deg,#10334c,#092135);color:#fce9c5;box-shadow:inset 0 0 0 1px #ffe5a235}
.settings-about-thanks h3{margin-bottom:7px;color:#ffe0a0;font-size:15px}
.settings-about-thanks p{color:#f1e9db;font-size:11px;line-height:1.55}
.settings-about-thanks>span{display:block;margin-top:11px;padding-top:9px;border-top:1px solid #f4d19c55;color:#e9c382;font:700 8px/1.45 system-ui,sans-serif;letter-spacing:.07em}
@media(max-width:350px){.settings-about{padding:14px 11px}.settings-about-list li{padding:8px}.settings-about-kicker{font-size:8px}}
/* DAOQUAN_ARTICLES_OPAQUE_R34: keep earlier article text fully covered. */
.articles-page .dark-panel {
  position: relative;
  z-index: 2;
  isolation: isolate;
  overflow: hidden;
  background: linear-gradient(110deg, #061b2d 0%, #0b3147 100%);
  color: #fce5b7;
  box-shadow: 0 7px 18px #00142155;
}

/* DAOQUAN_PREMIUM_PROFILE_R35 */
.profile-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:9px 4px;background:#f7e8ca;border:1px solid #f3dfbb}
.profile-stats>.profile-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0 2px;min-width:0;border-right:1px solid #d9b889}
.profile-stats>.profile-stat:last-child{border-right:0}
.profile-stat-icon{display:grid;place-items:center;width:30px;height:31px;color:#a96c21;font-style:normal}
.profile-stat-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.profile-stat-icon .zodiac{display:block;width:30px;height:30px;filter:sepia(1) saturate(2) hue-rotate(350deg)}
.profile-stat>span{display:grid;gap:1px;width:100%;min-width:0;text-align:center}
.profile-stats .profile-stat small{font-size:9px;color:#4b3829;white-space:nowrap}
.profile-stats .profile-stat b{font-size:clamp(8px,2.5vw,10px);line-height:1.15;color:#29354a;overflow-wrap:anywhere}
.premium-panel{position:relative;overflow:hidden;margin:9px 0 12px;padding:10px 11px;border:1px solid #bb945c;border-radius:12px;background:linear-gradient(100deg,#031a2d 0%,#092940 72%,#041b2e 100%);color:#ffe7ad;box-shadow:inset 0 0 0 2px #cfac6d26,0 6px 17px #03152859}
.premium-panel:before,.premium-panel:after{content:'❦';position:absolute;color:#c6a161b8;font-size:24px;line-height:1;pointer-events:none}
.premium-panel:before{left:-2px;bottom:-2px}.premium-panel:after{right:-2px;bottom:-2px;transform:scaleX(-1)}
.premium-panel>.premium-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;margin:0;padding:0 0 7px;border:0;border-radius:0;background:transparent}
.premium-heading h2{display:flex;align-items:center;gap:5px;margin:0;font-size:14px;color:#ffebc2}
.premium-panel .premium-heading button{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;padding:4px 8px;border-radius:16px;background:linear-gradient(#ffe2a1,#d6a257);font-size:10px;font-weight:bold}
.premium-panel>.premium-body{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,1.5fr);align-items:center;gap:6px;margin:0;padding:7px 8px;border:1px solid #bd9359;border-radius:9px;background:linear-gradient(90deg,#081e31,#09263a);min-width:0}
.premium-crown{display:grid;place-items:center;width:35px;height:35px;border:1px solid #d5a866;border-radius:50%;color:#ffd794;box-shadow:0 0 10px #e9b55391,inset 0 0 8px #edb7584d}
.premium-copy h3{margin:0;color:#ffdc91;font-size:14px;white-space:nowrap}.premium-copy h3 small{display:inline-block;padding:2px 4px;border:1px solid #d1a766;border-radius:8px;background:#f0c779;color:#3d2816;font-size:7px;vertical-align:middle}
.premium-copy p{margin:2px 0 0;font-size:8px;line-height:1.25;color:#ebd2a7}
.premium-body ul{display:grid;gap:2px;margin:0;padding:0;list-style:none;min-width:0;border-left:1px solid #a679456e;padding-left:5px}
.premium-body li{display:flex;align-items:center;gap:3px;min-width:0;color:#f1e0bf;font-size:8px;line-height:1.22}.premium-body li svg{flex:none;color:#f3ce83}
.premium-content .premium-plan,.premium-content .premium-order{margin:10px 0;padding:14px}.premium-plan>div{display:flex;align-items:baseline;justify-content:space-between;gap:5px;flex-wrap:wrap}.premium-plan h2{margin:0;font-size:18px}.premium-plan strong{color:#a4691e}.premium-plan p,.premium-order p{font-size:12px;line-height:1.5}.premium-plan ul{padding-left:0;list-style:none}.premium-plan li{display:flex;align-items:center;gap:5px;margin:5px 0;font-size:12px}.premium-plan .gold-cta{width:100%;min-height:40px;justify-content:center}.premium-plan .gold-cta:disabled{opacity:.55}.premium-valid{padding:9px;text-align:center;color:#ffe0a0;font-size:12px}
.article-picture{overflow:hidden}.article-picture img{display:block;width:100%;height:100%;min-height:76px;object-fit:cover}.article-large .article-picture img{min-height:136px}
@media(max-width:360px){.premium-panel>.premium-body{grid-template-columns:34px minmax(0,1fr) minmax(0,1.3fr);gap:4px;padding:5px}.premium-crown{width:30px;height:30px}.premium-copy h3{font-size:12px}.premium-body li{font-size:7px}.profile-stats .profile-stat b{font-size:8px}}

/* DAOQUAN_PROFILE_EDITOR_R36 */
.profile-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0;max-width:100%}
.profile-edit label{display:grid;gap:5px;min-width:0;font-size:12px;font-weight:700;color:#5c442d}
.profile-edit input{box-sizing:border-box;width:100%;min-width:0;padding:10px;border:1px solid #d9c097;border-radius:8px;background:#fffdf8;color:#332c25;font:inherit}
.profile-edit button{grid-column:1/-1;justify-self:start}
@media(max-width:380px){.profile-edit{grid-template-columns:1fr}}
/* DAOQUAN_BIRTH_WHEEL_R37 */
.birth-date-control{display:block;min-width:0;width:100%}
.birth-date-control .number-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;box-sizing:border-box;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid #d6bd92;border-radius:9px;background:#fffaf0;color:#17334d;text-align:left;font:600 13px 'DQ Sans',sans-serif;cursor:pointer}
.birth-date-control .number-date-trigger:hover,.birth-date-control .number-date-trigger:focus-visible{border-color:#b77a32;background:#fff1d6;box-shadow:0 0 0 3px #dba85a33;outline:none}
.birth-date-control .number-date-trigger svg{flex:none;transform:rotate(90deg)}
.register-card .birth-date-control,.chart-row .birth-date-control,.profile-edit .birth-date-control{width:100%}
.register-card .form-row .row-control:has(.birth-date-control),.chart-row .chart-control:has(.birth-date-control){min-width:0}
.registration-error{margin:8px 0;padding:10px;border:1px solid #b33b2d;border-radius:8px;background:#fff1e9;color:#8b291d;font:600 12px/1.45 'DQ Sans',sans-serif}
.registration-error[hidden]{display:none}
/* DAOQUAN_LIFE_READING_R39_STYLE */
.number-page .life-reading-entry{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px 12px;margin:10px 0 14px;padding:14px;border:1px solid #e4b76f;border-radius:18px;background:radial-gradient(circle at 0 0,#82589c66,transparent 48%),linear-gradient(120deg,#09293c,#102d49 65%,#37233e);box-shadow:inset 0 0 0 1px #fff3c426,0 9px 22px #0007;color:#fff3d5;overflow:hidden}
.number-page .life-reading-entry:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 60%,#f4bd6320);opacity:.8}
.number-page .life-reading-entry-emblem{display:grid;place-items:center;width:46px;height:46px;border:1px solid #f1c87d;border-radius:50%;background:#482c57;box-shadow:0 0 0 4px #eabb6b22,0 0 18px #e89a7e55;color:#ffe6ac}
.number-page .life-reading-entry-copy{min-width:0}.number-page .life-reading-entry-copy small{display:block;color:#eac68f;font:700 9px/1.3 'DQ Sans',sans-serif;letter-spacing:.06em}.number-page .life-reading-entry-copy h2{margin:2px 0;color:#fff0c6;font-size:clamp(18px,5vw,24px);line-height:1.2}.number-page .life-reading-entry-copy p{margin:2px 0 0;color:#e7d9ca;font:11px/1.3 'DQ Sans',sans-serif;overflow-wrap:anywhere}
.number-page .life-reading-entry-button{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;grid-column:1/-1;width:100%;min-height:43px;padding:8px 14px;border:1px solid #ffe5ad;border-radius:999px;background:linear-gradient(#ffe8b4,#dcaa5c);box-shadow:inset 0 1px #fff9d2,0 3px 9px #0005;color:#173249;font:700 clamp(12px,3.3vw,15px)/1.2 'DQ Sans',sans-serif;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.number-page .life-reading-entry-button:hover,.number-page .life-reading-entry-button:focus-visible{transform:translateY(-2px);box-shadow:inset 0 1px #fff9d2,0 7px 15px #0008;filter:brightness(1.06)}.number-page .life-reading-entry-button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.number-page .number-life-reading{margin:0 0 16px;scroll-margin-top:12px}
@media(prefers-reduced-motion:reduce){.number-page .life-reading-entry-button{transition:none}.number-page .life-reading-entry-button:hover,.number-page .life-reading-entry-button:focus-visible{transform:none}}

/* DAOQUAN_ONE_FIELD_MOBILE_R41_STYLE */
.number-page .number-reading .reading-editorial{margin:14px 0 18px;padding:16px;border:1px solid #d8b77e;border-radius:12px;background:#fffaf0;color:#23394e;font:clamp(13px,3.35vw,16px)/1.65 "DQ Sans",sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;box-shadow:0 3px 12px #36200d18}

/* DAOQUAN_NUMBER_ART_R42_STYLE */
.number-page .number-profile{display:grid;position:relative;isolation:isolate;grid-template-columns:clamp(82px,25vw,104px) minmax(0,1fr) clamp(69px,21vw,90px);gap:8px;min-height:108px;margin:0 0 7px;padding:7px 9px;border:2px solid #e6b975;border-radius:17px;background:radial-gradient(circle at 4% 12%,#fffaf1 0 25%,transparent 55%),linear-gradient(110deg,#fff4dd 0 62%,#e2c291 100%);box-shadow:inset 0 0 0 2px #fff8e6,0 5px 16px #00121c9c;overflow:hidden}
.number-page .number-profile::before{content:"";position:absolute;z-index:-1;inset:5px;border:1px solid #d8a85e7a;border-radius:12px;pointer-events:none;background:radial-gradient(circle at 90% 40%,#1d35555e,transparent 37%),radial-gradient(circle at 12% 85%,#e9a36c4a,transparent 25%)}
.number-page .number-profile::after{content:"✦  ❀  ✦";position:absolute;z-index:0;right:4px;bottom:1px;color:#ac6c32a8;font:15px/1 serif;letter-spacing:9px;pointer-events:none}
.number-page .number-portrait{position:relative;z-index:1;display:block;width:100%;height:auto;aspect-ratio:1;border:2px solid #e3ad5f;border-radius:50%;background:#ddbd89 url('/images/number-portrait-r42.png') center 34%/cover no-repeat;box-shadow:0 0 0 3px #fff8e8,0 0 0 4px #c78e40,0 4px 8px #5c391c66;transform:scaleX(-1)}
.number-page .number-identity{position:relative;z-index:2;align-self:center;min-width:0;text-shadow:none}
.number-page .number-profile .number-identity small{display:block;margin:0;color:#9e5721;font:700 clamp(9px,2.65vw,12px)/1.2 'DQ Serif',serif;letter-spacing:.025em;white-space:normal}
.number-page .number-profile .number-identity h2{margin:4px 0 0;color:#172e46;font-size:clamp(17px,4.75vw,23px);line-height:1.08;overflow-wrap:anywhere}
.number-page .number-profile .number-identity p{display:flex;align-items:center;gap:4px;margin:7px 0 0;color:#24384b;font:600 clamp(10px,2.75vw,13px)/1.2 'DQ Sans',sans-serif;white-space:nowrap}
.number-page .number-profile .number-identity p svg{flex:none;width:15px;height:15px}
.number-page .number-wheel{position:relative;z-index:1;display:block;width:clamp(70px,21vw,90px);height:clamp(70px,21vw,90px);border:0;border-radius:50%;background:transparent url('/images/number-bagua-r42.png') center/contain no-repeat;box-shadow:0 0 16px #b0762b66;animation:number-wheel-glow 5s ease-in-out infinite alternate}
.number-page .number-wheel svg{display:none}
.number-page .numbers-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.38fr) minmax(0,1fr);gap:6px;align-items:center;min-height:180px;margin:6px 0 11px}
.number-page .side-numbers{display:grid;gap:7px;min-width:0}
.number-page .side-numbers .number-trait{position:relative;display:grid;grid-template-columns:35px minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:center;gap:1px 3px;min-width:0;min-height:79px;padding:7px 4px;border:1px solid #e6b774;border-radius:12px;background:linear-gradient(145deg,#0b2c43f5,#071a2cf6),url('/images/daoquan-wallpaper.png') center/cover;color:#fff3dc;box-shadow:inset 0 0 0 1px #ffdb9b55,0 4px 12px #000a;overflow:hidden;text-align:center}
.number-page .side-numbers .number-trait::after{content:"✦";position:absolute;right:4px;bottom:2px;color:#eabb6b5e;font-size:10px;pointer-events:none}
.number-page .side-numbers .trait-icon{grid-column:1;grid-row:1/4;display:grid;place-items:center;justify-self:center;width:32px;height:32px;border:1px solid currentColor;border-radius:50%;color:#f4a4d2;background:radial-gradient(circle,#a64d8766,#281347 78%);box-shadow:0 0 0 2px #ffffff18,0 0 13px currentColor;animation:number-icon-breathe 3.7s ease-in-out infinite alternate}
.number-page .side-numbers .trait-icon svg{width:23px;height:23px}
.number-page .side-numbers .trait-person{color:#7bceff;background:radial-gradient(circle,#3897cd66,#092846 78%);animation-delay:-.9s}
.number-page .side-numbers .trait-mountain{color:#ffd384;background:radial-gradient(circle,#b780486b,#2f231b 78%);animation-delay:-1.8s}
.number-page .side-numbers .trait-sprout{color:#8ee5b2;background:radial-gradient(circle,#4d9e6970,#103a2d 78%);animation-delay:-2.7s}
.number-page .side-numbers .number-trait b{grid-column:2;grid-row:1;color:#f9e5b9;font:700 clamp(10px,2.75vw,13px)/1.05 'DQ Serif',serif;white-space:normal;overflow-wrap:anywhere}
.number-page .side-numbers .number-trait strong{grid-column:2;grid-row:2;align-self:center;color:#ffc3e6;font:700 clamp(26px,7.8vw,38px)/.95 'DQ Serif',serif;text-shadow:0 0 11px currentColor}
.number-page .side-numbers .number-trait small{grid-column:2;grid-row:3;min-height:17px;color:#e8e2d3;font:500 clamp(8px,2.25vw,10px)/1.12 'DQ Sans',sans-serif;overflow-wrap:anywhere}
.number-page .side-numbers .number-trait:nth-child(2) strong{color:#9bd9ff}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:first-child strong{color:#ffe0a6}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:last-child strong{color:#a7efc5}
.number-page .life-number{position:relative;display:grid;align-content:center;justify-items:center;align-self:stretch;gap:3px;min-width:0;padding:0 1px;text-align:center;text-shadow:0 1px 4px #000}
.number-page .life-number>b{color:#ffdf9a;font:700 clamp(14px,3.75vw,18px)/1.1 'DQ Serif',serif;white-space:nowrap}
.number-page .life-number>b svg{width:13px;height:13px;color:#f5d59b}
.number-page .life-number>div{display:grid;place-items:center;width:min(100%,116px);aspect-ratio:1;margin:1px 0;border:2px solid #f7ca82;border-radius:50%;background:radial-gradient(circle at 50% 42%,#ac6f9b,#55336c 50%,#0e2444 77%);box-shadow:0 0 0 3px #f4ba7455,0 0 19px #ffb572cf,inset 0 0 18px #f6afd69c;color:#fff0b4;font:700 clamp(55px,16vw,80px)/1 'DQ Serif',serif;text-shadow:0 0 13px #fff0ba;animation:breath 4s ease-in-out infinite alternate}
.number-page .life-number strong{display:block;max-width:100%;min-height:21px;padding:4px 7px;border:1px solid #e8bb78;border-radius:999px;background:#0b2a42d9;color:#fff0c3;font:700 clamp(9px,2.45vw,11px)/1.08 'DQ Serif',serif;white-space:normal}
.number-page .life-number p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;max-width:165px;margin:0;overflow:hidden;color:#f7e6d1;font:500 clamp(8px,2.1vw,10px)/1.16 'DQ Sans',sans-serif}
@media(max-width:359px){.number-page .number-profile{grid-template-columns:72px minmax(0,1fr) 56px;gap:6px;min-height:92px;padding:6px}.number-page .number-wheel{width:58px;height:58px}.number-page .number-profile .number-identity small{font-size:8px}.number-page .number-profile .number-identity h2{font-size:15px}.number-page .numbers-layout{gap:4px}.number-page .side-numbers .number-trait{grid-template-columns:28px minmax(0,1fr);min-height:78px;padding:5px 2px}.number-page .side-numbers .trait-icon{width:27px;height:27px}.number-page .side-numbers .trait-icon svg{width:19px;height:19px}.number-page .side-numbers .number-trait b{font-size:9px}.number-page .side-numbers .number-trait strong{font-size:24px}.number-page .side-numbers .number-trait small{font-size:7.5px}.number-page .life-number>div{width:min(100%,100px);font-size:55px}.number-page .life-number strong{font-size:8.5px}.number-page .life-number p{font-size:7.5px}}
@keyframes number-icon-breathe{from{filter:brightness(.85);transform:scale(.96)}to{filter:brightness(1.15);transform:scale(1.04)}}
@keyframes number-wheel-glow{from{filter:brightness(.92)}to{filter:brightness(1.1)}}
@media(prefers-reduced-motion:reduce){.number-page .side-numbers .trait-icon,.number-page .number-wheel,.number-page .life-number>div{animation:none}}

/* DAOQUAN_SIX_NUMBERS_R43_STYLE */
.number-page .numbers-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.34fr) minmax(0,1fr);gap:7px;align-items:stretch;margin:8px 0 13px;min-height:208px}
.number-page .side-numbers{gap:8px}
.number-page .side-numbers .number-trait{--tone:#f4a9d2;--tone-rgb:244,169,210;isolation:isolate;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:center;column-gap:3px;row-gap:1px;min-height:98px;padding:8px 6px 6px;border:1px solid var(--tone);border-radius:15px;background:radial-gradient(circle at 14% 18%,rgba(var(--tone-rgb),.3),transparent 58%),linear-gradient(155deg,#143450 0%,#091e34 55%,#061526 100%);box-shadow:0 5px 13px #020b18ad,inset 0 0 0 1px #fff7d636,inset 0 -15px 22px #07152680;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.number-page .side-numbers .number-trait::before{content:"";position:absolute;inset:3px;border:1px solid rgba(var(--tone-rgb),.28);border-radius:11px;pointer-events:none}
.number-page .side-numbers .number-trait::after{content:"✦";right:7px;top:3px;bottom:auto;color:rgba(var(--tone-rgb),.72);font-size:10px}
.number-page .side-numbers .number-trait:nth-child(2){--tone:#81ccff;--tone-rgb:129,204,255}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:first-child{--tone:#ffd38a;--tone-rgb:255,211,138}
.number-page .numbers-layout>.side-numbers:last-child .number-trait:last-child{--tone:#8ee9b9;--tone-rgb:142,233,185}
.number-page .side-numbers .number-trait:hover{transform:translateY(-3px);box-shadow:0 9px 20px #020b18dc,0 0 16px rgba(var(--tone-rgb),.35),inset 0 0 0 1px #fff7d65c}
.number-page .side-numbers .trait-icon{grid-column:1;grid-row:1/3;width:32px;height:32px;color:var(--tone);background:radial-gradient(circle at 34% 28%,rgba(var(--tone-rgb),.42),#10243d 70%);box-shadow:0 0 0 2px rgba(var(--tone-rgb),.18),0 0 14px rgba(var(--tone-rgb),.45),inset 0 1px 4px #fff5}
.number-page .side-numbers .trait-icon svg{width:22px;height:22px}
.number-page .side-numbers .number-trait b{grid-column:2;grid-row:1;align-self:end;color:#fff0d0;font:700 clamp(10px,2.7vw,12px)/1.04 'DQ Serif',serif;text-shadow:0 1px 3px #000;overflow-wrap:normal}
.number-page .side-numbers .number-trait strong,.number-page .side-numbers .number-trait:nth-child(2) strong,.number-page .numbers-layout>.side-numbers:last-child .number-trait:first-child strong,.number-page .numbers-layout>.side-numbers:last-child .number-trait:last-child strong{grid-column:2;grid-row:2;align-self:center;color:var(--tone);font:700 clamp(27px,7.5vw,36px)/.98 'DQ Serif',serif;text-shadow:0 0 12px rgba(var(--tone-rgb),.8),0 2px 2px #000}
.number-page .side-numbers .number-trait small{grid-column:1/-1;grid-row:3;min-height:20px;margin-top:2px;padding:4px 0 0;border-top:1px solid rgba(var(--tone-rgb),.34);color:#f5eee2;font:600 clamp(9px,2.3vw,10px)/1.1 'DQ Sans',sans-serif;text-align:center}
.number-page .life-number{align-content:center;gap:5px;padding:1px 0;text-shadow:none}
.number-page .life-number>b{z-index:1;max-width:100%;color:#ffe4ab;font:700 clamp(13px,3.7vw,17px)/1.1 'DQ Serif',serif;text-shadow:0 1px 4px #000}
.number-page .life-number>b svg{vertical-align:middle}
.number-page .life-number>.life-orb{position:relative;isolation:isolate;display:grid;place-items:center;width:min(calc(100% - 8px),112px);aspect-ratio:1;margin:3px 0 2px;border:2px solid #ffe0a0;border-radius:50%;background:radial-gradient(circle at 42% 30%,#965a8f 0%,#4b315f 47%,#182745 75%,#0a1c35 100%);box-shadow:0 0 0 3px #dba9626b,0 0 0 6px #ffe0a027,0 0 23px #ecab75ba,inset 0 0 21px #ffd1d270;animation:breath 4.2s ease-in-out infinite alternate}
.number-page .life-number>.life-orb::before{content:"";position:absolute;inset:7px;border:1px solid #ffe6ab8c;border-radius:50%;box-shadow:inset 0 0 12px #efbbdf66;pointer-events:none}
.number-page .life-number>.life-orb::after{content:"✦";position:absolute;right:10px;top:10px;color:#ffe6ba;font:14px/1 'DQ Serif',serif;text-shadow:0 0 8px #fff}
.number-page .life-orb span{position:relative;z-index:1;color:#fff0bd;font:700 clamp(55px,15vw,76px)/1 'DQ Serif',serif;text-shadow:0 0 15px #ffe2b8,0 2px 3px #371d40}
.number-page .life-number>.life-summary{box-sizing:border-box;display:block;width:100%;min-height:54px;aspect-ratio:auto;margin:0;padding:5px 4px 6px;border:1px solid #e7bd77;border-radius:12px;background:linear-gradient(155deg,#17364edb,#071c33ef);box-shadow:0 5px 12px #0008,inset 0 0 0 1px #ffe9b738;text-shadow:none;animation:none}
.number-page .life-summary strong{display:block;min-height:0;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#ffe0a0;font:700 clamp(9px,2.5vw,11px)/1.1 'DQ Serif',serif}
.number-page .life-summary p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-width:none;margin:3px 0 0;overflow:hidden;color:#f2e7d8;font:500 clamp(8px,2.1vw,9px)/1.14 'DQ Sans',sans-serif}
@media(max-width:359px){.number-page .numbers-layout{gap:4px}.number-page .side-numbers{gap:6px}.number-page .side-numbers .number-trait{grid-template-columns:28px minmax(0,1fr);min-height:93px;padding:6px 4px 5px}.number-page .side-numbers .trait-icon{width:27px;height:27px}.number-page .side-numbers .trait-icon svg{width:19px;height:19px}.number-page .side-numbers .number-trait b{font-size:9px}.number-page .side-numbers .number-trait strong,.number-page .side-numbers .number-trait:nth-child(2) strong,.number-page .numbers-layout>.side-numbers:last-child .number-trait:first-child strong,.number-page .numbers-layout>.side-numbers:last-child .number-trait:last-child strong{font-size:25px}.number-page .side-numbers .number-trait small{font-size:8px}.number-page .life-number>b{font-size:12px}.number-page .life-number>.life-orb{width:min(calc(100% - 8px),98px)}.number-page .life-orb span{font-size:54px}.number-page .life-number>.life-summary{padding:5px 3px}.number-page .life-summary strong{font-size:8px}.number-page .life-summary p{font-size:7.5px}}
@media(prefers-reduced-motion:reduce){.number-page .side-numbers .number-trait{transition:none}.number-page .side-numbers .number-trait:hover{transform:none}.number-page .life-number>.life-orb{animation:none}}

/* DAOQUAN_ACCOUNT_CARD_R44_STYLE */
.number-page .number-profile{grid-template-columns:clamp(62px,20vw,78px) minmax(0,1fr) clamp(48px,16vw,64px);gap:7px;min-height:108px;padding:7px 9px}
.number-page .number-portrait{align-self:center}
.number-page .number-wheel{width:100%;height:auto;aspect-ratio:1;align-self:center}
.number-page .number-profile .number-identity small{max-width:100%;font:700 clamp(8px,2.25vw,10px)/1.1 'DQ Serif',serif;letter-spacing:0;white-space:nowrap;overflow:hidden}
.number-page .number-profile .number-identity h2{display:block;width:100%;max-width:100%;margin:5px 0 0;color:#172e46;font:700 clamp(14px,4.35vw,20px)/1.15 'DQ Serif',serif;white-space:nowrap;overflow-x:auto;overflow-y:hidden;overflow-wrap:normal;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.number-page .number-profile .number-identity h2::-webkit-scrollbar{display:none}
.number-page .number-profile .number-identity h2:focus-visible{outline:2px solid #9e5721;outline-offset:2px}
.number-page .number-birthdates{display:grid;gap:2px;margin-top:6px;min-width:0}
.number-page .number-profile .number-identity .number-birthdates p{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:baseline;gap:3px;min-width:0;margin:0;color:#24384b;font:600 clamp(9px,2.35vw,11px)/1.12 'DQ Sans',sans-serif;white-space:nowrap}
.number-page .number-birthdates span{color:#8c5b28;font-weight:700}
.number-page .number-birthdates time{min-width:0;overflow:visible;font-variant-numeric:tabular-nums}
.number-page .number-account-required{padding:18px;color:#173349}
.number-page .number-account-required h2{margin:0 0 8px;font-size:19px}
.number-page .number-account-required p{line-height:1.5}
@media(max-width:359px){.number-page .number-profile{grid-template-columns:59px minmax(0,1fr) 44px;gap:5px;min-height:98px;padding:6px}.number-page .number-profile .number-identity small{font-size:7.5px}.number-page .number-profile .number-identity h2{font-size:14px;margin-top:4px}.number-page .number-birthdates{gap:1px;margin-top:5px}.number-page .number-profile .number-identity .number-birthdates p{grid-template-columns:50px minmax(0,1fr);gap:2px;font-size:8.5px}}

/* DAOQUAN_CARD_SPACING_R45_STYLE */
.number-page .number-profile .number-identity h2{font-size:clamp(12px,3.75vw,17px);line-height:1.18}
.number-page .number-profile .number-identity .number-birthdates p{grid-template-columns:max-content minmax(0,1fr);column-gap:9px}
.number-page .number-profile .number-identity .number-birthdates p span{white-space:nowrap}
@media(max-width:359px){.number-page .number-profile .number-identity h2{font-size:clamp(11.5px,3.6vw,13px)}.number-page .number-profile .number-identity .number-birthdates p{grid-template-columns:max-content minmax(0,1fr);column-gap:7px;font-size:8px}}

/* DAOQUAN_HEX_R46_STYLE */
.hex-page .hex-content{padding-bottom:24px}
.hex-page .question-paper{padding:13px 12px 14px}
.hex-page .question-paper .gold-cta{max-width:240px;margin:14px auto 0}
.hex-mode-title{margin:11px 0 7px;color:#17354a;font:700 15px/1.2 'DQ Serif',serif}
.hex-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.hex-modes button{display:grid;align-content:center;gap:4px;min-width:0;min-height:58px;padding:6px 4px;border:1px solid #d4aa6a;border-radius:10px;background:linear-gradient(#fffaf0,#efdfbf);color:#22394b;text-align:center;box-shadow:0 2px 5px #1f273025;transition:transform .2s,box-shadow .2s}
.hex-modes button.selected{border-color:#976023;background:linear-gradient(#f8d48b,#e9ae53);box-shadow:inset 0 0 0 1px #fff3ca,0 4px 9px #ae753e73}
.hex-modes button:hover{transform:translateY(-2px);box-shadow:0 5px 11px #1f273044}
.hex-modes b{font:700 clamp(10px,2.9vw,13px)/1.1 'DQ Serif',serif}
.hex-modes small{font:500 clamp(8px,2.25vw,10px)/1.12 'DQ Sans',sans-serif}
.hex-manual,.hex-plum{margin-top:10px;padding:9px;border:1px solid #d7b783;border-radius:10px;background:#fff9ec}
.hex-manual p,.hex-plum p{margin:0 0 8px;color:#465566;font-size:11px;line-height:1.35}
.hex-manual>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.hex-manual button{display:grid;gap:2px;place-items:center;min-height:58px;padding:3px 1px;border:1px solid #cea262;border-radius:8px;background:linear-gradient(#fff9e9,#f0ddb9);color:#15334b}
.hex-manual button b{font-size:20px;color:#a26129}
.hex-manual button small,.hex-manual button span{font-size:8px;text-align:center}
.hex-plum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:9px}
.hex-plum p{grid-column:1/-1}
.hex-plum label{display:grid;gap:4px;color:#24384b;font-size:11px;font-weight:700}
.hex-plum input{min-width:0;width:100%;padding:8px;border:1px solid #ca9d5a;border-radius:8px;background:#fff;color:#142f45;font-size:15px}
.hex-ritual{position:relative;isolation:isolate;height:230px;margin:12px 0;border:1px solid #e8be73;border-radius:17px;overflow:hidden;background:radial-gradient(ellipse at 50% 59%,#b7824c 0%,#4a4b51 19%,#102f48 43%,#061c30 76%),linear-gradient(130deg,#0d3150,#071526);box-shadow:inset 0 0 0 3px #efcd8d57,0 8px 20px #0009}
.hex-ritual::before{content:"";position:absolute;inset:6px;border:1px solid #edc57978;border-radius:13px;pointer-events:none}
.hex-ritual::after{content:"✦  ✧  ✦";position:absolute;left:0;right:0;bottom:6px;text-align:center;letter-spacing:23px;color:#ffdaa2b0;font-size:11px;pointer-events:none}
.hex-ritual-glow{position:absolute;left:50%;top:57%;width:205px;height:205px;transform:translate(-50%,-50%);border-radius:50%;background:#ffd6808a;filter:blur(39px);animation:hex-pulse 3.8s ease-in-out infinite alternate}
.hex-disc{position:absolute;left:50%;top:56%;width:min(68vw,214px);height:min(68vw,214px);transform:translate(-50%,-50%);border:5px double #f4cc79;border-radius:50%;background:repeating-conic-gradient(from 22.5deg,#112b40 0deg 18deg,#193c52 18deg 22.5deg,#80532e 22.5deg 23.5deg,#102d44 23.5deg 45deg);box-shadow:0 0 0 4px #8d5c34,0 0 0 7px #f7d590bc,0 0 30px #ffda81a6,inset 0 0 15px #e8a550;animation:hex-rotate 24s linear infinite}
.hex-disc-ring{position:absolute;inset:19%;border:2px solid #f4ce86;border-radius:50%;box-shadow:0 0 0 2px #081e36,0 0 12px #eac47c}
.hex-trigram{position:absolute;color:#ffdf9d;font:700 23px/1 serif;text-shadow:0 0 5px #d28c43}
.hex-trigram-0{top:1%;left:45%}.hex-trigram-1{top:15%;right:11%}.hex-trigram-2{top:44%;right:2%}.hex-trigram-3{bottom:14%;right:12%}.hex-trigram-4{bottom:1%;left:45%}.hex-trigram-5{bottom:14%;left:12%}.hex-trigram-6{top:44%;left:2%}.hex-trigram-7{top:15%;left:11%}
.hex-taiji{position:absolute;left:50%;top:56%;width:83px;height:83px;transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 0 3px #ad783c,0 0 21px #ffd789;animation:hex-pulse 4.2s ease-in-out infinite alternate}
.hex-coin{position:absolute;z-index:2;display:grid;place-items:center;width:56px;height:56px;border:3px double #f9d387;border-radius:50%;background:radial-gradient(circle at 28% 24%,#ffe9aa,#bf7b28 38%,#6a3517 74%,#e6aa53 95%);box-shadow:0 5px 7px #0009,0 0 14px #ffd786b0,inset 0 0 0 5px #803f1e;transform-style:preserve-3d;animation:hex-coin-shake 2.6s ease-in-out infinite}
.hex-coin::before{content:"";position:absolute;inset:10px;border:1px solid #f8d897;border-radius:50%}
.hex-coin::after{content:"";position:absolute;width:13px;height:13px;border:2px solid #e6aa55;background:#0d2d42;box-shadow:inset 0 0 2px #000}
.hex-coin i{position:absolute;top:4px;color:#4d250c;font:700 9px/1 serif}
.hex-coin-a{left:11%;top:12%;animation-delay:-.3s}.hex-coin-b{right:10%;top:16%;animation-delay:-1.2s}.hex-coin-c{left:calc(50% - 28px);top:0;animation-delay:-2s}
.hex-page .hex-result{padding:13px 12px;border:1px solid #e5b571;border-radius:15px;background:linear-gradient(#fffaf0,#f6e7c9);box-shadow:0 5px 12px #001a2f70}
.hex-page .hex-result h2{font-size:18px;color:#162f44}
.hex-reading-head{padding:10px;border:1px solid #d8ad6e;border-radius:10px;background:#fff9ec;text-align:center}
.hex-reading-head small{display:block;color:#98602d;font-size:10px;font-weight:700}
.hex-reading-head h3{margin:4px 0;color:#17364d;font:700 19px/1.2 'DQ Serif',serif}
.hex-reading-head p{margin:2px 0;font-size:11px}
.hex-page .result-columns{gap:8px;margin:9px 0;padding:9px 5px;border:1px solid #dfc28d;background:#fff8e9}
.hex-page .result-columns>div{min-width:0}
.hex-page .result-columns b{display:block;font-size:12px;color:#15344c}
.hex-page .result-columns small{overflow-wrap:anywhere;color:#7a522e}
.hex-page .hex-lines{width:74px;gap:5px;margin:9px auto}
.hex-page .hex-lines>div{height:7px}
.hex-page .hex-lines .moving span{background:#ad552c}
.hex-meaning{display:grid;gap:3px}
.hex-meaning h3{margin:9px 0 0;color:#965a25;font:700 15px/1.15 'DQ Serif',serif}
.hex-meaning p,.hex-page .hex-source-note{margin:0;color:#24394b;font-size:12px;line-height:1.46}
.hex-moving-note{display:grid;gap:4px;margin:12px 0;padding:9px;border-left:3px solid #b97a37;border-radius:7px;background:#f2dfbd;color:#244157;font-size:12px}
.hex-moving-note small{font-size:10px;line-height:1.35}
.hex-line-details{margin:10px 0;border:1px solid #d3ad71;border-radius:9px;background:#fff7e7}
.hex-line-details summary{padding:9px;color:#17374e;font-size:12px;font-weight:700;cursor:pointer}
.hex-line-details ol{display:grid;gap:6px;margin:0;padding:0 10px 10px 28px}
.hex-line-details li{padding:5px;border-bottom:1px solid #e6d0a9;font-size:11px}
.hex-line-details li:last-child{border-bottom:0}
.hex-line-details li p{margin:3px 0 0;line-height:1.35}
.hex-page .hex-source-note{padding-top:9px;border-top:1px solid #d7b480;font-size:10px;color:#596276}
@keyframes hex-rotate{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes hex-coin-shake{0%,100%{transform:translateY(0) rotate(-10deg) rotateY(0)}50%{transform:translateY(-14px) rotate(12deg) rotateY(28deg)}}
@keyframes hex-pulse{from{opacity:.65;filter:brightness(.92)}to{opacity:1;filter:brightness(1.1)}}
@media(max-width:359px){.hex-modes{gap:4px}.hex-modes button{padding:5px 2px}.hex-modes b{font-size:10px}.hex-modes small{font-size:8px}.hex-ritual{height:210px}.hex-disc{width:min(67vw,190px);height:min(67vw,190px)}.hex-coin{width:48px;height:48px}.hex-coin-c{left:calc(50% - 24px)}}
@media(prefers-reduced-motion:reduce){.hex-disc,.hex-coin,.hex-taiji,.hex-ritual-glow{animation:none}.hex-modes button{transition:none}.hex-modes button:hover{transform:none}}

/* DAOQUAN_HEX_3D_R47_STYLE */
.hex-page .hex-content{overflow-x:hidden}
.hex-page .question-paper .gold-cta{max-width:260px}
.hex-coin-method{display:grid;gap:3px;margin:12px 0 0;padding:10px 12px;border:1px solid #c89850;border-radius:12px;background:linear-gradient(135deg,#fff7e7,#f5deb4);color:#244053;box-shadow:inset 0 1px #fff,0 3px 9px #80613224}
.hex-coin-method b{font:700 14px/1.2 'DQ Serif',serif;color:#8a4b20}
.hex-coin-method span{font-size:11px;line-height:1.4}
.hex-ritual{height:clamp(210px,61vw,262px);background:#1d1620 url('/images/hex-scene-r47.jpg') center center/cover no-repeat;perspective:640px;transform:translateZ(0);box-shadow:inset 0 0 0 3px #e7bc7666,0 8px 20px #0008}
.hex-ritual::before{z-index:9;inset:5px;border-color:#f4d5918c}
.hex-ritual::after{content:none}
.hex-ambient{position:absolute;inset:-8%;background:radial-gradient(circle at 52% 70%,#ffd16e38,transparent 34%),linear-gradient(110deg,transparent 28%,#ffda8418 53%,transparent 80%);mix-blend-mode:screen;animation:hex-ambient-breathe 5.6s ease-in-out infinite alternate;pointer-events:none}
.hex-smoke{position:absolute;z-index:2;left:-6%;bottom:24%;width:32%;height:48%;border-radius:50%;background:radial-gradient(ellipse,#f9efdf30,transparent 67%);filter:blur(11px);animation:hex-smoke-drift 7s ease-in-out infinite alternate;pointer-events:none}
.hex-ritual-glow{left:49%;top:68%;width:58%;height:43%;background:#ffb84363;filter:blur(30px);z-index:1;animation:hex-pulse 2.5s ease-in-out infinite alternate}
.hex-platform{position:absolute;z-index:1;left:50%;top:74%;width:57%;height:22%;border-radius:50%;transform:translate(-50%,-50%);background:#050f1c8f;filter:blur(15px)}
.hex-disc{z-index:3;left:50%;top:63%;width:clamp(176px,64vw,260px);height:clamp(176px,64vw,260px);border:7px ridge #e3b864;background:repeating-conic-gradient(from 22.5deg,#17283a 0deg 17deg,#563a20 17deg 19deg,#071b2c 19deg 22.5deg,#ae8647 22.5deg 23.5deg,#102c3d 23.5deg 45deg);box-shadow:0 0 0 3px #5c321b,0 0 0 7px #d1a865,0 14px 0 -2px #4c2615,0 21px 17px #000a,inset 0 0 0 5px #0c2434,inset 0 0 14px #f5c87e;transform-style:preserve-3d;animation:hex-disc-3d 18s linear infinite;backface-visibility:visible}
.hex-disc-ring{inset:18%;border:3px double #e3bb71;box-shadow:0 0 0 4px #071b2c,0 0 15px #e7a956}
.hex-trigram{font-size:clamp(19px,6vw,25px);color:#fff0bc;text-shadow:0 1px 2px #000,0 0 6px #ffc873}
.hex-disc .hex-taiji{left:50%;top:50%;width:34%;height:34%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #ad783c,0 0 16px #ffd789;animation:none}
.hex-hand{position:absolute;z-index:6;inset:0;background:url('/images/hex-hand-r47.png') center/cover no-repeat;transform-origin:15% 0;transform:translate3d(-2%,-5%,0) rotate(-3deg);pointer-events:none;filter:drop-shadow(2px 4px 5px #0007)}
.hex-coin{z-index:7;width:clamp(30px,10vw,43px);height:clamp(30px,10vw,43px);border-width:2px;transform-style:preserve-3d;animation:none;box-shadow:0 3px 6px #000b,0 0 9px #ffdf8ab0,inset 0 0 0 4px #803f1e}
.hex-coin::before{inset:5px}.hex-coin::after{width:8px;height:8px}
.hex-coin i{top:2px;font-size:7px}
.hex-coin-a{left:39%;top:66%;transform:translate3d(-50%,-50%,0) rotate(-14deg)}
.hex-coin-b{left:50%;top:73%;transform:translate3d(-50%,-50%,0) rotate(19deg)}
.hex-coin-c{left:60%;top:66%;transform:translate3d(-50%,-50%,0) rotate(-8deg)}
.hex-cast-status{position:absolute;z-index:8;right:10px;bottom:9px;color:#fff1ce;font:700 11px/1.2 'DQ Sans',sans-serif;text-shadow:0 1px 5px #000;letter-spacing:.03em}
.hex-ritual.casting .hex-hand{animation:hex-hand-release .72s cubic-bezier(.25,.1,.3,1) both}
.hex-ritual.casting .hex-coin-a{animation:hex-coin-drop-a .72s cubic-bezier(.22,.64,.32,1) both}
.hex-ritual.casting .hex-coin-b{animation:hex-coin-drop-b .72s cubic-bezier(.22,.64,.32,1) both}
.hex-ritual.casting .hex-coin-c{animation:hex-coin-drop-c .72s cubic-bezier(.22,.64,.32,1) both}
.hex-ritual.casting .hex-ambient{animation-duration:1.2s}
@keyframes hex-disc-3d{from{transform:translate(-50%,-50%) rotateX(57deg) rotateZ(0)}to{transform:translate(-50%,-50%) rotateX(57deg) rotateZ(360deg)}}
@keyframes hex-ambient-breathe{0%{opacity:.35;transform:translateX(-2%) scale(1)}100%{opacity:.95;transform:translateX(2%) scale(1.04)}}
@keyframes hex-smoke-drift{from{opacity:.22;transform:translate3d(-8%,10%,0) scale(.9)}to{opacity:.6;transform:translate3d(22%,-21%,0) scale(1.3)}}
@keyframes hex-hand-release{0%{transform:translate3d(-8%,-13%,0) rotate(-9deg)}35%{transform:translate3d(0,0,0) rotate(0)}57%{transform:translate3d(1%,2%,0) rotate(3deg)}100%{transform:translate3d(-2%,-5%,0) rotate(-3deg)}}
@keyframes hex-coin-drop-a{0%,25%{transform:translate3d(-95px,-82px,70px) rotateY(20deg) rotateX(0) scale(.73);opacity:0}34%{opacity:1}67%{transform:translate3d(-45px,-47px,110px) rotateY(280deg) rotateX(340deg) scale(1.15)}84%{transform:translate3d(-50%,4px,12px) rotateY(560deg) rotateX(600deg) scale(1)}92%{transform:translate3d(-50%,-14px,20px) rotateY(620deg) rotateX(660deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@keyframes hex-coin-drop-b{0%,29%{transform:translate3d(-109px,-95px,70px) rotateY(12deg) rotateX(0) scale(.72);opacity:0}36%{opacity:1}70%{transform:translate3d(-57px,-53px,100px) rotateY(260deg) rotateX(350deg) scale(1.1)}87%{transform:translate3d(-50%,0,10px) rotateY(570deg) rotateX(600deg)}94%{transform:translate3d(-50%,-11px,17px) rotateY(630deg) rotateX(680deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@keyframes hex-coin-drop-c{0%,33%{transform:translate3d(-120px,-84px,70px) rotateY(10deg) rotateX(0) scale(.7);opacity:0}40%{opacity:1}72%{transform:translate3d(-60px,-45px,100px) rotateY(320deg) rotateX(350deg) scale(1.14)}88%{transform:translate3d(-50%,2px,11px) rotateY(550deg) rotateX(610deg)}95%{transform:translate3d(-50%,-12px,19px) rotateY(650deg) rotateX(675deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@media(max-width:359px){.hex-ritual{height:208px}.hex-disc{width:188px;height:188px}.hex-coin{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.hex-disc,.hex-ambient,.hex-smoke,.hex-ritual-glow,.hex-ritual.casting .hex-hand,.hex-ritual.casting .hex-coin{animation:none!important}.hex-ritual.casting .hex-coin-a{transform:translate3d(-50%,-50%,0)}.hex-ritual.casting .hex-coin-b{transform:translate3d(-50%,-50%,0)}.hex-ritual.casting .hex-coin-c{transform:translate3d(-50%,-50%,0)}}

/* DAOQUAN_HEX_ENGRAVED_R48_STYLE */
.hex-ritual{height:auto;min-height:0;aspect-ratio:4/3;background:#241711 url('/images/hex-engraved-r49.png?v=49') center/cover no-repeat;border-color:#c89551}
.hex-ritual::before{inset:4px;border:1px solid #e5b86c8a;box-shadow:inset 0 0 12px #0005}
.hex-disc,.hex-platform,.hex-ritual-glow{display:none!important}
.hex-ambient{z-index:1;inset:0;background:radial-gradient(ellipse 39% 17% at 52% 68%,#ffe29455,transparent 87%),radial-gradient(circle at 89% 31%,#ffdd8533,transparent 21%);animation:hex-inlay-glow 4.6s ease-in-out infinite alternate;mix-blend-mode:screen}
.hex-smoke{left:1%;bottom:37%;width:24%;height:43%;opacity:.22;filter:blur(12px);animation-duration:8.5s}
.hex-hand{inset:0;background-image:url('/images/hex-hand-r48.png');background-position:center;background-size:cover;transform-origin:10% 0;transform:translate3d(-1%,-2%,0) rotate(-1.5deg)}
.hex-coin{width:clamp(31px,10.5vw,46px);height:clamp(31px,10.5vw,46px);border:1px solid #e0c375;overflow:hidden;background-image:url('/images/hex-three-coins-r49.png?v=49');background-repeat:no-repeat;background-size:300% 300%;box-shadow:0 5px 6px #190a06bd,0 0 12px #ffda73a6;backface-visibility:visible}
.hex-coin::before,.hex-coin::after,.hex-coin i{display:none}
.hex-coin-a{left:44%;top:62%;background-position:50% 23%;transform:translate3d(-50%,-50%,0) rotate(-16deg)}
.hex-coin-b{left:54%;top:68%;background-position:19% 67%;transform:translate3d(-50%,-50%,0) rotate(17deg)}
.hex-coin-c{left:62%;top:63%;background-position:76% 67%;transform:translate3d(-50%,-50%,0) rotate(-12deg)}
.hex-ritual.casting .hex-hand{animation:hex-hand-r48 .72s cubic-bezier(.25,.1,.3,1) both}
.hex-ritual.casting .hex-coin-a{animation:hex-fall-r48-a .72s cubic-bezier(.22,.64,.32,1) both}
.hex-ritual.casting .hex-coin-b{animation:hex-fall-r48-b .72s cubic-bezier(.22,.64,.32,1) both}
.hex-ritual.casting .hex-coin-c{animation:hex-fall-r48-c .72s cubic-bezier(.22,.64,.32,1) both}
.hex-cast-status{right:11px;bottom:9px;border-radius:5px;padding:2px 5px;background:#21120aa6}
@keyframes hex-inlay-glow{from{opacity:.33;filter:brightness(.8)}to{opacity:.84;filter:brightness(1.16)}}
@keyframes hex-hand-r48{0%{transform:translate3d(-6%,-9%,0) rotate(-5deg)}36%{transform:translate3d(0,1%,0) rotate(1deg)}62%{transform:translate3d(1%,2%,0) rotate(2deg)}100%{transform:translate3d(-1%,-2%,0) rotate(-1.5deg)}}
@keyframes hex-fall-r48-a{0%,23%{opacity:0;transform:translate3d(-31px,-57px,40px) rotateY(0) scale(.55)}30%{opacity:1}64%{transform:translate3d(-12px,-31px,65px) rotateY(290deg) rotateX(320deg) scale(1.1)}82%{transform:translate3d(-50%,0,6px) rotateY(530deg) rotateX(560deg)}91%{transform:translate3d(-50%,-12px,15px) rotateY(630deg) rotateX(650deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@keyframes hex-fall-r48-b{0%,28%{opacity:0;transform:translate3d(-50px,-69px,40px) rotateY(0) scale(.55)}35%{opacity:1}68%{transform:translate3d(-21px,-33px,69px) rotateY(310deg) rotateX(340deg) scale(1.1)}85%{transform:translate3d(-50%,1px,6px) rotateY(560deg) rotateX(580deg)}93%{transform:translate3d(-50%,-11px,14px) rotateY(630deg) rotateX(655deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@keyframes hex-fall-r48-c{0%,32%{opacity:0;transform:translate3d(-67px,-57px,40px) rotateY(0) scale(.55)}39%{opacity:1}72%{transform:translate3d(-24px,-32px,69px) rotateY(320deg) rotateX(340deg) scale(1.1)}87%{transform:translate3d(-50%,1px,6px) rotateY(560deg) rotateX(580deg)}94%{transform:translate3d(-50%,-11px,14px) rotateY(630deg) rotateX(655deg)}100%{transform:translate3d(-50%,-50%,0) rotateY(720deg) rotateX(720deg)}}
@media(max-width:359px){.hex-ritual{height:auto;aspect-ratio:4/3}.hex-coin{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){.hex-ambient,.hex-ritual.casting .hex-hand,.hex-ritual.casting .hex-coin{animation:none!important}}

/* DAOQUAN_HEX_IMAGE_FIX_R49: PNG scene and three coins; versioned URLs */
/* DAOQUAN_TUVI_R53: readable detail sheets, linked cards and consistent controls. */
.palace-stats>button{display:grid;grid-template-columns:25px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;column-gap:3px;min-width:0;min-height:56px;padding:5px;border:1px solid #d6a65e;border-radius:9px;background:linear-gradient(155deg,#0d354e,#00192b);box-shadow:inset 0 0 0 1px #e9c27c55,0 2px 5px #0008;color:#fff0cc;text-align:left;cursor:pointer}
.palace-stats>button>span{grid-row:span 2;display:grid;place-items:center;width:24px;height:24px;border:1px solid #e5b76a;border-radius:50%;color:#f8d28a}
.palace-stats>button:hover,.palace-stats>button:focus-visible,.palace-fortune button:focus-visible,.timeline button:focus-visible{outline:2px solid #f6cf82;outline-offset:2px}
.analysis-page .narrative-tags button{min-width:0;display:flex;align-items:center;justify-content:center;gap:3px;min-height:29px;padding:3px 2px;border:1px solid #edd5ac;border-radius:8px;background:linear-gradient(#fff9e8,#f7e9cd);box-shadow:0 1px 2px #af88463d;color:#583d20;font:clamp(7px,1.95vw,10px)/1.17 'DQ Sans',sans-serif;cursor:pointer}
.analysis-page .narrative-tags button svg{width:clamp(11px,3.4vw,16px);height:clamp(11px,3.4vw,16px);color:#b97d29}
.analysis-read-more{display:inline-flex;align-items:center;gap:6px;min-height:30px;margin:9px 0 0 7px;padding:5px 10px;border:1px solid #bc9b69;border-radius:8px;background:#fff9ea;color:#14314a;font:600 10px 'DQ Sans',sans-serif}
.reading-overlay{position:fixed;z-index:3000;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:12px 8px max(8px,env(safe-area-inset-bottom));background:#00111dba;backdrop-filter:blur(5px)}
.reading-sheet{display:flex;flex-direction:column;width:min(100%,720px);max-height:min(92dvh,950px);min-height:min(400px,72dvh);overflow:hidden;border:2px solid #d9a65d;border-radius:19px;background:radial-gradient(circle at 95% 0%,#fff9e8,#fff3da 52%,#f6e4c2);box-shadow:0 20px 65px #000c,inset 0 0 0 3px #fff9e3;color:#172d42;outline:none}
.reading-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex:none;padding:15px 16px 11px;border-bottom:1px solid #d9b984;background:linear-gradient(110deg,#fff6dd,#f6dcaa)}
.reading-head small{font:700 9px 'DQ Sans',sans-serif;letter-spacing:.13em;color:#946323}.reading-head h2{display:flex;align-items:center;gap:8px;margin:4px 0 0;font-size:clamp(19px,5vw,27px);line-height:1.2}.reading-head h2 svg{flex:none;color:#ab762e}
.reading-head button{flex:none;width:37px;height:37px;border:1px solid #cda564;border-radius:50%;background:#fff9e9;color:#294158;font:27px/1 'DQ Sans',sans-serif;cursor:pointer}
.reading-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px 25px;scrollbar-color:#bf904a #f8ead0}
.reading-profile{padding:10px 12px;border:1px solid #e6cca1;border-radius:9px;background:#fffaf0;font:600 12px/1.5 'DQ Sans',sans-serif;color:#75512b}
.reading-body{margin-top:14px}.reading-body p{margin:0 0 15px;font:clamp(14px,3.5vw,17px)/1.75 'DQ Sans',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.reading-status{margin:24px 0;padding:15px;border:1px solid #e4c492;border-radius:10px;background:#fff9eb;font:14px/1.55 'DQ Sans',sans-serif}
.reading-retry{min-height:39px;padding:8px 13px;border:1px solid #ad7a33;border-radius:9px;background:linear-gradient(#ffe8b8,#ddb16b);color:#172b41;font:700 12px 'DQ Sans',sans-serif;cursor:pointer}.reading-retry:disabled{opacity:.72;cursor:progress}
.reading-note{margin-top:19px;padding-top:12px;border-top:1px solid #e4c89d;color:#735c45;font:11px/1.5 'DQ Sans',sans-serif}
@media(max-width:360px){.palace-stats>button{grid-template-columns:1fr;text-align:center;justify-items:center}.palace-stats>button>span{grid-row:auto}.reading-scroll{padding:13px}}
@media(min-width:760px){.reading-overlay{align-items:center}.reading-sheet{min-height:min(640px,85dvh)}}
body.reading-open{overflow:hidden}
/* R53 polish: keep artwork inside its column and give the reading text room. */
.analysis-page .narrative-layout{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:12px;align-items:stretch}
.analysis-page .narrative-art{width:100%;min-width:0;min-height:88px;height:100%;aspect-ratio:auto;background-size:cover;background-position:center}
.analysis-page .narrative-layout>div{min-width:0;position:relative}.analysis-page .narrative-layout p{font-size:clamp(10px,2.8vw,13px);line-height:1.45}
.analysis-page .timeline button{min-height:66px}.analysis-page .timeline-description{font-size:clamp(9px,2.45vw,11px);line-height:1.35}
@media(max-width:370px){.analysis-page .narrative-layout{grid-template-columns:minmax(0,41%) minmax(0,1fr);gap:8px}}

/* DaoQuan R64 reading layout */
.analysis-page .analysis-one-tab{display:flex;align-items:center;justify-content:center;gap:8px;color:#f8deb0;font-weight:700;letter-spacing:.02em;padding:9px}.analysis-page .reading-full{overflow:hidden}.analysis-page .reading-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;padding:10px;border:1px solid #d4b47c;border-radius:10px;background:#fff8e9;color:#213b4c;font-size:12px}.analysis-page .reading-identity>*{min-width:0;overflow-wrap:anywhere}.analysis-page .reading-identity b{grid-column:1/-1;font-size:16px}.analysis-page .reading-full-scroll{max-height:65vh;min-height:130px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:12px;margin-top:10px;background:#fffbf3;border:1px solid #dfc593;border-radius:12px;line-height:1.65;scrollbar-width:thin}.analysis-page .reading-full-scroll:focus-visible{outline:2px solid #b77927}.analysis-page .reading-chapter{border-bottom:1px solid #e2d2b3;padding-bottom:8px;margin-bottom:10px}.analysis-page .reading-chapter h3{margin:3px 0;color:#18364c}.analysis-page .reading-chapter p{white-space:pre-wrap;overflow-wrap:anywhere}.analysis-page .analysis-articles .article-card{width:100%;max-width:100%}.palaces-page .palace-generate{width:100%;min-height:52px;border:1px solid #f2d59b;border-radius:12px;background:linear-gradient(145deg,#f7d68b,#cc913a);color:#162d3d;font-size:15px;font-weight:800;box-shadow:0 4px 12px #0007}.palaces-page .palace-view{display:block;width:100%;margin-top:9px;padding:12px;border:1px solid #b99a6b;border-radius:10px;background:#fff9eb;color:#17354b;font-weight:700}.palaces-page .palace-generate:disabled{opacity:.7;cursor:wait}@media(max-width:370px){.analysis-page .reading-identity{grid-template-columns:1fr}.analysis-page .reading-identity b{grid-column:auto}}
/* R64: all rules are loaded from a same-origin file because inline styles are blocked. */
.analysis-page .analysis-one-tab{display:flex;align-items:center;justify-content:center;min-height:46px;padding:9px 12px;margin:10px 0 8px;border:1px solid #d3a15b;border-radius:14px;background:linear-gradient(135deg,#12374f,#001a2b);box-shadow:inset 0 0 0 1px #e9c47e70,0 5px 15px #0009;color:#fff1cd;font-family:Georgia,'Times New Roman',serif;font-size:clamp(12px,3.55vw,17px);font-weight:800;letter-spacing:.015em;text-align:center;white-space:nowrap;text-shadow:0 2px 3px #000;overflow:hidden}
.analysis-page .reading-full{border-radius:14px;overflow:hidden}
.analysis-page .reading-full>h2{display:flex;align-items:center;gap:7px;line-height:1.25;font-size:clamp(14px,4vw,19px);overflow-wrap:anywhere}
.analysis-page .reading-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;padding:12px;margin:8px 0;border:1px solid #d5ae70;border-radius:11px;background:#fff7e7;color:#173349;line-height:1.4;font-family:Georgia,'Times New Roman',serif;font-size:clamp(11px,3.2vw,14px)}
.analysis-page .reading-identity b{grid-column:1/-1;font-size:clamp(16px,4.7vw,21px);line-height:1.2}
.analysis-page .reading-identity span{display:block;min-width:0;overflow-wrap:anywhere}
.analysis-page .reading-full-scroll{display:block;max-height:65vh;min-height:145px;padding:12px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;background:#fffbf3;border:1px solid #d4b77c;border-radius:11px;scrollbar-width:thin;color:#243b4e}
.analysis-page .reading-full-scroll p{font-size:clamp(12px,3.5vw,15px);line-height:1.6;margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.analysis-page .reading-chapter{padding:8px 0 12px;border-bottom:1px solid #dccaac}
.analysis-page .reading-chapter h3{font-size:17px;color:#15384f;margin:4px 0 9px}
.analysis-page .analysis-articles .article-card{width:100%;max-width:100%}
.palaces-page .palace-reading-actions{padding:12px;border-radius:14px}
.palaces-page .palace-reading-actions h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(15px,4.3vw,20px);font-weight:800;line-height:1.2;white-space:nowrap;text-shadow:0 2px 4px #000}
.palaces-page .palace-reading-actions h2 span{min-width:0}
.palaces-page .palace-reading-actions .palace-generate{display:flex;justify-content:center;align-items:center;width:100%;min-height:52px;padding:10px 14px;border:1px solid #f2d49c;border-radius:11px;background:linear-gradient(145deg,#ffebbd,#d49b4e);box-shadow:inset 0 1px 0 #fff7dc,0 5px 12px #0008;color:#17344b;font-family:Georgia,'Times New Roman',serif;font-size:clamp(13px,3.8vw,18px);font-weight:800;text-align:center;white-space:nowrap;letter-spacing:.01em}
.palaces-page .palace-reading-actions .palace-generate:disabled{opacity:.85;cursor:default}
.palaces-page .reading-progress{padding:10px 5px 2px;color:#ffedc3}
.palaces-page .reading-progress-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}
.palaces-page .reading-progress-caption strong{font-size:18px}
.palaces-page .reading-progress-track{display:block;width:100%;height:14px;margin-top:7px;accent-color:#e9bd6d;border-radius:10px;overflow:hidden}
.palaces-page .reading-progress-track::-webkit-progress-bar{background:#23465c;border-radius:10px}
.palaces-page .reading-progress-track::-webkit-progress-value{background:linear-gradient(90deg,#bd762e,#ffdfa0);border-radius:10px;transition:width .4s ease}
.palaces-page .reading-progress-track::-moz-progress-bar{background:linear-gradient(90deg,#bd762e,#ffdfa0);border-radius:10px}
.palaces-page .palace-view-card{margin-top:10px;padding:7px;border:1px solid #d1a15b;border-radius:14px;background:linear-gradient(135deg,#12374f,#001a2b);box-shadow:inset 0 0 0 1px #e9c47e70,0 5px 12px #0008}
.palaces-page .palace-view-card .palace-view{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;padding:9px 12px;border:1px solid #e2bd7b;border-radius:10px;background:linear-gradient(135deg,#fff2ce,#d89d4a);color:#19364c;font-family:Georgia,'Times New Roman',serif;font-size:clamp(14px,4vw,19px);font-weight:800;white-space:nowrap;text-shadow:0 1px 0 #fff9df;box-shadow:inset 0 1px 0 #fff,0 3px 8px #0005}
@media(max-width:370px){.analysis-page .reading-identity{grid-template-columns:1fr}.analysis-page .reading-identity b{grid-column:auto}}

/* DaoQuan R65 chart engine */
/* DaoQuan R65: chart stars from the calculation engine. */
.chart-page .chart-lunar-leap{display:flex;align-items:center;gap:9px;padding:10px 15px;border:1px solid #d4a968;border-radius:10px;background:#fff4dc;color:#19354c;font-weight:700}
.chart-page .chart-lunar-leap[hidden]{display:none}
.palaces-page .palace-computed{min-height:95px}
.palaces-page .palace-star-list{display:flex;flex:1;flex-direction:column;gap:3px;width:100%;min-width:0;max-height:73px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;border-block:1px solid #ddc79c;padding:2px 0;color:#213b50;font:clamp(7px,1.8vw,9px)/1.2 Georgia,serif;scrollbar-width:thin}
.palaces-page .palace-star-list strong{color:#a92b24;overflow-wrap:anywhere}
.palaces-page .palace-star-list>span{overflow-wrap:anywhere}
.palaces-page .palace-computed .palace-foot{font-size:clamp(6px,1.65vw,8px)}
.palaces-page .palace-selection p{font-size:13px;line-height:1.55;color:#25394b;overflow-wrap:anywhere}

/* DaoQuan R66 saved chart tab */
.chart-page .saved-charts{padding:12px 14px 18px;color:#18364e}
.chart-page .saved-charts h2{margin:6px 0 14px;font:700 20px Georgia,serif}
.chart-page .saved-charts>p{line-height:1.55;margin:12px 0}
.chart-page .saved-chart{display:grid;gap:12px;margin:10px 0;padding:14px;border:1px solid #d8b77c;border-radius:12px;background:#fff8e9;box-shadow:0 2px 9px #46331312}
.chart-page .saved-chart>div:first-child{display:grid;gap:5px;min-width:0}
.chart-page .saved-chart b{overflow-wrap:anywhere;font-size:17px}
.chart-page .saved-chart small{line-height:1.5;color:#536474}
.chart-page .saved-chart-actions{display:flex;flex-wrap:wrap;gap:8px}
.chart-page .saved-chart-actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:40px;padding:8px 11px;border:1px solid #c79b52;border-radius:9px;background:#102f43;color:#fff4cf;font:600 13px Georgia,serif;cursor:pointer}
.chart-page .saved-chart-actions button:focus-visible,.chart-page .chart-tabbar button:focus-visible{outline:3px solid #eaa448;outline-offset:2px}

/* DaoQuan R67 palace presentation */
.palaces-page .palace-center{position:relative;display:flex!important;align-items:stretch!important;justify-content:stretch!important;min-width:0!important;width:auto!important;height:auto!important;min-height:0!important;padding:4px!important;border:0!important;border-radius:16px!important;background:transparent!important;box-shadow:none!important;clip-path:none!important;overflow:visible!important;transform:none!important}
.palaces-page .palace-center::before,.palaces-page .palace-center::after{content:none!important;display:none!important}
.palaces-page .palace-center-plate{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(3px,.9vw,7px);width:100%;min-width:0;min-height:100%;padding:clamp(9px,2vw,18px);border:2px solid #d8aa61;border-radius:15px;background:radial-gradient(circle at 82% 7%,#f4d69248,transparent 43%),linear-gradient(145deg,#082a40 0%,#12364c 53%,#071e32 100%);box-shadow:inset 0 0 0 2px #102b3a,inset 0 0 0 3px #c69c5890,0 8px 22px #04131f9c;color:#f9edd2;text-align:center;font-family:'Be Vietnam Pro',Georgia,serif}
.palaces-page .palace-center-plate::before{content:'';position:absolute;inset:7px;border:1px solid #d8ad644d;border-radius:10px;pointer-events:none}
.palaces-page .palace-center-kicker{position:relative;color:#e8c889;font-size:clamp(7px,1.55vw,10px);font-weight:800;letter-spacing:.14em;line-height:1.3}
.palaces-page .palace-person-name{position:relative;display:block;width:100%;min-width:0;margin:1px 0 3px;color:#fff6dd;font-family:'Playfair Display','Be Vietnam Pro',Georgia,serif;font-size:clamp(12px,2.9vw,21px);font-weight:700;line-height:1.2;text-shadow:0 2px 7px #f0b35290;overflow-wrap:anywhere}
.palaces-page .palace-person-details{position:relative;display:grid;gap:clamp(3px,.75vw,6px);width:100%;padding-top:6px;border-top:1px solid #e4be7891}
.palaces-page .palace-person-details>span{display:flex;align-items:baseline;justify-content:space-between;gap:5px;min-width:0;line-height:1.28;text-align:left}
.palaces-page .palace-person-details em{flex:0 0 auto;color:#d2b983;font:500 clamp(7px,1.65vw,10px)/1.3 'Be Vietnam Pro',sans-serif;font-style:normal}
.palaces-page .palace-person-details b{min-width:0;color:#fff9e9;font:700 clamp(7px,1.68vw,10px)/1.3 'Be Vietnam Pro',sans-serif;text-align:right;overflow-wrap:anywhere}
.palaces-page .palace-center-plate>i{position:relative;color:#e7c482;font-size:8px;letter-spacing:.07em}
.palaces-page .demo-notice{display:grid;gap:5px;padding:14px 16px;border:1px solid #ba8e53;border-radius:12px;background:linear-gradient(135deg,#0a273a,#103b53);box-shadow:inset 0 1px 0 #f2ce836b,0 7px 18px #06192766;color:#f5e5c0;text-align:center;font-family:'Be Vietnam Pro',sans-serif;line-height:1.5}
.palaces-page .demo-notice strong{font-size:clamp(11px,3vw,15px);font-weight:700}
.palaces-page .demo-notice span{font-size:clamp(10px,2.8vw,14px);color:#ffdc93}
.palaces-page .demo-notice small{font-size:10px;color:#f2dcae}
.palaces-page .palace-stats{gap:8px!important}
.palaces-page .palace-stats>button{display:grid!important;grid-template-columns:clamp(32px,8vw,43px) minmax(0,1fr);grid-template-rows:auto auto;align-content:center;column-gap:7px;min-width:0;min-height:66px;padding:10px!important;border:1px solid #bd914b!important;border-radius:11px!important;background:linear-gradient(140deg,#082839,#123c52 62%,#09283b)!important;box-shadow:inset 0 1px 0 #ffe3a166,inset 0 -2px 0 #030f16,0 5px 12px #06162487!important;color:#fff1d0;text-align:left;font-family:'Be Vietnam Pro',sans-serif}
.palaces-page .palace-stats>button>span{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:clamp(32px,8vw,43px);height:clamp(32px,8vw,43px);border:1px solid #e1b960;border-radius:10px;background:radial-gradient(circle at 40% 25%,#e2b96135,#81541922 58%,#032132);color:#fbd47d;box-shadow:0 0 11px #e1b95d40}
.palaces-page .palace-stats>button>span svg{width:clamp(23px,5.5vw,30px);height:clamp(23px,5.5vw,30px)}
.palaces-page .palace-stats>button>b{grid-column:2;grid-row:1;align-self:end;min-width:0;color:#fff5dd;font-size:clamp(9px,2.35vw,12px);font-weight:800;line-height:1.25;white-space:nowrap;letter-spacing:0}
.palaces-page .palace-stats>button>small{grid-column:2;grid-row:2;align-self:start;min-width:0;margin-top:2px;color:#e6c98e;font-size:clamp(8px,2vw,10px);font-weight:600;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
.palaces-page .palace-stats>button:hover,.palaces-page .palace-stats>button:focus-visible{border-color:#f6d486!important;filter:brightness(1.14);transform:translateY(-2px)}
.palaces-page .palace-reading-actions{position:relative;overflow:hidden;padding:15px!important;border:1px solid #d8ad60!important;border-radius:17px!important;background:radial-gradient(circle at 50% -45%,#be8b434f,transparent 66%),linear-gradient(140deg,#052337,#10374b 65%,#092437)!important;box-shadow:inset 0 0 0 3px #10364b,inset 0 0 0 4px #c6994c8c,0 12px 25px #041522aa!important}
.palaces-page .palace-reading-actions::before{content:'ĐẠO QUÁN · KHÁM PHÁ THIÊN CƠ';display:block;margin:0 0 11px;color:#e7c37d;text-align:center;font:700 9px/1.5 'Be Vietnam Pro',sans-serif;letter-spacing:.16em}
.palaces-page .palace-generate{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:58px;padding:12px!important;border:1px solid #ffe2a4!important;border-radius:12px!important;background:linear-gradient(145deg,#fff5d3 0%,#f4d495 36%,#c88e3e 100%)!important;box-shadow:inset 0 2px 0 #fffdf5,0 5px 0 #80572e,0 10px 18px #0007!important;color:#17374b!important;text-align:center;font:800 clamp(14px,3.8vw,19px)/1.25 'Be Vietnam Pro',Georgia,serif!important;letter-spacing:.025em;text-shadow:0 1px 0 #fff4d0!important;cursor:pointer}
.palaces-page .palace-generate:not(:disabled):hover{filter:brightness(1.06);transform:translateY(-2px)}
.palaces-page .palace-generate:focus-visible,.palaces-page .palace-detail-dialog button:focus-visible,.palaces-page .palace:focus-visible{outline:3px solid #ffdb83;outline-offset:3px}
.palaces-page .palace-generate:disabled{opacity:.83;cursor:default}
.palaces-page .palace-detail-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:12px;background:#031b2bd9;backdrop-filter:blur(7px)}
.palaces-page .palace-detail-dialog{display:flex;flex-direction:column;width:min(100%,560px);max-height:min(91dvh,850px);min-height:0;border:1px solid #e5bb70;border-radius:18px;background:linear-gradient(160deg,#fff9eb,#f6e8c9);box-shadow:0 22px 60px #000b,0 0 0 3px #082a40;color:#15374c;font-family:'Be Vietnam Pro',sans-serif;overflow:hidden}
.palaces-page .palace-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 18px;background:radial-gradient(circle at 80% 0%,#b48b523e,transparent 45%),#092c41;color:#ffecc7}
.palaces-page .palace-detail-head span{display:block;color:#e5bc72;font-size:10px;font-weight:800;letter-spacing:.13em}
.palaces-page .palace-detail-head h2{margin:3px 0 0;font:700 clamp(20px,5vw,28px)/1.25 'Playfair Display','Be Vietnam Pro',serif}
.palaces-page .palace-detail-head button{flex:0 0 38px;width:38px;height:38px;border:1px solid #d8b36e;border-radius:9px;background:#1a4558;color:#fff0cd;font:28px/1 sans-serif;cursor:pointer}
.palaces-page .palace-detail-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px;scrollbar-width:thin}
.palaces-page .palace-detail-person{margin:0 0 14px!important;color:#4d5f67;font-size:12px;font-weight:600}
.palaces-page .palace-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.palaces-page .palace-detail-meta span{display:grid;gap:4px;min-width:0;padding:10px 7px;border:1px solid #dbbc87;border-radius:9px;background:#fff4d9;text-align:center}
.palaces-page .palace-detail-meta small{color:#79603f;font-size:10px;font-weight:600}
.palaces-page .palace-detail-meta b{font-size:12px;overflow-wrap:anywhere}
.palaces-page .palace-detail-body h3{margin:18px 0 8px;border-bottom:1px solid #dbbc87;padding-bottom:6px;color:#8a551e;font:700 17px/1.3 'Playfair Display','Be Vietnam Pro',serif}
.palaces-page .palace-detail-body p{margin:7px 0;color:#274457;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.palaces-page .palace-detail-stars{display:flex;flex-wrap:wrap;gap:7px}
.palaces-page .palace-detail-stars span{padding:6px 9px;border:1px solid #d5b476;border-radius:8px;background:#fff9e9;color:#243e4d;font-size:12px;font-weight:700}
.palaces-page .palace-detail-stars em{color:#a23224;font-style:normal}
.palaces-page .palace-detail-reading{padding:11px;border-left:3px solid #d6a657;border-radius:7px;background:#fff9ea}
.palaces-page .palace-detail-foot{display:flex;justify-content:space-between;gap:8px;padding:12px 16px;border-top:1px solid #d6b779;background:#efe0bf}
.palaces-page .palace-detail-foot button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;padding:7px 11px;border:1px solid #b88a4b;border-radius:8px;background:#10354b;color:#ffedcb;font:700 12px 'Be Vietnam Pro',sans-serif;cursor:pointer}
body.palace-open{overflow:hidden}
@media(max-width:390px){.palaces-page .palace-center-plate{padding:7px}.palaces-page .palace-person-details{gap:2px}.palaces-page .palace-stats>button{column-gap:5px;padding:7px!important}.palaces-page .palace-detail-body{padding:14px}}
@media(prefers-reduced-motion:reduce){.palaces-page .palace-stats>button,.palaces-page .palace-generate{transition:none!important}}


/* DaoQuan R69 palace layout repair */
/* Keep the native Dao Quan wallpaper. This block only styles the chart content. */
.palaces-page .palace-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(clamp(145px,38vw,230px),auto))!important;grid-auto-rows:minmax(clamp(145px,38vw,230px),auto)!important;align-items:stretch!important;gap:clamp(4px,.7vw,8px)!important;padding:clamp(3px,.5vw,7px)!important;border:1px solid #b18448;border-radius:14px;background:#082537b8;box-shadow:0 0 0 2px #e0b56f69,0 9px 22px #00121f8c}
.palaces-page .palace{position:relative;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;box-sizing:border-box!important;width:100%!important;height:auto!important;min-width:0!important;min-height:clamp(145px,38vw,230px)!important;max-height:none!important;margin:0!important;padding:clamp(5px,1vw,11px)!important;border:2px solid #c3904d!important;border-radius:clamp(9px,1.4vw,15px)!important;background:#fff4d8!important;background-image:radial-gradient(circle at 5% 95%,#ebc17a69,transparent 32%),radial-gradient(circle at 96% 8%,#f7e1b686,transparent 32%),linear-gradient(145deg,#fffdf1,#fff1cf 75%,#efd9aa)!important;box-shadow:inset 0 0 0 2px #fffcf0,inset 0 0 0 4px #d4a663,0 3px 8px #0016279c!important;color:#143148!important;overflow:hidden!important;font-family:Georgia,'Times New Roman',serif!important;text-align:left!important}
.palaces-page .palace::before{content:none!important;display:none!important}
.palaces-page .palace::after{content:'';position:absolute;inset:5px;border:1px solid #c79652a1;border-radius:6px;pointer-events:none}
.palaces-page .palace-head{position:relative;display:flex!important;flex:0 0 auto!important;align-items:flex-start!important;justify-content:flex-start!important;gap:clamp(2px,.5vw,7px)!important;width:100%!important;min-width:0!important;min-height:clamp(26px,6vw,49px)!important;margin:0!important;padding:0 clamp(13px,2.4vw,26px) 0 0!important;border:0!important;background:transparent!important;color:#123249!important;text-align:left!important}
.palaces-page .palace-head .animal{display:inline-block!important;flex:0 0 clamp(22px,5vw,43px)!important;width:clamp(22px,5vw,43px)!important;height:clamp(22px,5vw,43px)!important;min-width:0!important;min-height:0!important;margin:0!important;filter:drop-shadow(0 1px 2px #83511e77)}
.palaces-page .palace-head>span:nth-child(2){display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.palaces-page .palace-head .palace-branch{display:block!important;margin:0!important;color:#bc171d!important;font:700 clamp(11px,2.85vw,28px)/1.05 Georgia,serif!important;white-space:nowrap!important;word-break:normal!important;text-shadow:0 1px #fff8e7}
.palaces-page .palace-head small{display:block!important;margin:1px 0 0!important;color:#133047!important;font:700 clamp(6px,1.55vw,15px)/1.12 Georgia,serif!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.palaces-page .palace-head em{position:absolute!important;top:0!important;right:0!important;display:grid!important;place-items:center!important;width:clamp(15px,2.6vw,27px)!important;height:clamp(15px,2.6vw,27px)!important;min-width:0!important;margin:0!important;padding:0!important;border:1px solid #d3a35e!important;border-radius:50%!important;background:#fff9e8!important;color:#11354c!important;box-shadow:0 1px 3px #8b592a87;font:700 clamp(8px,1.5vw,15px)/1 Georgia,serif!important;text-align:center!important}
.palaces-page .palace-star-list,.palaces-page .palace-computed .palace-star-list{display:flex!important;flex:0 1 auto!important;flex-direction:column!important;gap:clamp(3px,.5vw,6px)!important;width:100%!important;min-width:0!important;max-height:none!important;height:auto!important;margin:clamp(3px,.55vw,7px) 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#18364b!important;font:clamp(8px,1.83vw,17px)/1.17 Georgia,serif!important;overflow:visible!important;overscroll-behavior:auto!important;touch-action:auto!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important}
.palaces-page .palace-star-list strong{display:block!important;color:#c21c22!important;font-weight:700!important;font-size:1.06em!important;line-height:1.13!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-star-list>span{display:block!important;color:#203d4d!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-foot,.palaces-page .palace-computed .palace-foot{display:block!important;flex:0 0 auto!important;width:100%!important;margin:auto 0 0!important;padding:3px 0 0!important;border-top:1px solid #cba267a8!important;background:transparent!important;color:#325063!important;font:clamp(7px,1.55vw,13px)/1.1 Georgia,serif!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important}
.palaces-page .palace-foot>span{display:inline!important}
.palaces-page .palace-foot>span+span::before{content:' · '}
.palaces-page .palace-center{box-sizing:border-box!important;display:flex!important;align-items:stretch!important;justify-content:stretch!important;min-width:0!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;border:0!important;border-radius:14px!important;background:transparent!important;box-shadow:none!important;clip-path:none!important;overflow:visible!important;transform:none!important}
.palaces-page .palace-center::before,.palaces-page .palace-center::after{display:none!important;content:none!important}
.palaces-page .palace-center-plate{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(4px,.7vw,9px)!important;width:100%!important;min-width:0!important;min-height:100%!important;padding:clamp(8px,1.7vw,21px)!important;border:3px double #d9ad67!important;border-radius:14px!important;background:radial-gradient(circle at 50% 96%,#21576b79,transparent 48%),linear-gradient(155deg,#06273e,#103c54 65%,#071f33)!important;box-shadow:inset 0 0 0 4px #082c44,inset 0 0 0 5px #d2a35c,0 6px 15px #001625a6!important;color:#fff1d2!important;font-family:Georgia,'Times New Roman',serif!important;text-align:center!important}
.palaces-page .palace-center-plate::before{inset:8px!important;border:1px solid #d5a85b8a!important;border-radius:8px!important}
.palaces-page .palace-center-seal{width:clamp(28px,7vw,55px)!important;height:clamp(28px,7vw,55px)!important}
.palaces-page .palace-center-kicker{color:#f7d89a!important;font:600 clamp(8px,1.7vw,16px)/1.25 Georgia,serif!important;letter-spacing:.08em!important}
.palaces-page .palace-person-name{width:100%!important;margin:0!important;padding:0 0 clamp(5px,1vw,12px)!important;border-bottom:1px solid #e8bd75!important;color:#fff2ce!important;font:700 clamp(18px,4.2vw,40px)/1.12 Georgia,serif!important;text-shadow:0 2px 6px #c38d509d;overflow-wrap:anywhere!important}
.palaces-page .palace-person-details{display:grid!important;gap:clamp(4px,.8vw,9px)!important;width:100%!important;padding:0!important;border:0!important}
.palaces-page .palace-person-details>span{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:3px!important;min-width:0!important;line-height:1.2!important;text-align:left!important}
.palaces-page .palace-person-details em{flex:0 0 auto!important;color:#f5ce82!important;font:700 clamp(8px,1.8vw,17px)/1.2 Georgia,serif!important;font-style:normal!important}
.palaces-page .palace-person-details b{min-width:0!important;color:#fff9e8!important;font:700 clamp(8px,1.8vw,17px)/1.2 Georgia,serif!important;text-align:right!important;overflow-wrap:anywhere!important}
.palaces-page .demo-notice{position:relative;display:grid!important;gap:5px!important;margin:clamp(10px,1.8vw,22px) 0!important;padding:clamp(12px,2.2vw,27px) clamp(16px,4vw,42px)!important;border:2px solid #d4a35e!important;border-radius:18px!important;background:radial-gradient(circle at 50% -35%,#27536b,#092b40 65%,#062036)!important;box-shadow:inset 0 0 0 3px #082b43,inset 0 0 0 4px #b9894b,0 7px 17px #001323a1!important;text-align:center!important}
.palaces-page .demo-notice strong{color:#ffe6b1!important;font:700 clamp(13px,3vw,29px)/1.22 Georgia,serif!important}
.palaces-page .demo-notice span{color:#fff3db!important;font:clamp(9px,2.1vw,19px)/1.3 Georgia,serif!important}
.palaces-page .palace-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(5px,1vw,13px)!important;margin:clamp(10px,1.7vw,22px) 0!important}
.palaces-page .palace-stats>button{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(2px,.6vw,7px)!important;width:100%!important;height:clamp(85px,22vw,172px)!important;min-height:0!important;max-height:none!important;margin:0!important;padding:clamp(5px,1vw,13px) 2px!important;border:2px solid #bd8848!important;border-radius:clamp(8px,1.5vw,16px)!important;background:radial-gradient(circle at 50% 0%,#1b485f,#082a41 75%)!important;box-shadow:inset 0 0 0 2px #08263b,inset 0 0 0 3px #d4a35d,0 5px 10px #00152296!important;color:#fff0cd!important;text-align:center!important;overflow:hidden!important;font-family:Georgia,serif!important}
.palaces-page .palace-stats>button>span{display:grid!important;place-items:center!important;flex:0 0 auto!important;width:clamp(29px,7.8vw,73px)!important;height:clamp(29px,7.8vw,73px)!important;min-width:0!important;margin:0!important;padding:0!important;border:2px solid #efc97f!important;border-radius:50%!important;background:#0b344a!important;color:#fbd180!important;box-shadow:0 0 0 2px #0a263a,0 0 11px #deb1656e!important}
.palaces-page .palace-stats>button>span svg{width:60%!important;height:60%!important}
.palaces-page .palace-stats>button>b{display:block!important;min-width:0!important;margin:0!important;color:#fff4df!important;font:700 clamp(8px,1.95vw,19px)/1.05 Georgia,serif!important;text-align:center!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-stats>button>small{display:block!important;min-width:0!important;margin:0!important;color:#f6d892!important;font:700 clamp(8px,1.85vw,19px)/1.08 Georgia,serif!important;text-align:center!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-reading-actions{margin:clamp(11px,2vw,28px) 0 22px!important;padding:5px!important;border:0!important;border-radius:999px!important;background:linear-gradient(#f6d580,#9a6328,#ffe6a2)!important;box-shadow:0 0 0 3px #0b2b3f,0 0 0 5px #b58042,0 10px 24px #000a!important}
.palaces-page .palace-reading-actions::before{display:none!important;content:none!important}
.palaces-page .palace-generate{position:relative;min-height:clamp(57px,10vw,108px)!important;padding:clamp(10px,2vw,22px) clamp(37px,7vw,85px) clamp(10px,2vw,22px) clamp(24px,5vw,55px)!important;border:2px solid #fff0bb!important;border-radius:999px!important;background:linear-gradient(160deg,#fff2c2,#fbd77f 47%,#d9a04b 100%)!important;color:#082b42!important;font:700 clamp(15px,4vw,38px)/1.12 Georgia,serif!important;text-align:center!important;white-space:normal!important}
.palaces-page .palace-generate::before{content:'✧';position:absolute;left:clamp(10px,2.5vw,35px);color:#9a642a;font-size:1.1em}
.palaces-page .palace-generate::after{content:'›';position:absolute;top:50%;right:clamp(7px,1.5vw,22px);display:grid;place-items:center;width:clamp(27px,5.2vw,52px);height:clamp(27px,5.2vw,52px);border:2px solid #f6d58c;border-radius:50%;background:linear-gradient(#9b641e,#5a3414);color:#fff5d4;font:700 1.4em/1 Georgia,serif;transform:translateY(-50%)}
@media(max-width:420px){.palaces-page .palace-grid{grid-template-rows:repeat(4,minmax(150px,auto))!important;grid-auto-rows:minmax(150px,auto)!important}.palaces-page .palace{min-height:150px!important;padding:4px!important}.palaces-page .palace-head{padding-right:15px!important}.palaces-page .palace-head .animal{flex-basis:21px!important;width:21px!important;height:21px!important}.palaces-page .palace-head .palace-branch{font-size:12px!important}.palaces-page .palace-head small{font-size:7px!important}.palaces-page .palace-star-list{font-size:8px!important}.palaces-page .palace-foot{font-size:7px!important}.palaces-page .palace-center-plate{padding:7px!important}.palaces-page .palace-person-details{gap:4px!important}.palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:9px!important}.palaces-page .palace-stats>button{height:87px!important}}

/* DaoQuan R70 precision cards and actions */
/* The page wallpaper remains the original Dao Quan wallpaper. */
.palaces-page .palace-grid{box-sizing:border-box!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important;align-items:stretch!important;width:100%!important;height:auto!important;aspect-ratio:1/1.015!important;gap:clamp(2px,.46vw,5px)!important;margin:0!important;padding:clamp(2px,.45vw,5px)!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.palaces-page .palace{box-sizing:border-box!important;position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:none!important;margin:0!important;padding:clamp(5px,1.42vw,13px)!important;border:0!important;border-radius:clamp(7px,1.8vw,19px)!important;background:#fff5da url('/images/daoquan-card-r70.png') center/100% 100% no-repeat!important;box-shadow:none!important;color:#143148!important;font-family:Georgia,'Times New Roman',serif!important;text-align:left!important;overflow:hidden!important;transform:none!important}
.palaces-page .palace::before,.palaces-page .palace::after{display:none!important;content:none!important}
.palaces-page .palace:hover,.palaces-page .palace:focus-visible{filter:brightness(1.04)!important;transform:translateY(-1px)!important}
.palaces-page .palace-head{position:relative!important;display:flex!important;flex:0 0 auto!important;align-items:flex-start!important;gap:clamp(2px,.45vw,5px)!important;width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;margin:0!important;padding:0 clamp(11px,2.5vw,24px) 0 0!important;border:0!important;background:transparent!important}
.palaces-page .palace-head .animal{display:inline-block!important;flex:0 0 clamp(22px,5.4vw,49px)!important;width:clamp(22px,5.4vw,49px)!important;height:clamp(22px,5.4vw,49px)!important;margin:0!important;filter:drop-shadow(0 1px 1px #59340f77)}
.palaces-page .palace-head>span:nth-child(2){display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;overflow:visible!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
.palaces-page .palace-head .palace-branch{display:block!important;margin:0!important;color:#c20e1d!important;font:700 clamp(11px,3.35vw,28px)/1.02 Georgia,serif!important;white-space:nowrap!important;letter-spacing:-.03em!important;text-shadow:0 1px #fff8e5}
.palaces-page .palace-head small{display:block!important;margin:1px 0 0!important;color:#0b2940!important;font:700 clamp(6px,1.6vw,14px)/1.05 Georgia,serif!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important}
.palaces-page .palace-head em{position:absolute!important;top:0!important;right:0!important;display:grid!important;place-items:center!important;width:clamp(14px,3vw,28px)!important;height:clamp(14px,3vw,28px)!important;min-width:0!important;margin:0!important;padding:0!important;border:1px solid #d6a35a!important;border-radius:50%!important;background:#fff8e7!important;color:#082b40!important;box-shadow:0 1px 2px #a46f3296!important;font:700 clamp(7px,1.75vw,16px)/1 Georgia,serif!important;text-align:center!important}
.palaces-page .palace-star-list,.palaces-page .palace-computed .palace-star-list{display:flex!important;flex:0 1 auto!important;flex-direction:column!important;gap:clamp(1px,.22vw,3px)!important;width:100%!important;min-width:0!important;height:auto!important;max-height:none!important;margin:clamp(2px,.45vw,5px) 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#17354b!important;font:clamp(7px,1.85vw,17px)/1.06 Georgia,serif!important;white-space:normal!important;overflow:hidden!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important}
.palaces-page .palace-star-list strong{display:block!important;color:#c61720!important;font-size:1.16em!important;font-weight:700!important;line-height:1.06!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-star-list>span{display:block!important;color:#15344a!important;line-height:1.08!important}
.palaces-page .palace-foot,.palaces-page .palace-computed .palace-foot{display:block!important;flex:0 0 auto!important;width:100%!important;margin:auto 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#1d3b50!important;font:clamp(6px,1.67vw,14px)/1.07 Georgia,serif!important;white-space:normal!important;overflow:hidden!important;word-break:normal!important;overflow-wrap:break-word!important;text-align:left!important}
.palaces-page .palace-foot>span{display:inline!important}.palaces-page .palace-foot>span+span::before{content:' · '}
.palaces-page .palace-center{position:relative!important;box-sizing:border-box!important;display:flex!important;align-items:stretch!important;justify-content:stretch!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;border-radius:clamp(7px,1.8vw,19px)!important;background:transparent!important;box-shadow:none!important;clip-path:none!important;overflow:visible!important;transform:none!important}
.palaces-page .palace-center::before,.palaces-page .palace-center::after{display:none!important;content:none!important}
.palaces-page .palace-center-plate{position:relative!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:clamp(3px,.6vw,8px)!important;width:100%!important;min-width:0!important;min-height:100%!important;height:100%!important;padding:clamp(28px,5.6vw,54px) clamp(11px,2.4vw,27px) clamp(19px,4.2vw,45px)!important;border:0!important;border-radius:clamp(7px,1.8vw,19px)!important;background:#082b41 url('/images/daoquan-center-r70.png') center/100% 100% no-repeat!important;box-shadow:none!important;color:#ffedc4!important;font-family:Georgia,'Times New Roman',serif!important;text-align:center!important;overflow:visible!important}
.palaces-page .palace-center-plate::before{display:none!important;content:none!important}
.palaces-page .palace-center-seal{position:absolute!important;top:clamp(-12px,-2.4vw,-8px)!important;left:50%!important;display:grid!important;place-items:center!important;width:clamp(27px,6.3vw,56px)!important;height:clamp(27px,6.3vw,56px)!important;border:2px solid #e1b064!important;border-radius:50%!important;background:radial-gradient(circle,#d9aa60,#0a3247 68%)!important;color:#fff1c4!important;box-shadow:0 0 0 3px #092b40,0 2px 7px #000b!important;transform:translateX(-50%)!important}
.palaces-page .palace-center-seal svg{width:70%!important;height:70%!important}
.palaces-page .palace-center-kicker{color:#f1cf83!important;font:600 clamp(7px,1.85vw,17px)/1.1 Georgia,serif!important;letter-spacing:.08em!important;white-space:nowrap!important}
.palaces-page .palace-person-name{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0 0 clamp(4px,.7vw,8px)!important;border-bottom:1px solid #e5b56b!important;color:#fff1cd!important;font:700 clamp(17px,4.7vw,45px)/1.05 Georgia,serif!important;text-shadow:0 2px 5px #c69860a6!important;overflow-wrap:anywhere!important}
.palaces-page .palace-person-details{display:grid!important;gap:clamp(3px,.6vw,7px)!important;width:100%!important;min-width:0!important;padding:0!important;border:0!important}
.palaces-page .palace-person-details>span{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:3px!important;min-width:0!important;line-height:1.08!important;text-align:left!important}
.palaces-page .palace-person-details em{flex:0 0 auto!important;color:#f5ce7f!important;font:700 clamp(7px,1.72vw,16px)/1.1 Georgia,serif!important;font-style:normal!important}
.palaces-page .palace-person-details b{min-width:0!important;color:#fff8e4!important;font:700 clamp(7px,1.72vw,16px)/1.1 Georgia,serif!important;text-align:right!important;overflow-wrap:anywhere!important}
.palaces-page .palace-center-plate>i{color:#f9d786!important;font-size:clamp(6px,1.2vw,10px)!important}
.palaces-page .demo-notice{position:relative!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(3px,.6vw,7px)!important;width:100%!important;min-height:clamp(70px,18vw,160px)!important;margin:clamp(8px,1.4vw,16px) 0!important;padding:clamp(8px,1.7vw,19px) clamp(38px,8vw,85px)!important;border:0!important;border-radius:clamp(9px,2vw,22px)!important;background:#082b41 url('/images/daoquan-banner-r70.png') center/100% 100% no-repeat!important;box-shadow:none!important;text-align:center!important;overflow:hidden!important}
.palaces-page .demo-notice::before,.palaces-page .demo-notice::after{display:none!important;content:none!important}
.palaces-page .demo-notice strong{color:#ffe3ac!important;font:700 clamp(13px,3.6vw,31px)/1.14 Georgia,serif!important;text-shadow:0 2px 4px #000a!important}
.palaces-page .demo-notice span{color:#fff3da!important;font:clamp(7px,1.9vw,17px)/1.2 Georgia,serif!important}
.palaces-page .demo-notice small{color:#f1d69b!important;font-size:clamp(7px,1.6vw,13px)!important}
.palaces-page .palace-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(3px,.75vw,9px)!important;width:100%!important;margin:0 0 clamp(8px,1.5vw,17px)!important}
.palaces-page .palace-stats>button{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(1px,.25vw,3px)!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:250/190!important;margin:0!important;padding:clamp(3px,.65vw,8px)!important;border:0!important;border-radius:clamp(6px,1.5vw,15px)!important;background:#082b41 url('/images/daoquan-stat-r70.png') center/100% 100% no-repeat!important;box-shadow:none!important;color:#fff0cf!important;text-align:center!important;overflow:hidden!important;font-family:Georgia,serif!important;transform:none!important}
.palaces-page .palace-stats>button>span{display:grid!important;place-items:center!important;flex:0 0 auto!important;width:clamp(22px,5.6vw,53px)!important;height:clamp(22px,5.6vw,53px)!important;min-width:0!important;margin:0 0 1px!important;padding:0!important;border:2px solid #e9b965!important;border-radius:50%!important;background:#082c42!important;color:#fbd484!important;box-shadow:0 0 0 2px #092a40,0 0 6px #f4cb718e!important}
.palaces-page .palace-stats>button>span svg{width:63%!important;height:63%!important}
.palaces-page .palace-stats>button>b{display:block!important;min-width:0!important;margin:0!important;color:#fff3dc!important;font:700 clamp(7px,1.85vw,17px)/1.05 Georgia,serif!important;text-align:center!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-stats>button>small{display:block!important;min-width:0!important;margin:0!important;color:#f9d992!important;font:700 clamp(8px,2.05vw,19px)/1.05 Georgia,serif!important;text-align:center!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
.palaces-page .palace-reading-actions{box-sizing:border-box!important;width:100%!important;margin:clamp(6px,1vw,12px) 0 15px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.palaces-page .palace-reading-actions::before{display:none!important;content:none!important}
.palaces-page .palace-generate{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:0!important;height:auto!important;aspect-ratio:900/145!important;margin:0!important;padding:clamp(6px,1.2vw,14px) clamp(30px,7vw,75px)!important;border:0!important;border-radius:999px!important;background:#f7d17d url('/images/daoquan-cta-r70.png') center/100% 100% no-repeat!important;box-shadow:none!important;color:#0b2942!important;font:700 clamp(15px,4vw,37px)/1.1 Georgia,serif!important;text-shadow:0 1px #fff6db!important;text-align:center!important;white-space:nowrap!important;letter-spacing:0!important;cursor:pointer!important}
.palaces-page .palace-generate::before{display:none!important;content:none!important}
.palaces-page .palace-generate::after{content:'›';position:absolute;top:50%;right:clamp(12px,3vw,31px);display:grid;place-items:center;width:clamp(25px,5.2vw,49px);height:clamp(25px,5.2vw,49px);border:2px solid #eec982;border-radius:50%;background:linear-gradient(#9a6324,#58300f);box-shadow:0 1px 4px #6a3f1a;color:#fff7df;font:700 1.3em/1 Georgia,serif;transform:translateY(-50%)}
.palaces-page .palace-generate:disabled{cursor:default!important;opacity:.85}
@media(max-width:390px){.palaces-page .palace{padding:5px!important}.palaces-page .palace-head .animal{flex-basis:20px!important;width:20px!important;height:20px!important}.palaces-page .palace-head .palace-branch{font-size:11px!important}.palaces-page .palace-head small{font-size:6px!important}.palaces-page .palace-star-list{font-size:7px!important}.palaces-page .palace-foot{font-size:6px!important}.palaces-page .palace-person-details{gap:2px!important}.palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:7px!important}.palaces-page .palace-stats>button>b{font-size:7px!important}.palaces-page .palace-stats>button>small{font-size:8px!important}}
.palaces-page .palace-metric-dialog .palace-detail-body{padding:22px!important}
.palaces-page .palace-metric-value{display:flex;align-items:center;justify-content:center;gap:12px;min-height:76px;padding:14px;border:1px solid #d3a45c;border-radius:12px;background:#fff4d8;color:#17394d}
.palaces-page .palace-metric-value svg{flex:0 0 auto;color:#b77f39}
.palaces-page .palace-metric-value strong{font:700 clamp(18px,4vw,28px)/1.25 Georgia,serif;overflow-wrap:anywhere}

/* DaoQuan R71 illustrated chart from the supplied 941x1672 reference */
.palaces-page .content{box-sizing:border-box;width:100%!important;max-width:941px!important;margin-inline:auto!important;padding-inline:clamp(8px,4.14vw,39px)!important}
.palaces-page .palace-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;aspect-ratio:864/879!important;gap:clamp(2px,.42vw,4px)!important;padding:0!important;isolation:isolate}
.palaces-page .palace-grid>.palace-slot-0{grid-area:1/1!important}
.palaces-page .palace-grid>.palace-slot-1{grid-area:1/2!important}
.palaces-page .palace-grid>.palace-slot-2{grid-area:1/3!important}
.palaces-page .palace-grid>.palace-slot-3{grid-area:1/4!important}
.palaces-page .palace-grid>.palace-slot-4{grid-area:2/4!important}
.palaces-page .palace-grid>.palace-slot-5{grid-area:3/4!important}
.palaces-page .palace-grid>.palace-slot-6{grid-area:4/4!important}
.palaces-page .palace-grid>.palace-slot-7{grid-area:4/3!important}
.palaces-page .palace-grid>.palace-slot-8{grid-area:4/2!important}
.palaces-page .palace-grid>.palace-slot-9{grid-area:4/1!important}
.palaces-page .palace-grid>.palace-slot-10{grid-area:3/1!important}
.palaces-page .palace-grid>.palace-slot-11{grid-area:2/1!important}
.palaces-page .palace-grid>.palace-center{grid-area:2/2/4/4!important}
.palaces-page .palace{padding:clamp(4px,1.36vw,12px)!important;cursor:pointer}
.palaces-page .palace-head{gap:clamp(1px,.3vw,4px)!important;padding-right:clamp(12px,2.6vw,26px)!important}
.palaces-page .palace-head .animal{display:block!important;flex:0 0 clamp(20px,5.6vw,53px)!important;width:clamp(20px,5.6vw,53px)!important;height:clamp(20px,5.6vw,53px)!important;border:0!important;border-radius:0!important;background-color:transparent!important;background-repeat:no-repeat!important;background-size:410% 400%!important;filter:drop-shadow(0 1px 1px #84562088)!important}
.palaces-page .palace-head .animal .zodiac{visibility:hidden!important}
.palaces-page .palace-head .palace-branch{font-size:clamp(11px,3.15vw,29px)!important;letter-spacing:-.04em!important}
.palaces-page .palace-head small{font-size:clamp(6px,1.65vw,15px)!important;line-height:1.1!important}
.palaces-page .palace-head em{font-size:clamp(8px,1.8vw,16px)!important}
.palaces-page .palace-star-list,.palaces-page .palace-computed .palace-star-list{margin-top:clamp(2px,.45vw,5px)!important;font-size:clamp(7px,1.91vw,18px)!important;line-height:1.07!important}
.palaces-page .palace-star-list strong,.palaces-page .palace-star-list>span{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3;line-clamp:3;overflow:hidden!important}
.palaces-page .palace-star-list>span{-webkit-line-clamp:3;line-clamp:3}
.palaces-page .palace-foot{font-size:clamp(6px,1.62vw,15px)!important;line-height:1.09!important;max-height:2.3em!important}
.palaces-page .palace-center-plate{appearance:none!important;cursor:pointer!important;min-height:0!important;justify-content:flex-start!important;gap:clamp(3px,.58vw,7px)!important;padding:clamp(26px,5.5vw,53px) clamp(9px,2.35vw,24px) clamp(12px,3vw,30px)!important;text-align:center!important}
.palaces-page .palace-center-plate:focus-visible{outline:3px solid #ffdf8e!important;outline-offset:2px!important}
.palaces-page .palace-person-name{max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;overflow-wrap:normal!important;font-size:clamp(14px,4.15vw,40px)!important}
.palaces-page .palace-person-details{gap:clamp(3px,.68vw,8px)!important}
.palaces-page .palace-person-details>span{min-height:clamp(12px,2.8vw,26px)!important}
.palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:clamp(7px,1.75vw,17px)!important}
.palaces-page .demo-notice{margin:clamp(9px,1.5vw,16px) 0!important;min-height:clamp(66px,17.3vw,163px)!important}
.palaces-page .demo-notice strong{max-width:82%!important}
.palaces-page .palace-stats{gap:clamp(3px,.95vw,11px)!important}
.palaces-page .palace-stats>button{aspect-ratio:218/167!important;cursor:pointer!important}
.palaces-page .palace-stats>button:focus-visible,.palaces-page .palace-stats>button:hover{filter:brightness(1.13)!important;outline:2px solid #ffde8b!important;outline-offset:2px!important}
.palaces-page .palace-reading-actions{margin:clamp(10px,2vw,20px) auto 16px!important;max-width:737px!important}
.palaces-page .palace-generate:not(:disabled){background:#e9ad58 url('/images/daoquan-reference-cta-r71.png') center/100% 100% no-repeat!important;color:transparent!important;text-shadow:none!important}
.palaces-page .palace-generate:not(:disabled)::after{display:none!important;content:none!important}
.palaces-page .palace-generate{aspect-ratio:737/110!important;min-height:48px!important;white-space:nowrap!important}
.palaces-page .palace-profile-list{display:grid;gap:0;margin:0;border:1px solid #d7b77e;border-radius:12px;background:#fff7e6;overflow:hidden}
.palaces-page .palace-profile-list>div{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid #dfc995}
.palaces-page .palace-profile-list>div:last-child{border-bottom:0}
.palaces-page .palace-profile-list dt{color:#8d602a;font-weight:700;white-space:nowrap}
.palaces-page .palace-profile-list dd{min-width:0;margin:0;color:#17364b;font-weight:700;text-align:right;overflow-wrap:anywhere}
@media(max-width:500px){
 .palaces-page .palace{padding:4px!important}
 .palaces-page .palace-head .animal{flex-basis:clamp(20px,5.6vw,28px)!important;width:clamp(20px,5.6vw,28px)!important;height:clamp(20px,5.6vw,28px)!important}
 .palaces-page .palace-head .palace-branch{font-size:clamp(11px,3.1vw,15px)!important}
 .palaces-page .palace-star-list strong{-webkit-line-clamp:2;line-clamp:2}
 .palaces-page .palace-star-list>span{-webkit-line-clamp:2;line-clamp:2}
 .palaces-page .palace-foot{max-height:2.2em!important}
 .palaces-page .palace-center-plate{padding:clamp(25px,5.5vw,32px) 7px 10px!important}
 .palaces-page .palace-center-kicker{font-size:clamp(6px,1.7vw,8px)!important;letter-spacing:0!important}
 .palaces-page .palace-person-details>span{min-height:11px!important}
 .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:clamp(7px,1.75vw,9px)!important}
 .palaces-page .palace-stats>button{padding:3px!important}
 .palaces-page .palace-stats>button>span{width:clamp(22px,5.6vw,30px)!important;height:clamp(22px,5.6vw,30px)!important}
 .palaces-page .palace-stats>button>b{font-size:clamp(7px,1.8vw,9px)!important}
 .palaces-page .palace-stats>button>small{font-size:clamp(8px,2vw,10px)!important}
}

/* The original illustrated zodiac art is cropped by CSS; card data remains live HTML. */
.palaces-page .palace-slot-0 .animal{background-image:url('/images/daoquan-reference-ty_quan_loc-r71.png')!important;background-position:23% 6%!important}
.palaces-page .palace-slot-1 .animal{background-image:url('/images/daoquan-reference-ngo_no_boc-r71.png')!important;background-position:15% 5%!important}
.palaces-page .palace-slot-2 .animal{background-image:url('/images/daoquan-reference-mui_thien_di-r71.png')!important;background-position:14% 5%!important}
.palaces-page .palace-slot-3 .animal{background-image:url('/images/daoquan-reference-than_tat_ach-r71.png')!important;background-position:11% 5%!important}
.palaces-page .palace-slot-4 .animal{background-image:url('/images/daoquan-reference-dau_tai_bach-r71.png')!important;background-position:16% 5%!important}
.palaces-page .palace-slot-5 .animal{background-image:url('/images/daoquan-reference-tuat_tu_tuc-r71.png')!important;background-position:13% 5%!important}
.palaces-page .palace-slot-6 .animal{background-image:url('/images/daoquan-reference-hoi_phu_thien-r71.png')!important;background-position:13% 5%!important}
.palaces-page .palace-slot-7 .animal{background-image:url('/images/daoquan-reference-ty_phu_the-r71.png')!important;background-position:15% 5%!important}
.palaces-page .palace-slot-8 .animal{background-image:url('/images/daoquan-reference-suu_huynh_de-r71.png')!important;background-position:14% 5%!important}
.palaces-page .palace-slot-9 .animal{background-image:url('/images/daoquan-reference-dan_phu_mau-r71.png')!important;background-position:16% 5%!important}
.palaces-page .palace-slot-10 .animal{background-image:url('/images/daoquan-reference-mao_phuc_duc-r71.png')!important;background-position:16% 5%!important}
.palaces-page .palace-slot-11 .animal{background-image:url('/images/daoquan-reference-thin_dien_trach-r71.png')!important;background-position:14% 5%!important}

/* Exact medallions from the supplied eight summary-card assets. */
.palaces-page .palace-stats>button>span{border:0!important;box-shadow:none!important;background-repeat:no-repeat!important;background-size:290% 230%!important;background-color:#082b41!important}
.palaces-page .palace-stats>button>span svg{display:none!important}
.palaces-page .palace-stats>button:nth-child(1)>span{background-image:url('/images/daoquan-reference-cung_menh-r71.png')!important;background-position:58% 27%!important}
.palaces-page .palace-stats>button:nth-child(2)>span{background-image:url('/images/daoquan-reference-cung_than-r71.png')!important;background-position:58% 27%!important}
.palaces-page .palace-stats>button:nth-child(3)>span{background-image:url('/images/daoquan-reference-ban_menh-r71.png')!important;background-position:58% 27%!important}
.palaces-page .palace-stats>button:nth-child(4)>span{background-image:url('/images/daoquan-reference-cuc-r71.png')!important;background-position:58% 27%!important}
.palaces-page .palace-stats>button:nth-child(5)>span{background-image:url('/images/daoquan-reference-am_duong-r71.png')!important;background-position:58% 24%!important}
.palaces-page .palace-stats>button:nth-child(6)>span{background-image:url('/images/daoquan-reference-menh_cuc-r71.png')!important;background-position:58% 24%!important}
.palaces-page .palace-stats>button:nth-child(7)>span{background-image:url('/images/daoquan-reference-chinh_tinh-r71.png')!important;background-position:58% 24%!important}
.palaces-page .palace-stats>button:nth-child(8)>span{background-image:url('/images/daoquan-reference-sao_an-r71.png')!important;background-position:58% 24%!important}

/* DaoQuan R72: legible, balanced chart on narrow screens */
.palaces-page .palace-head .animal{overflow:hidden!important}
.palaces-page .palace-foot>.palace-foot-short{display:none!important}
@media(max-width:600px){
  .palaces-page .content{padding-inline:8px!important}
  .palaces-page .palace-grid{width:100%!important;aspect-ratio:1/1.025!important;gap:3px!important;overflow:visible!important}
  .palaces-page .palace{min-height:0!important;padding:4px!important;border-radius:8px!important;contain:layout!important}
  .palaces-page .palace-head{align-items:flex-start!important;gap:2px!important;padding-right:13px!important;min-height:0!important;max-height:33px!important}
  .palaces-page .palace-head .animal{flex:0 0 20px!important;width:20px!important;height:20px!important;margin:1px 0 0!important}
  .palaces-page .palace-head>span:nth-child(2){width:calc(100% - 22px)!important;min-width:0!important;overflow:hidden!important}
  .palaces-page .palace-head .palace-branch{font-size:13px!important;line-height:1!important;letter-spacing:0!important}
  .palaces-page .palace-head small{display:-webkit-box!important;font-size:8.4px!important;line-height:1.08!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;overflow:hidden!important}
  .palaces-page .palace-head em{top:1px!important;right:1px!important;width:13px!important;height:13px!important;font-size:8px!important;line-height:1!important}
  .palaces-page .palace-star-list,.palaces-page .palace-computed .palace-star-list{display:block!important;flex:0 1 auto!important;min-height:0!important;max-height:30px!important;margin:2px 0 0!important;font-size:8px!important;line-height:1.13!important;overflow:hidden!important}
  .palaces-page .palace-star-list strong{display:-webkit-box!important;font-size:9px!important;line-height:1.12!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;overflow:hidden!important}
  .palaces-page .palace-star-list>span{display:none!important}
  .palaces-page .palace-foot,.palaces-page .palace-computed .palace-foot{display:block!important;max-height:1.2em!important;margin:auto 0 0!important;font-size:7.5px!important;line-height:1.1!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important}
  .palaces-page .palace-foot>span:not(.palace-foot-short){display:none!important}
  .palaces-page .palace-foot>.palace-foot-short{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .palaces-page .palace-foot>span+span::before{content:none!important}
  .palaces-page .palace-center-plate{gap:4px!important;padding:26px 9px 13px!important;overflow:hidden!important}
  .palaces-page .palace-center-kicker{max-width:100%!important;font-size:7px!important;line-height:1.1!important;letter-spacing:.015em!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .palaces-page .palace-person-name{margin:0!important;padding:0 0 5px!important;font-size:clamp(15px,4.2vw,19px)!important;line-height:1.12!important}
  .palaces-page .palace-person-details{gap:4px!important}
  .palaces-page .palace-person-details>span{display:grid!important;grid-template-columns:minmax(49px,40%) minmax(0,1fr)!important;align-items:baseline!important;gap:3px!important;min-height:12px!important;line-height:1.2!important}
  .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:8px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .palaces-page .palace-person-details b{text-align:right!important}
  .palaces-page .demo-notice{min-height:108px!important;margin:12px 0!important;padding:13px 34px!important;gap:5px!important}
  .palaces-page .demo-notice strong{max-width:100%!important;font-size:clamp(13px,3.5vw,16px)!important;line-height:1.15!important}
  .palaces-page .demo-notice span{max-width:100%!important;font-size:9px!important;line-height:1.25!important}
  .palaces-page .demo-notice small{font-size:8px!important;line-height:1.2!important}
  .palaces-page .palace-stats{gap:5px!important;margin:0 0 13px!important}
  .palaces-page .palace-stats>button{aspect-ratio:auto!important;min-height:82px!important;padding:6px 3px!important;gap:2px!important;border-radius:8px!important}
  .palaces-page .palace-stats>button>span{flex:0 0 28px!important;width:28px!important;height:28px!important;margin:0 0 2px!important}
  .palaces-page .palace-stats>button>b{font-size:9px!important;line-height:1.12!important;overflow-wrap:normal!important}
  .palaces-page .palace-stats>button>small{font-size:10px!important;line-height:1.13!important;overflow-wrap:break-word!important}
  .palaces-page .palace-reading-actions{margin:13px auto 19px!important}
  .palaces-page .palace-generate{min-height:54px!important;font-size:clamp(13px,3.7vw,20px)!important}
}

/* R102: sculpted membership card and dimensional, code-native profile icons. */
.profile-page .premium-panel,.premium-page .premium-panel{position:relative;isolation:isolate;overflow:hidden;margin:13px 0 17px;padding:12px;border:1px solid #ebc77d;border-radius:19px;background:radial-gradient(circle at 10% 25%,#46718b55,transparent 39%),radial-gradient(circle at 94% 0,#e9b96928,transparent 30%),linear-gradient(135deg,#041627,#0a2d44 52%,#031827);box-shadow:inset 0 1px #fff4cf88,inset 0 0 0 3px #102d40,0 0 0 1px #754e29,0 12px 25px #00131fc2;color:#fff0cb}
.premium-panel:before{content:"";position:absolute;inset:5px;border:1px solid #e2b46a66;border-radius:15px;pointer-events:none}
.premium-panel:after{content:"✦";position:absolute;top:45px;right:6px;font-size:14px;color:#ffdb8e91;transform:none;pointer-events:none}
.premium-panel>.premium-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px;padding:0 1px 9px;border-bottom:1px solid #d1a86977;background:none}
.premium-heading h2{display:flex;align-items:center;gap:7px;min-width:0;margin:0;color:#fff1cf;font-size:clamp(13px,4vw,17px);line-height:1.1;white-space:nowrap;text-shadow:0 2px 4px #0008}
.premium-heading-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid #ffe2a4;border-radius:9px;background:linear-gradient(145deg,#ffe6a1,#bd7c36 55%,#65411e);box-shadow:inset 0 1px #fff8d4,inset 0 -2px #613f24,0 3px 5px #0009;color:#11364c}
.premium-panel .premium-heading button{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:none;min-height:34px;padding:5px 8px;border:1px solid #fff2bc;border-radius:18px;background:linear-gradient(170deg,#fff7d8,#f5d58e 42%,#c88436 92%);box-shadow:inset 0 1px #fff,0 3px 0 #774619,0 5px 8px #0009;color:#2c271e;font:700 11px/1 'DQ Sans',Arial,sans-serif;cursor:pointer}
.premium-panel .premium-heading button span{display:grid;place-items:center;color:#a06327}
.premium-panel .premium-heading-icon,.premium-panel .premium-benefit-icon{color:#12334a}
.premium-panel .premium-heading button:hover{filter:brightness(1.1)}
.premium-panel .premium-heading button:active{transform:translateY(2px);box-shadow:inset 0 1px #fff,0 1px 0 #774619}
.premium-panel>.premium-body{position:relative;display:grid;grid-template-columns:79px minmax(0,1fr);align-items:center;gap:4px 10px;min-width:0;margin:0;padding:8px 9px 9px;border:1px solid #c49a5c;border-radius:13px;background:linear-gradient(120deg,#0d354c,#041c30 65%,#0b3045);box-shadow:inset 0 1px #f8e0aa4d,inset 0 0 0 2px #0c2535,0 4px 9px #0006}
.premium-crown{display:grid;place-items:center;width:75px;height:75px;border:0;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(0 2px 7px #ffd48066)}
.premium-crown svg{display:block;width:75px;height:75px}
.premium-copy{min-width:0}.premium-copy .premium-eyebrow{display:block;color:#d9b679;font:700 8px/1.2 'DQ Sans',Arial,sans-serif;letter-spacing:.11em}
.premium-copy h3{margin:1px 0;color:#ffe3a2;font-size:clamp(21px,6vw,27px);line-height:1.03;letter-spacing:.015em;text-shadow:0 2px 0 #70441e,0 4px 7px #000}
.premium-copy p{margin:4px 0;color:#fff2d8;font:500 10px/1.3 'DQ Sans',Arial,sans-serif;overflow-wrap:anywhere}
.premium-copy .premium-status{display:inline-flex;align-items:center;min-height:21px;margin-top:3px;padding:3px 8px;border:1px solid #e2b8718c;border-radius:30px;background:#dfb16a20;color:#ffdfa1;font:700 9px/1 'DQ Sans',Arial,sans-serif}
.premium-copy .premium-status.is-active{border-color:#9ce1c2;background:#1e60495c;color:#c5ffe2}.premium-copy .premium-status.is-pending{border-color:#eac272;color:#ffe1a6}
.premium-body ul{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:4px 0 0;padding:9px 0 0;border:0;border-top:1px solid #e2ba7966;list-style:none}
.premium-body li{display:flex;align-items:center;gap:5px;min-width:0;color:#fff2d4;font:600 9px/1.25 'DQ Sans',Arial,sans-serif}
.premium-body li>span:last-child{min-width:0}.premium-benefit-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border:1px solid #f5d69a9c;border-radius:7px;background:linear-gradient(145deg,#f8d998,#ad702e 65%,#74471e);box-shadow:inset 0 1px #fff2cb,0 2px 4px #0009;color:#12334a}
.premium-benefit-icon svg{width:13px;height:13px}
.profile-group .profile-tiles{gap:8px}.profile-group .profile-tiles button{position:relative;display:grid;grid-template-rows:39px auto auto;align-content:start;justify-items:start;gap:3px;min-width:0;min-height:101px;padding:10px 8px;border:1px solid #e4ba77;border-radius:13px;background:radial-gradient(circle at 30% 0,#fffef6,#f7e7c9 67%,#dfbf8d);box-shadow:inset 0 1px #fff,inset 0 0 0 2px #fff3d9,0 4px 8px #00182e7d;color:#173047;text-align:left;cursor:pointer}
.profile-group .profile-tiles button:hover{border-color:#ffe3a3;filter:brightness(1.04);transform:translateY(-1px)}
.profile-group .profile-tiles button:active{transform:translateY(1px)}
.profile-group .profile-tile-icon{display:grid;place-items:center;width:37px;height:37px;border:1px solid #ffecb7;border-radius:11px;background:linear-gradient(145deg,#ffedb0 0%,#e6b361 48%,#965d25 100%);box-shadow:inset 0 1px #fff9df,inset 0 -2px #72481e,0 3px 6px #5d3b2870;color:#173b4c}
.profile-group .profile-tile-icon svg{filter:drop-shadow(0 1px #fff5be);stroke-width:1.9}
.profile-group .profile-tiles button b{font-size:11px;line-height:1.13;color:#173044;overflow-wrap:anywhere}
.profile-group .profile-tiles button small{font-size:9px;line-height:1.2;color:#65543c;overflow-wrap:anywhere}
.profile-group .profile-tile-arrow{position:absolute;right:7px;top:16px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#a77135;color:#fff4d6}
.profile-group .profile-tile-arrow svg{display:block!important;position:static!important}
.premium-content .premium-plan{position:relative;overflow:hidden;margin:13px 0;padding:15px;border:1px solid #e5be7c;border-radius:18px;background:radial-gradient(circle at 0 0,#e1b65d27,transparent 43%),linear-gradient(145deg,#0b3248,#041a2d);box-shadow:inset 0 0 0 2px #a4794263,0 9px 18px #0018279e;color:#f9e9c9}
.premium-content .premium-plan-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 0 11px;border-bottom:1px solid #ddad6680}
.premium-plan-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #fff0b3;border-radius:13px;background:linear-gradient(145deg,#fff3c2,#dfaa56 52%,#8b4c20);box-shadow:inset 0 1px #fff,0 3px 0 #5c381d,0 5px 8px #0008;color:#14394b}
.premium-plan-title{min-width:0}.premium-plan-title small{display:block;color:#d9b87e;font:700 8px/1.2 'DQ Sans',Arial,sans-serif;letter-spacing:.11em}.premium-plan-title h2{margin:3px 0;color:#ffe4a9;font-size:18px;line-height:1.2;overflow-wrap:anywhere}
.premium-plan-price{text-align:right;white-space:nowrap}.premium-plan-price strong{display:block;color:#ffdfa1;font-size:15px}.premium-plan-price small{display:block;color:#e0cba8;font-size:10px}
.premium-content .premium-plan>p{margin:11px 0;color:#f0daba;font-size:11px;line-height:1.45}
.premium-content .premium-plan ul{display:grid;gap:7px;margin:10px 0 15px;padding:0;list-style:none}.premium-content .premium-plan li{display:flex;align-items:flex-start;gap:7px;margin:0;color:#f8e9cd;font-size:11px;line-height:1.35}.premium-content .premium-plan li span{display:grid;place-items:center;flex:none;width:19px;height:19px;border:1px solid #edcf92;border-radius:50%;background:linear-gradient(#f9dc9c,#a66b31);color:#133246}
.premium-content .premium-plan .gold-cta{min-height:42px;margin-top:4px;font:700 13px/1.2 'DQ Sans',Arial,sans-serif}.premium-content .premium-plan .gold-cta svg:last-child{margin-left:auto}.premium-content .premium-plan .gold-cta svg:first-child{margin-right:auto}
.premium-panel button:focus-visible,.profile-tiles button:focus-visible,.premium-plan button:focus-visible{outline:3px solid #fff3b1;outline-offset:3px}
@media(max-width:360px){.premium-panel>.premium-body{grid-template-columns:68px minmax(0,1fr);gap:3px 7px;padding:7px}.premium-crown,.premium-crown svg{width:66px;height:66px}.premium-heading h2{font-size:12px}.premium-panel .premium-heading button{font-size:10px;padding-inline:6px}.premium-body li{font-size:8px;gap:3px}.premium-benefit-icon{width:18px;height:18px}.premium-copy h3{font-size:21px}.premium-content .premium-plan-head{grid-template-columns:39px minmax(0,1fr) auto;gap:6px}.premium-plan-mark{width:38px;height:38px}.premium-plan-price strong{font-size:12px}}
@media(max-width:360px){.premium-panel>.premium-heading{flex-wrap:wrap}.premium-panel .premium-heading button{margin-left:auto}.premium-plan-price{max-width:94px;white-space:normal}}
@media(max-width:380px){
  .palaces-page .palace{padding:3px!important}
  .palaces-page .palace-head .animal{flex-basis:18px!important;width:18px!important;height:18px!important}
  .palaces-page .palace-head .palace-branch{font-size:12px!important}
  .palaces-page .palace-head small{font-size:8px!important}
  .palaces-page .palace-star-list strong{font-size:8.5px!important}
  .palaces-page .palace-foot{font-size:7px!important}
  .palaces-page .palace-center-plate{padding:24px 7px 9px!important}
  .palaces-page .palace-person-details{gap:2px!important}
  .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:7.2px!important}
  .palaces-page .demo-notice{padding-inline:28px!important}
  .palaces-page .palace-stats>button{min-height:78px!important}
}

/* DaoQuan R73: traditional full-star chart with readable spacing */
.palaces-page .palace-view-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:11px 0 12px;padding:10px 12px;border:1px solid #d3a767;border-radius:12px;background:linear-gradient(135deg,#092e45,#174861);color:#fce9bd;box-shadow:0 5px 16px #05192778}
.palaces-page .palace-view-bar>div:first-child{display:grid;gap:2px;min-width:0}
.palaces-page .palace-view-bar strong{font:700 17px/1.2 Georgia,serif}
.palaces-page .palace-view-bar small{font:11px/1.3 'Be Vietnam Pro',sans-serif;color:#e9c990}
.palaces-page .palace-view-switch{display:flex;flex:0 0 auto;gap:3px;padding:3px;border:1px solid #ba9158;border-radius:9px;background:#041e30}
.palaces-page .palace-view-switch button{min-height:36px;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:#ffe9bb;font:700 12px 'Be Vietnam Pro',sans-serif;cursor:pointer}
.palaces-page .palace-view-switch button.active{background:linear-gradient(#ffe8ab,#d5a75d);color:#082d43;box-shadow:0 1px 4px #0006}
.palaces-page .palace-view-switch button:focus-visible{outline:3px solid #ffdb7d;outline-offset:2px}
.palaces-page .palace-full-hint{margin:0 0 9px;color:#f8e4b8;font:600 12px/1.45 'Be Vietnam Pro',sans-serif;text-align:center}
.palaces-page .palace-full-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;border:2px solid #c69756;border-radius:12px;background:#092b3d;box-shadow:0 10px 25px #00121daa;scrollbar-color:#d8ab65 #0c2a3c;scrollbar-width:thin;overscroll-behavior-x:contain}
.palaces-page .palace-full-scroll:focus-visible{outline:3px solid #ffdd87;outline-offset:3px}
.palaces-page .palace-full-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(280px,auto));gap:3px;box-sizing:border-box;width:max(760px,100%);padding:3px;background:linear-gradient(145deg,#c69a5a,#f7db9c 50%,#a67d48)}
.palaces-page .palace-full-card{appearance:none;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:280px;gap:5px;padding:10px 11px;border:1px solid #bb8745;border-radius:9px;background:#fff8e9 url('/images/daoquan-card-r70.png') center/100% 100% no-repeat;color:#12354c;text-align:left;font-family:Georgia,'Times New Roman',serif;cursor:pointer;overflow:hidden;box-shadow:inset 0 0 0 2px #fffcf2,0 2px 5px #46351b44}
.palaces-page .palace-full-card:hover,.palaces-page .palace-full-card:focus-visible{outline:2px solid #8c5523;outline-offset:-3px;filter:brightness(1.025)}
.palaces-page .palace-full-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2px 4px;min-height:30px;border-bottom:1px solid #d5b884;padding-bottom:4px}
.palaces-page .palace-full-head>b{color:#a73f2b;font:700 12px/1.1 Georgia,serif;white-space:nowrap}
.palaces-page .palace-full-head>strong{grid-column:1;grid-row:2;color:#0c3652;font:700 11px/1.12 Georgia,serif;overflow-wrap:anywhere}
.palaces-page .palace-full-head>em{grid-column:2;grid-row:1/3;color:#79532e;font:700 12px/1.1 Georgia,serif;font-style:normal}
.palaces-page .palace-full-primary{display:grid;justify-items:center;gap:1px;min-height:29px;color:#a72d21;text-align:center;font:700 13px/1.18 Georgia,serif}
.palaces-page .palace-full-primary .palace-full-star{font-weight:700}
.palaces-page .palace-full-stars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;align-content:start;gap:3px 6px;flex:1 1 auto;min-height:0}
.palaces-page .palace-full-star{display:block;min-width:0;font:600 10.5px/1.22 'Be Vietnam Pro',Arial,sans-serif;overflow-wrap:break-word}
.palaces-page .palace-full-star em{font-style:normal;font-weight:700}
.palaces-page .palace-full-star.shade-0{color:#a8462d}
.palaces-page .palace-full-star.shade-1{color:#1b5679}
.palaces-page .palace-full-star.shade-2{color:#317549}
.palaces-page .palace-full-star.shade-3{color:#694d86}
.palaces-page .palace-full-foot{display:grid;gap:2px;margin-top:auto;border-top:1px solid #d2b683;padding-top:5px;color:#264357;font:700 10px/1.2 'Be Vietnam Pro',sans-serif}
.palaces-page .palace-full-foot small{color:#855825;font:600 10px/1.2 'Be Vietnam Pro',sans-serif}
.palaces-page .palace-full-center{grid-area:2/2/4/4;appearance:none;display:flex;flex-direction:column;align-items:center;min-width:0;min-height:0;gap:9px;padding:30px 29px;border:2px solid #dfb978;border-radius:12px;background:#082b41 url('/images/daoquan-center-r70.png') center/100% 100% no-repeat;color:#fff1cd;text-align:center;font-family:Georgia,serif;cursor:pointer;overflow:hidden}
.palaces-page .palace-full-center:focus-visible{outline:3px solid #ffdc8d;outline-offset:-6px}
.palaces-page .palace-full-seal{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:2px solid #e3bf75;border-radius:50%;background:#072b40;color:#ffd986;font:30px/1 Georgia,serif;box-shadow:0 0 0 3px #0a2f43}
.palaces-page .palace-full-kicker{color:#e8c889;font:700 12px/1.2 Georgia,serif;letter-spacing:.1em}
.palaces-page .palace-full-name{display:block;max-width:100%;padding-bottom:8px;border-bottom:1px solid #d6aa6a;color:#fff0c7;font:700 clamp(23px,3vw,34px)/1.12 Georgia,serif;text-shadow:0 2px 6px #0007;overflow-wrap:anywhere}
.palaces-page .palace-full-fields{display:grid;align-content:start;gap:7px;width:100%;min-width:0}
.palaces-page .palace-full-fields>span{display:grid;grid-template-columns:minmax(94px,40%) minmax(0,1fr);gap:10px;align-items:baseline;min-width:0;padding-bottom:3px;border-bottom:1px solid #e3bd7545;text-align:left}
.palaces-page .palace-full-fields em{color:#f3cc7d;font:700 12px/1.2 'Be Vietnam Pro',sans-serif;font-style:normal}
.palaces-page .palace-full-fields b{min-width:0;color:#fff9e8;font:700 12px/1.2 'Be Vietnam Pro',sans-serif;text-align:right;overflow-wrap:anywhere}
.palaces-page .palace-full-center>small{margin-top:auto;color:#f2cd83;font-size:11px}
.palaces-page .palace-full-grid>.palace-slot-0{grid-area:1/1}.palaces-page .palace-full-grid>.palace-slot-1{grid-area:1/2}.palaces-page .palace-full-grid>.palace-slot-2{grid-area:1/3}.palaces-page .palace-full-grid>.palace-slot-3{grid-area:1/4}
.palaces-page .palace-full-grid>.palace-slot-4{grid-area:2/4}.palaces-page .palace-full-grid>.palace-slot-5{grid-area:3/4}.palaces-page .palace-full-grid>.palace-slot-6{grid-area:4/4}.palaces-page .palace-full-grid>.palace-slot-7{grid-area:4/3}
.palaces-page .palace-full-grid>.palace-slot-8{grid-area:4/2}.palaces-page .palace-full-grid>.palace-slot-9{grid-area:4/1}.palaces-page .palace-full-grid>.palace-slot-10{grid-area:3/1}.palaces-page .palace-full-grid>.palace-slot-11{grid-area:2/1}
@media(max-width:600px){
 .palaces-page .palace-view-bar{flex-wrap:wrap;justify-content:center;gap:8px;text-align:center}
 .palaces-page .palace-view-bar>div:first-child{width:100%}
 .palaces-page .palace-view-bar strong{font-size:16px}
 .palaces-page .palace-view-switch{width:100%}
 .palaces-page .palace-view-switch button{flex:1 1 0}
 .palaces-page .palace-full-hint{font-size:11px}
}
/* Use the app's native zodiac artwork, never a crop from a card screenshot. */
.palaces-page .palace-grid .palace-head .animal{display:grid!important;place-items:center!important;overflow:visible!important;border:1px solid #d4a75e!important;border-radius:50%!important;background-image:none!important;background-color:#fff3d6!important;box-shadow:0 1px 4px #9a672c7a!important;filter:none!important}
.palaces-page .palace-grid .palace-head .animal .zodiac{visibility:visible!important;max-width:100%!important;max-height:100%!important;filter:drop-shadow(0 1px 1px #59350d88)!important}
.palaces-page .palace-full-animal{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:29px;height:29px;border:1px solid #d2a45c;border-radius:50%;background:#fff3d9;box-shadow:0 1px 4px #6d431d5e}
.palaces-page .palace-full-animal .zodiac{max-width:100%;max-height:100%;filter:drop-shadow(0 1px 1px #65401488)}
.palaces-page .palace-full-head{grid-template-columns:29px minmax(0,1fr) auto;column-gap:6px;min-height:33px}
.palaces-page .palace-full-head>b{grid-column:2;grid-row:1}
.palaces-page .palace-full-head>strong{grid-column:2;grid-row:2}
.palaces-page .palace-full-head>em{grid-column:3;grid-row:1/3}
@media(min-width:381px) and (max-width:600px){
 .palaces-page .palace-grid .palace-head .animal{flex-basis:22px!important;width:22px!important;height:22px!important}
 .palaces-page .palace-grid .palace-star-list{max-height:42px!important}
 .palaces-page .palace-grid .palace-star-list>span{display:-webkit-box!important;max-height:1.25em!important;font-size:7.8px!important;line-height:1.2!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:1!important;line-clamp:1!important;overflow:hidden!important}
}
/* Portaled reading dialog stays above the fixed app navigation on iOS/Android. */
body>.reading-overlay[data-dq-reading-portal]{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100vw!important;height:100vh!important;height:100dvh!important;margin:0!important;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))!important;background:#031725da!important;backdrop-filter:blur(5px)!important;overflow:hidden!important;pointer-events:auto!important}
body>.reading-overlay[data-dq-reading-portal] .reading-sheet{position:relative!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important;flex:0 1 460px!important;width:min(100%,460px)!important;max-width:460px!important;height:auto!important;max-height:calc(100vh - 24px)!important;max-height:min(84dvh,680px)!important;min-height:0!important;margin:auto!important;border:1px solid #d6ac6d!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 20px 60px #000b,0 0 0 3px #0a2c42!important;transform:none!important}
body>.reading-overlay[data-dq-reading-portal] .reading-head{flex:0 0 auto!important;min-height:0!important;padding:15px 18px!important}
body>.reading-overlay[data-dq-reading-portal] .reading-head h2{font-size:clamp(20px,5vw,26px)!important;line-height:1.16!important}
body>.reading-overlay[data-dq-reading-portal] .reading-head button{flex:0 0 38px!important;width:38px!important;height:38px!important}
body>.reading-overlay[data-dq-reading-portal] .reading-scroll{display:block!important;flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch}
body>.reading-overlay[data-dq-reading-portal] .reading-body{padding:15px 18px 20px!important}
body>.reading-overlay[data-dq-reading-portal] .reading-body p{margin:0 0 11px!important;font-size:14px!important;line-height:1.55!important;overflow-wrap:anywhere!important}
@media(max-width:600px){body>.reading-overlay[data-dq-reading-portal] .reading-sheet{max-height:82dvh!important;width:calc(100vw - 28px)!important}body>.reading-overlay[data-dq-reading-portal] .reading-head{padding:12px 14px!important}body>.reading-overlay[data-dq-reading-portal] .reading-body{padding:12px 15px 17px!important}}

/* DaoQuan R75: approved 4x2 commercial summary cards */
.palaces-page .palace-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(4px,.7vw,9px)!important;width:100%!important;margin:clamp(10px,1.5vw,18px) 0 clamp(12px,1.7vw,20px)!important}
.palaces-page .palace-stats>.palace-stat-card{--atlas-x:3.6%;--atlas-y:8.9%;--atlas-sx:432%;--atlas-sy:241%;position:relative!important;display:block!important;box-sizing:border-box!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1.20!important;margin:0!important;padding:0!important;border:0!important;border-radius:clamp(6px,1vw,12px)!important;background-color:#06223a!important;background-image:url('/images/daoquan-stat-atlas-r75.png')!important;background-size:var(--atlas-sx) var(--atlas-sy)!important;background-position:var(--atlas-x) var(--atlas-y)!important;background-repeat:no-repeat!important;box-shadow:0 5px 12px #00131d7a!important;color:#fff1d7!important;text-align:center!important;overflow:hidden!important;transform:none!important;cursor:pointer!important;isolation:isolate!important}
.palaces-page .palace-stats>.palace-stat-card:hover{filter:brightness(1.09)!important;transform:translateY(-2px)!important}
.palaces-page .palace-stats>.palace-stat-card:focus-visible{outline:3px solid #ffe3a0!important;outline-offset:2px!important}
.palaces-page .palace-stats>.palace-stat-card>span{display:none!important}
.palaces-page .palace-stats>.palace-stat-card>b{position:absolute!important;top:58%!important;left:5%!important;right:5%!important;display:block!important;width:auto!important;margin:0!important;color:#fff5db!important;font:700 clamp(8px,2.05vw,19px)/1.05 Georgia,'Times New Roman',serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-shadow:0 1px 3px #001624!important}
.palaces-page .palace-stats>.palace-stat-card>b::after{content:'';position:absolute;top:calc(100% + clamp(2px,.35vw,5px));left:25%;right:25%;height:1px;background:linear-gradient(90deg,transparent,#f2d088,transparent)}
.palaces-page .palace-stats>.palace-stat-card>small{position:absolute!important;top:74%!important;left:5%!important;right:5%!important;display:-webkit-box!important;width:auto!important;max-height:2.1em!important;margin:0!important;color:#f9d37c!important;font:700 clamp(7.5px,2.15vw,20px)/1.04 Georgia,'Times New Roman',serif!important;text-align:center!important;white-space:normal!important;overflow:hidden!important;overflow-wrap:normal!important;word-break:normal!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;text-shadow:0 1px 3px #001624!important}
.palaces-page .palace-stats>.palace-stat-0{--atlas-x:3.6%;--atlas-y:8.9%;--atlas-sx:432%;--atlas-sy:241%}
.palaces-page .palace-stats>.palace-stat-1{--atlas-x:35.1%;--atlas-y:8.9%;--atlas-sx:449%;--atlas-sy:241%}
.palaces-page .palace-stats>.palace-stat-2{--atlas-x:65.2%;--atlas-y:8.9%;--atlas-sx:449%;--atlas-sy:241%}
.palaces-page .palace-stats>.palace-stat-3{--atlas-x:96.6%;--atlas-y:8.9%;--atlas-sx:427%;--atlas-sy:241%}
.palaces-page .palace-stats>.palace-stat-4{--atlas-x:3.6%;--atlas-y:86%;--atlas-sx:432%;--atlas-sy:235%}
.palaces-page .palace-stats>.palace-stat-5{--atlas-x:35.1%;--atlas-y:86%;--atlas-sx:449%;--atlas-sy:235%}
.palaces-page .palace-stats>.palace-stat-6{--atlas-x:65.2%;--atlas-y:86%;--atlas-sx:449%;--atlas-sy:235%}
.palaces-page .palace-stats>.palace-stat-7{--atlas-x:96.6%;--atlas-y:86%;--atlas-sx:427%;--atlas-sy:235%}
@media(max-width:600px){
 .palaces-page .palace-stats{gap:3px!important;margin:11px 0 13px!important}
 .palaces-page .palace-stats>.palace-stat-card{border-radius:5px!important}
 .palaces-page .palace-stats>.palace-stat-card>b{top:58%!important;font-size:clamp(7px,2.15vw,10px)!important}
 .palaces-page .palace-stats>.palace-stat-card>small{top:75%!important;font-size:clamp(7px,2.1vw,10px)!important;line-height:1.05!important}
}
@media(max-width:380px){
 .palaces-page .palace-stats>.palace-stat-card>b{font-size:7.5px!important}
 .palaces-page .palace-stats>.palace-stat-card>small{font-size:7.4px!important}
 .palaces-page .palace-stats>.palace-stat-card>b::after{display:none}
}

/* DaoQuan R76: approved ornamental CTA, live text, responsive frame */
.palaces-page .palace-reading-actions{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:737px!important;
  margin:clamp(12px,2vw,22px) auto 18px!important;
  overflow:visible!important
}
.palaces-page .palace-generate,
.palaces-page .palace-generate:not(:disabled){
  position:relative!important;
  display:flex!important;
  box-sizing:border-box!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:clamp(66px,19vw,112px)!important;
  min-height:66px!important;
  aspect-ratio:auto!important;
  padding:0 clamp(48px,14%,110px)!important;
  border:0!important;
  border-radius:999px!important;
  background-color:transparent!important;
  background-image:url('/images/daoquan-cta-blank-r76.png')!important;
  background-position:center!important;
  background-size:100% 162%!important;
  background-repeat:no-repeat!important;
  box-shadow:0 8px 20px #00111b77!important;
  color:#09213c!important;
  text-align:center!important;
  white-space:normal!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent;
  isolation:isolate
}
.palaces-page .palace-generate::before,
.palaces-page .palace-generate::after,
.palaces-page .palace-generate:not(:disabled)::after{display:none!important;content:none!important}
.palaces-page .palace-generate-label{
  display:block;
  width:100%;
  min-width:0;
  color:#071d38;
  font:700 clamp(13px,3.65vw,29px)/1.05 Georgia,'Times New Roman',serif!important;
  letter-spacing:-.025em;
  text-shadow:0 1px 0 #fff1ba;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip
}
.palaces-page .palace-generate-arrow{
  position:absolute;
  top:50%;
  right:clamp(18px,7.7%,57px);
  display:grid;
  place-items:center;
  box-sizing:border-box;
  width:clamp(30px,9vw,57px);
  height:clamp(30px,9vw,57px);
  border:2px solid #c38c39;
  border-radius:50%;
  background:radial-gradient(circle at 32% 22%,#163958,#03172c 72%);
  box-shadow:0 0 0 2px #ffe5a0,0 2px 6px #54320d77,inset 0 1px 3px #ffffff4d;
  color:#ffda6d;
  font:700 clamp(25px,7vw,42px)/1 Georgia,serif;
  transform:translateY(-50%)
}
.palaces-page .palace-generate:focus-visible{outline:3px solid #ffe398!important;outline-offset:3px!important}
.palaces-page .palace-generate:disabled{opacity:.88!important;cursor:default!important}
@media(max-width:360px){
 .palaces-page .palace-generate{padding-inline:43px!important}
 .palaces-page .palace-generate-label{font-size:clamp(12px,3.5vw,13px)!important}
 .palaces-page .palace-generate-arrow{right:6%;width:29px;height:29px;font-size:24px}
}

/* DaoQuan R77: compact reading CTA and Vietnamese-safe bold typography */
.palaces-page .palace-reading-actions .palace-generate,
.palaces-page .palace-reading-actions .palace-generate:not(:disabled){
  box-sizing:border-box!important;
  width:min(90%,520px)!important;
  height:clamp(56px,16vw,95px)!important;
  min-height:56px!important;
  aspect-ratio:auto!important;
  margin-inline:auto!important;
  padding:0 clamp(54px,17%,100px)!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent url('/images/daoquan-cta-blank-r76.png') center / 100% 162% no-repeat!important;
  box-shadow:0 5px 14px #00111b75!important;
  letter-spacing:0!important;
  text-shadow:none!important
}
.palaces-page .palace-reading-actions .palace-generate-label{
  display:block!important;
  position:relative;
  z-index:1;
  min-width:0;
  width:100%;
  color:#09233e!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif!important;
  font-size:clamp(12px,3.6vw,21px)!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.012em!important;
  text-shadow:0 1px 0 #fff2c7!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased
}
.palaces-page .palace-reading-actions .palace-generate-arrow{
  right:clamp(18px,6%,35px)!important;
  width:clamp(29px,8vw,48px)!important;
  height:clamp(29px,8vw,48px)!important;
  border-width:2px!important;
  font-size:0!important
}
.palaces-page .palace-reading-actions .palace-generate-arrow::before{
  content:'';
  display:block;
  width:28%;
  height:28%;
  margin-left:-4px;
  border-top:3px solid #ffda6d;
  border-right:3px solid #ffda6d;
  border-radius:1px;
  transform:rotate(45deg)
}
@media(max-width:340px){
 .palaces-page .palace-reading-actions .palace-generate,
 .palaces-page .palace-reading-actions .palace-generate:not(:disabled){width:94%!important;padding-inline:44px!important}
 .palaces-page .palace-reading-actions .palace-generate-label{font-size:11.5px!important;letter-spacing:0!important}
 .palaces-page .palace-reading-actions .palace-generate-arrow{right:16px!important;width:27px!important;height:27px!important}
}

/* DaoQuan R78: clean gold reading CTA without raster streak or arrow */
.palaces-page .palace-reading-actions .palace-generate,
.palaces-page .palace-reading-actions .palace-generate:not(:disabled){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:min(90%,480px)!important;
  height:clamp(54px,15vw,80px)!important;
  min-height:54px!important;
  aspect-ratio:auto!important;
  margin:0 auto!important;
  padding:9px 23px!important;
  border:2px solid #eac17b!important;
  border-radius:999px!important;
  background:#eab75f!important;
  background-image:radial-gradient(ellipse at 52% 17%,#fff0ba 0%,#f7d686 38%,#e9ac50 77%,#bd7d31 100%)!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  box-shadow:inset 0 0 0 2px #71451e,
             inset 0 0 0 5px #ffe6a4,
             inset 0 0 0 7px #a16832,
             inset 0 6px 12px #fff8d766,
             0 4px 0 #633b1b,
             0 9px 18px #00111b80!important;
  color:#09233e!important;
  text-shadow:none!important;
  overflow:hidden!important
}
.palaces-page .palace-reading-actions .palace-generate::before,
.palaces-page .palace-reading-actions .palace-generate::after{display:none!important;content:none!important}
.palaces-page .palace-reading-actions .palace-generate-label{
  display:block!important;
  position:relative;
  z-index:1;
  width:auto;
  max-width:100%;
  margin:0!important;
  color:#0a2741!important;
  font:800 clamp(13px,3.7vw,22px)/1.2 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif!important;
  letter-spacing:.012em!important;
  text-align:center!important;
  text-shadow:0 1px 0 #fff5cf!important;
  white-space:nowrap!important;
  overflow:visible!important
}
.palaces-page .palace-reading-actions .palace-generate:focus-visible{outline:3px solid #fff1b7!important;outline-offset:4px!important}
.palaces-page .palace-reading-actions .palace-generate:disabled{opacity:.88!important}
@media(max-width:340px){
 .palaces-page .palace-reading-actions .palace-generate,
 .palaces-page .palace-reading-actions .palace-generate:not(:disabled){width:94%!important;padding-inline:17px!important}
 .palaces-page .palace-reading-actions .palace-generate-label{font-size:12.5px!important;letter-spacing:0!important}
}

/* DaoQuan R79: text-sized CTA with clean direct lettering */
.palaces-page .palace-reading-actions .palace-generate,
.palaces-page .palace-reading-actions .palace-generate:not(:disabled){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:max-content!important;
  max-width:calc(100% - 20px)!important;
  height:auto!important;
  min-height:49px!important;
  margin:0 auto!important;
  padding:11px clamp(23px,6vw,35px)!important;
  color:#0b2b44!important;
  font:800 clamp(14px,3.7vw,19px)/1.2 'Segoe UI',Roboto,Arial,sans-serif!important;
  letter-spacing:.015em!important;
  text-align:center!important;
  text-shadow:none!important;
  -webkit-text-stroke:0 transparent!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  filter:none!important;
  appearance:none!important
}
.palaces-page .palace-reading-actions .palace-generate::before,
.palaces-page .palace-reading-actions .palace-generate::after{content:none!important;display:none!important}
@media(max-width:340px){
 .palaces-page .palace-reading-actions .palace-generate,
 .palaces-page .palace-reading-actions .palace-generate:not(:disabled){
   width:max-content!important;
   max-width:calc(100% - 16px)!important;
   min-height:46px!important;
   padding:10px 21px!important;
   font-size:13px!important;
   letter-spacing:0!important
 }
}

/* DaoQuan R80: compact independent reading progress card */
.palaces-page .palace-reading-actions .reading-progress{
  display:block!important;
  box-sizing:border-box!important;
  width:min(92%,290px)!important;
  max-width:290px!important;
  min-height:0!important;
  margin:12px auto 0!important;
  padding:10px 13px 11px!important;
  border:1px solid #b78b4e!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,#103951,#08283b)!important;
  box-shadow:inset 0 1px 0 #f5d28a66,0 5px 12px #00141f78!important;
  color:#f9e6bb!important;
  overflow:hidden!important
}
.palaces-page .palace-reading-actions .reading-progress-caption{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#fff1cd!important;
  font:700 clamp(11px,3vw,13px)/1.3 'Segoe UI',Roboto,Arial,sans-serif!important;
  white-space:nowrap!important;
  text-align:left!important
}
.palaces-page .palace-reading-actions .reading-progress-caption b{
  flex:1 1 auto!important;
  min-width:0!important;
  color:#fff1cd!important;
  font:inherit!important;
  white-space:nowrap!important
}
.palaces-page .palace-reading-actions .reading-progress-caption strong{
  flex:0 0 auto!important;
  color:#ffda81!important;
  font:800 14px/1.2 'Segoe UI',Roboto,Arial,sans-serif!important;
  white-space:nowrap!important
}
.palaces-page .palace-reading-actions progress.reading-progress-track{
  appearance:none!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:8px!important;
  margin:8px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:#041a29!important;
  overflow:hidden!important;
  accent-color:#e7ad58!important
}
.palaces-page .palace-reading-actions progress.reading-progress-track::-webkit-progress-bar{border-radius:999px;background:#041a29}
.palaces-page .palace-reading-actions progress.reading-progress-track::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,#b67534,#ffe29c)}
.palaces-page .palace-reading-actions progress.reading-progress-track::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,#b67534,#ffe29c)}
.palaces-page .palace-reading-actions .reading-wait-bar{height:8px;margin:8px 0 0;border-radius:999px;background:#041a29;overflow:hidden}
.palaces-page .palace-reading-actions .reading-wait-bar span{display:block;width:32%;height:100%;border-radius:999px;background:linear-gradient(90deg,#b67534,#ffe29c);animation:reading-wait 1.6s ease-in-out infinite alternate}
@keyframes reading-wait{from{transform:translateX(-100%)}to{transform:translateX(320%)}}
@media(prefers-reduced-motion:reduce){.palaces-page .palace-reading-actions .reading-wait-bar span{animation:none;width:42%}}

/* DaoQuan R81: compact lotus greeting banner */
.palaces-page .demo-notice{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:min(86%,520px)!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:5/1!important;
  gap:0!important;
  margin:clamp(9px,1.6vw,16px) auto!important;
  padding:0 clamp(46px,13%,76px)!important;
  border:0!important;
  border-radius:clamp(9px,1.8vw,15px)!important;
  background:#082b41 url('/images/daoquan-banner-r70.png') center / 100% 100% no-repeat!important;
  box-shadow:none!important;
  overflow:hidden!important;
  text-align:center!important
}
.palaces-page .demo-notice::before,
.palaces-page .demo-notice::after{display:none!important;content:none!important}
.palaces-page .demo-notice strong{
  display:block!important;
  flex:0 1 auto!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#ffe4a5!important;
  font:700 clamp(11px,3vw,18px)/1.15 'Segoe UI',Roboto,Arial,sans-serif!important;
  letter-spacing:0!important;
  text-shadow:0 1px 1px #00131f!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important
}
.palaces-page .palace-calculation-note{
  width:min(86%,520px);
  margin:-2px auto 10px;
  color:#ffe5ad;
  font:600 11px/1.35 'Segoe UI',Roboto,Arial,sans-serif;
  text-align:center
}
@media(max-width:340px){
 .palaces-page .demo-notice{padding-inline:38px!important}
}

/* DaoQuan R82: personalized reading with calm hierarchy */
.reading-full-scroll,.reading-body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",sans-serif;letter-spacing:.005em}
.reading-preamble{margin:4px 0 22px;padding:18px;border:1px solid rgba(207,165,92,.58);border-radius:18px;background:linear-gradient(140deg,#fffaf0,#f6eee0 65%,#f3e6d2);box-shadow:0 8px 26px rgba(36,36,35,.08);color:#243640}
.reading-preamble .reading-salutation{margin:0 0 14px!important;font-family:Georgia,"Noto Serif",serif;font-size:20px!important;font-weight:700;line-height:1.3;color:#754518}
.reading-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.reading-fact-grid>div{min-width:0;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.76);border:1px solid rgba(203,179,135,.34)}
.reading-fact-grid span{display:block;margin-bottom:3px;color:#6e6353;font-size:11px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.reading-fact-grid strong{display:block;overflow-wrap:anywhere;font-size:14px;font-weight:750;line-height:1.4;color:#223644}
.reading-preamble .reading-address{margin:16px 1px 0!important;color:#5f421e;font-size:15px!important;line-height:1.55;font-weight:700}
.reading-chapter{margin:0 0 19px;padding:17px 16px 14px;background:rgba(255,253,248,.94);border:1px solid rgba(190,159,106,.45);border-radius:16px;box-shadow:0 5px 16px rgba(28,43,55,.06)}
.reading-chapter h3{display:flex;align-items:center;gap:9px;margin:0 0 13px!important;color:#754518;font-family:Georgia,"Noto Serif",serif;font-size:19px;line-height:1.32;overflow-wrap:anywhere}
.reading-chapter h3 svg{flex:none;color:#a66a26}
.reading-chapter p,.reading-body>p{margin:0 0 13px!important;font-size:15px!important;line-height:1.7!important;color:#243744;overflow-wrap:anywhere}
.reading-chapter p:last-child,.reading-body>p:last-child{margin-bottom:0!important}
.reading-signature{display:grid;gap:6px;margin:20px 0 7px;padding:17px 15px;border-top:1px solid #c69c64;border-bottom:1px solid #c69c64;text-align:center;color:#5d3b1c;line-height:1.55}
.reading-signature strong{font-size:14px;font-weight:750}.reading-signature span{font-family:Georgia,"Noto Serif",serif;font-size:15px}
@media(max-width:410px){.reading-preamble{padding:13px}.reading-fact-grid{grid-template-columns:1fr;gap:6px}.reading-chapter{padding:14px 12px}.reading-chapter h3{font-size:17px}.reading-chapter p,.reading-body>p{font-size:14px!important}}

body>.reading-overlay[data-dq-reading-portal] .reading-body>p{font-size:15px!important;line-height:1.7!important;margin:0 0 13px!important}
body>.reading-overlay[data-dq-reading-portal] .reading-body .reading-preamble p{line-height:1.55!important}
@media(max-width:410px){body>.reading-overlay[data-dq-reading-portal] .reading-body>p{font-size:14px!important}}

/* DaoQuan R84: single-line compact lotus greeting */
.palaces-page .demo-notice{
  width:min(100%,420px)!important;
  aspect-ratio:5.6/1!important;
  min-height:0!important;
  max-height:76px!important;
  padding:0 11.5%!important;
  margin:10px auto!important;
  border-radius:11px!important;
  background-size:100% 100%!important;
}
.palaces-page .demo-notice strong{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  font-family:'VNI Briquet','VNI-Briquet','Briquet',Georgia,'Noto Serif',serif!important;
  font-size:clamp(7px,2.6vw,13px)!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-align:center!important;
  text-shadow:0 1px 1px #00131f!important;
}
@media(max-width:320px){
  .palaces-page .demo-notice{padding-inline:11%!important}
  .palaces-page .demo-notice strong{font-size:clamp(6.5px,2.5vw,8.5px)!important;letter-spacing:-.035em!important}
}

/* DaoQuan R85: responsive, dedicated good-day features */
.goodday-page .goodday-content{width:min(100%,760px);margin-inline:auto;padding-bottom:95px}
.goodday-intro,.goodday-detail-head{margin:12px 0 16px;padding:16px 17px;border:1px solid #bd9a62;border-radius:16px;background:linear-gradient(135deg,#092c42,#163a4d);box-shadow:0 8px 18px #001c2a5c;color:#ffe9b5}
.goodday-intro b,.goodday-detail-head b{display:flex;gap:9px;align-items:center;font-family:Georgia,'Noto Serif',serif;font-size:17px;line-height:1.35}
.goodday-intro span,.goodday-detail-head p{display:block;margin:6px 0 0;color:#f5e7c9;font-size:13px;line-height:1.5}
.goodday-feature-list,.goodday-results{display:grid;grid-template-columns:1fr;gap:10px}
.goodday-feature{display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:12px 13px;border:1px solid #caa771;border-radius:16px;background:linear-gradient(145deg,#fffaf1,#f3e8d5);box-shadow:0 5px 14px #00192930;color:#213943;text-align:left;cursor:pointer}
.goodday-feature-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:12px;background:#123b50;color:#f4ce88;box-shadow:inset 0 0 0 1px #bd8c4d}
.goodday-feature-copy{display:grid;gap:3px;min-width:0;flex:1}
.goodday-feature-copy b{font-family:Georgia,'Noto Serif',serif;font-size:16px;line-height:1.28;color:#714619}
.goodday-feature-copy small{font-size:12px;line-height:1.42;color:#405160;overflow-wrap:anywhere}
.goodday-feature-arrow{display:grid;place-items:center;flex:none;color:#966536}
.goodday-feature:focus-visible,.goodday-result:focus-visible,.goodday-month-nav button:focus-visible,.goodday-day-nav button:focus-visible{outline:3px solid #e7a536;outline-offset:2px}
.goodday-date-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;padding:12px 14px;border-radius:13px;background:#f7eddb;color:#5b3e20;font-weight:700}
.goodday-date-label input{min-width:0;max-width:165px;padding:7px;border:1px solid #c29f6f;border-radius:8px;background:#fffaf1;color:#1d3441;font:inherit}
.goodday-day-nav,.goodday-month-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px;padding:9px 10px;border:1px solid #bb985c;border-radius:13px;background:#092b41;color:#ffe9ad;text-align:center}
.goodday-day-nav b,.goodday-month-nav strong{min-width:0;line-height:1.3;font-size:14px}
.goodday-day-nav button,.goodday-month-nav button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #ae8752;border-radius:9px;background:#153b4c;color:#f5d08c;cursor:pointer}
.goodday-result-heading{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:13px 0 10px;color:#f6e9cd}
.goodday-result-heading b{font:700 16px/1.3 Georgia,'Noto Serif',serif}.goodday-result-heading span{white-space:nowrap;font-size:12px}
.goodday-result{display:flex;align-items:center;gap:11px;width:100%;min-width:0;padding:10px 12px;border:1px solid #c7a66e;border-radius:13px;background:#fff8eb;color:#213844;text-align:left;cursor:pointer}
.goodday-result.selected{border-color:#e5b95b;box-shadow:inset 0 0 0 1px #dca655}
.goodday-result-date{display:grid;place-items:center;flex:0 0 52px;min-height:54px;border-radius:9px;background:#163d50;color:#ffe9ae}
.goodday-result-date b{font-size:22px;line-height:1}.goodday-result-date small{font-size:9px;font-weight:700}
.goodday-result-info{display:grid;gap:3px;min-width:0;flex:1}.goodday-result-info b{font-size:13px;line-height:1.4}.goodday-result-info small,.goodday-result-info em{font-size:11px;line-height:1.4;color:#556370;font-style:normal;overflow-wrap:anywhere}
.goodday-result>svg{flex:none;color:#9c713b}
.goodday-picked,.goodday-empty{margin:0 0 14px;padding:16px;border:1px solid #c6a36a;border-radius:15px;background:linear-gradient(150deg,#fffaf0,#f3e8d7);color:#273f49;box-shadow:0 6px 16px #00172628}
.goodday-picked h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:#795021;font:700 17px/1.4 Georgia,'Noto Serif',serif}
.goodday-picked h4{margin:12px 0 8px;font-size:14px;color:#785128}.goodday-picked p{margin:8px 0;font-size:13px;line-height:1.55}.goodday-picked>small{display:block;margin-top:10px;line-height:1.5}
.goodday-facts,.goodday-directions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.goodday-facts span,.goodday-directions span{display:grid;gap:2px;min-width:0;padding:8px 9px;border:1px solid #e3d0ae;border-radius:9px;background:#fffcf6;font-size:11px;line-height:1.35}
.goodday-facts b,.goodday-directions b{font-size:12px;overflow-wrap:anywhere;color:#223e4a}
.goodday-hours{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.goodday-hours span{display:grid;gap:2px;min-width:0;padding:8px 5px;border:1px solid #d3b987;border-radius:8px;background:#fffcf7;text-align:center}.goodday-hours b{font-size:12px;color:#67451b}.goodday-hours small{font-size:10px;color:#415462}
.goodday-empty{line-height:1.5;font-size:13px}
@media(min-width:680px){.goodday-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:350px){.goodday-feature{gap:9px;padding:10px}.goodday-feature-icon{flex-basis:38px;width:38px;height:38px}.goodday-feature-copy b{font-size:14px}.goodday-hours{grid-template-columns:repeat(2,minmax(0,1fr))}.goodday-facts{grid-template-columns:1fr}}
/* DaoQuan R86: design tokens and Buddhism components */
:root{
  --dq-ink:#0a2a3c;--dq-ink-soft:#194052;--dq-gold:#c69b55;--dq-gold-light:#ffe4a8;
  --dq-cream:#fff9ef;--dq-parchment:#f3ead9;--dq-text:#263a43;--dq-muted:#5d6870;
  --dq-font-display:Georgia,'Noto Serif',serif;--dq-font-body:system-ui,-apple-system,'Segoe UI',Roboto,'Noto Sans',sans-serif;
  --dq-space-1:4px;--dq-space-2:8px;--dq-space-3:12px;--dq-space-4:16px;--dq-space-5:20px;--dq-space-6:24px;
  --dq-radius-sm:10px;--dq-radius-card:16px;--dq-radius-panel:20px;--dq-shadow-card:0 7px 20px rgba(0,19,31,.16)
}
.home-page .buddhism-home-entry{display:flex;align-items:center;gap:13px;width:100%;min-width:0;margin:15px 0 18px;padding:10px 13px 10px 10px;border:1px solid var(--dq-gold);border-radius:var(--dq-radius-card);background:linear-gradient(120deg,#0a2c40,#174255);box-shadow:var(--dq-shadow-card);color:var(--dq-gold-light);text-align:left;cursor:pointer}
.buddhism-home-entry img{flex:0 0 64px;width:64px;height:64px;border-radius:10px;object-fit:cover;object-position:center 25%;border:1px solid #c99d61}
.buddhism-home-entry span{display:grid;gap:3px;min-width:0;flex:1}.buddhism-home-entry small{font:700 10px/1.25 var(--dq-font-body);letter-spacing:.09em;color:#e4c890}.buddhism-home-entry b{font:700 23px/1.15 var(--dq-font-display)}.buddhism-home-entry em{font:500 11px/1.4 var(--dq-font-body);font-style:normal;color:#f4e6c8;overflow-wrap:anywhere}.buddhism-home-entry>svg{flex:none}
.buddhism-page .buddhism-content{width:min(100%,760px);margin-inline:auto;padding-bottom:95px;font-family:var(--dq-font-body)}
.buddhism-intro{position:relative;display:flex;align-items:center;gap:16px;min-height:156px;margin:12px 0 17px;padding:14px;border:1px solid var(--dq-gold);border-radius:var(--dq-radius-panel);overflow:hidden;background:linear-gradient(130deg,#08283c,#1c4654);box-shadow:var(--dq-shadow-card);color:var(--dq-gold-light)}
.buddhism-intro img{flex:0 0 122px;width:122px;height:122px;border-radius:15px;object-fit:cover;object-position:center 23%;border:1px solid rgba(239,203,139,.7)}
.buddhism-intro div{min-width:0}.buddhism-intro small{font-size:10px;font-weight:700;letter-spacing:.1em}.buddhism-intro h2{margin:6px 0;font:700 clamp(18px,4.5vw,24px)/1.26 var(--dq-font-display);overflow-wrap:anywhere}.buddhism-intro p{margin:0;color:#f5e8cd;font-size:12px;line-height:1.5}
.buddhism-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dq-space-3)}
.buddhism-category{display:grid;justify-items:start;align-content:start;gap:6px;min-width:0;min-height:124px;padding:14px;border:1px solid #c9a46d;border-radius:var(--dq-radius-card);background:linear-gradient(150deg,var(--dq-cream),var(--dq-parchment));box-shadow:var(--dq-shadow-card);color:#7a4e20;text-align:left;cursor:pointer}
.buddhism-category svg{width:25px;height:25px;color:#b87837}.buddhism-category b{font:700 17px/1.25 var(--dq-font-display)}.buddhism-category small{font:500 11px/1.4 var(--dq-font-body);color:var(--dq-muted);overflow-wrap:anywhere}
.buddhism-category.selected{border-color:#f7d28a;box-shadow:inset 0 0 0 2px #b88743,var(--dq-shadow-card)}
.buddhism-latest-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:23px 0 12px;color:#f9e5bb}.buddhism-latest-head h2{margin:0;font:700 20px/1.3 var(--dq-font-display)}.buddhism-latest-head button{flex:none;padding:8px 11px;border:1px solid #bf955c;border-radius:9px;background:#133b4d;color:#ffe0a0;font:700 11px var(--dq-font-body);cursor:pointer}
.buddhism-article-list{display:grid;gap:11px}.buddhism-article-card{display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:10px;border:1px solid #c7a56d;border-radius:var(--dq-radius-card);background:var(--dq-cream);box-shadow:var(--dq-shadow-card);text-align:left;color:var(--dq-text);cursor:pointer}
.buddhism-article-card img{flex:0 0 88px;width:88px;height:88px;object-fit:cover;border-radius:10px;background:#123b4d}.buddhism-article-copy{display:grid;gap:3px;min-width:0;flex:1}.buddhism-article-copy small{color:#946329;font-size:10px;font-weight:800;letter-spacing:.035em}.buddhism-article-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font:700 15px/1.35 var(--dq-font-display)}.buddhism-article-copy span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#4b5c62;font-size:11px;line-height:1.45}.buddhism-article-copy em{color:#7e7768;font-size:10px;font-style:normal}.buddhism-article-card>svg{flex:none;color:#9d713b}
.buddhism-empty{padding:22px 16px;border:1px solid #c7a56d;border-radius:var(--dq-radius-card);background:var(--dq-cream);color:#5a6062;font-size:14px;line-height:1.5;text-align:center}
.buddhism-article-full{margin-top:13px;border:1px solid #c5a06b;border-radius:var(--dq-radius-panel);overflow:hidden;background:var(--dq-cream);box-shadow:var(--dq-shadow-card);color:var(--dq-text)}.buddhism-cover{display:block;width:100%;max-height:330px;object-fit:cover;object-position:center 25%}.buddhism-article-inner{padding:20px}.buddhism-article-inner>small{color:#93612c;font-size:12px;font-weight:700}.buddhism-article-inner h1{margin:9px 0;font:700 clamp(23px,5.5vw,32px)/1.27 var(--dq-font-display)}.buddhism-byline{color:var(--dq-muted);font-size:12px}.buddhism-article-inner video{width:100%;max-height:360px;margin:12px 0;border-radius:10px;background:#081f2d}.buddhism-prose p{margin:0 0 15px;font-size:15px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.buddhism-page button:focus-visible,.home-page .buddhism-home-entry:focus-visible{outline:3px solid #f0b650;outline-offset:3px}
@media(max-width:390px){.buddhism-intro{gap:10px;min-height:128px;padding:10px}.buddhism-intro img{flex-basis:95px;width:95px;height:108px}.buddhism-category{min-height:118px;padding:11px}.buddhism-category b{font-size:15px}.buddhism-article-card{gap:8px}.buddhism-article-card img{flex-basis:74px;width:74px;height:82px}.buddhism-article-card>svg{width:14px}.buddhism-article-inner{padding:15px}}
@media(max-width:320px){.buddhism-home-entry img{flex-basis:52px;width:52px;height:57px}.buddhism-home-entry b{font-size:20px}.buddhism-intro img{flex-basis:76px;width:76px;height:94px}.buddhism-category-grid{gap:8px}.buddhism-category{min-height:116px;padding:9px}.buddhism-category b{font-size:14px}.buddhism-category small{font-size:10px}}
/* R86 tile refinement: eight compact home cards, with Buddha art in the eighth card. */
.home-page .buddhism-feature-tile{background-image:linear-gradient(0deg,#00101ef5 0%,transparent 61%),url('/images/daoquan-buddha-r86.png');background-position:center,center 24%;background-size:cover;color:#fff8e9}
.home-page .buddhism-feature-tile b{white-space:nowrap;text-shadow:0 1px 5px #000,0 2px 8px #000}
.home-page .buddhism-feature-tile:focus-visible{outline:3px solid #f0b650;outline-offset:3px}

/* R87: compact four Phat Phap categories, centered on phones. */
.buddhism-page .buddhism-category-grid{width:min(100%,370px);margin-inline:auto;gap:clamp(8px,2.4vw,12px)}
.buddhism-page .buddhism-category{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-height:78px;padding:10px 13px;border-radius:15px;transition:transform .18s ease,box-shadow .18s ease}
.buddhism-page .buddhism-category svg{flex:none;width:23px;height:23px}
.buddhism-page .buddhism-category b{font-size:clamp(15px,4vw,17px);line-height:1.15}
.buddhism-page .buddhism-category:hover{transform:translateY(-2px)}
.buddhism-page .buddhism-category:active{transform:scale(.98)}
.buddhism-page .buddhism-latest-head{margin:17px 0 10px}
.buddhism-page .buddhism-intro h2{margin-bottom:0}
@media(max-width:350px){.buddhism-page .buddhism-category{min-height:72px;padding:9px 11px}.buddhism-page .buddhism-category svg{width:21px;height:21px}.buddhism-page .buddhism-category b{font-size:14px}.buddhism-page .buddhism-latest-head{margin-top:15px}}
@media(prefers-reduced-motion:reduce){.buddhism-page .buddhism-category{transition:none}.buddhism-page .buddhism-category:hover{transform:none}}

/* R88: richly colored crisp vector emblems for the four Buddhist categories. */
.buddhism-page .buddhism-category-grid{width:min(100%,332px);gap:8px}
.buddhism-page .buddhism-category{flex-direction:row;align-items:center;justify-content:flex-start;min-height:70px;gap:7px;padding:8px 10px}
.buddhism-page .buddhism-category .buddhism-icon{width:34px;height:34px;flex:none;overflow:visible;filter:drop-shadow(0 2px 2px #49301f35)}
.buddhism-page .buddhism-category b{min-width:0;margin:0;white-space:nowrap;font-size:clamp(14px,3.7vw,17px);line-height:1.12}
@media(max-width:350px){.buddhism-page .buddhism-category{min-height:64px;gap:5px;padding:7px}.buddhism-page .buddhism-category .buddhism-icon{width:28px;height:28px}.buddhism-page .buddhism-category b{font-size:13px}}

/* R89: the approved indigo and gold artwork in the chart's identity panels. */
.palaces-page .palace-center-plate,
.palaces-page .palace-full-center{
  background:#071c2d url('/images/daoquan-center-r89.webp') center/100% 100% no-repeat!important;
  color:#fff5dc!important;
  font-family:'DQ Sans',system-ui,sans-serif!important;
}
.palaces-page .palace-center-plate{
  box-sizing:border-box!important;
  justify-content:center!important;
  gap:clamp(3px,.7vw,6px)!important;
  padding:clamp(12px,2.5vw,24px) clamp(10px,2.2vw,24px)!important;
  border:1px solid #cfa968!important;
  border-radius:10px!important;
  overflow:hidden!important;
}
.palaces-page .palace-center-seal{
  position:static!important;
  flex:0 0 auto!important;
  width:clamp(25px,6vw,42px)!important;
  height:clamp(25px,6vw,42px)!important;
  margin:0!important;
  transform:none!important;
}
.palaces-page .palace-center-kicker{
  max-width:100%!important;
  color:#e7c98e!important;
  font:700 clamp(7px,1.55vw,11px)/1.25 'DQ Sans',system-ui,sans-serif!important;
  letter-spacing:.03em!important;
  white-space:normal!important;
  text-wrap:balance;
}
.palaces-page .palace-person-name{
  max-width:100%!important;
  padding:0 0 5px!important;
  color:#fff7e4!important;
  font:700 clamp(13px,3.4vw,25px)/1.18 'DQ Sans',system-ui,sans-serif!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  text-wrap:balance;
}
.palaces-page .palace-person-details{gap:clamp(3px,.65vw,7px)!important}
.palaces-page .palace-person-details>span{
  display:grid!important;
  grid-template-columns:minmax(49px,41%) minmax(0,1fr)!important;
  align-items:start!important;
  min-height:0!important;
  padding-bottom:2px!important;
  border-bottom:1px solid #dcb97730;
}
.palaces-page .palace-person-details>span:last-child{border-bottom:0}
.palaces-page .palace-person-details em,
.palaces-page .palace-person-details b{
  font:700 clamp(8px,1.9vw,13px)/1.25 'DQ Sans',system-ui,sans-serif!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.palaces-page .palace-person-details em{color:#e8c789!important}
.palaces-page .palace-person-details b{color:#fff9e9!important}
.palaces-page .palace-full-center{background-size:100% 100%!important}
.palaces-page .palace-full-kicker,
.palaces-page .palace-full-name,
.palaces-page .palace-full-fields{font-family:'DQ Sans',system-ui,sans-serif!important}
.palaces-page .palace-full-name{white-space:normal!important;overflow-wrap:anywhere!important}

/* The card atlas contains the icons. Keep the live labels below its icon circles. */
.palaces-page .palace-stats>.palace-stat-card>b{
  top:63%!important;
  font-family:'DQ Sans',system-ui,sans-serif!important;
  font-size:clamp(8px,1.9vw,17px)!important;
  line-height:1.12!important;
}
.palaces-page .palace-stats>.palace-stat-card>small{
  top:76%!important;
  max-height:2.2em!important;
  font-family:'DQ Sans',system-ui,sans-serif!important;
  font-size:clamp(7px,1.85vw,16px)!important;
  line-height:1.1!important;
}
@media(max-width:600px){
  .palaces-page .palace-center-plate{gap:3px!important;padding:9px 8px 10px!important}
  .palaces-page .palace-person-details{gap:2px!important}
  .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:clamp(8px,2.1vw,10px)!important}
  .palaces-page .palace-stats>.palace-stat-card{aspect-ratio:1.07!important;min-height:76px!important}
  .palaces-page .palace-stats>.palace-stat-card>b{top:63%!important;font-size:clamp(7.5px,2.1vw,9px)!important}
  .palaces-page .palace-stats>.palace-stat-card>small{top:76%!important;font-size:clamp(7px,2vw,9px)!important}
}
@media(max-width:360px){
  .palaces-page .palace-center-plate{gap:2px!important;padding:6px!important}
  .palaces-page .palace-center-seal{width:23px!important;height:23px!important}
  .palaces-page .palace-person-name{font-size:12px!important}
  .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:7.5px!important}
  .palaces-page .palace-stats>.palace-stat-card>b{top:63%!important;font-size:7px!important}
  .palaces-page .palace-stats>.palace-stat-card>small{top:76%!important;font-size:6.8px!important}
}

/* R89: crisp lotus panel sized around the actual Vietnamese greeting. */
.palaces-page .demo-notice{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:min(100%,430px)!important;
  height:auto!important;
  min-height:clamp(60px,16vw,74px)!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:10px auto 12px!important;
  padding:11px clamp(32px,9%,45px)!important;
  border-radius:12px!important;
  background:#082b41 url('/images/daoquan-greeting-r89.svg') center/100% 100% no-repeat!important;
  overflow:hidden!important;
}
.palaces-page .demo-notice strong{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  color:#ffe5aa!important;
  font:italic 700 clamp(10px,2.8vw,16px)/1.25 'DQ Serif',Georgia,serif!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  text-wrap:balance;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  text-shadow:0 2px 3px #00131f!important;
}

/* R90: native Dao Quan brand and measured, single-line identity typography. */
.palaces-page .palace-center-plate{
  gap:3px!important;
  padding:8px clamp(7px,1.7vw,14px) 9px!important;
}
.palaces-page .palace-center-seal{
  display:block!important;
  position:static!important;
  flex:0 0 auto!important;
  width:clamp(29px,7.5vw,43px)!important;
  height:clamp(29px,7.5vw,43px)!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#082b41 url('/images/brand-mark.png') center/cover no-repeat!important;
  box-shadow:none!important;
  filter:drop-shadow(0 1px 3px #0008)!important;
  transform:none!important;
}
.palaces-page .palace-center-kicker{
  font:700 clamp(7px,1.8vw,11px)/1.2 'DQ Sans',system-ui,sans-serif!important;
  letter-spacing:.07em!important;
  color:#e8c786!important;
}
.palaces-page .palace-person-name{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:1px 0 5px!important;
  border-bottom:1px solid #d5ae6b88!important;
  color:#fff8e6!important;
  font-family:'DQ Sans',system-ui,sans-serif!important;
  font-size:clamp(12px,3.5vw,20px)!important;
  font-weight:700!important;
  line-height:1.18!important;
  letter-spacing:-.025em!important;
  text-shadow:0 1px 2px #000a!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:normal!important;
  text-wrap:nowrap!important;
}
.palaces-page .palace-person-details{gap:1px!important}
.palaces-page .palace-person-details>span{
  grid-template-columns:minmax(49px,41%) minmax(0,1fr)!important;
  align-items:baseline!important;
  gap:3px!important;
  padding:2px 0!important;
  border-bottom:1px solid #dcb97729!important;
}
.palaces-page .palace-person-details>span:last-child{border-bottom:0!important}
.palaces-page .palace-person-details em{
  color:#dec58f!important;
  font:400 clamp(8px,2vw,11px)/1.3 'DQ Sans',system-ui,sans-serif!important;
  font-style:normal!important;
}
.palaces-page .palace-person-details b{
  color:#fff9e8!important;
  font:700 clamp(8px,2vw,11px)/1.3 'DQ Sans',system-ui,sans-serif!important;
  letter-spacing:-.015em!important;
}
@media(max-width:360px){
  .palaces-page .palace-center-plate{padding:6px!important}
  .palaces-page .palace-center-seal{width:27px!important;height:27px!important}
  .palaces-page .palace-center-kicker{font-size:7px!important}
  .palaces-page .palace-person-details em,.palaces-page .palace-person-details b{font-size:7.5px!important}
}

/* R90: let the reading page's five article cards use the full card width. */
.analysis-page .analysis-articles .timeline-list{width:100%;min-width:0}
.analysis-page .analysis-articles .timeline-list>.article-card{
  display:grid!important;
  grid-template-columns:clamp(72px,22vw,88px) minmax(0,1fr) 18px!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:10px!important;
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:104px!important;
  padding:9px!important;
}
.analysis-page .analysis-articles .article-picture{
  width:100%!important;
  height:clamp(78px,22vw,88px)!important;
  min-height:0!important;
}
.analysis-page .analysis-articles .article-picture img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}
.analysis-page .analysis-articles .article-copy{
  display:flex!important;
  align-items:stretch!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  gap:3px!important;
}
.analysis-page .analysis-articles .article-copy .badge{align-self:flex-start}
.analysis-page .analysis-articles .article-copy strong,
.analysis-page .analysis-articles .article-copy>span,
.analysis-page .analysis-articles .article-copy em{max-width:100%!important}
.analysis-page .analysis-articles .article-copy strong{font:700 clamp(13px,3.6vw,16px)/1.25 'DQ Serif',Georgia,serif!important}
.analysis-page .analysis-articles .article-copy>span{font:400 clamp(10px,2.7vw,12px)/1.35 'DQ Sans',system-ui,sans-serif!important}
.analysis-page .analysis-articles .article-copy em{font:400 9px/1.25 'DQ Sans',system-ui,sans-serif!important}
.analysis-page .analysis-articles .article-card>i{justify-self:end!important;align-self:center!important;margin:0!important}
@media(max-width:360px){
  .analysis-page .analysis-articles .timeline-list>.article-card{grid-template-columns:68px minmax(0,1fr) 16px!important;gap:7px!important;padding:7px!important}
  .analysis-page .analysis-articles .article-picture{height:76px!important}
}

/* R91: category selection keeps its scroll position; publishing lives in admin. */
.articles-page .category-scroll{
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
.articles-page .category-scroll button{
  font-weight:700!important;
  white-space:nowrap!important;
}
.articles-page #article-form,
.articles-page .author-form,
.articles-page .dark-panel{display:none!important}

/* R92: stable category strip and compact gold greeting. */
.articles-page .category-scroll{cursor:grab;user-select:none;touch-action:pan-x pan-y;overflow-anchor:none}
.articles-page .category-scroll.dragging,.articles-page .category-scroll.dragging button{cursor:grabbing}
.articles-page [data-article-results]{overflow-anchor:none}
.palaces-page .demo-notice{
  width:min(100%,390px)!important;height:42px!important;min-height:42px!important;max-height:42px!important;
  padding:8px 10px!important;margin:9px auto 11px!important;aspect-ratio:auto!important;
  border:1.5px solid #e6bb66!important;border-radius:14px!important;
  background:linear-gradient(135deg,#143a50,#08283f 65%,#15394b)!important;
  box-shadow:inset 0 0 0 2px #09283d,inset 0 0 0 3px #d6a65366,0 3px 10px #00172588,0 0 10px #ebbd5833!important;
}
.palaces-page .demo-notice strong{
  white-space:nowrap!important;text-wrap:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;
  font-style:normal!important;line-height:1.25!important;letter-spacing:0!important;color:#ffe4a0!important;
  min-width:0!important;overflow:visible!important;text-align:center!important;
}
/* R93: deterministic birth details, compact gold cards and the first personality chapter. */
.birth-facts-card{margin:18px 0;padding:18px;border:1px solid #d0a74c;border-radius:20px;background:linear-gradient(145deg,#fff9e9,#f7edd4);color:#3e321d;box-shadow:0 5px 20px #70521b1a;min-width:0}
.birth-facts-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#8e661e}
.birth-facts-heading small{font-size:10px;letter-spacing:1.5px;font-weight:700}
.birth-facts-heading h2{margin:4px 0 0;font-size:18px;line-height:1.3}
.birth-facts-total{display:flex;flex-direction:column;gap:5px;padding:16px 0;border-bottom:1px solid #cba85866}
.birth-facts-total strong{font-size:25px;line-height:1.25;color:#725017}
.birth-facts-total span{font-size:12px;color:#75623b}
.birth-facts-total--unknown strong{display:block;max-width:100%;font-family:"DQ Sans",Arial,sans-serif;font-size:clamp(9px,2.9vw,13px);font-weight:700;line-height:1.45;letter-spacing:-.025em;white-space:nowrap;overflow-x:auto;scrollbar-width:none}
.birth-facts-total--unknown strong::-webkit-scrollbar{display:none}
.birth-weight-grid,.birth-animal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}
.birth-weight-grid>div,.birth-animal-grid>div{display:flex;flex-direction:column;gap:5px;min-width:0;border:1px solid #b991424d;border-radius:12px;padding:10px;background:#fffaf1}
.birth-weight-grid span,.birth-animal-grid span{font-size:11px;color:#877044;white-space:nowrap}
.birth-weight-grid b,.birth-animal-grid b{font-size:13px;line-height:1.3;white-space:nowrap}
.birth-animal-grid>div{background:#f2e3bd;border-color:#c69d48}
.birth-facts-note{font-size:12px;line-height:1.6;margin:12px 0 0;color:#755022}
.palaces-page .palace-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.palace-tabs button{min-width:0;white-space:nowrap;font-size:11px;gap:3px;padding-left:4px;padding-right:4px}
.palace-tabs svg{width:14px;height:14px}
@media(max-width:360px){.birth-facts-card{padding:14px}.birth-facts-heading h2{font-size:17px}.birth-facts-total strong{font-size:23px}.birth-weight-grid b,.birth-animal-grid b{font-size:12px}.palace-tabs button{font-size:10px}}

/* R101: hour and minute wheel, day-only topics and readable palace cards. */
.chart-page .chart-time-control{display:block;width:100%;min-width:0}
.chart-page .chart-time-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:42px;padding:9px 11px;border:1px solid #d6bd92;border-radius:9px;background:#fffaf0;color:#17334d;text-align:left;font:600 13px 'DQ Sans',Arial,sans-serif;cursor:pointer}
.chart-page .chart-time-trigger:hover,.chart-page .chart-time-trigger:focus-visible{border-color:#b77a32;background:#fff1d6;box-shadow:0 0 0 3px #dba85a33;outline:none}
.chart-page .chart-time-trigger svg{flex:none;transform:rotate(90deg)}
.chart-time-dialog .number-wheel-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.chart-time-dialog .number-wheel-track{scroll-padding-block:88px}
.palaces-page .palace-date-only .palace-branch{font-family:'DQ Sans',Arial,sans-serif!important;font-size:clamp(7px,1.7vw,13px)!important;letter-spacing:0!important;color:#95662d!important}
.palaces-page .palace-date-only .palace-star-list strong{color:#624521!important}
.palaces-page .palace-date-context{border-left:3px solid #c69a55;padding:8px 10px;background:#fff5dc}
@media(max-width:600px){
  .palaces-page .palace-grid{height:auto!important;aspect-ratio:auto!important;grid-template-rows:repeat(4,minmax(106px,auto))!important;grid-auto-rows:minmax(106px,auto)!important}
  .palaces-page .palace-grid>.palace{min-height:106px!important;height:100%!important;overflow:hidden!important;contain:layout!important}
  .palaces-page .palace-grid .palace-head{flex:0 0 auto!important;max-height:none!important;min-height:34px!important}
  .palaces-page .palace-grid .palace-head small{font-family:'DQ Sans',Arial,sans-serif!important;line-height:1.2!important}
  .palaces-page .palace-grid .palace-star-list,.palaces-page .palace-grid .palace-computed .palace-star-list{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:2px!important;min-height:0!important;max-height:46px!important;margin-top:4px!important;overflow:hidden!important;font-family:'DQ Sans',Arial,sans-serif!important;line-height:1.18!important}
  .palaces-page .palace-grid .palace-star-list strong{display:-webkit-box!important;max-height:2.4em!important;line-height:1.2!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-clamp:2!important;overflow:hidden!important}
  .palaces-page .palace-grid .palace-star-list>span{display:-webkit-box!important;max-height:1.2em!important;font-size:7.5px!important;line-height:1.2!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:1!important;line-clamp:1!important;overflow:hidden!important}
  .palaces-page .palace-grid .palace-foot,.palaces-page .palace-grid .palace-computed .palace-foot{display:block!important;flex:0 0 auto!important;max-height:1.3em!important;margin-top:auto!important;font:700 7.5px/1.2 'DQ Sans',Arial,sans-serif!important;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important}
  .palaces-page .palace-grid .palace-foot>span:not(.palace-foot-short){display:none!important}
  .palaces-page .palace-grid .palace-foot>.palace-foot-short{display:block!important;white-space:nowrap!important}
  .palaces-page .palace-grid .palace-center-plate{min-height:100%!important}
}

/* R120 · good-day monthly selector and individual day cards. Scoped to this page. */
.goodday-page .goodday-title-row{text-align:center;margin:15px 0}.goodday-title-row span{display:inline-block;max-width:100%;padding:10px 16px;border:1px solid #ddb36c;border-radius:999px;background:linear-gradient(135deg,#0b2b40,#174b60);color:#ffe4ad;box-shadow:0 5px 14px #102e4255;font:700 clamp(12px,3.4vw,17px)/1.35 "DQ Serif",Georgia,serif;letter-spacing:.025em}
.goodday-page .goodday-selector{padding:17px;border:1px solid #c8a46b;border-radius:20px;background:linear-gradient(155deg,#fff9ed,#f3e5cf);box-shadow:0 8px 22px #162e3926}
.goodday-selector h2{margin:0 0 14px;text-align:center;color:#12384c;font:700 clamp(17px,4.5vw,23px)/1.35 "DQ Serif",Georgia,serif}
.goodday-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;border:1px solid #d8bb8d;border-radius:999px;background:#efe3cb}
.goodday-filter button{min-width:0;min-height:42px;padding:7px 3px;border:0;border-radius:999px;background:transparent;color:#3e5260;font:700 clamp(10px,2.8vw,13px)/1.25 "DQ Sans",sans-serif;cursor:pointer}
.goodday-filter button.active{background:linear-gradient(135deg,#0a354d,#17566c);color:#ffe4ad;box-shadow:0 3px 8px #143b4d40}
.goodday-select-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.goodday-select-row label{display:grid;gap:7px;color:#6c491f;font:700 13px/1.3 "DQ Sans",sans-serif}
.goodday-select-row select{width:100%;min-width:0;min-height:46px;padding:9px 11px;border:1px solid #c8a26a;border-radius:13px;background:#fffdf7;color:#14374a;font:700 15px "DQ Sans",sans-serif}
.goodday-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:47px;border:1px solid #e9bb6d;border-radius:13px;background:linear-gradient(135deg,#0a3046,#164d62);color:#ffe6b4;font:700 15px "DQ Sans",sans-serif;box-shadow:0 5px 12px #12364a45;cursor:pointer}
.goodday-selector p{margin:12px 2px 0;color:#68737a;font:11px/1.5 "DQ Sans",sans-serif}
.goodday-month-results{margin-top:20px}.goodday-month-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:0 0 12px;color:#ffe9c3}.goodday-month-title h2{margin:0;font:700 clamp(16px,4.5vw,21px)/1.35 "DQ Serif",Georgia,serif}.goodday-month-title span{flex:none;font:11px "DQ Sans",sans-serif}
.goodday-day-card{overflow:hidden;border:1px solid #c8ad79;border-radius:15px;background:linear-gradient(145deg,#fffaf0,#f4e9d8);box-shadow:0 5px 14px #0d2e3f24;color:#1e3947}.goodday-day-card.is-good{border-color:#a3c7a3}.goodday-day-card.is-bad{border-color:#dab09e}
.goodday-day-card summary{display:flex;align-items:center;gap:10px;min-height:72px;padding:10px 12px;list-style:none;cursor:pointer}.goodday-day-card summary::-webkit-details-marker{display:none}.goodday-day-card summary:focus-visible,.goodday-day-foot button:focus-visible,.goodday-submit:focus-visible,.goodday-filter button:focus-visible{outline:3px solid #e8b95f;outline-offset:2px}
.goodday-day-number{display:grid;place-items:center;flex:none;width:47px;min-height:49px;border-radius:10px;background:#103c51;color:#ffe7b8}.goodday-day-number b{font:700 22px/1 "DQ Serif",Georgia,serif}.goodday-day-number small{font:700 8px "DQ Sans",sans-serif}
.goodday-day-heading{display:grid;gap:3px;min-width:0;flex:1}.goodday-day-heading b{font:700 12px/1.4 "DQ Sans",sans-serif}.goodday-day-heading small{font:11px/1.35 "DQ Sans",sans-serif;color:#5a6d72}.goodday-verdict{flex:none;padding:5px 8px;border-radius:999px;background:#e2f0df;color:#247044;font:700 11px "DQ Sans",sans-serif}.is-bad .goodday-verdict{background:#f8e3db;color:#a33b35}
.goodday-day-body{padding:1px 13px 14px;border-top:1px solid #e2d5bd}.goodday-day-body p{margin:10px 0;color:#2b4552;font:12px/1.55 "DQ Sans",sans-serif}.goodday-day-body p b{color:#7b5122}.goodday-day-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid #e0ccb2;font:11px/1.4 "DQ Sans",sans-serif}.goodday-day-foot button{display:flex;align-items:center;gap:4px;padding:8px 10px;border:1px solid #bd9967;border-radius:9px;background:#133f54;color:#ffe5b1;font:700 11px "DQ Sans",sans-serif;cursor:pointer}
.calendar-page .calendar-advice-source{margin:10px 2px 7px;color:#576975;font:10px/1.45 "DQ Sans",sans-serif}
@media(max-width:350px){.goodday-day-card summary{gap:7px;padding:9px}.goodday-day-heading b{font-size:11px}.goodday-day-number{width:42px}.goodday-verdict{padding:4px 6px}}

/* DAOQUAN_ACCOUNT_R137 */
.profile-page .profile-card .profile-top > .portrait{display:block;width:78px;height:78px;aspect-ratio:1;border:2px solid #c99447;border-radius:50%;background-color:#10263a;background-image:url('/images/daoquan-account-portrait-r137.png');background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:0 0 0 2px #fff8e8,0 0 0 4px #d7a454,0 5px 11px #1a253866;overflow:hidden}
.profile-page .profile-card .profile-top i{font-style:normal;color:#8a602b;font-weight:700;letter-spacing:.01em}

/* DAOQUAN_PERSONAL_R138: changes confined to Personal and password screens. */
.profile-page .profile-group{margin:16px 0 0}
.profile-page .profile-group .section-heading{margin:0 0 8px}
.profile-page .profile-group .section-heading h2{font-size:15px;line-height:1.4;letter-spacing:0}
.profile-page .profile-group .profile-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.profile-page .profile-group .profile-tiles>button{display:grid;grid-template-columns:38px minmax(0,1fr) 10px;grid-template-rows:auto;align-items:center;align-content:center;gap:7px;min-height:64px;height:auto;padding:8px 7px;border:1px solid #d9b576;border-radius:12px;background:linear-gradient(135deg,#fffaf0,#f6e8cd);box-shadow:inset 0 1px #fff,0 3px 7px #00142652;isolation:isolate}
.profile-page .profile-group .profile-tiles>button:last-child:nth-child(odd){grid-column:1/-1}
.profile-page .profile-group .profile-tile-icon{position:relative;display:grid;place-items:center;grid-column:auto;grid-row:auto;width:38px;height:38px;align-self:center;border:1px solid #73a09a;border-radius:11px;background:radial-gradient(ellipse at 25% 0,#4b807f,transparent 66%),linear-gradient(150deg,#21545f,#092c42);box-shadow:inset 0 1px #b5d8cba8,inset 0 -2px #051d2e,0 3px 4px #20454240;color:#f4d18d}
.profile-page .profile-group .profile-tile-icon svg{display:block;width:38px;height:38px;filter:drop-shadow(0 1px 1px #021b2e55)}
.profile-page .profile-group .profile-tile-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-width:0}
.profile-page .profile-group .profile-tiles button b{display:block;grid-column:auto;grid-row:auto;font:700 12px/1.4 'DQ Sans',Arial,sans-serif;overflow-wrap:normal;word-break:normal;color:#123348}
.profile-page .profile-group .profile-tiles button small{display:block;grid-column:auto;grid-row:auto;font:400 10px/1.35 'DQ Sans',Arial,sans-serif;color:#68593f;overflow-wrap:normal;word-break:normal}
.profile-page .profile-group .profile-tile-arrow{position:static;display:grid;place-items:center;align-self:center;width:10px;height:16px;border:0;border-radius:0;background:none;color:#946b36}
.profile-page .profile-group .profile-tile-arrow svg{width:10px;height:14px}
.profile-page .profile-group .profile-tiles>button:focus-visible{outline:3px solid #ffe2a0;outline-offset:3px}
.profile-page .profile-group .profile-tiles>button:active{transform:translateY(1px);box-shadow:inset 0 1px #fff,0 1px 3px #00142652}
.password-page .recovery-card,.forgot-page .recovery-card,.forgot-page .otp-card{padding:16px;border-radius:17px}
.password-intro{display:flex;align-items:center;gap:10px;margin:0 0 15px}
.password-intro>span{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #8aa997;border-radius:14px;background:linear-gradient(145deg,#346365,#0b2c43);box-shadow:inset 0 1px #b1d3c4,0 3px 7px #082b3540}
.password-intro h2{margin:0!important;font-size:17px!important;line-height:1.4}
.password-intro p{margin:3px 0 0!important;font:400 12px/1.4 'DQ Sans',Arial,sans-serif;overflow-wrap:anywhere}
.password-page .auth-field,.forgot-page .auth-field{margin:13px 0}
.password-page .auth-field>span,.forgot-page .auth-field>span{font-size:13px;line-height:1.5}
.password-page .auth-field>div,.forgot-page .auth-field>div{min-height:48px;gap:8px}
.password-page .auth-field input,.forgot-page .auth-field input{width:100%;min-width:0;font-size:14px}
.password-page .auth-field .eye,.forgot-page .auth-field .eye{flex:0 0 40px;width:40px;min-height:44px}
.password-hint{margin:10px 0!important;font:400 12px/1.6 'DQ Sans',Arial,sans-serif;color:#65583f}
.password-error{margin:10px 0;padding:10px;border:1px solid #c87761;border-radius:9px;background:#fff0e7;color:#8c2c20;font:600 12px/1.5 'DQ Sans',Arial,sans-serif;overflow-wrap:anywhere}
.password-error[hidden]{display:none}
.password-page .password-link{display:block;width:100%;min-height:44px;margin-top:8px;border:0;background:transparent;color:#284d5e;font:600 12px/1.5 'DQ Sans',Arial,sans-serif;text-decoration:underline;text-underline-offset:3px}
.password-page button[aria-busy=true],.forgot-page button[aria-busy=true]{opacity:.7;cursor:wait}
.forgot-page .otp-card>p{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:359px){.profile-page .profile-group .profile-tiles{grid-template-columns:1fr}.profile-page .profile-group .profile-tiles>button{min-height:58px;grid-template-columns:38px minmax(0,1fr) 12px;padding:8px 11px}.profile-page .profile-group .profile-tiles button b{font-size:12px}.profile-page .profile-group .profile-tiles button small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.profile-page .profile-group .profile-tiles>button{transition:none;transform:none}}

/* DAOQUAN_LOGOUT_SPACING_R1381 */
.profile-page .profile-content > .logout {
  margin-top: 20px;
  margin-bottom: 12px;
}

/* DAOQUAN_SPOTLIGHT_SEAMLESS_R1382 */
.home-page .spotlight {
  isolation: isolate;
  background-color: #001625;
  background-image: url('/images/daoquan-spotlight-r1382.png');
  background-position: left center;
  background-size: cover;
  background-repeat: no-repeat;
}
.home-page .spotlight .spotlight-art {
  inset: 0;
  background: linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,22,37,.12) 42%, rgba(0,22,37,.46) 62%, rgba(0,22,37,.58) 100%);
  pointer-events: none;
}
.home-page .spotlight .spotlight-copy {
  z-index: 1;
}

/* DAOQUAN_LAUNCH_FULLSCREEN_R1387 */
#dq-launch {
  position: fixed !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #051526 url('/images/daoquan-launch-backdrop-r1387.png') center center / cover no-repeat !important;
}
#dq-launch::before {
  content: none !important;
}
#dq-launch-art {
  z-index: 1 !important;
  width: min(100vw, calc(100vh * 941 / 1672)) !important;
  width: min(100vw, calc(100dvh * 941 / 1672)) !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
}
/* Keep the original logo and ornamental rail at full opacity.
   Only the old scenery is masked; the live rail/fill siblings are untouched. */
#dq-launch-art img {
  -webkit-mask-image:
    linear-gradient(to bottom, transparent 16%, #000 24%, #000 55%, transparent 62%),
    linear-gradient(to right, transparent 8%, #000 24%, #000 76%, transparent 92%) !important;
  mask-image:
    linear-gradient(to bottom, transparent 16%, #000 24%, #000 55%, transparent 62%),
    linear-gradient(to right, transparent 8%, #000 24%, #000 76%, transparent 92%) !important;
  -webkit-mask-composite: source-in !important;
  mask-composite: intersect !important;
}
#dq-launch-error {
  z-index: 2 !important;
}

/* DAOQUAN_MENU_CSS_R142_START */
.bottom-nav.dq-menu-r142{
  position:fixed!important;z-index:12!important;left:50%!important;right:auto!important;
  bottom:calc(5px + env(safe-area-inset-bottom,0px))!important;
  width:min(calc(100vw - 16px),430px)!important;aspect-ratio:2048/470!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  display:block!important;grid-template-columns:none!important;flex-wrap:nowrap!important;
  margin:0!important;padding:0!important;gap:0!important;border:0!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;
  overflow:visible!important;isolation:isolate;transform:translateX(-50%)!important;
  -webkit-tap-highlight-color:transparent;
}
.bottom-nav.dq-menu-r142::before,.bottom-nav.dq-menu-r142::after{content:none!important;display:none!important}
.bottom-nav.dq-menu-r142>.dq-menu-original-r142{
  position:absolute!important;left:0!important;top:-13.8297872%!important;
  display:block!important;width:100%!important;height:auto!important;max-width:none!important;
  margin:0!important;padding:0!important;opacity:1!important;border:0!important;
  object-fit:contain!important;pointer-events:none!important;user-select:none;
}
.bottom-nav.dq-menu-r142>button{
  position:absolute!important;top:30%!important;bottom:6%!important;height:auto!important;
  display:block!important;min-width:0!important;min-height:44px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;
  background:transparent!important;box-shadow:none!important;color:transparent!important;
  font-size:0!important;text-shadow:none!important;cursor:pointer;touch-action:manipulation;
}
.bottom-nav.dq-menu-r142>button:nth-of-type(1){left:8.3%!important;width:18.3%!important}
.bottom-nav.dq-menu-r142>button:nth-of-type(2){left:26.9%!important;width:15.5%!important}
.bottom-nav.dq-menu-r142>button:nth-of-type(3){left:42.7%!important;width:14.9%!important}
.bottom-nav.dq-menu-r142>button:nth-of-type(4){left:58%!important;width:16%!important}
.bottom-nav.dq-menu-r142>button:nth-of-type(5){left:74%!important;width:19%!important}
.bottom-nav.dq-menu-r142>button::before,.bottom-nav.dq-menu-r142>button::after{content:none!important}
.bottom-nav.dq-menu-r142>button.on:not([data-go="home"])::before{
  content:''!important;display:block!important;position:absolute;left:50%;top:37%;
  width:46px;height:46px;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,#fff4c144 0,#ffc75c2a 38%,transparent 72%);
  filter:blur(2px);pointer-events:none;
}
.bottom-nav.dq-menu-r142>button.on:not([data-go="home"])::after{
  content:''!important;display:block!important;position:absolute;left:50%;bottom:0;
  width:5px;height:5px;transform:translateX(-50%) rotate(45deg);background:#fff2b4;
  box-shadow:0 0 5px 2px #ffd36f,0 0 12px 4px #dc99296b;pointer-events:none;
}
.bottom-nav.dq-menu-r142>button:focus-visible{outline:2px solid #ffedbb!important;outline-offset:0}
.shell.dq-menu-shell-r142{padding-bottom:calc(min(calc(100vw - 16px),430px)*.2294921875 + 20px + env(safe-area-inset-bottom,0px))!important}
.shell.dq-reels-shell.dq-menu-shell-r142{padding-bottom:0!important}
.dq-menu-overlay-r142{position:fixed;inset:0;z-index:100;pointer-events:none;overflow:hidden}
.dq-menu-burst-r142{position:absolute;inset:0;pointer-events:none}
.dq-menu-burst-r142>i{position:absolute;left:var(--x);top:var(--y);pointer-events:none}
.dq-menu-particle-r142{
  width:var(--size);height:calc(var(--size)*1.25);border-radius:55% 55% 72% 72%;
  background:radial-gradient(circle at 35% 25%,#fffceb,#ffe39c 35%,#e3ac47 72%,#ba7420);
  box-shadow:0 0 5px 1px #ffc85b;opacity:0;transform:translate(-50%,-50%) scale(.2);
  animation:dq-menu-dew-r142 780ms cubic-bezier(.12,.78,.26,1) var(--delay) forwards;
}
.dq-menu-halo-r142{width:24px;height:24px;border:1px solid #ffe9ac;border-radius:50%;box-shadow:0 0 8px 2px #ffd16f,inset 0 0 7px #ffd16f;opacity:0;transform:translate(-50%,-50%) scale(.2);animation:dq-menu-halo-r142 720ms ease-out forwards}
.dq-menu-mist-r142{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle,#fff5be88,#ffd68055 35%,#d9912f22 60%,transparent 76%);filter:blur(4px);opacity:0;transform:translate(-50%,-50%) scale(.4);animation:dq-menu-mist-r142 820ms ease-out forwards}
.dq-menu-spark-r142{width:7px;height:7px;background:#fff7ce;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);filter:drop-shadow(0 0 3px #ffce61);opacity:0;transform:translate(-50%,-50%);animation:dq-menu-spark-r142 700ms ease-out var(--delay) forwards}
@keyframes dq-menu-dew-r142{12%{opacity:1}70%{opacity:.8}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.15)}}
@keyframes dq-menu-halo-r142{15%{opacity:.9}100%{opacity:0;transform:translate(-50%,-50%) scale(3.8)}}
@keyframes dq-menu-mist-r142{12%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(2.8)}}
@keyframes dq-menu-spark-r142{25%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.4)}}
.dq-menu-enter-r142>:not(nav):not(.dq-wallpaper):not(.sync-notice){animation:dq-menu-enter-r142 240ms ease-out both;animation-delay:var(--dq-menu-enter-delay,0ms)}
@keyframes dq-menu-enter-r142{from{opacity:.65;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:340px){.bottom-nav.dq-menu-r142{width:calc(100vw - 12px)!important}}
@media(prefers-reduced-motion:reduce){.dq-menu-overlay-r142{display:none}.dq-menu-enter-r142>:not(nav):not(.dq-wallpaper):not(.sync-notice){animation:none}}
/* DAOQUAN_MENU_CSS_R142_END */

/* DAOQUAN_MENU_NO_BACKDROP_R143_START */
.bottom-nav.dq-menu-r142,
.bottom-nav.dq-menu-r142>.dq-menu-original-r142{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  filter:none!important;
}
.auth-content .dark-panel.benefits{
  background:#042035 linear-gradient(100deg,#042035,#092b42)!important;
}
.profile-page .profile-content>.gold-cta[data-go="register"]{
  width:max-content!important;max-width:100%!important;min-height:44px!important;
  margin:16px auto 0!important;padding:6px 12px!important;gap:8px!important;
  font-size:15px!important;
}
.profile-page .profile-content>.gold-cta[data-go="register"]>b{white-space:nowrap}
.profile-page .profile-content>.gold-cta[data-go="register"]>i{
  margin-left:0;width:28px;height:28px;
}
/* DAOQUAN_MENU_NO_BACKDROP_R143_END */

/* DAOQUAN_MENU_CSS_R144_START */
.dq-menu-rays-r144{position:fixed;left:0;z-index:100;display:block;pointer-events:none;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.dq-menu-rays-r144[hidden]{display:none}
.dq-menu-enter-r142>:not(nav):not(.dq-wallpaper):not(.sync-notice){animation:none!important}
@media(prefers-reduced-motion:reduce){.dq-menu-rays-r144{display:none!important}}
/* DAOQUAN_MENU_CSS_R144_END */

/* DAOQUAN_UI_CSS_R145_START */
/* Only the requested CTAs: chart spotlight, chart submit, and login links. */
.home-page .spotlight .gold-cta[data-go="chart"],
.chart-page .content>.gold-cta[form="chart-form"],
.gold-cta[data-go="login"]{
  width:max-content!important;max-width:100%!important;flex:none;
  justify-content:center;gap:7px;padding:6px 10px;
}
.home-page .spotlight .gold-cta[data-go="chart"]{padding:4px 8px;margin-right:auto}
.chart-page .content>.gold-cta[form="chart-form"]{min-height:46px;margin:12px auto 10px}
.gold-cta[data-go="login"]{min-height:44px;margin-inline:auto}
.home-page .spotlight .gold-cta[data-go="chart"]>b,
.chart-page .content>.gold-cta[form="chart-form"]>b,
.gold-cta[data-go="login"]>b{flex:none;white-space:nowrap}
.home-page .spotlight .gold-cta[data-go="chart"]>i,
.chart-page .content>.gold-cta[form="chart-form"]>i,
.gold-cta[data-go="login"]>i{margin-left:0;width:28px;height:28px}
.home-page .spotlight .gold-cta[data-go="chart"]>i{width:23px;height:23px}
.chart-page .content>.gold-cta[form="chart-form"]>span{display:flex;align-items:center}
.chart-page .content>.gold-cta[form="chart-form"]>span>.dq-icon-3d-r145{width:31px;height:34px;display:block;filter:none}
/* The original chart artwork covers the complete panel; no cropped header strip. */
.chart-page .systems-panel{
  background:linear-gradient(135deg,#001424d9,#001424e8),url('/images/chart-art.png') right center/cover no-repeat,#09283c;
}
.chart-page .systems-head{max-width:100%;width:100%;min-height:0;margin:0 0 11px;text-align:center}
.chart-page .systems-head h2{justify-content:center;gap:8px;margin:0;font-size:clamp(19px,5.1vw,25px);line-height:1.15}
.chart-page .systems-head h2>.dq-icon-3d-r145{flex:none;width:35px;height:38px;filter:none}
.chart-page .systems-head p{display:block;margin:5px 0 0;font-size:clamp(8px,2.8vw,12px);line-height:1.5;white-space:nowrap;color:#f8e7cc;text-align:center}
/* DAOQUAN_UI_CSS_R145_END */

/* DAOQUAN_UI_CSS_R146_START */
.settings-page .dq-account-r146>h2,
.settings-page .dq-account-r146>p{text-align:center}
.settings-page .dq-account-r146>h2{margin:3px 0 8px}
.settings-page .dq-account-r146>p{margin:0 0 12px;line-height:1.45}
.settings-page .dq-account-r146>.gold-cta[data-go="login"],
.chart-page .saved-charts>.gold-cta[data-go="login"],
.event-page #event-form>.dq-event-save-r146{
  width:max-content!important;max-width:100%!important;min-height:44px;
  margin:12px auto 0;gap:7px;padding:6px 10px;justify-content:center;
}
.settings-page .dq-account-r146>.gold-cta[data-go="login"]>b,
.chart-page .saved-charts>.gold-cta[data-go="login"]>b,
.event-page #event-form>.dq-event-save-r146>b{white-space:nowrap;flex:none}
.settings-page .dq-account-r146>.gold-cta[data-go="login"]>i,
.chart-page .saved-charts>.gold-cta[data-go="login"]>i,
.event-page #event-form>.dq-event-save-r146>i{margin-left:0;width:28px;height:28px}
.event-page #event-form>.dq-event-save-r146>span{display:flex;align-items:center}
.dq-icon-3d-r146{display:block;flex:none;width:32px;height:35px;filter:none}
.chart-page .saved-charts>h2{text-align:center;margin:6px 0 10px}
.chart-page .saved-charts>.dq-saved-guest-r146{
  margin:0 0 12px;text-align:center;white-space:nowrap;
  font-size:clamp(10px,2.95vw,13px);line-height:1.5;
}
.home-page .dq-latest-r146>.section-heading{margin:16px 0 10px;align-items:center;gap:8px}
.home-page .dq-latest-r146>.section-heading h2{gap:7px;min-width:0;margin:0;color:#fff1d2}
.home-page .dq-latest-r146>.section-heading h2>.dq-icon-3d-r146{width:32px;height:35px;filter:none}
.home-page .dq-latest-r146>.section-heading h2>span{white-space:nowrap}
.home-page .dq-latest-r146>.section-heading>button{flex:none}
.home-page .dq-latest-r146-list{display:grid;gap:9px}
.home-page .dq-latest-r146-list>.article-card{margin-bottom:0}
/* Reserve the left half for the unchanged illustration. Copy occupies only the right column. */
.home-page .spotlight{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  column-gap:12px;padding:12px;align-items:center;
}
.home-page .spotlight>.spotlight-art{
  inset:0 0 0 44%;
  background:linear-gradient(90deg,#00162500,#00162538),url('/images/daoquan-spotlight-r1382.png') right center/auto 100% no-repeat,#001625;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 100%);
}
.home-page .spotlight>.spotlight-copy{
  grid-column:2;min-width:0;width:100%;display:flex;flex-direction:column;
  align-items:center;gap:5px;text-align:center;
}
.home-page .spotlight .spotlight-copy>h2,
.home-page .spotlight .spotlight-copy>p{margin:0}
.home-page .spotlight .spotlight-copy>p{line-height:1.35}
.home-page .spotlight .micro-points{justify-content:center;flex-wrap:nowrap;gap:5px;margin:0;font-size:8px;white-space:nowrap}
.home-page .spotlight .spotlight-copy>.gold-cta[data-go="chart"]{margin:0 auto;width:max-content!important;max-width:100%!important;gap:6px;padding:4px 7px}
.home-page .spotlight .spotlight-copy>.gold-cta[data-go="chart"]>i{margin-left:0}
@media(max-width:340px){
  .home-page .spotlight .spotlight-copy>.gold-cta[data-go="chart"]{font-size:11px}
  .home-page .dq-latest-r146>.section-heading{gap:5px}
  .home-page .dq-latest-r146>.section-heading h2{font-size:16px;gap:5px}
  .home-page .dq-latest-r146>.section-heading>button{font-size:10px}
}
/* DAOQUAN_UI_CSS_R146_END */

/* DAOQUAN_UI_CSS_R147_START */
/* Only the notification-page link, not unrelated gold actions or event submission. */
.content>.gold-cta.dq-save-day-r147{width:max-content;max-width:100%;min-height:46px;margin:12px auto 0;padding:5px 10px;gap:7px;font-size:16px;white-space:nowrap}
.content>.gold-cta.dq-save-day-r147>span{display:grid;place-items:center;width:32px;height:32px}
.content>.gold-cta.dq-save-day-r147>b{flex:none;overflow-wrap:normal}
.content>.gold-cta.dq-save-day-r147>i{width:27px;height:27px;margin-left:0}
/* Transparent tap targets. No plate, halo, blur, shadow or painted pseudo-elements. */
.hero-top .hero-actions>.icon-button.dq-header-action-r147{width:36px;height:44px;min-width:36px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none;opacity:1;transition:transform 120ms ease}
.hero-top .hero-actions>.dq-header-action-r147::before,.hero-top .hero-actions>.dq-header-action-r147::after{content:none;display:none}
.hero-top .hero-actions>.dq-header-action-r147>.dq-icon-3d-r147{display:block;width:32px;height:32px;filter:none}
.hero-top .hero-actions>.dq-header-action-r147:active{transform:translateY(1px) scale(.94)}
.hero-top .hero-actions>.dq-header-action-r147:focus-visible,.content>.dq-save-day-r147:focus-visible{outline:2px solid #ffe2a0;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.hero-top .hero-actions>.dq-header-action-r147{transition:none}}
/* DAOQUAN_UI_CSS_R147_END */

/* DAOQUAN_REGISTER_COMPACT_R149_START — navigation CTA only. */
.gold-cta[data-go="register"],
.profile-page .profile-content>.gold-cta[data-go="register"]{
  display:inline-flex!important;width:max-content!important;max-width:100%!important;
  min-height:44px!important;flex:none!important;justify-self:center;align-self:center;
  align-items:center;justify-content:center;gap:7px!important;padding:5px 10px!important;
  margin-inline:auto!important;font-size:15px!important;line-height:1.2;
}
.gold-cta[data-go="register"]>b{flex:none!important;white-space:nowrap;overflow-wrap:normal}
.gold-cta[data-go="register"]>i,
.profile-page .profile-content>.gold-cta[data-go="register"]>i{
  margin-left:0!important;width:26px!important;height:26px!important;flex:none;
}
.gold-cta[data-go="register"]>i>svg{width:18px;height:18px}
.gold-cta[data-go="register"]>span{
  display:block!important;flex:none!important;width:32px;height:32px;
  background:transparent url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22gold%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%22.8%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23fff8db%22%2F%3E%3Cstop%20offset%3D%22.28%22%20stop-color%3D%22%23ffe8a4%22%2F%3E%3Cstop%20offset%3D%22.53%22%20stop-color%3D%22%23d89b3e%22%2F%3E%3Cstop%20offset%3D%22.78%22%20stop-color%3D%22%23f6ce76%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2392501d%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22core%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%22.8%22%3E%3Cstop%20stop-color%3D%22%23fffce5%22%2F%3E%3Cstop%20offset%3D%22.4%22%20stop-color%3D%22%23f9d578%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23b16b23%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22base%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23ffe9ad%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22%23c58d37%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23774318%22%2F%3E%3C%2FlinearGradient%3E%3Cg%20id%3D%22petals%22%3E%3Cpath%20d%3D%22M24%2035C12%2037%205%2028%204%2021c9-1%2016%204%2020%2014Z%22%2F%3E%3Cpath%20d%3D%22M24%2035c12%202%2019-7%2020-14-9-1-16%204-20%2014Z%22%2F%3E%3Cpath%20d%3D%22M24%2034C12%2029%2010%2019%2013%2011c8%203%2013%2012%2011%2023Z%22%2F%3E%3Cpath%20d%3D%22M24%2034c12-5%2014-15%2011-23-8%203-13%2012-11%2023Z%22%2F%3E%3C%2Fg%3E%3C%2Fdefs%3E%3Cellipse%20cx%3D%2224%22%20cy%3D%2242%22%20rx%3D%2216%22%20ry%3D%222.5%22%20fill%3D%22%236b3a16%22%20opacity%3D%22.22%22%2F%3E%3Cg%20transform%3D%22translate%280%201.6%29%22%20fill%3D%22%23925321%22%20stroke%3D%22%23925321%22%20stroke-width%3D%221.4%22%3E%3Cuse%20xlink%3Ahref%3D%22%23petals%22%2F%3E%3Cpath%20d%3D%22M24%2033C15%2025%2016%2016%2024%206c8%2010%209%2019%200%2027Z%22%2F%3E%3C%2Fg%3E%3Cg%20stroke%3D%22%23a46a26%22%20stroke-width%3D%221.1%22%20stroke-linejoin%3D%22round%22%3E%3Cuse%20xlink%3Ahref%3D%22%23petals%22%20fill%3D%22url%28%23gold%29%22%2F%3E%3Cpath%20d%3D%22M24%2033C15%2025%2016%2016%2024%206c8%2010%209%2019%200%2027Z%22%20fill%3D%22url%28%23core%29%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff7d4%22%20stroke-width%3D%221.3%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.85%22%3E%3Cpath%20d%3D%22M24%2010c-4%206-5%2012-2%2017M14%2015c-1%206%201%2012%205%2015M7%2024c3%205%207%208%2012%209M34%2015c1%206-1%2012-4%2015%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M24%2013v16%22%20stroke%3D%22%23bb792d%22%20stroke-width%3D%22.8%22%20opacity%3D%22.55%22%2F%3E%3Cpath%20d%3D%22M10%2037h28l-3%204H13Z%22%20fill%3D%22url%28%23base%29%22%20stroke%3D%22%23975b22%22%20stroke-width%3D%221%22%2F%3E%3Cpath%20d%3D%22M12%2037.5h24%22%20stroke%3D%22%23fff4c3%22%20stroke-width%3D%221.2%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat!important;
}
.gold-cta[data-go="register"]>span>svg{display:none!important}
/* DAOQUAN_REGISTER_COMPACT_R149_END */

/* DAOQUAN_MENU_SAFE_R152 */
.bottom-nav.dq-menu-r142{bottom:calc(2px + env(safe-area-inset-bottom,0px))!important}

/* DAOQUAN_MENU_SAFE_R153 */
.bottom-nav.dq-menu-r142{bottom:calc(2px + env(safe-area-inset-bottom,0px))!important}

/* BEGIN R166 CP4 FIX1 CHART STYLES */
/* R166 CP4 FIX1: complete chart style bundle for old and current app shells. */
/* R166 checkpoint 1: reuse the existing chart inside the reading screen. */
.analysis-page .r166-chart { margin: 18px 0; min-width: 0; }
.analysis-page .r166-chart > h2 { margin: 0 0 12px; font-size: 18px; }
.analysis-page .r166-chart .palace-grid { width: 100%; }
.analysis-page .r166-chart .palace-person-name { overflow-wrap: anywhere; }
.analysis-page .reading-error { padding: 12px; border: 1px solid #c69a55; border-radius: 12px; background: #fff5dc; color: #713b20; overflow-wrap: anywhere; }

/* R166 CP2: readable engine output; date-only profiles never imitate a chart. */
.palaces-page .r166-birth-only{padding:20px;margin:14px 0;text-align:center}
.palaces-page .r166-birth-only .palace-center-plate{width:100%;min-height:0!important;padding:20px!important}
.palaces-page .r166-birth-note{margin:16px auto;max-width:650px;font-size:15px;line-height:1.6}
.palaces-page .r166-birth-only>button{padding:12px 18px;border-radius:12px}
.palaces-page .r166-chart-hint{font-size:13px;line-height:1.5;margin:12px 0}
.palaces-page .r166-chart-scroll{overflow-x:auto;overscroll-behavior-inline:contain;padding:4px 0 12px}
.palaces-page .r166-computed-grid{min-width:800px;width:100%!important;height:auto!important;aspect-ratio:auto!important;grid-template-rows:repeat(4,minmax(200px,auto))!important;grid-auto-rows:minmax(200px,auto)!important}
.palaces-page .r166-computed-grid>.palace{min-height:200px!important;height:100%!important;overflow:visible!important;contain:none!important;padding:10px!important}
.palaces-page .r166-computed-grid .palace-head{min-height:34px!important;max-height:none!important}
.palaces-page .r166-computed-grid .palace-head small{font-size:12px!important;white-space:normal!important}
.palaces-page .r166-computed-grid .palace-star-list{display:flex!important;flex-direction:column!important;gap:6px!important;flex:1 1 auto!important;max-height:none!important;overflow:visible!important;font-size:12px!important;line-height:1.45!important}
.palaces-page .r166-computed-grid .palace-star-list strong,.palaces-page .r166-computed-grid .palace-star-list>span{display:block!important;max-height:none!important;overflow:visible!important;white-space:normal!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;font-size:12px!important;line-height:1.45!important}
.palaces-page .r166-computed-grid .palace-foot{display:flex!important;flex-direction:column!important;gap:4px!important;max-height:none!important;overflow:visible!important;white-space:normal!important;font-size:10px!important;line-height:1.4!important;margin-top:10px!important}
.palaces-page .r166-computed-grid .palace-foot>span{display:block!important;white-space:normal!important;overflow:visible!important;max-height:none!important}
.palaces-page .r166-computed-grid .palace-center-plate{min-height:100%!important}

/* CP3: a text-based chart sheet; every displayed value comes from the selected profile. */
.palaces-page .dq-tuvi-sheet{--dq-sheet-gold:#b78942;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(clamp(155px,30vw,225px),auto));gap:0;width:100%;box-sizing:border-box;border:1px solid var(--dq-sheet-gold);background:#fffdf8;color:#203952;font-family:'DQ Sans',Arial,sans-serif;isolation:isolate}
.palaces-page .dq-tuvi-sheet *{box-sizing:border-box}
.palaces-page .dq-tuvi-palace{display:flex;flex-direction:column;gap:8px;min-width:0;min-height:155px;width:100%;height:100%;margin:0;padding:8px 6px;border:0;border-right:1px solid var(--dq-sheet-gold);border-bottom:1px solid var(--dq-sheet-gold);border-radius:0;background:#fffdf8;background-image:none;box-shadow:none;transform:none;color:#203952;text-align:left;font:inherit;overflow-wrap:anywhere;cursor:pointer}
.palaces-page .dq-tuvi-palace:focus-visible,.palaces-page .dq-tuvi-profile-button:focus-visible{outline:2px solid #235e90;outline-offset:-3px}
.palaces-page .dq-tuvi-palace-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;font-size:clamp(7px,1.5vw,10px);line-height:1.3;border-bottom:1px solid #ddbd84;padding-bottom:6px}
.palaces-page .dq-tuvi-palace-head>b{grid-row:2;grid-column:1/-1;display:block;color:#152d47;text-align:center;font:700 clamp(9px,2vw,13px)/1.3 'DQ Sans',Arial,sans-serif;letter-spacing:.01em}
.palaces-page .dq-tuvi-palace-head>small{grid-column:2;grid-row:1;font-size:inherit}
.palaces-page .dq-tuvi-primary{display:flex;flex-direction:column;gap:3px;align-items:center;color:#176286;text-align:center;font:700 clamp(8px,1.8vw,12px)/1.4 'DQ Sans',Arial,sans-serif}
.palaces-page .dq-tuvi-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:5px 6px;font-size:clamp(7px,1.65vw,11px);line-height:1.4}
.palaces-page .dq-tuvi-star{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere}
.palaces-page .dq-tuvi-star em{font-size:.92em;font-style:normal;font-weight:400}
.palaces-page .dq-tuvi-star[data-element="Mộc"]{color:#24724b}
.palaces-page .dq-tuvi-star[data-element="Hỏa"]{color:#bd3931}
.palaces-page .dq-tuvi-star[data-element="Thổ"]{color:#946324}
.palaces-page .dq-tuvi-star[data-element="Kim"]{color:#46586c}
.palaces-page .dq-tuvi-star[data-element="Thủy"]{color:#1768a4}
.palaces-page .dq-tuvi-palace-foot{display:flex;flex-direction:column;gap:5px;min-width:0;margin-top:auto;border-top:1px dotted #b78942;padding-top:6px;font-size:clamp(7px,1.5vw,10px);line-height:1.4}
.palaces-page .dq-tuvi-palace-foot small{font-size:inherit;color:#5b6570}
.palaces-page .dq-tuvi-flags{font-weight:700;color:#9c352e}
.palaces-page .dq-tuvi-center{grid-area:2/2/4/4;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:9px;padding:12px 10px;border-right:1px solid var(--dq-sheet-gold);border-bottom:1px solid var(--dq-sheet-gold);background:#fffdf8;color:#203952;text-align:center}
.palaces-page .dq-tuvi-center h3{margin:0;padding:0 0 8px;border-bottom:1px solid #ddbd84;font:700 clamp(15px,4vw,26px)/1.25 'DQ Sans',Arial,sans-serif;color:#122d45}
.palaces-page .dq-tuvi-profile-button{display:flex;flex-direction:column;gap:5px;min-width:0;width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#122d45;cursor:pointer;text-align:center}
.palaces-page .dq-tuvi-profile-button strong{display:block;white-space:normal;overflow-wrap:anywhere;font:700 clamp(12px,3.1vw,20px)/1.35 'DQ Sans',Arial,sans-serif}
.palaces-page .dq-tuvi-profile-button>span{font-size:clamp(8px,1.8vw,11px);font-weight:700;color:#855618}
.palaces-page .dq-tuvi-person-facts,.palaces-page .dq-tuvi-descriptors{display:grid;gap:5px;margin:0;font-size:clamp(8px,1.8vw,12px);line-height:1.5}
.palaces-page .dq-tuvi-person-facts>div,.palaces-page .dq-tuvi-descriptors>div{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:6px;align-items:start;text-align:left}
.palaces-page .dq-tuvi-center dt,.palaces-page .dq-tuvi-center dd{min-width:0;margin:0;overflow-wrap:anywhere}
.palaces-page .dq-tuvi-center dt{color:#6b5c43}
.palaces-page .dq-tuvi-center dd{font-weight:600}
.palaces-page .dq-tuvi-reference-date{display:flex;flex-direction:column;gap:3px;border:1px solid #b78942;border-radius:3px;padding:7px;font-size:clamp(8px,1.8vw,11px);line-height:1.4}
.palaces-page .dq-tuvi-center h4{margin:0;padding-top:7px;border-top:1px solid #ddbd84;color:#855618;font-size:clamp(9px,1.9vw,12px);line-height:1.4;letter-spacing:.08em}
.palaces-page .dq-tuvi-sheet>.palace-slot-0{grid-area:1/1}.palaces-page .dq-tuvi-sheet>.palace-slot-1{grid-area:1/2}.palaces-page .dq-tuvi-sheet>.palace-slot-2{grid-area:1/3}.palaces-page .dq-tuvi-sheet>.palace-slot-3{grid-area:1/4}
.palaces-page .dq-tuvi-sheet>.palace-slot-4{grid-area:2/4}.palaces-page .dq-tuvi-sheet>.palace-slot-5{grid-area:3/4}.palaces-page .dq-tuvi-sheet>.palace-slot-6{grid-area:4/4}.palaces-page .dq-tuvi-sheet>.palace-slot-7{grid-area:4/3}
.palaces-page .dq-tuvi-sheet>.palace-slot-8{grid-area:4/2}.palaces-page .dq-tuvi-sheet>.palace-slot-9{grid-area:4/1}.palaces-page .dq-tuvi-sheet>.palace-slot-10{grid-area:3/1}.palaces-page .dq-tuvi-sheet>.palace-slot-11{grid-area:2/1}
@media(max-width:400px){.palaces-page .dq-tuvi-palace{padding:6px 4px;gap:6px}.palaces-page .dq-tuvi-secondary{gap:4px}.palaces-page .dq-tuvi-center{padding:9px 6px;gap:7px}.palaces-page .dq-tuvi-person-facts>div,.palaces-page .dq-tuvi-descriptors>div{gap:4px;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}}
@media print{.dq-tuvi-sheet{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.r166-chart-hint{display:none}}

/* CP4: compact palace previews; the palace dialog contains the complete data. */
.palaces-page .dq-tuvi-sheet{grid-template-rows:repeat(4,minmax(175px,auto));border-radius:8px;overflow:hidden}
.palaces-page .dq-tuvi-palace{height:auto;min-height:175px;max-height:310px;overflow:hidden;gap:5px}
.palaces-page .dq-tuvi-secondary{max-height:108px;overflow:hidden;flex:1 1 auto;min-height:0}
.palaces-page .dq-tuvi-primary{max-height:70px;overflow:hidden;flex-shrink:0}
.palaces-page .dq-tuvi-palace-head,.palaces-page .dq-tuvi-palace-foot{flex-shrink:0}
.palaces-page .dq-tuvi-palace-foot{margin-top:auto;background:#fffdf8}
.palaces-page .dq-tuvi-palace-foot small{font-weight:700;color:#855618}
.palaces-page .dq-tuvi-reference-date input{width:100%;min-width:0;padding:5px 2px;border:1px solid #c7b28d;border-radius:4px;background:#fff;color:#183650;font:inherit;box-sizing:border-box}
.chart-edit-note,.reading-plan-notice{font:inherit;line-height:1.6;padding:10px;border-radius:8px;background:#f3e5c9;color:#24384d}
.reading-plan-notice button,[data-edit-chart]{border:1px solid #b78942;border-radius:8px;padding:8px 12px;background:#fff4d9;color:#24384d;font:inherit;cursor:pointer}
.palaces-page .palace-detail-dialog{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 36px);margin:auto;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}
.palaces-page .palace-detail-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-wrap:anywhere;-webkit-overflow-scrolling:touch}
.palaces-page .palace-detail-head,.palaces-page .palace-detail-foot{flex-shrink:0}
.palaces-page .r166-birth-only .palace-center-plate{background:#fffdf8;color:#203952;border:1px solid #b78942}
@media(max-width:400px){.palaces-page .dq-tuvi-palace{padding:6px 4px;min-height:165px}.palaces-page .dq-tuvi-secondary{grid-template-columns:1fr;gap:3px}.palaces-page .dq-tuvi-sheet{grid-template-rows:repeat(4,minmax(165px,auto))}.palaces-page .dq-tuvi-palace-head>b{font-size:10px}.palaces-page .dq-tuvi-center{justify-content:flex-start}}

.dq-tuvi-reference-note{font-size:11px;line-height:1.45;color:#695635;margin:7px 0;text-align:left}

/* A 4 × 4 perimeter with the center spanning four slots: 13 direct cells. */
.palaces-page .dq-tuvi-sheet{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(155px,auto));width:100%;gap:0;align-items:stretch;border:1px solid #b78942;border-radius:4px;overflow:hidden;background:#fffdf8;color:#203952;font-family:'DQ Sans',Arial,sans-serif}
.palaces-page .dq-tuvi-sheet>[data-chart-cell="palace"]{appearance:none;-webkit-appearance:none;display:flex;flex-direction:column;height:100%;min-height:155px;max-height:none;min-width:0;padding:7px 5px;gap:5px;background:#fffdf8;color:#203952;border:0;border-right:1px solid #b78942;border-bottom:1px solid #b78942;border-radius:0;overflow:hidden;box-shadow:none;text-align:left;transform:none;font-family:inherit}
.palaces-page .dq-tuvi-sheet>[data-chart-cell="center"]{grid-area:2/2/4/4;min-width:0;padding:10px 7px;gap:7px;justify-content:flex-start;background:#fffdf8;color:#203952;font-family:inherit}
.palaces-page .dq-tuvi-palace-head{font-size:9px;line-height:1.35}.palaces-page .dq-tuvi-palace-head>b{font-size:10px}
.palaces-page .dq-tuvi-primary{font-size:10px;line-height:1.4}.palaces-page .dq-tuvi-secondary{font-size:9px;line-height:1.4;max-height:100px;grid-template-columns:1fr;gap:3px;overflow:hidden}
.palaces-page .dq-tuvi-palace-foot{font-size:8px;line-height:1.4}.palaces-page .dq-tuvi-palace-foot small{font-size:8px}
.palaces-page .dq-tuvi-center h3{font-size:17px}.palaces-page .dq-tuvi-profile-button strong{font-size:14px}.palaces-page .dq-tuvi-profile-button>span{font-size:10px}
.palaces-page .dq-tuvi-person-facts,.palaces-page .dq-tuvi-descriptors{font-size:10px;gap:5px;line-height:1.45}
.palaces-page .dq-tuvi-reference-date{font-size:10px;padding:5px}.palaces-page .dq-tuvi-center h4{font-size:10px}
.palaces-page .dq-tuvi-reference-note{font-family:'DQ Sans',Arial,sans-serif;font-size:11px;line-height:1.5;background:#fff6e2;color:#65512f;padding:8px;border:1px solid #cfb98e;border-radius:5px}
.palaces-page .palace-detail-dialog{font-family:'DQ Sans',Arial,sans-serif}
.palaces-page .palace-detail-body .dq-tuvi-star{font-size:14px;line-height:1.55}
@media(max-width:360px){.palaces-page .dq-tuvi-sheet{grid-template-rows:repeat(4,minmax(145px,auto))}.palaces-page .dq-tuvi-sheet>[data-chart-cell="palace"]{min-height:145px;padding:6px 3px}.palaces-page .dq-tuvi-palace-head{font-size:8px}.palaces-page .dq-tuvi-primary{font-size:9px}.palaces-page .dq-tuvi-secondary{font-size:8px}.palaces-page .dq-tuvi-center h3{font-size:15px}.palaces-page .dq-tuvi-person-facts,.palaces-page .dq-tuvi-descriptors{font-size:9px}.palaces-page .dq-tuvi-profile-button strong{font-size:12px}}

/* END R166 CP4 FIX1 CHART STYLES */

/* R166 CP4 FIX2: only the year/reference-date selectors and their wheel dialog. */
.palaces-page .dq-view-picker-trigger{appearance:none;-webkit-appearance:none;display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;min-width:0;padding:6px 7px;border:1px solid #c7b28d;border-radius:5px;background:#fff;color:#183650;text-align:left;font:600 12px/1.4 'DQ Sans',Arial,sans-serif;cursor:pointer}
.palaces-page .dq-view-picker-trigger strong{font-size:15px}.palaces-page .dq-view-picker-trigger>span:last-child{font-size:16px;color:#8a6126;flex-shrink:0}.palaces-page .dq-view-picker-trigger:disabled{opacity:.65;cursor:wait}
.palaces-page .dq-view-date-caption{font-size:9px;color:#796747;margin-top:3px}.palaces-page .dq-view-date-trigger{font-size:10px;font-weight:400}
.chart-view-dialog{position:fixed;inset:0;width:min(400px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #c49a58;border-radius:16px;background:#fff9eb;color:#17334c;box-shadow:0 16px 38px #000b;overflow-y:auto;overscroll-behavior:contain;font-family:'DQ Sans',Arial,sans-serif}
.chart-view-dialog::backdrop{background:#00101ed9;backdrop-filter:blur(4px)}
.view-picker-content{padding:16px}.view-picker-content>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.view-picker-content h3{font-size:19px;margin:0}.view-picker-content>header button{width:32px;height:32px;border:1px solid #c49a58;border-radius:50%;background:#fff9eb;color:#17334c;font-size:22px;line-height:1;cursor:pointer}.view-picker-content>p{font-size:12px;line-height:1.5;margin:9px 0;color:#6e624f}
.view-wheel-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:8px}.view-wheel-columns.view-year-only{grid-template-columns:minmax(0,1fr);width:min(100%,190px);margin:auto}.view-wheel-column{min-width:0}.view-wheel-column>b{display:block;text-align:center;font-size:12px;margin-bottom:6px}.view-wheel-window{position:relative}.view-wheel-window::after{content:'';position:absolute;left:4px;right:4px;top:50%;transform:translateY(-50%);height:44px;border:1px solid #d6a653;border-radius:8px;background:#f5e2bd45;pointer-events:none;box-sizing:border-box}
.view-wheel-track{box-sizing:border-box;height:220px;padding:88px 0;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:thin;scrollbar-color:#d4a869 transparent;touch-action:pan-y;border:1px solid #ead5b2;border-radius:10px;background:#fffdf6}
.view-wheel-track button{position:relative;z-index:1;display:block;box-sizing:border-box;width:100%;height:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#65717b;text-align:center;font:400 17px/44px 'DQ Sans',Arial,sans-serif;scroll-snap-align:center;cursor:pointer}.view-wheel-track button.selected{font-size:22px;font-weight:700;color:#163b55}.view-wheel-track button:disabled{opacity:.25;cursor:not-allowed}
.view-picker-content>.view-picker-selected{text-align:center;font-size:13px;font-weight:600;color:#17334c;min-height:20px}.chart-view-dialog .number-picker-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.chart-view-dialog .number-picker-actions button{min-height:40px;min-width:88px;padding:7px 12px;border:1px solid #c49a58;border-radius:20px;background:#fff9eb;color:#17334c;font:600 13px 'DQ Sans',Arial,sans-serif;cursor:pointer}.chart-view-dialog [data-view-confirm]{background:linear-gradient(#ffe7aa,#dfab56)!important}
@media(max-width:359px){.view-picker-content{padding:12px}.view-wheel-columns{gap:5px}.view-wheel-track button{font-size:16px}.view-wheel-track button.selected{font-size:20px}}
