:root{
  --wine:#761518;
  --wine-2:#8f1f22;
  --wine-3:#5b0e12;
  --gold:#d9aa52;
  --gold-2:#f0d48d;
  --cream:#f7edda;
  --cream-2:#fff9ee;
  --ink:#4b2a20;
  --muted:#8d725e;
  --line:#ead4aa;
  --green:#317a4e;
  --shadow:0 12px 30px rgba(94,25,25,.14);
}
*{box-sizing:border-box}
html{background:#ece3d3}
body{
  margin:0;
  color:var(--ink);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 12% 0%,rgba(217,170,82,.12),transparent 24%),
    linear-gradient(#f5ead7,#f9f1e4);
}
a{text-decoration:none;color:inherit}
button{font:inherit}
.page-shell{max-width:760px;margin:0 auto;min-height:100vh;background:var(--cream);box-shadow:0 0 50px rgba(69,32,20,.12);padding-bottom:94px}
.hero{
  position:relative;
  overflow:hidden;
  min-height:500px;
  padding:18px 18px 34px;
  color:white;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,215,120,.17),transparent 22%),
    radial-gradient(circle at 80% 22%,rgba(255,255,255,.06),transparent 22%),
    linear-gradient(165deg,#8b1c1f 0%,#6e1114 70%);
}
.hero:after{
  content:"";
  position:absolute;left:-10%;right:-10%;bottom:-70px;height:160px;
  background:var(--cream);border-radius:50% 50% 0 0/60% 60% 0 0;
}
.topline{display:flex;justify-content:space-between;position:relative;z-index:3}
.icon-btn{
  width:42px;height:42px;border-radius:50%;border:1px solid rgba(239,212,141,.55);
  background:rgba(84,10,14,.28);color:#f6dc9d;font-size:20px
}
.brand-lockup{position:relative;z-index:2;text-align:center;margin-top:8px}
.eyebrow{font-weight:900;letter-spacing:4px;color:#f3d58f;font-size:12px;margin-top:8px}
.brand-lockup h1{
  font-family:Georgia,"Times New Roman",serif;
  margin:6px 0 8px;font-size:clamp(31px,7vw,48px);line-height:1.05;color:#ffe4a7;
  text-shadow:0 2px 0 rgba(76,12,12,.4)
}
.brand-lockup p{margin:0;color:#f6e6ca;font-size:14px}
.bagua{
  width:112px;height:112px;border-radius:50%;margin:0 auto;position:relative;
  border:3px solid var(--gold);box-shadow:0 0 0 6px rgba(217,170,82,.14), inset 0 0 20px rgba(0,0,0,.2);
  background:radial-gradient(circle,#951e23 0 37%,#6a1014 38% 100%);
}
.yin-yang{position:absolute;inset:0;display:grid;place-items:center;font-size:50px;color:#f6d789}
.tri{position:absolute;font-size:13px;color:#f6d789;font-weight:900}
.t1{top:-10px;left:48px}.t2{top:8px;right:5px}.t3{top:47px;right:-10px}.t4{bottom:6px;right:5px}
.t5{bottom:-10px;left:48px}.t6{bottom:6px;left:5px}.t7{top:47px;left:-10px}.t8{top:8px;left:5px}
.hero-decor{position:absolute;z-index:1;opacity:.82}
.lantern{font-size:44px;top:58px}.lantern.left{left:18px}.lantern.right{right:18px}
.blossom{font-size:38px;opacity:.75}.b1{left:12px;bottom:145px}.b2{right:14px;bottom:155px}
.hero-actions{
  position:relative;z-index:4;display:grid;grid-template-columns:1fr 1fr;gap:12px;
  margin:28px auto 0;max-width:650px
}
.feature-card{
  min-height:98px;padding:15px 14px;border-radius:20px;display:flex;align-items:center;gap:12px;
  border:1px solid rgba(243,211,134,.6);box-shadow:0 14px 26px rgba(74,9,12,.25)
}
.feature-card.primary{background:linear-gradient(145deg,#9e272a,#721317)}
.feature-card.secondary{background:linear-gradient(145deg,#f3d47f,#d8a342);color:#5a251b}
.feature-card strong{display:block;font-size:14px}
.feature-card span{display:block;font-size:11px;margin-top:5px;opacity:.9;line-height:1.35}
.feature-icon{width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:26px;flex:0 0 auto}
.content{position:relative;z-index:5;padding:0 16px}
.section{margin:8px 0 24px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px}
.section-kicker, .info-card small{font-size:10px;letter-spacing:2px;color:var(--wine-2);font-weight:900}
.section h2{font-family:Georgia,serif;margin:3px 0 0;font-size:25px;color:var(--wine)}
.text-link{font-size:12px;color:var(--wine-2);font-weight:800}
.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.tool-card{
  background:var(--cream-2);border:1px solid var(--line);border-radius:17px;padding:13px 8px;
  text-align:center;box-shadow:0 8px 16px rgba(103,63,35,.07);min-height:104px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px
}
.tool-card:hover{transform:translateY(-1px)}
.tool-icon{font-size:29px}
.tool-card strong{font-size:12px;line-height:1.25;color:#69352b}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.info-card{
  background:rgba(255,250,240,.93);border:1px solid var(--line);border-radius:20px;padding:16px;
  box-shadow:var(--shadow)
}
.card-title-row{display:flex;gap:10px;align-items:center}
.card-title-row h3{font-family:Georgia,serif;color:var(--wine);font-size:18px;margin:2px 0 0}
.mini-icon{width:40px;height:40px;border-radius:14px;background:#f1dfb7;display:grid;place-items:center;font-size:20px}
.calendar-lines{display:grid;gap:8px;margin:14px 0}
.calendar-lines div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #e2cfa9;padding-bottom:7px;font-size:11px}
.calendar-lines span{color:var(--muted)}
.calendar-lines b{text-align:right}
.pill-link{display:inline-flex;padding:9px 12px;border-radius:999px;background:var(--wine);color:#fff;font-size:11px;font-weight:800}
.zodiac-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}
.zodiac-chip{
  background:#fff7e9;border:1px solid #ecd5a8;border-radius:12px;padding:7px 3px;text-align:center;
  display:flex;flex-direction:column;gap:2px
}
.zodiac-chip span{font-size:20px}.zodiac-chip b{font-size:10px;color:#7b3c30}
.ai-banner{
  position:relative;overflow:hidden;margin:8px 0 20px;border-radius:24px;padding:22px;
  color:#fff;background:linear-gradient(135deg,#761518,#941f22);border:1px solid #c88943;
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;box-shadow:var(--shadow)
}
.ai-banner:after{content:"☯";position:absolute;right:55px;top:-28px;font-size:130px;color:rgba(255,218,133,.07)}
.ai-badge{width:52px;height:52px;border-radius:18px;background:#f0cd79;color:#6d1a18;display:grid;place-items:center;font-weight:950}
.ai-copy span{font-size:9px;letter-spacing:2px;color:#efd88e;font-weight:900}
.ai-copy h2{font-family:Georgia,serif;margin:4px 0 6px;font-size:21px}
.ai-copy p{font-size:11px;line-height:1.5;margin:0;color:#f4dfcc}
.ai-btn{position:relative;z-index:2;background:#f1d382;color:#621814;padding:10px 12px;border-radius:999px;font-size:10px;font-weight:900}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.trust-grid>div{text-align:center;padding:12px 6px;background:#fdf5e7;border:1px solid #ecd5aa;border-radius:15px}
.trust-grid span{display:block;font-size:18px;color:var(--wine)}
.trust-grid b{display:block;font-size:11px;margin-top:4px}
.trust-grid small{display:block;color:var(--muted);font-size:8px;margin-top:3px}
.bottom-nav{
  position:fixed;z-index:50;left:50%;bottom:0;transform:translateX(-50%);
  width:min(1500px,100%);min-height:72px;padding:8px 5px calc(8px + env(safe-area-inset-bottom));
  display:grid;grid-template-columns:repeat(7,1fr);background:rgba(102,16,19,.97);
  border-top:1px solid rgba(239,209,130,.55);backdrop-filter:blur(12px)
}
.bottom-nav a{text-align:center;color:#e9c99b;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:9px}
.bottom-nav a span{font-size:19px}.bottom-nav a b{font-weight:700}
.bottom-nav a.active{color:#fff0b4}
.subpage{background:linear-gradient(#f7edda,#fbf4e9)}
.sub-hero{
  min-height:270px;padding:24px 18px 45px;text-align:center;color:white;position:relative;
  background:linear-gradient(160deg,#861c1f,#681014);border-bottom-left-radius:38px;border-bottom-right-radius:38px
}
.sub-hero span{font-size:10px;letter-spacing:2px;color:#e9c777;font-weight:900}
.sub-hero h1{font:700 33px/1.1 Georgia,serif;color:#ffe0a2;margin:8px 0}
.sub-hero p{max-width:540px;margin:0 auto;color:#f1dfcf;font-size:12px;line-height:1.6}
.sub-bagua{font-size:52px;color:#f1cd74;margin-top:22px}
.back-btn{position:absolute;left:18px;top:18px;width:40px;height:40px;border:1px solid #d6ac58;border-radius:50%;display:grid;place-items:center;color:#f3d480;font-size:28px}
.muted{color:var(--muted);line-height:1.7;font-size:13px}
@media(max-width:600px){
  .hero{min-height:520px}
  .hero-actions{grid-template-columns:1fr 1fr}
  .tool-grid{grid-template-columns:repeat(2,1fr)}
  .two-col{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .ai-banner{grid-template-columns:auto 1fr}.ai-btn{grid-column:1/-1;justify-self:start}
  .bottom-nav a b{font-size:7px}
}

.ritual-hero{position:relative;text-align:center;color:#fff;padding:24px 18px 48px;background:radial-gradient(circle at 50% -10%,rgba(255,221,139,.2),transparent 28%),linear-gradient(160deg,#8c1d20,#651014);border-bottom-left-radius:38px;border-bottom-right-radius:38px;overflow:hidden}.ritual-hero:before,.ritual-hero:after{position:absolute;font-size:44px;opacity:.7;top:28px}.ritual-hero:before{content:"🏮";left:22px}.ritual-hero:after{content:"🌸";right:20px}.ritual-hero.compact{padding-bottom:34px}.ritual-icon{font-size:58px;color:#f1cd78}.ritual-hero>span{display:block;font-size:10px;letter-spacing:3px;color:#e9c97a;font-weight:900;margin-top:5px}.ritual-hero h1{font:700 clamp(28px,6vw,38px)/1.08 Georgia,serif;color:#ffe2a0;margin:6px 0 7px}.ritual-hero p{margin:0;color:#f2dfcc;font-size:12px}
.form-content,.result-content{padding-top:18px}.steps{display:flex;align-items:flex-start;justify-content:center;margin:0 auto 18px;max-width:580px}.steps>div{width:90px;text-align:center;color:#a68972;font-size:9px}.steps b{width:28px;height:28px;border-radius:50%;border:2px solid #dac49b;background:#f9f0df;display:grid;place-items:center;margin:0 auto 6px;color:#9c7b5e}.steps .done b{background:var(--wine);border-color:var(--wine);color:#fff}.steps .done span{color:var(--wine);font-weight:800}.steps i{height:2px;background:#d9c39d;flex:1;margin-top:13px}
.tip-box,.notice-box,.error-box{border-radius:14px;padding:13px 14px;margin-bottom:14px;font-size:12px;line-height:1.55}.tip-box{background:#f7e5c9;border:1px solid #e6c58c;color:#6a3c27}.notice-box{background:#fff8e9;border:1px solid #e4c58f;color:#72513c}.error-box{background:#fff0ed;border:1px solid #dda49d;color:#8b2921}.tip-box p,.notice-box p{margin:4px 0 0}.stack-form{display:grid;gap:14px}.form-card{background:#fffaf0;border:1px solid #e3cca5;border-radius:18px;padding:16px;box-shadow:0 8px 18px rgba(97,54,27,.08)}.form-card h2{font:700 17px Georgia,serif;color:var(--wine);margin:0 0 14px;border-bottom:1px solid #ead7b5;padding-bottom:10px}.form-card>label{display:grid;gap:6px;margin:11px 0;color:#6f5141;font-size:12px;font-weight:700}.form-card input,.form-card select{width:100%;border:1px solid #dec89f;background:#fffdf7;color:#4d3025;border-radius:10px;padding:12px;font:inherit;outline:none}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segmented label{position:relative}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{display:block;text-align:center;border:1px solid #ddc8a3;background:#fff8ea;border-radius:10px;padding:11px;color:#815844}.segmented input:checked+span{background:#8a1b1e;color:#fff;border-color:#8a1b1e}.continue-btn{border:0;border-radius:14px;background:linear-gradient(180deg,#9b2528,#751518);color:#fff;padding:15px 18px;font-weight:900}
.filter-card{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fff8e8;border:1px solid #e3c795;border-radius:16px;padding:10px;margin-bottom:12px}.filter-card div{background:#fffdf7;border:1px solid #ead8b4;border-radius:10px;padding:9px}.filter-card small,.detail-grid small{display:block;font-size:8px;letter-spacing:1px;color:#9d7860;font-weight:900}.filter-card b{display:block;margin-top:3px;color:#6c3228;font-size:11px}.year-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.year-checks div{border:1px solid #ddc9a4;border-radius:13px;background:#fff9ed;padding:10px;text-align:center}.year-checks b{display:block;font-size:10px}.year-checks span{font-size:11px;margin-top:3px;display:block}.year-checks .ok{border-color:#9bc4a8;background:#f4fbf6;color:#24613b}.year-checks .warn{border-color:#e0aaa1;background:#fff5f2;color:#922f27}
.rank-list{display:grid;gap:10px}.rank-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:7px 12px;background:#fffaf0;border:1px solid #e4cda6;border-radius:16px;padding:14px}.rank-card.best{border:2px solid #c19645;background:linear-gradient(135deg,#fff9e8,#fffdf7)}.best-tag{position:absolute;right:12px;top:-9px;background:#b88b32;color:#fff;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900}.rank-date b{display:block;font:700 21px Georgia,serif;color:var(--wine)}.rank-date span{font-size:10px;color:#8b6f5c}.rank-score{grid-row:1/3;grid-column:2;font-size:25px;font-weight:950;color:#2e7649;align-self:center}.rank-score small{font-size:9px}.rank-meta{grid-column:1}.rank-meta b{font-size:11px}.rank-meta span{display:block;font-size:9px;color:#8b6f5c;margin-top:2px}
.detail-card,.method-card{background:#fffaf0;border:1px solid #e2c79b;border-radius:18px;padding:16px;margin-top:16px}.detail-title{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #ead6b2;padding-bottom:12px}.detail-title span{font-size:9px;letter-spacing:1.5px;color:#9d7248;font-weight:900}.detail-title h2{font:700 25px Georgia,serif;color:var(--wine);margin:4px 0 0}.score-ring{width:64px;height:64px;border-radius:50%;border:6px solid #caa74d;display:grid;place-items:center;color:#316e47;font-size:19px;font-weight:950}.score-ring small{font-size:7px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:13px 0}.detail-grid div{background:#fff6e5;border:1px solid #ead8b8;border-radius:10px;padding:9px}.detail-grid b{display:block;font-size:11px;margin-top:3px}.detail-card h3,.method-card h3{color:#7b2b25;font:700 15px Georgia,serif;margin:15px 0 8px}.reason-list{margin:0;padding-left:18px;font-size:11px;line-height:1.65}.reason-list.good{color:#356a45}.reason-list.bad{color:#922f27}.hour-chips{display:flex;flex-wrap:wrap;gap:7px}.hour-chips span{background:#fff2d6;border:1px solid #e3c285;border-radius:999px;padding:7px 9px;font-size:9px}.ai-explain p{white-space:pre-line;font-size:12px;line-height:1.75;color:#644a3d}.ai-status{font-size:10px;color:#8e653f;background:#fff1d5;border-radius:10px;padding:9px}.method-card{font-size:10px;color:#6b5448}.method-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.method-cols ul{padding-left:16px;line-height:1.6}.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.result-actions button{border:1px solid #c7a266;background:#fff8e9;color:#7b2a24;border-radius:12px;padding:12px;font-weight:800}@media(max-width:520px){.filter-card{grid-template-columns:1fr 1fr}.filter-card div:last-child{grid-column:1/-1}.method-cols{grid-template-columns:1fr}}


/* ===== PART 3: CƯỚI HỎI ===== */
.wedding-hero{position:relative;text-align:center;color:#fff;padding:24px 18px 48px;background:
radial-gradient(circle at 50% 5%,rgba(255,222,150,.20),transparent 27%),
linear-gradient(158deg,#9a1f25,#711218);border-bottom-left-radius:40px;border-bottom-right-radius:40px;overflow:hidden}
.wedding-hero:before{content:"🏮  🌸";position:absolute;left:18px;top:28px;font-size:35px;opacity:.75}
.wedding-hero:after{content:"🌸  🏮";position:absolute;right:18px;top:28px;font-size:35px;opacity:.75}
.wedding-hero.compact{padding-bottom:34px}.double-happiness{margin:0 auto 5px;width:82px;height:82px;border:2px solid #e9c26e;border-radius:22px;display:grid;place-items:center;color:#f5d987;font:700 49px Georgia,serif;background:rgba(83,7,12,.20);box-shadow:0 0 0 5px rgba(240,204,121,.10)}.double-happiness.small{width:64px;height:64px;font-size:38px}
.wedding-hero>span{font-size:10px;letter-spacing:3px;color:#f0cc7d;font-weight:900}.wedding-hero h1{font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;color:#ffe0a0;margin:5px 0}.wedding-hero p{font-size:12px;color:#f7dfd2;margin:0}
.wedding-tip{background:#fff1df;border-color:#e5bf8e}.wedding-person.groom{border-top:4px solid #9f5e39}.wedding-person.bride{border-top:4px solid #ba5664}.wedding-button{background:linear-gradient(180deg,#aa2630,#7d151b)}
.couple-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:9px;align-items:center;background:linear-gradient(135deg,#fff7e9,#fffaf2);border:1px solid #e4c48e;border-radius:18px;padding:13px;margin-bottom:10px;box-shadow:0 8px 18px rgba(112,47,31,.08)}
.couple-summary>div:not(.heart-score){text-align:center}.couple-summary small{display:block;font-size:8px;letter-spacing:1px;color:#a27659;font-weight:900}.couple-summary b{display:block;color:#75241f;font-size:12px;margin-top:3px}.couple-summary span{display:block;color:#876b59;font-size:9px;margin-top:3px}
.heart-score{width:68px;height:68px;border-radius:50%;border:5px solid #d3a448;display:grid;place-items:center;align-content:center;color:#8d1d25;background:#fff}.heart-score span{font-size:15px;line-height:1}.heart-score b{font-size:22px;line-height:1}.heart-score small{font-size:7px}
.compat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:18px}.compat-row div{border-radius:12px;padding:10px;text-align:center;border:1px solid #e2ccaa;background:#fff9ed}.compat-row small{display:block;font-size:8px;color:#9a735a}.compat-row b{display:block;font-size:10px;margin-top:4px}.compat-row .good{background:#f3fbf5;border-color:#9fc7aa;color:#286441}.compat-row .bad{background:#fff4f2;border-color:#e0aaa1;color:#8d312a}.compat-row .neutral{background:#fff9ed;color:#76533e}
.wedding-detail{border-top:4px solid #b9903c}.wedding-ranks .rank-card.best{box-shadow:0 0 0 3px rgba(185,144,60,.08)}
@media(max-width:520px){.couple-summary{grid-template-columns:1fr auto 1fr}.compat-row{grid-template-columns:1fr}.couple-summary span{font-size:8px}}


/* ===== PART 4: KHAI TRƯƠNG ===== */
.opening-hero{position:relative;text-align:center;color:#fff;padding:24px 18px 48px;background:
radial-gradient(circle at 50% 0%,rgba(255,225,145,.20),transparent 28%),
linear-gradient(160deg,#941d21,#691015);border-bottom-left-radius:40px;border-bottom-right-radius:40px;overflow:hidden}
.opening-hero:before{content:"🏮 ✨";position:absolute;left:20px;top:30px;font-size:34px;opacity:.78}
.opening-hero:after{content:"✨ 🧧";position:absolute;right:20px;top:30px;font-size:34px;opacity:.78}
.opening-hero.compact{padding-bottom:34px}
.opening-symbol{margin:0 auto 5px;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;border:2px solid #e8be67;box-shadow:0 0 0 6px rgba(237,198,109,.10);background:rgba(82,7,11,.22);color:#f3d27e;font:700 46px Georgia,serif}
.opening-symbol.small{width:62px;height:62px;font-size:34px}
.opening-hero>span{font-size:10px;letter-spacing:3px;color:#efcb79;font-weight:900}.opening-hero h1{font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;color:#ffe0a0;margin:5px 0}.opening-hero p{font-size:12px;color:#f5ddca;margin:0}
.opening-tip{background:#fff0d9;border-color:#e4bd7f}.opening-owner{border-top:4px solid #9d5c35}.opening-business{border-top:4px solid #b88835}.opening-event{border-top:4px solid #b54a2f}
.form-card textarea{width:100%;resize:vertical;border:1px solid #dec89f;background:#fffdf7;color:#4d3025;border-radius:10px;padding:12px;font:inherit;outline:none}
.opening-button{background:linear-gradient(180deg,#a92827,#781618)}
.opening-profile-card{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fff8e8;border:1px solid #e3c28d;border-radius:17px;padding:10px;margin-bottom:18px}
.opening-profile-card>div{background:#fffdf7;border:1px solid #ead5ae;border-radius:11px;padding:10px;text-align:center}.opening-profile-card small{display:block;font-size:8px;letter-spacing:1px;color:#9b7458;font-weight:900}.opening-profile-card b{display:block;color:#722a23;font-size:11px;margin-top:4px}.opening-profile-card span{display:block;color:#866b59;font-size:9px;margin-top:3px}
.opening-detail{border-top:4px solid #c49a42}.opening-ranks .rank-card.best{box-shadow:0 0 0 3px rgba(196,154,66,.09)}
.neutral-list{color:#7d6757}.method-cols.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:600px){.opening-profile-card{grid-template-columns:1fr}.method-cols.three{grid-template-columns:1fr}}


/* ===== PART 5: NHẬP TRẠCH ===== */
.movein-hero{position:relative;text-align:center;color:#fff;padding:24px 18px 48px;background:
radial-gradient(circle at 50% 0%,rgba(255,224,145,.19),transparent 28%),
linear-gradient(160deg,#8f1b20,#681014);border-bottom-left-radius:40px;border-bottom-right-radius:40px;overflow:hidden}
.movein-hero:before{content:"🏮 🌸";position:absolute;left:20px;top:30px;font-size:34px;opacity:.76}
.movein-hero:after{content:"🌸 🏠";position:absolute;right:20px;top:30px;font-size:34px;opacity:.76}
.movein-hero.compact{padding-bottom:34px}
.movein-symbol{margin:0 auto 5px;width:82px;height:82px;border-radius:22px;display:grid;place-items:center;border:2px solid #e6bd66;box-shadow:0 0 0 6px rgba(235,194,106,.10);background:rgba(82,7,11,.22);color:#f3d27e;font:700 46px Georgia,serif}
.movein-symbol.small{width:62px;height:62px;font-size:34px}
.movein-hero>span{font-size:10px;letter-spacing:3px;color:#efcb79;font-weight:900}
.movein-hero h1{font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;color:#ffe0a0;margin:5px 0}
.movein-hero p{font-size:12px;color:#f4ddcb;margin:0}
.movein-tip{background:#fff0dc;border-color:#e3bf84}
.movein-owner{border-top:4px solid #9c5f3b}
.movein-house{border-top:4px solid #b78b3e}
.movein-button{background:linear-gradient(180deg,#a22728,#791619)}
.movein-profile-card{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fff8e8;border:1px solid #e2c28e;border-radius:17px;padding:10px;margin-bottom:18px}
.movein-profile-card>div{background:#fffdf7;border:1px solid #ead5ae;border-radius:11px;padding:10px;text-align:center}
.movein-profile-card small{display:block;font-size:8px;letter-spacing:1px;color:#9b7458;font-weight:900}
.movein-profile-card b{display:block;color:#722a23;font-size:11px;margin-top:4px}
.movein-profile-card span{display:block;color:#866b59;font-size:9px;margin-top:3px}
.movein-detail{border-top:4px solid #c19b49}
.movein-ranks .rank-card.best{box-shadow:0 0 0 3px rgba(193,155,73,.09)}
@media(max-width:600px){.movein-profile-card{grid-template-columns:1fr}}


/* ===== PART 6: MUA XE ===== */
.vehicle-hero{
  position:relative;
  text-align:center;
  color:#fff;
  padding:24px 18px 48px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,225,150,.18),transparent 28%),
    linear-gradient(160deg,#8e1b20,#671015);
  border-bottom-left-radius:40px;
  border-bottom-right-radius:40px;
  overflow:hidden;
}
.vehicle-hero:before{
  content:"🏮 ✨";
  position:absolute;
  left:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.vehicle-hero:after{
  content:"✨ 🌸";
  position:absolute;
  right:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.vehicle-hero.compact{padding-bottom:34px}

.vehicle-symbol{
  margin:0 auto 5px;
  width:86px;
  height:86px;
  border-radius:24px;
  display:grid;
  place-items:center;
  border:2px solid #e7bf69;
  box-shadow:0 0 0 6px rgba(235,194,106,.10);
  background:rgba(82,7,11,.22);
  font-size:43px;
}
.vehicle-symbol.small{
  width:64px;
  height:64px;
  font-size:31px;
}
.vehicle-hero>span{
  font-size:10px;
  letter-spacing:3px;
  color:#efcb79;
  font-weight:900;
}
.vehicle-hero h1{
  font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;
  color:#ffe0a0;
  margin:5px 0;
}
.vehicle-hero p{
  font-size:12px;
  color:#f4ddcb;
  margin:0;
}

.vehicle-tip{
  background:#fff0dc;
  border-color:#e3bf84;
}
.vehicle-owner{border-top:4px solid #9a5d39}
.vehicle-info{border-top:4px solid #b98d41}
.vehicle-button{
  background:linear-gradient(180deg,#a32728,#791619);
}

.three-segment{
  grid-template-columns:repeat(3,1fr);
}

.vehicle-profile-card{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  background:#fff8e8;
  border:1px solid #e2c28e;
  border-radius:17px;
  padding:10px;
  margin-bottom:18px;
}
.vehicle-profile-card>div{
  background:#fffdf7;
  border:1px solid #ead5ae;
  border-radius:11px;
  padding:10px;
  text-align:center;
}
.vehicle-profile-card small{
  display:block;
  font-size:8px;
  letter-spacing:1px;
  color:#9b7458;
  font-weight:900;
}
.vehicle-profile-card b{
  display:block;
  color:#722a23;
  font-size:11px;
  margin-top:4px;
}
.vehicle-profile-card span{
  display:block;
  color:#866b59;
  font-size:9px;
  margin-top:3px;
}
.vehicle-detail{
  border-top:4px solid #c19b49;
}
.vehicle-ranks .rank-card.best{
  box-shadow:0 0 0 3px rgba(193,155,73,.09);
}

@media(max-width:600px){
  .vehicle-profile-card{grid-template-columns:1fr}
  .three-segment{grid-template-columns:1fr}
}


/* ===== PART 7: XUẤT HÀNH ===== */
.travel-hero{
  position:relative;
  text-align:center;
  color:#fff;
  padding:24px 18px 48px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,225,150,.18),transparent 28%),
    linear-gradient(160deg,#8b1a20,#641015);
  border-bottom-left-radius:40px;
  border-bottom-right-radius:40px;
  overflow:hidden;
}
.travel-hero:before{
  content:"🏮 ☁️";
  position:absolute;
  left:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.travel-hero:after{
  content:"☁️ 🌸";
  position:absolute;
  right:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.travel-hero.compact{padding-bottom:34px}

.travel-symbol{
  margin:0 auto 5px;
  width:86px;
  height:86px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:2px solid #e7bf69;
  box-shadow:0 0 0 6px rgba(235,194,106,.10);
  background:rgba(82,7,11,.22);
  font-size:42px;
}
.travel-symbol.small{
  width:64px;
  height:64px;
  font-size:31px;
}

.travel-hero>span{
  font-size:10px;
  letter-spacing:3px;
  color:#efcb79;
  font-weight:900;
}
.travel-hero h1{
  font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;
  color:#ffe0a0;
  margin:5px 0;
}
.travel-hero p{
  font-size:12px;
  color:#f4ddcb;
  margin:0;
}

.travel-tip{
  background:#fff0dc;
  border-color:#e3bf84;
}
.travel-person{border-top:4px solid #98603d}
.travel-trip{border-top:4px solid #b18a46}
.travel-button{
  background:linear-gradient(180deg,#9f2529,#73151a);
}

.travel-profile-card{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  background:#fff8e8;
  border:1px solid #e2c28e;
  border-radius:17px;
  padding:10px;
  margin-bottom:18px;
}
.travel-profile-card>div{
  background:#fffdf7;
  border:1px solid #ead5ae;
  border-radius:11px;
  padding:10px;
  text-align:center;
}
.travel-profile-card small{
  display:block;
  font-size:8px;
  letter-spacing:1px;
  color:#9b7458;
  font-weight:900;
}
.travel-profile-card b{
  display:block;
  color:#722a23;
  font-size:11px;
  margin-top:4px;
}
.travel-profile-card span{
  display:block;
  color:#866b59;
  font-size:9px;
  margin-top:3px;
}

.travel-detail{
  border-top:4px solid #be994c;
}
.travel-ranks .rank-card.best{
  box-shadow:0 0 0 3px rgba(190,153,76,.09);
}

.score-audit{
  display:grid;
  gap:7px;
}
.score-audit>div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  background:#fff8e9;
  border:1px solid #ead7b6;
  border-radius:10px;
  padding:9px 10px;
  font-size:10px;
}
.score-audit b.plus{color:#2f7748}
.score-audit b.minus{color:#9b3028}

@media(max-width:600px){
  .travel-profile-card{grid-template-columns:1fr}
}


/* ===== PART 8: KÝ HỢP ĐỒNG ===== */
.contract-hero{
  position:relative;
  text-align:center;
  color:#fff;
  padding:24px 18px 48px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,225,150,.18),transparent 28%),
    linear-gradient(160deg,#8d1a20,#641015);
  border-bottom-left-radius:40px;
  border-bottom-right-radius:40px;
  overflow:hidden;
}
.contract-hero:before{
  content:"🏮 📜";
  position:absolute;
  left:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.contract-hero:after{
  content:"📜 🌸";
  position:absolute;
  right:20px;
  top:30px;
  font-size:34px;
  opacity:.76;
}
.contract-hero.compact{padding-bottom:34px}

.contract-symbol{
  margin:0 auto 5px;
  width:86px;
  height:86px;
  border-radius:24px;
  display:grid;
  place-items:center;
  border:2px solid #e7bf69;
  box-shadow:0 0 0 6px rgba(235,194,106,.10);
  background:rgba(82,7,11,.22);
  font-size:40px;
}
.contract-symbol.small{
  width:64px;
  height:64px;
  font-size:29px;
}

.contract-hero>span{
  font-size:10px;
  letter-spacing:3px;
  color:#efcb79;
  font-weight:900;
}
.contract-hero h1{
  font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;
  color:#ffe0a0;
  margin:5px 0;
}
.contract-hero p{
  font-size:12px;
  color:#f4ddcb;
  margin:0;
}

.contract-tip{
  background:#fff0dc;
  border-color:#e3bf84;
}
.contract-signer{border-top:4px solid #97603c}
.contract-info{border-top:4px solid #b18a46}
.contract-button{
  background:linear-gradient(180deg,#a1262a,#741519);
}

.contract-profile-card{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  background:#fff8e8;
  border:1px solid #e2c28e;
  border-radius:17px;
  padding:10px;
  margin-bottom:18px;
}
.contract-profile-card>div{
  background:#fffdf7;
  border:1px solid #ead5ae;
  border-radius:11px;
  padding:10px;
  text-align:center;
}
.contract-profile-card small{
  display:block;
  font-size:8px;
  letter-spacing:1px;
  color:#9b7458;
  font-weight:900;
}
.contract-profile-card b{
  display:block;
  color:#722a23;
  font-size:11px;
  margin-top:4px;
}
.contract-profile-card span{
  display:block;
  color:#866b59;
  font-size:9px;
  margin-top:3px;
}

.contract-detail{
  border-top:4px solid #be994c;
}
.contract-ranks .rank-card.best{
  box-shadow:0 0 0 3px rgba(190,153,76,.09);
}
.contract-context{
  border-top:4px solid #a86d4d;
}
.contract-context p{
  font-size:11px;
  line-height:1.65;
  color:#684d3f;
  margin:8px 0 0;
}

@media(max-width:600px){
  .contract-profile-card{grid-template-columns:1fr}
}


/* ===== PART 9: AN TÁNG ===== */
.burial-hero{
  position:relative;
  text-align:center;
  color:#fff;
  padding:24px 18px 48px;
  background:
    radial-gradient(circle at 50% 0%,rgba(231,207,146,.16),transparent 28%),
    linear-gradient(160deg,#4e4435,#2f2a22);
  border-bottom-left-radius:40px;
  border-bottom-right-radius:40px;
  overflow:hidden;
}
.burial-hero:before{
  content:"🕯 🪷";
  position:absolute;
  left:20px;
  top:30px;
  font-size:32px;
  opacity:.72;
}
.burial-hero:after{
  content:"🪷 🕯";
  position:absolute;
  right:20px;
  top:30px;
  font-size:32px;
  opacity:.72;
}
.burial-hero.compact{padding-bottom:34px}

.burial-symbol{
  margin:0 auto 5px;
  width:84px;
  height:84px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:2px solid #c8aa68;
  box-shadow:0 0 0 6px rgba(202,171,105,.08);
  background:rgba(29,25,20,.25);
  font-size:39px;
}
.burial-symbol.small{
  width:62px;
  height:62px;
  font-size:29px;
}

.burial-hero>span{
  font-size:10px;
  letter-spacing:3px;
  color:#dbc585;
  font-weight:900;
}
.burial-hero h1{
  font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;
  color:#f0ddaa;
  margin:5px 0;
}
.burial-hero p{
  font-size:12px;
  color:#ddd0ba;
  margin:0;
}

.burial-tip{
  background:#f4ead8;
  border-color:#ccb68e;
}
.burial-person{border-top:4px solid #7f6e55}
.burial-plan{border-top:4px solid #a08758}
.burial-family{border-top:4px solid #8a7653}

.burial-button{
  background:linear-gradient(180deg,#645642,#40382c);
}

.burial-profile-card{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  background:#f5edde;
  border:1px solid #d6c39b;
  border-radius:17px;
  padding:10px;
  margin-bottom:12px;
}
.burial-profile-card>div{
  background:#fffaf1;
  border:1px solid #e0d0ae;
  border-radius:11px;
  padding:10px;
  text-align:center;
}
.burial-profile-card small{
  display:block;
  font-size:8px;
  letter-spacing:1px;
  color:#7e6d55;
  font-weight:900;
}
.burial-profile-card b{
  display:block;
  color:#4d4335;
  font-size:11px;
  margin-top:4px;
}
.burial-profile-card span{
  display:block;
  color:#786a58;
  font-size:9px;
  margin-top:3px;
}

.burial-disclaimer{
  background:#fff8e9;
  border:1px solid #d6bf8d;
  border-radius:14px;
  padding:12px 14px;
  margin-bottom:18px;
  color:#5f5141;
  font-size:10px;
  line-height:1.6;
}
.burial-disclaimer b{
  color:#584b3a;
}

.burial-detail{
  border-top:4px solid #9f8859;
}
.burial-ranks .rank-card.best{
  box-shadow:0 0 0 3px rgba(142,120,82,.09);
}
.burial-context{
  border-top:4px solid #7f6d51;
}
.burial-context p{
  font-size:11px;
  line-height:1.65;
  color:#5d5142;
  margin:8px 0 0;
}

@media(max-width:600px){
  .burial-profile-card{grid-template-columns:1fr}
}


/* ===== PART 10: XEM TUỔI KẾT HÔN ===== */
.marriage-hero{
  position:relative;text-align:center;color:#fff;padding:24px 18px 48px;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,225,150,.19),transparent 28%),
    linear-gradient(160deg,#971d25,#681015);
  border-bottom-left-radius:40px;border-bottom-right-radius:40px;overflow:hidden;
}
.marriage-hero:before{content:"🏮 🌸";position:absolute;left:20px;top:30px;font-size:34px;opacity:.78}
.marriage-hero:after{content:"🌸 🕊️";position:absolute;right:20px;top:30px;font-size:34px;opacity:.78}
.marriage-hero.compact{padding-bottom:34px}
.marriage-double{
  margin:0 auto 5px;width:86px;height:86px;border-radius:50%;
  display:grid;place-items:center;border:2px solid #e8c269;color:#f4d47f;
  box-shadow:0 0 0 6px rgba(236,195,105,.1);background:rgba(82,7,11,.2);
  font:700 48px Georgia,serif;
}
.marriage-double.small{width:64px;height:64px;font-size:36px}
.marriage-hero>span{font-size:10px;letter-spacing:3px;color:#efcb79;font-weight:900}
.marriage-hero h1{font:700 clamp(30px,7vw,42px)/1.05 Georgia,serif;color:#ffe0a0;margin:5px 0}
.marriage-hero p{font-size:12px;color:#f5ddcd;margin:0}

.marriage-form-content{padding-top:18px}
.compat-steps{display:flex;align-items:flex-start;max-width:680px;margin:0 auto 18px}
.compat-steps>div{width:150px;text-align:center;color:#9a806c;font-size:8px}
.compat-steps b{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;margin:0 auto 6px;border:2px solid #d6c09a;background:#fff8e8;color:#91735a}
.compat-steps .done b{background:#951f25;border-color:#951f25;color:#fff}
.compat-steps .done span{color:#8d2025;font-weight:900}
.compat-steps i{flex:1;height:2px;background:#dac39d;margin-top:15px}
.marriage-tip{background:#fff2df;border-color:#e4bd84}

.couple-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.person-panel{margin:0}
.person-title{display:flex;align-items:center;gap:10px;border-bottom:1px solid #ead7b5;padding-bottom:11px;margin-bottom:12px}
.person-title h2{border:0!important;padding:0!important;margin:0!important}
.person-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;font-weight:900}
.person-avatar.male{background:#295d92}.person-avatar.female{background:#c95569}
.male-panel{border-top:4px solid #436f9d}.female-panel{border-top:4px solid #cf6678}
.auto-field{background:#f9f2e4;border:1px dashed #d9c39d;border-radius:10px;padding:10px;margin-top:9px}
.auto-field small{display:block;color:#9a7b62;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.6px}
.auto-field b{display:block;color:#73594a;font-size:9px;margin-top:4px;line-height:1.4}

.marriage-extra{border-top:4px solid #b68b3f}
.extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.analysis-basis{background:#fffaf0;border:1px solid #e2c9a0;border-radius:18px;padding:15px}
.analysis-basis h3{text-align:center;color:#8a2423;font:700 15px Georgia,serif;margin:0 0 12px}
.basis-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}
.basis-grid>div{background:#fff6e5;border:1px solid #ead5ad;border-radius:11px;padding:10px 7px;text-align:center}
.basis-grid span{display:block;font-size:21px}.basis-grid b{display:block;font-size:9px;color:#702f28;margin-top:4px}.basis-grid small{display:block;font-size:7px;color:#67835d;margin-top:3px}
.basis-grid .pending{opacity:.62}.basis-grid .pending small{color:#9a7456}
.marriage-button{background:linear-gradient(180deg,#a5272e,#7a151b)}

.marriage-conclusion{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;background:#fffaf0;border:1px solid #dfc397;border-radius:18px;padding:16px;margin-bottom:14px}
.marriage-conclusion h2{font:700 26px Georgia,serif;color:#8c2627;margin:5px 0}
.marriage-conclusion p{font-size:10px;color:#755d4f;line-height:1.55;margin:0}
.compat-gauge{width:116px;height:116px;border-radius:50%;border:10px solid #cda847;background:#fff;display:grid;place-items:center;align-content:center}
.compat-gauge b{font-size:31px;color:#2c7143}.compat-gauge span{text-align:center;font-size:8px;color:#77624e;margin-top:3px}

.result-couple-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-bottom:15px}
.result-person{background:#fffaf1;border:1px solid #e3cba6;border-radius:16px;padding:14px}
.result-person.male-result{border-top:4px solid #416f9f}.result-person.female-result{border-top:4px solid #cb6578}
.result-person-title{display:flex;align-items:center;gap:8px;margin-bottom:10px}.result-person-title span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#91242a;color:#fff}.result-person-title h3{font:700 13px Georgia,serif;color:#762a29;margin:0}
.result-person p{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;border-top:1px solid #efe2ca;padding-top:7px;margin:7px 0 0}.result-person small{font-size:8px;color:#94755e}.result-person b{font-size:9px;color:#4f3b30}
.heart-center{font-size:34px;color:#c83a4c}

.compat-analysis-card{background:#fffaf0;border:1px solid #e2c89f;border-radius:18px;padding:15px;margin-bottom:15px}
.compat-table{display:grid;gap:8px}
.compat-row-item{display:grid;grid-template-columns:1fr 160px 58px;gap:9px;align-items:center;background:#fff7e8;border:1px solid #ead7b7;border-radius:11px;padding:10px}
.compat-row-item>div:first-child b{display:block;color:#6f352d;font-size:10px}.compat-row-item>div:first-child small{display:block;color:#7f6b5d;font-size:9px;line-height:1.45;margin-top:3px}
.compat-status{font-size:9px;font-weight:800;text-align:center;padding:6px;border-radius:999px}.compat-status.good{background:#eaf6ed;color:#2c7044}.compat-status.bad{background:#fff0ee;color:#9a322b}.compat-status.neutral{background:#f5eee3;color:#78624f}
.compat-points{text-align:right;color:#8e2325;font-weight:950;font-size:12px}

.marriage-forecast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:15px}
.marriage-forecast-grid>div{background:#fff9ed;border:1px solid #e5cea6;border-radius:14px;padding:12px;text-align:center}
.marriage-forecast-grid span{font-size:27px}.marriage-forecast-grid h3{font:700 12px Georgia,serif;color:#852a28;margin:5px 0}.marriage-forecast-grid p{font-size:9px;color:#735d4f;line-height:1.5;margin:0}

.compat-warning{margin-top:12px;background:#fff4df;border:1px solid #e0c18d;border-radius:11px;padding:10px;font-size:9px;color:#6f5747;line-height:1.55}.compat-warning span{display:block;margin-top:3px}
.marriage-actions{grid-template-columns:1fr 1fr 1.4fr}.marriage-actions a{display:grid;place-items:center;text-decoration:none;border-radius:12px;background:#8f1d23;color:#fff;font-size:9px;font-weight:900;padding:12px}

@media(max-width:720px){
  .couple-input-grid{grid-template-columns:1fr}
  .basis-grid{grid-template-columns:repeat(3,1fr)}
  .extra-grid{grid-template-columns:1fr}
  .result-couple-grid{grid-template-columns:1fr}
  .heart-center{text-align:center}
  .marriage-forecast-grid{grid-template-columns:1fr 1fr}
  .compat-row-item{grid-template-columns:1fr}
  .compat-status{text-align:left;width:max-content}
  .compat-points{text-align:left}
  .marriage-conclusion{grid-template-columns:1fr}
  .compat-gauge{margin:auto}
  .marriage-actions{grid-template-columns:1fr}
}

/* PART 11 — CONTENT / DAILY ARTICLE */
.article-hero{text-align:center;color:#fff;padding:30px 20px 45px;background:radial-gradient(circle at 50% 0,rgba(255,215,120,.2),transparent 35%),linear-gradient(160deg,#8d171d,#57090d);border-radius:0 0 38px 38px;position:relative}.article-hero span,.article-hero small{color:#efc86f;letter-spacing:2px;font-size:9px;font-weight:900}.article-hero h1{font:700 clamp(28px,6vw,42px) Georgia,serif;color:#ffe1a0;margin:7px 0}.article-hero p{font-size:11px;color:#f4dfcc}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.article-card{display:block;text-decoration:none;background:#fff9ed;border:1px solid #e4c99e;border-radius:16px;padding:16px;color:#5c4334}.article-card small{color:#9b6e45;text-transform:uppercase;font-size:8px}.article-card h2{font:700 18px Georgia,serif;color:#842328;margin:8px 0}.article-card p{font-size:10px;line-height:1.55}.article-card b{font-size:9px;color:#9a1f25}.published-article{background:#fffaf1;border:1px solid #e5cda8;border-radius:18px;padding:20px;font-size:13px;line-height:1.8;color:#49382e}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-card textarea{width:100%;box-sizing:border-box;border:1px solid #dcc9aa;border-radius:10px;padding:10px;background:#fffdf7;font:inherit}.admin-article-row{display:flex;justify-content:space-between;border-bottom:1px solid #eadcc5;padding:8px 0}.admin-article-row a{color:#842328;text-decoration:none;font-weight:800}.admin-article-row small{color:#8d7664}@media(max-width:720px){.article-grid,.editor-grid{grid-template-columns:1fr}}

/* PART 12 — ADMIN CMS / SCHEDULE / FANPAGE */
.admin-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.small-admin-btn{border:1px solid #d6b77f;background:#fff8e9;color:#842328;border-radius:9px;padding:8px 10px;font-weight:800}.admin-table{display:grid;gap:9px}.admin-article-card{display:grid;grid-template-columns:1fr auto;gap:12px;background:#fffaf0;border:1px solid #e5cda7;border-radius:13px;padding:12px}.admin-article-card small{font-size:8px;color:#8e735e}.admin-article-card h3{font:700 14px Georgia,serif;color:#7f2426;margin:5px 0}.status-pill{display:inline-block;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900;margin-right:5px}.status-pill.published{background:#e9f5eb;color:#2e7145}.status-pill.draft{background:#eee9e1;color:#726454}.status-pill.scheduled{background:#fff0cc;color:#9a681b}.schedule-note,.fb-ok,.fb-error{font-size:8px;margin-left:4px}.fb-ok{color:#2d7144}.fb-error{color:#a2352d}.admin-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.admin-actions a,.admin-actions button{border:1px solid #d8bd91;background:#fff;color:#792126;padding:7px 9px;border-radius:8px;text-decoration:none;font-size:8px;font-weight:800}.admin-actions .danger{color:#a52d2d;border-color:#e0b4ae}@media(max-width:700px){.admin-article-card{grid-template-columns:1fr}.admin-actions{justify-content:flex-start}}

/* PART 13 — BUSINESS COMPATIBILITY + HOROSCOPE */
.compat-hero,.horoscope-hero{position:relative;text-align:center;color:#fff;padding:25px 18px 46px;background:radial-gradient(circle at 50% 0,rgba(255,218,130,.2),transparent 30%),linear-gradient(160deg,#8e1b21,#5f0d12);border-radius:0 0 40px 40px}.compat-hero.compact,.horoscope-hero.compact{padding-bottom:32px}.compat-symbol,.horoscope-symbol{margin:auto;width:82px;height:82px;border:2px solid #e6bd67;border-radius:50%;display:grid;place-items:center;font-size:40px;background:rgba(80,7,10,.2)}.compat-symbol.small,.horoscope-symbol.small{width:62px;height:62px;font-size:30px}.compat-hero>span,.horoscope-hero>span{font-size:9px;letter-spacing:3px;color:#efca78;font-weight:900}.compat-hero h1,.horoscope-hero h1{font:700 clamp(29px,6vw,40px) Georgia,serif;color:#ffe0a0;margin:5px 0}.compat-hero p,.horoscope-hero p{font-size:11px;color:#f4dfcd}.horoscope-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:14px 0}.horoscope-metrics>div{background:#fff9ed;border:1px solid #e2c89e;border-radius:14px;padding:14px;text-align:center}.horoscope-metrics span{display:block;font-size:25px}.horoscope-metrics b{display:block;font-size:22px;color:#7f2426}.horoscope-metrics small{font-size:8px;color:#8a725e}.horoscope-life-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.horoscope-life-grid>div{background:#fff9ed;border:1px solid #e3cda8;border-radius:14px;padding:14px}.horoscope-life-grid h3{font:700 14px Georgia,serif;color:#812529;margin:0 0 7px}.horoscope-life-grid p{font-size:10px;line-height:1.6;color:#665143}@media(max-width:650px){.horoscope-metrics{grid-template-columns:1fr 1fr}.horoscope-life-grid{grid-template-columns:1fr}}

/* =========================================================
   PART 14 — UI COMPLETENESS PASS
   Red wine / gold / cream, dense mobile-first cards.
   ========================================================= */
:root{--wine:#850f16;--wine2:#5c070c;--gold:#e2b857;--cream:#fff8e9;--paper:#fffdf7;--ink:#4b3529}
.home-shell{background:#f6ead6}.home-hero-full{position:relative;overflow:hidden;padding:28px 22px 22px;color:#fff;background:radial-gradient(circle at 70% 25%,#9b241f 0,#6d0a0e 38%,#450307 100%);min-height:330px}.home-top{display:flex;justify-content:space-between}.round-icon{width:40px;height:40px;border-radius:50%;border:1px solid #d9aa54;background:#3a0809;color:#fff}.hero-bagua{position:absolute;right:22px;top:64px;width:150px;height:150px;border:7px double #d9a83f;border-radius:50%;display:grid;place-items:center;font-size:78px;color:#f7c963;opacity:.95}.hero-script{font:italic 34px Georgia,serif;color:#f1c66e;margin:26px 0 0 36px}.home-hero-full h1{font:700 clamp(35px,8vw,54px)/1.05 Georgia,serif;color:#ffe2a6;margin:0 0 7px 36px}.hero-sub{margin-left:36px;color:#f5ded0;font-size:11px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.hero-actions a{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;text-decoration:none;border:1px solid #dda94d;border-radius:12px;padding:12px;background:linear-gradient(135deg,#a81f23,#701016);color:#fff}.hero-actions a.gold{background:linear-gradient(135deg,#f2cf72,#d89e3e);color:#6d1714}.hero-actions span{grid-row:1/3;font-size:32px}.hero-actions b{font-family:"Times New Roman",Times,serif;font-size:16px;font-weight:700;line-height:1.2;letter-spacing:0;word-spacing:0;white-space:nowrap}.hero-actions small{font-size:9px}.home-content{padding-top:14px}.home-panel{background:#fff8e8;border:1px solid #dcc292;border-radius:16px;padding:13px}.home-panel h2{text-align:center;color:#85201f;font:700 17px Georgia,serif;margin:0 0 12px}.tool-grid-complete{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.tool-grid-complete a{min-height:88px;background:#fffaf0;border:1px solid #e5cda2;border-radius:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;text-decoration:none;color:#4f3b31;padding:7px}.tool-grid-complete span{font-size:28px}.tool-grid-complete b{font-size:9px;line-height:1.25;margin-top:5px}.home-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.mini-calendar .calendar-big{font:700 48px Georgia,serif;color:#9c1f21;text-align:center}.mini-calendar b{display:block;text-align:center;font-size:9px;color:#6f5849}.mini-calendar a,.zodiac-today>a{display:block;margin:10px auto 0;text-align:center;text-decoration:none;background:#961c20;color:#fff;padding:8px;border-radius:8px;font-size:8px;font-weight:900}.zodiac-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.zodiac-mini span{font-size:8px;background:#fffdf7;border:1px solid #e7d4b3;border-radius:7px;padding:6px 3px;text-align:center}.ai-banner{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-top:10px;padding:16px;background:linear-gradient(120deg,#6e080d,#350204);border-radius:14px;color:#fff}.ai-banner>div{font-size:46px;color:#e8bb54}.ai-banner h2{font:700 15px Georgia,serif;color:#f2ca72;margin:0}.ai-banner p{font-size:9px}.ai-banner a{text-decoration:none;background:#efc65f;color:#751819;border-radius:8px;padding:9px;font-size:8px;font-weight:900}.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.trust-row div{background:#fff8e8;border:1px solid #e1c89e;border-radius:10px;padding:9px;text-align:center}.trust-row b{display:block;color:#8b2926;font-size:9px}.trust-row small{font-size:7px;color:#765f4f}

.ornate-section{background:#fffaf0;border:1px solid #e1c69a;border-radius:16px;padding:15px;position:relative;margin-top:12px}.ornate-title{width:max-content;max-width:88%;margin:-28px auto 14px;background:linear-gradient(180deg,#9b1f21,#6b0c11);color:#f8d98b;border:1px solid #d8a849;border-radius:3px 3px 10px 10px;padding:7px 18px;font:700 12px Georgia,serif;text-align:center}.zodiac-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.zodiac-picker label input{display:none}.zodiac-picker label span{display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid #e3cda8;background:#fffdf7;border-radius:10px;padding:10px;font-size:25px}.zodiac-picker label span b{font-size:9px}.zodiac-picker label input:checked+span{border:2px solid #c52a2e;background:#fff5e6;box-shadow:inset 0 0 0 1px #f3d2a8}.personal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.personal-grid .full{grid-column:1/-1}.period-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.period-picker a{text-decoration:none;text-align:center;background:#fffdf7;border:1px solid #e2cda9;border-radius:10px;padding:13px 8px;color:#6d4337;display:flex;flex-direction:column;gap:5px}.period-picker a.active{border:2px solid #c52228;background:#fff3e3}.period-picker b{font-size:10px}.period-picker small{font-size:8px;color:#8e735f}.zodiac-strip{display:grid;grid-template-columns:repeat(12,1fr);gap:5px}.zodiac-strip span{display:flex;flex-direction:column;align-items:center;font-size:19px;border:1px solid #ead8b9;border-radius:8px;padding:6px 3px;background:#fffdf7}.zodiac-strip b{font-size:7px}.zodiac-strip .active{border:2px solid #c22a2f;background:#fff1df}.profile-result-panel{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;background:#fff9ed;border:1px solid #e2c69a;border-radius:16px;padding:15px;margin-top:12px}.zodiac-avatar{width:95px;height:95px;border-radius:50%;border:5px double #d4a447;background:#fff4dc;display:grid;place-items:center;font-size:42px}.zodiac-avatar b{font-size:10px}.profile-result-panel h2{font:700 19px Georgia,serif;color:#872326;margin:0 0 5px}.profile-result-panel p{font-size:9px;margin:4px 0}.rich-metrics>div h3{font:700 11px Georgia,serif;color:#852724;margin:5px}.rich-metrics>div p{font-size:8px;line-height:1.45}.result-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.result-info-grid>div{background:#fff9ed;border:1px solid #e2cba5;border-radius:12px;padding:10px}.result-info-grid h3{font:700 10px Georgia,serif;color:#87282a}.result-info-grid p{font-size:8px;color:#705b4e;line-height:1.5}.life-stages{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:12px 0}.life-stages>div{text-align:center;background:#fff9ec;border:1px solid #e0c79c;border-radius:13px;padding:10px}.life-stages span{font-size:28px;display:block}.life-stages b{display:block;font-size:8px;color:#7b302b;margin:5px}.life-stages p{font-size:7px;line-height:1.45;color:#756152}.follow-cta{background:linear-gradient(180deg,#8d181f,#660b10);color:#f5d27c;border-radius:12px;padding:12px;text-align:center;display:flex;justify-content:center;gap:7px;align-items:center}.follow-cta span{color:#fff;font-size:8px}

.chart-hero,.ai-master-hero{position:relative;text-align:center;color:#fff;padding:25px 18px 45px;background:radial-gradient(circle at 70% 15%,rgba(199,63,35,.35),transparent 28%),linear-gradient(160deg,#7e1015,#4a0407);border-radius:0 0 40px 40px}.chart-hero.compact,.ai-master-hero.compact{padding-bottom:30px}.chart-hero>span,.ai-master-hero>span{font-size:9px;letter-spacing:3px;color:#eac56d;font-weight:900}.chart-hero h1,.ai-master-hero h1{font:700 42px Georgia,serif;color:#ffe2a0;margin:4px}.chart-hero p,.ai-master-hero p{font-size:10px;color:#f3dfd0}.chart-wheel,.master-avatar{margin:auto;width:78px;height:78px;border-radius:50%;border:2px solid #e1b64e;display:grid;place-items:center;font-size:39px;background:#6b1112}.chart-wheel.small,.master-avatar.small{width:58px;height:58px;font-size:28px}.chart-profile{display:grid;grid-template-columns:2fr 1fr;gap:10px;background:#fff9ee;border:1px solid #e2c79c;border-radius:15px;padding:13px}.chart-profile h3{font:700 12px Georgia,serif;color:#7d2725}.chart-profile p{font-size:9px}.tuvi-board{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(120px,auto);gap:5px;margin-top:12px;position:relative;background:#d6ad65;padding:5px;border-radius:8px}.palace{background:#fffaf0;padding:8px;min-height:105px}.palace small{font-size:7px;color:#9c7659}.palace h3{font:700 11px Georgia,serif;color:#7b2525;margin:4px 0}.palace p{font-size:8px;color:#6e5548}.palace span{font-size:7px;line-height:1.35;color:#9a8370}.board-center{position:absolute;left:25%;top:25%;width:50%;height:50%;background:#fff7e7;border:3px double #d1a354;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2}.board-center b{font:700 18px Georgia,serif;color:#7c2424}.board-center span,.board-center strong,.board-center em{font-size:9px;margin:3px}

.master-intro{display:grid;grid-template-columns:auto 1fr 250px;gap:12px;align-items:center;background:#fffaf1;border:1px solid #e1c79d;border-radius:15px;padding:16px}.round-master{width:72px;height:72px;border-radius:50%;border:3px double #d2a547;display:grid;place-items:center;font-size:38px}.master-intro h2{font:700 15px Georgia,serif;color:#792725}.master-intro p{font-size:9px;line-height:1.5}.master-intro aside{background:#fff5df;border:1px solid #e4c493;border-radius:10px;padding:10px}.master-intro aside b,.master-intro aside span{display:block;font-size:8px;margin:5px}.popular-questions{background:#fff9ed;border:1px solid #e2c9a0;border-radius:14px;padding:12px}.popular-questions h3{font:700 12px Georgia,serif;color:#842626}.popular-questions>div{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.popular-questions span{background:#fffdf7;border:1px solid #e8d3af;border-radius:9px;padding:10px;text-align:center;font-size:20px}.popular-questions b{display:block;font-size:7px;color:#7c2d28;margin-top:5px}.question-bubble,.answer-bubble{display:grid;grid-template-columns:50px 1fr;gap:10px;background:#fffaf1;border:1px solid #e2c9a1;border-radius:14px;padding:13px;margin-bottom:10px}.question-bubble>div,.answer-bubble>div{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f2dfbf;font-size:24px}.question-bubble b,.answer-bubble b{color:#812526;font-size:10px}.question-bubble p{font-size:10px}.answer-bubble article{white-space:pre-wrap;font-size:10px;line-height:1.65;color:#59483c}.feedback-row{display:flex;gap:7px;align-items:center;justify-content:center;background:#fff8e9;border:1px solid #e4cca3;border-radius:10px;padding:9px}.feedback-row span,.feedback-row button{font-size:8px}.follow-question{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.follow-question textarea{border:1px solid #e0c69e;border-radius:10px;padding:10px}.follow-question button{border:0;border-radius:10px;background:#961d22;color:#fff;padding:0 18px;font-weight:900}.button-link{display:grid;place-items:center;text-decoration:none;border:1px solid #cba463;border-radius:10px;color:#7f2426;background:#fff8e8;font-size:8px;font-weight:900}

@media(max-width:760px){
  .tool-grid-complete{grid-template-columns:repeat(2,1fr)}
  .home-two-columns{grid-template-columns:1fr}
  .hero-bagua{width:110px;height:110px;font-size:56px;right:10px}
  .home-hero-full h1,.hero-script,.hero-sub{margin-left:10px}
  .hero-actions{grid-template-columns:1fr}
  .trust-row{grid-template-columns:1fr 1fr}
  .zodiac-picker{grid-template-columns:repeat(3,1fr)}
  .period-picker{grid-template-columns:1fr 1fr}
  .zodiac-strip{grid-template-columns:repeat(6,1fr)}
  .personal-grid{grid-template-columns:1fr}
  .personal-grid .full{grid-column:auto}
  .profile-result-panel{grid-template-columns:1fr;text-align:center}
  .zodiac-avatar{margin:auto}
  .result-info-grid{grid-template-columns:1fr 1fr}
  .life-stages{grid-template-columns:1fr 1fr}
  .chart-profile{grid-template-columns:1fr}
  .tuvi-board{grid-template-columns:repeat(2,1fr)}
  .board-center{position:static;width:auto;height:auto;grid-column:1/-1;padding:18px}
  .master-intro{grid-template-columns:1fr;text-align:center}
  .round-master{margin:auto}
  .popular-questions>div{grid-template-columns:1fr 1fr}
  .follow-question{grid-template-columns:1fr}
}

/* PART 16 — LỊCH VẠN NIÊN CORE */
.calendar-core-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0}.calendar-date-big,.calendar-core-card{background:#fff9ed;border:1px solid #e2c79d;border-radius:14px;padding:13px;text-align:center}.calendar-date-big{grid-row:span 2}.calendar-date-big small,.calendar-core-card small{display:block;font-size:8px;color:#94735b;font-weight:900;letter-spacing:.7px}.calendar-date-big b{display:block;font:700 48px Georgia,serif;color:#8a2024}.calendar-date-big.lunar b{color:#2f7048}.calendar-date-big span,.calendar-core-card span{display:block;font-size:8px;color:#745e4f;margin-top:5px}.calendar-core-card b{display:block;font:700 13px Georgia,serif;color:#7e2827;margin-top:6px}@media(max-width:720px){.calendar-core-grid{grid-template-columns:1fr 1fr}.calendar-date-big{grid-row:auto}}


/* =========================================================
   PART 17 — RESPONSIVE / MOBILE-FIRST PASS
   Priority: portrait phones 320–430px, then tablet/desktop.
   ========================================================= */

html{
    min-width:320px;
    width:100%;
    overflow-x:clip;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
    scroll-behavior:smooth;
}

body{
    min-width:320px;
    width:100%;
    overflow-x:clip;
    overscroll-behavior-y:auto;
}
img,svg,video,canvas,iframe{
  max-width:100%;
  height:auto;
}
input,select,textarea,button{
  max-width:100%;
}
input,select,textarea{
  font-size:16px; /* avoid iOS Safari auto-zoom */
}
button,a,input,select,textarea{
  -webkit-tap-highlight-color:transparent;
}
button,
.continue-btn,
.small-admin-btn,
.admin-actions a,
.admin-actions button,
.result-actions button,
.result-actions a,
.pill-link,
.ai-btn{
  min-height:44px;
}
.page-shell{
  width:100%;
  max-width:760px;
  min-width:0;
  margin-inline:auto;
  padding-bottom:calc(84px + env(safe-area-inset-bottom));
}
.content{
  width:100%;
  min-width:0;
  padding-inline:clamp(12px,4vw,18px);
}
.page-shell *,
.form-card *,
.detail-card *,
.method-card *,
.info-card *,
.rank-card *,
.article-card *,
.admin-article-card *{
  min-width:0;
}
p,span,b,strong,small,h1,h2,h3,h4,label,a,button{
  overflow-wrap:anywhere;
}
textarea{
  resize:vertical;
  min-height:96px;
}
.form-card input,
.form-card select,
.form-card textarea,
.ornate-section input,
.ornate-section select,
.ornate-section textarea{
  min-height:46px;
  padding:12px 13px;
  border-radius:11px;
}
.continue-btn{
  width:100%;
  min-height:50px;
  padding:13px 16px;
  line-height:1.25;
}
.back-btn{
  left:max(12px,env(safe-area-inset-left));
  top:max(12px,env(safe-area-inset-top));
  width:44px;
  height:44px;
  z-index:20;
}
.steps,
.compat-steps{
  width:100%;
  overflow:hidden;
}
.steps>div,
.compat-steps>div{
  min-width:0;
}
.rank-list,
.compat-table,
.admin-table{
  width:100%;
  min-width:0;
}
.rank-card{
  min-width:0;
}
.detail-grid,
.filter-card,
.year-checks,
.method-cols,
.method-cols.three,
.result-actions,
.marriage-actions,
.extra-grid,
.personal-grid,
.couple-input-grid,
.editor-grid,
.article-grid,
.result-couple-grid,
.marriage-forecast-grid,
.horoscope-metrics,
.result-info-grid,
.life-stages,
.horoscope-life-grid,
.calendar-core-grid,
.chart-profile,
.master-intro{
  min-width:0;
}
table{
  width:100%;
  max-width:100%;
}
.table-scroll,
.compat-analysis-card,
.published-article{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.published-article,
.ai-explain p,
.answer-bubble article{
  overflow-wrap:anywhere;
  word-break:normal;
}
.home-hero-full,
.hero,
.sub-hero,
.ritual-hero,
.wedding-hero,
.opening-hero,
.movein-hero,
.vehicle-hero,
.travel-hero,
.contract-hero,
.burial-hero,
.marriage-hero,
.compat-hero,
.horoscope-hero,
.chart-hero,
.ai-master-hero,
.article-hero{
  width:100%;
  min-width:0;
}
.bottom-nav{
  width:min(760px,100%);
  min-width:320px;
  min-height:68px;
  padding:7px max(2px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(2px,env(safe-area-inset-left));
  grid-template-columns:repeat(7,minmax(0,1fr));
}
.bottom-nav a{
  min-width:0;
  min-height:48px;
  justify-content:center;
  padding:2px 1px;
  line-height:1.05;
}
.bottom-nav a span{
  font-size:18px;
}
.bottom-nav a b{
  width:100%;
  font-size:clamp(6.5px,2.05vw,8px);
  white-space:normal;
  text-align:center;
}

/* Phone portrait: 320–479px */
@media (max-width:479px){
  body{
    background:var(--cream);
  }
  .page-shell{
    max-width:none;
    box-shadow:none;
  }
  .content{
    padding-inline:12px;
  }

  .hero{
    min-height:auto;
    padding:14px 12px 34px;
  }
  .home-hero-full{
    min-height:auto;
    padding:18px 12px 18px;
  }
  .home-top{
    margin-bottom:4px;
  }
  .hero-script{
    font-size:clamp(23px,8vw,30px);
    margin:14px 0 0 4px;
  }
  .home-hero-full h1{
    font-size:clamp(31px,10vw,42px);
    margin-left:4px;
    max-width:66%;
  }
  .hero-sub{
    margin-left:4px;
    max-width:68%;
    font-size:10px;
    line-height:1.45;
  }
  .hero-bagua{
    width:94px;
    height:94px;
    top:62px;
    right:8px;
    border-width:5px;
    font-size:48px;
  }
  .hero-actions{
    grid-template-columns:1fr;
    gap:8px;
    margin-top:15px;
  }
  .hero-actions a{
    min-height:72px;
    padding:10px 12px;
  }
  .hero-actions span{
    font-size:27px;
  }
  .hero-actions b{
    font-size:14px;
  }

  .sub-hero,
  .ritual-hero,
  .wedding-hero,
  .opening-hero,
  .movein-hero,
  .vehicle-hero,
  .travel-hero,
  .contract-hero,
  .burial-hero,
  .marriage-hero,
  .compat-hero,
  .horoscope-hero,
  .chart-hero,
  .ai-master-hero,
  .article-hero{
    padding-inline:12px;
    padding-top:18px;
    padding-bottom:30px;
    border-bottom-left-radius:28px;
    border-bottom-right-radius:28px;
  }
  .ritual-hero:before,.ritual-hero:after,
  .wedding-hero:before,.wedding-hero:after,
  .opening-hero:before,.opening-hero:after,
  .movein-hero:before,.movein-hero:after,
  .vehicle-hero:before,.vehicle-hero:after,
  .travel-hero:before,.travel-hero:after,
  .contract-hero:before,.contract-hero:after,
  .burial-hero:before,.burial-hero:after{
    font-size:24px;
    opacity:.55;
  }
  .ritual-hero h1,
  .wedding-hero h1,
  .opening-hero h1,
  .movein-hero h1,
  .vehicle-hero h1,
  .travel-hero h1,
  .contract-hero h1,
  .burial-hero h1,
  .marriage-hero h1,
  .compat-hero h1,
  .horoscope-hero h1,
  .chart-hero h1,
  .ai-master-hero h1,
  .article-hero h1{
    font-size:clamp(25px,8vw,34px);
    line-height:1.08;
    padding-inline:38px;
  }
  .ritual-icon,
  .double-happiness,
  .opening-symbol,
  .movein-symbol,
  .vehicle-symbol,
  .travel-symbol,
  .contract-symbol,
  .burial-symbol,
  .marriage-double,
  .compat-symbol,
  .horoscope-symbol,
  .chart-wheel,
  .master-avatar{
    transform:scale(.86);
    transform-origin:center;
    margin-top:-3px;
    margin-bottom:-4px;
  }

  .section h2{
    font-size:20px;
  }
  .form-content,.result-content{
    padding-top:14px;
  }
  .form-card,
  .detail-card,
  .method-card,
  .compat-analysis-card,
  .home-panel,
  .published-article{
    border-radius:14px;
    padding:13px;
  }
  .form-card h2{
    font-size:15px;
    margin-bottom:11px;
    padding-bottom:8px;
  }
  .form-card>label{
    font-size:11px;
    margin:9px 0;
  }
  .tip-box,.notice-box,.error-box{
    font-size:11px;
    padding:11px 12px;
  }

  .steps{
    margin-bottom:14px;
  }
  .steps>div{
    width:78px;
    font-size:7.5px;
  }
  .steps b{
    width:27px;
    height:27px;
  }
  .steps i{
    margin-top:13px;
  }
  .compat-steps>div{
    width:auto;
    flex:1;
    font-size:7px;
  }
  .compat-steps b{
    width:28px;
    height:28px;
  }

  .tool-grid,
  .tool-grid-complete{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .tool-card,
  .tool-grid-complete a{
    min-height:92px;
    padding:9px 6px;
  }
  .tool-card strong,
  .tool-grid-complete b{
    font-size:10px;
  }

  .two-col,
  .home-two-columns,
  .couple-input-grid,
  .editor-grid,
  .article-grid,
  .extra-grid,
  .personal-grid,
  .chart-profile,
  .master-intro,
  .opening-profile-card,
  .movein-profile-card,
  .vehicle-profile-card,
  .travel-profile-card,
  .contract-profile-card,
  .burial-profile-card{
    grid-template-columns:1fr;
  }
  .personal-grid .full{
    grid-column:auto;
  }

  .segmented,
  .three-segment{
    grid-template-columns:1fr 1fr;
  }
  .three-segment label:last-child{
    grid-column:1/-1;
  }
  .segmented span{
    min-height:44px;
    padding:11px 8px;
  }

  .filter-card{
    grid-template-columns:1fr 1fr;
  }
  .filter-card div:last-child:nth-child(odd){
    grid-column:1/-1;
  }
  .year-checks{
    grid-template-columns:1fr;
  }
  .detail-grid{
    grid-template-columns:1fr 1fr;
  }
  .method-cols,
  .method-cols.three{
    grid-template-columns:1fr;
  }

  .couple-summary{
    grid-template-columns:1fr auto 1fr;
    gap:5px;
  }
  .couple-summary span{
    font-size:7px;
  }
  .result-couple-grid{
    grid-template-columns:1fr;
  }
  .heart-center{
    text-align:center;
    transform:rotate(90deg);
  }

  .marriage-conclusion{
    grid-template-columns:1fr;
    text-align:center;
  }
  .compat-gauge{
    width:104px;
    height:104px;
    margin:auto;
  }
  .compat-gauge b{
    font-size:27px;
  }
  .compat-row-item{
    grid-template-columns:1fr;
  }
  .compat-status{
    width:max-content;
    max-width:100%;
    text-align:left;
  }
  .compat-points{
    text-align:left;
  }

  .zodiac-picker{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }
  .zodiac-picker label span{
    padding:8px 4px;
    font-size:22px;
  }
  .period-picker{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .zodiac-strip{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .profile-result-panel{
    grid-template-columns:1fr;
    text-align:center;
  }
  .zodiac-avatar{
    margin:auto;
  }
  .horoscope-metrics,
  .result-info-grid,
  .marriage-forecast-grid{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .life-stages{
    grid-template-columns:1fr 1fr;
  }
  .horoscope-life-grid{
    grid-template-columns:1fr;
  }

  .calendar-core-grid{
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .calendar-date-big{
    grid-row:auto;
  }
  .calendar-date-big b{
    font-size:40px;
  }

  .tuvi-board{
    grid-template-columns:1fr 1fr;
    gap:4px;
  }
  .board-center{
    position:static;
    width:auto;
    height:auto;
    grid-column:1/-1;
    padding:15px;
  }
  .palace{
    min-height:112px;
  }

  .popular-questions>div{
    grid-template-columns:1fr 1fr;
  }
  .question-bubble,.answer-bubble{
    grid-template-columns:38px 1fr;
    padding:10px;
  }
  .question-bubble>div,.answer-bubble>div{
    width:34px;
    height:34px;
    font-size:19px;
  }
  .feedback-row{
    flex-wrap:wrap;
  }
  .follow-question{
    grid-template-columns:1fr;
  }
  .follow-question button{
    min-height:46px;
  }

  .result-actions,
  .marriage-actions{
    grid-template-columns:1fr;
  }

  .admin-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .admin-article-card{
    grid-template-columns:1fr;
  }
  .admin-actions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .admin-actions form,
  .admin-actions a,
  .admin-actions button{
    width:100%;
  }

  .ai-banner{
    grid-template-columns:auto 1fr;
    padding:13px;
    border-radius:15px;
  }
  .ai-banner>a,
  .ai-btn{
    grid-column:1/-1;
    width:100%;
  }
  .trust-row,
  .trust-grid{
    grid-template-columns:1fr 1fr;
  }
}

/* Very narrow portrait phones */
@media (max-width:359px){
  .content{
    padding-inline:10px;
  }
  .home-hero-full{
    padding-inline:10px;
  }
  .hero-bagua{
    width:84px;
    height:84px;
    font-size:42px;
  }
  .home-hero-full h1{
    font-size:30px;
  }
  .zodiac-picker{
    grid-template-columns:repeat(3,1fr);
  }
  .period-picker{
    grid-template-columns:1fr;
  }
  .horoscope-metrics,
  .result-info-grid,
  .marriage-forecast-grid,
  .life-stages,
  .calendar-core-grid{
    grid-template-columns:1fr;
  }
  .detail-grid{
    grid-template-columns:1fr;
  }
  .bottom-nav a span{
    font-size:16px;
  }
  .bottom-nav a b{
    font-size:6.2px;
  }
}

/* Large phones / small tablets */
@media (min-width:480px) and (max-width:767px){
  .page-shell{
    max-width:100%;
    box-shadow:none;
  }
  .content{
    padding-inline:16px;
  }
  .tool-grid-complete{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .zodiac-picker{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .period-picker{
    grid-template-columns:repeat(2,1fr);
  }
  .result-info-grid,
  .marriage-forecast-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .life-stages{
    grid-template-columns:repeat(3,1fr);
  }
}

/* Tablets */
@media (min-width:768px) and (max-width:1023px){
  .page-shell{
    max-width:760px;
  }
  .content{
    padding-inline:20px;
  }
  .tool-grid-complete{
    grid-template-columns:repeat(5,1fr);
  }
  .zodiac-picker{
    grid-template-columns:repeat(6,1fr);
  }
}

/* Desktop */
@media (min-width:1024px){
  body{
    padding-block:18px;
  }
  .page-shell{
    border-radius:22px;
    overflow:hidden;
    min-height:calc(100vh - 36px);
  }
  .bottom-nav{
    bottom:18px;
    border-radius:0 0 22px 22px;
  }
}

/* Short landscape screens: preserve usable vertical space */
@media (max-height:560px) and (orientation:landscape){
  .page-shell{
    padding-bottom:72px;
  }
  .home-hero-full,
  .hero{
    min-height:auto;
  }
  .bottom-nav{
    min-height:58px;
  }
  .bottom-nav a{
    min-height:42px;
  }
}

/* PART 19 — ADVANCED ALMANAC */
.advanced-almanac{border-top:4px solid #b58b3f}.advanced-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.advanced-grid>div{background:#fff7e7;border:1px solid #e3c99e;border-radius:11px;padding:11px;text-align:center}.advanced-grid small{display:block;font-size:7px;letter-spacing:.7px;color:#95725a;font-weight:900}.advanced-grid b{display:block;font:700 12px Georgia,serif;color:#7c2826;margin-top:5px}.advanced-grid span{display:block;font-size:8px;color:#776152;margin-top:4px}.advanced-ok{background:#eaf5eb;color:#2e7148;border-radius:9px;padding:9px;font-size:9px}.advanced-flags{display:grid;gap:6px}.advanced-flags span{background:#fff0e9;color:#8c3a2f;border-radius:8px;padding:8px;font-size:9px}.advanced-note{font-size:8px;line-height:1.55;color:#7d6a5d;margin-top:10px}@media(max-width:520px){.advanced-grid{grid-template-columns:1fr}.advanced-grid>div{text-align:left}}

/* PART 20 — BÁT TRẠCH / CUNG PHI */
.bat-hero{position:relative;text-align:center;color:#fff;padding:24px 18px 43px;background:radial-gradient(circle at 50% 0,rgba(240,198,95,.18),transparent 34%),linear-gradient(160deg,#7d1015,#470407);border-radius:0 0 40px 40px}.bat-hero.compact{padding-bottom:30px}.bat-symbol{width:80px;height:80px;margin:auto;border:3px double #e0b453;border-radius:50%;display:grid;place-items:center;background:rgba(77,8,10,.4);font-size:40px;color:#f2cf75}.bat-symbol.small{width:60px;height:60px;font-size:30px}.bat-hero>span{display:block;color:#ecca77;font-size:9px;letter-spacing:3px;font-weight:900;margin-top:5px}.bat-hero h1{font:700 clamp(27px,6vw,39px) Georgia,serif;color:#ffe0a0;margin:5px 0}.bat-hero p{font-size:10px;color:#f1ddd0}.bat-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.bat-tool-grid a{display:grid;grid-template-columns:42px 1fr;gap:8px;align-items:center;text-decoration:none;background:#fffdf7;border:1px solid #e5cda7;border-radius:12px;padding:12px;color:#633a30}.bat-tool-grid>a>span{grid-row:1/3;font-size:28px}.bat-tool-grid b,.bat-tool-grid small{display:block}.bat-tool-grid b{font-size:10px;color:#812626}.bat-tool-grid small{font-size:8px;color:#806a5b}.bat-purpose-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.bat-purpose-grid input{display:none}.bat-purpose-grid span{min-height:82px;border:1px solid #e4cda8;background:#fffdf7;border-radius:10px;padding:9px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:25px}.bat-purpose-grid b{font-size:8px;margin-top:5px}.bat-purpose-grid input:checked+span{border:2px solid #b52529;background:#fff2df}.bat-profile-card{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;background:#fff9ed;border:1px solid #dfc397;border-radius:16px;padding:15px;margin:13px 0}.bat-gua-big{width:100px;height:100px;border-radius:50%;border:5px double #d1a048;background:#fff4d9;display:grid;place-items:center;font-size:53px;color:#792122}.bat-profile-card small{font-size:8px;letter-spacing:1px;color:#96755c;font-weight:900}.bat-profile-card h2{font:700 22px Georgia,serif;color:#7e2526;margin:3px 0}.bat-profile-card p{font-size:9px;margin:4px 0;color:#695247}.bat-evaluation{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-radius:14px;padding:13px;margin-bottom:12px}.bat-evaluation.good{background:#eaf5eb;border:1px solid #bdd9c5}.bat-evaluation.bad{background:#fff0e9;border:1px solid #e5c2b8}.bat-evaluation small{font-size:7px;letter-spacing:.7px}.bat-evaluation h2{font:700 18px Georgia,serif;margin:3px 0;color:#742629}.bat-evaluation p{font-size:8px}.bat-direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bat-direction-grid>div{display:grid;grid-template-columns:35px 1fr;gap:9px;align-items:start;border-radius:11px;padding:10px}.bat-direction-grid>div.good{background:#edf7ee;border:1px solid #c9dfce}.bat-direction-grid>div.bad{background:#fff2ec;border:1px solid #e7cbc1}.bat-direction-grid>div>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900;background:#fff}.bat-direction-grid b,.bat-direction-grid small{display:block}.bat-direction-grid b{font:700 12px Georgia,serif;color:#732725}.bat-direction-grid small{font-size:8px;color:#80675a;margin-top:2px}.bat-direction-grid p{font-size:8px;line-height:1.45;color:#6d594e;margin:4px 0 0}.bat-purpose-result p{font-size:9px;line-height:1.55}.more-tools-link{display:block;text-align:center;text-decoration:none;background:#fff7e6;border:1px solid #ddb982;color:#812525;padding:10px;border-radius:10px;font-size:9px;font-weight:900;margin-top:9px}@media(max-width:650px){.bat-purpose-grid{grid-template-columns:1fr 1fr}.bat-profile-card{grid-template-columns:1fr;text-align:center}.bat-gua-big{margin:auto}.bat-direction-grid{grid-template-columns:1fr}.bat-evaluation{grid-template-columns:1fr}.bat-tool-grid{grid-template-columns:1fr}}

/* PART 21 — TỨ TRỤ BÁT TỰ */
.bazi-hero{text-align:center;color:#fff;padding:24px 16px 42px;background:radial-gradient(circle at 50% 0,#96362a55,transparent 40%),linear-gradient(150deg,#39130e,#6c1716);border-radius:0 0 38px 38px;position:relative}.bazi-hero.compact{padding-bottom:28px}.bazi-seal{width:76px;height:76px;margin:auto;border:3px double #e7bc6d;display:grid;place-items:center;font:700 27px Georgia,serif;color:#f4d28d;background:#591513}.bazi-seal.small{width:58px;height:58px;font-size:24px}.bazi-hero>span{display:block;margin-top:8px;color:#e7c17a;font-size:8px;letter-spacing:3px;font-weight:900}.bazi-hero h1{font:700 clamp(25px,6vw,38px) Georgia,serif;color:#ffe0a0;margin:5px}.bazi-hero p{font-size:9px}.bazi-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}.bazi-pillars>div{background:#fff9eb;border:1px solid #ddc18d;border-radius:12px;text-align:center;padding:11px 4px}.bazi-pillars small,.bazi-pillars span,.bazi-pillars em{display:block}.bazi-pillars small{font-size:7px;letter-spacing:1px;color:#8d725b}.bazi-pillars b,.bazi-pillars strong{display:block;font:700 24px Georgia,serif;color:#842725}.bazi-pillars strong{color:#5d4033}.bazi-pillars span{font-size:7px;color:#766052}.bazi-pillars em{font-style:normal;font-size:8px;color:#a07029;font-weight:900;margin-top:6px}.bazi-pillars .unknown{opacity:.55}.element-counts{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.element-counts div,.ten-god-grid div{background:#fff7e7;border:1px solid #e5cea7;border-radius:9px;padding:9px;text-align:center}.element-counts b,.element-counts span{display:block}.element-counts span{font:700 20px Georgia,serif;color:#862826}.ten-god-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.ten-god-grid small,.ten-god-grid b{display:block}.ten-god-grid small{font-size:7px;color:#8c725e}.ten-god-grid b{font-size:9px;color:#7e2826;margin-top:4px}@media(max-width:520px){.bazi-pillars{grid-template-columns:1fr 1fr}.element-counts{grid-template-columns:repeat(5,1fr)}.ten-god-grid{grid-template-columns:1fr 1fr}}

/* PART 22 — ĐẠI VẬN */
.luck-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.luck-summary>div{background:#fff8e8;border:1px solid #dfc08d;border-radius:12px;padding:11px}.luck-summary small,.luck-summary b,.luck-summary span{display:block}.luck-summary small{font-size:7px;letter-spacing:1px;color:#8d725a}.luck-summary b{font:700 15px Georgia,serif;color:#812725;margin:4px 0}.luck-summary span{font-size:8px;color:#715c50}.luck-timeline{display:grid;grid-template-columns:1fr 1fr;gap:8px}.luck-timeline>div{display:grid;grid-template-columns:32px 1fr;gap:8px;background:#fff9ed;border:1px solid #e1c89e;border-radius:11px;padding:9px}.luck-timeline>div>span{width:30px;height:30px;border-radius:50%;background:#74201e;color:#f5d58f;display:grid;place-items:center;font-weight:900}.luck-timeline b,.luck-timeline small,.luck-timeline em{display:block}.luck-timeline b{font:700 14px Georgia,serif;color:#792522}.luck-timeline small,.luck-timeline p,.luck-timeline em{font-size:7.5px;color:#735e50}.luck-timeline em{font-style:normal;color:#9a6b29}@media(max-width:520px){.luck-summary,.luck-timeline{grid-template-columns:1fr}}

/* PART 23 — VƯỢNG SUY NHẬT CHỦ */
.strength-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}.strength-summary>div{background:#fff8e8;border:1px solid #dfc18f;border-radius:11px;padding:10px;text-align:center}.strength-summary small,.strength-summary b,.strength-summary span{display:block}.strength-summary small{font-size:7px;letter-spacing:.8px;color:#8b705a}.strength-summary b{font:700 18px Georgia,serif;color:#812725;margin:3px}.strength-summary span{font-size:7.5px;color:#715d51}.root-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.root-grid>div{background:#f4f7e9;border:1px solid #d6dbb9;border-radius:9px;padding:9px}.root-grid b,.root-grid span,.root-grid small{display:block}.root-grid b{font-size:9px;color:#6e382a}.root-grid span,.root-grid small{font-size:7.5px;color:#766255}.strength-evidence{display:grid;grid-template-columns:1fr 1fr;gap:7px}.strength-evidence>div{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:center;border-radius:9px;padding:9px}.strength-evidence .support{background:#edf7ed;border:1px solid #c8dec9}.strength-evidence .pressure{background:#fff1eb;border:1px solid #e5cbc0}.strength-evidence b,.strength-evidence small{display:block}.strength-evidence b{font-size:8.5px;color:#6f3a31}.strength-evidence small{font-size:7px;color:#79655a}.strength-evidence strong{font:700 13px Georgia,serif;color:#852824}@media(max-width:520px){.strength-summary{grid-template-columns:1fr 1fr}.strength-evidence,.root-grid{grid-template-columns:1fr}}

/* PART 24 — HỶ DỤNG THẦN */
.candidate-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.candidate-grid>div,.relation-grid>div{background:#fff7e5;border:1px solid #dfc493;border-radius:10px;padding:10px}.candidate-grid small,.candidate-grid b,.relation-grid small,.relation-grid b{display:block}.candidate-grid small,.relation-grid small{font-size:7px;letter-spacing:.7px;color:#8b705b}.candidate-grid b{font:700 16px Georgia,serif;color:#802623;margin-top:5px}.relation-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.relation-grid b{font:700 13px Georgia,serif;color:#812725;margin-top:3px}@media(max-width:520px){.candidate-grid{grid-template-columns:1fr}.relation-grid{grid-template-columns:1fr 1fr}}

/* PART 25 — CÁCH CỤC */
.structure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.structure-grid>div{background:#fff8e9;border:1px solid #e1c99e;border-radius:10px;padding:10px}.structure-grid>div.exposed{background:#eef6e9;border-color:#cbd9ba}.structure-grid small,.structure-grid b,.structure-grid span,.structure-grid em{display:block}.structure-grid small{font-size:7px;color:#8a705b;letter-spacing:.7px}.structure-grid b{font:700 13px Georgia,serif;color:#7d2825;margin:4px 0}.structure-grid span,.structure-grid em{font-size:7.5px;color:#725f53}.structure-grid em{font-style:normal;color:#9b6b28;margin-top:4px}@media(max-width:520px){.structure-grid{grid-template-columns:1fr}}

/* PART 26 — CAN CHI INTERACTIONS */
.interaction-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.interaction-grid>div{background:#fff8e9;border:1px solid #dfc79d;border-radius:10px;padding:10px}.interaction-grid small,.interaction-grid b,.interaction-grid span,.interaction-grid em{display:block}.interaction-grid small{font-size:7px;color:#8a705b;letter-spacing:.5px}.interaction-grid b{font:700 15px Georgia,serif;color:#7e2825;margin:4px 0}.interaction-grid span,.interaction-grid em{font-size:7.5px;color:#715f54}.interaction-grid em{font-style:normal;color:#986a2c;margin-top:4px}@media(max-width:520px){.interaction-grid{grid-template-columns:1fr}}

/* PART 27 — HỢP HÓA */
.transform-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.transform-grid>div{border-radius:11px;padding:11px;border:1px solid #dfc79d;background:#fff8e9}.transform-grid>div.supported_possibility{background:#edf7ed;border-color:#c7dec8}.transform-grid>div.conditional{background:#fff6dd;border-color:#e2ca8e}.transform-grid>div.combination_only{background:#fff0ec;border-color:#e4c8bf}.transform-grid small,.transform-grid b,.transform-grid strong,.transform-grid em{display:block}.transform-grid small{font-size:7px;color:#8a705b}.transform-grid b{font:700 15px Georgia,serif;color:#7e2825;margin:4px 0}.transform-grid strong{font-size:8px;color:#8b5e21;margin-bottom:6px}.transform-grid p{font-size:7.5px;line-height:1.45;margin:4px 0}.transform-grid p.pass{color:#2c7149}.transform-grid p.fail{color:#9b3f38}.transform-grid em{font-size:7.5px;font-style:normal;color:#755f52;margin-top:7px;padding-top:6px;border-top:1px dashed #d8c1a0}@media(max-width:520px){.transform-grid{grid-template-columns:1fr}}

/* PART 28 — TỬ VI FINAL CORE */
.final-chart .palace{padding:8px}.final-chart .palace.menh-palace{outline:2px solid #a32327}.final-chart .palace.than-palace{box-shadow:inset 0 0 0 2px #c39a43}.main-star-list{display:flex;flex-wrap:wrap;gap:3px;margin:5px 0}.main-star-list b{font-size:8px;color:#8a2024;background:#fff0d7;border-radius:5px;padding:3px 4px}.aux-star-list{display:flex;flex-wrap:wrap;gap:3px}.aux-star-list span{font-size:6.5px;color:#5f5148;background:#f4eee5;border-radius:4px;padding:2px 3px}.void-star{font-size:7px;color:#8b7567;font-style:italic;margin:5px 0}.final-chart .palace em{display:block;font-size:6.5px;color:#9a6a28;margin-top:5px}

/* PART 28 — USER AUTH */
.user-round{text-decoration:none;display:grid;place-items:center}.auth-card{max-width:520px;margin:18px auto}.oauth-btn{display:block;text-align:center;text-decoration:none;padding:14px;border-radius:11px;margin:9px 0;font-size:11px;font-weight:900;min-height:48px}.oauth-btn.google{background:#fff;border:1px solid #ddd;color:#333}.oauth-btn.facebook{background:#1877f2;color:#fff}.oauth-btn.disabled{opacity:.45;pointer-events:none}.auth-note{font-size:8px;color:#76675c;line-height:1.5}.history-row{padding:9px 2px;border-bottom:1px solid #eee5d8}.history-row b,.history-row small{display:block}.history-row b{font-size:9px;color:#7d2826}.history-row small{font-size:7px;color:#806f63;margin-top:3px}

/* FINAL ZIWEI FULL */
.annual-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.annual-overview>div{background:#fff7e6;border:1px solid #dfc28e;border-radius:11px;padding:10px;text-align:center}.annual-overview small,.annual-overview b,.annual-overview span{display:block}.annual-overview small{font-size:7px;color:#8a7059;letter-spacing:.7px}.annual-overview b{font:700 14px Georgia,serif;color:#7d2425;margin:4px}.annual-overview span{font-size:7px;color:#735e51}.annual-four-transform{background:#6b1116;color:#fff5dc;border-radius:12px;padding:12px;margin:10px 0}.annual-four-transform h2{font:700 13px Georgia,serif;color:#f4d28e;margin:0 0 8px}.annual-four-transform>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.annual-four-transform span{font-size:7.5px;background:#ffffff12;border:1px solid #ffffff1c;padding:6px;border-radius:7px}.full-star-board .palace{min-height:210px}.full-star-board .palace.tieu-han-palace{outline:3px solid #d18a19}.full-star-board .palace.luu-tue-palace{box-shadow:inset 0 0 0 3px #4a85ad}.main-star-list b i{font-size:6px;font-style:normal;font-weight:500;color:#9b6e27}.full-aux-list{display:flex;flex-wrap:wrap;gap:2px;margin-top:5px;align-content:flex-start}.star-tag{font-size:5.8px;line-height:1.2;padding:2px 3px;border-radius:4px;background:#f2ede4;color:#66564c}.star-tag.sát-tinh{background:#fbe9e4;color:#9a352f}.star-tag.tứ-hóa,.star-tag.lộc-tinh{background:#edf4df;color:#47703a}.star-tag.vòng-sao{background:#f3ecda;color:#7b633b}.void-bars{display:flex;gap:3px;margin-top:4px}.void-bars strong{font-size:6px;background:#222;color:#fff;padding:2px 4px;border-radius:3px}.annual-stars{display:flex;flex-wrap:wrap;gap:2px;border-top:1px dashed #c9a66d;margin-top:5px;padding-top:4px}.annual-stars span{font-size:5.8px;background:#e9f2fb;color:#285a7a;border-radius:4px;padding:2px 3px}.tieu-label{display:block;font-size:6px;color:#9a5a0a;margin-top:4px}.annual-star-table{display:grid;grid-template-columns:1fr 1fr;gap:6px}.annual-star-table>div{display:grid;grid-template-columns:40px 1fr;gap:6px;background:#fff8ea;border:1px solid #e2ca9f;border-radius:8px;padding:7px}.annual-star-table b{font:700 11px Georgia,serif;color:#792624}.annual-star-table span{font-size:7px;color:#6e5c50}@media(max-width:600px){.annual-overview{grid-template-columns:1fr 1fr}.annual-four-transform>div{grid-template-columns:1fr}.annual-star-table{grid-template-columns:1fr}.full-star-board .palace{min-height:175px}.star-tag{font-size:5.5px}}

/* FINAL ZIWEI INTERPRETATION */
.ziwei-basis-card{border-top:4px solid #8b1f24;background:linear-gradient(180deg,#fffaf0,#fffdf8)}.ziwei-scoreline{display:flex;align-items:end;gap:9px;margin:8px 0 11px}.ziwei-scoreline b{font:700 30px Georgia,serif;color:#7f2225}.ziwei-scoreline span{font-size:9px;color:#7b6658;padding-bottom:4px}.ziwei-palace-grid,.ziwei-people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ziwei-palace-grid>div,.ziwei-people-grid>div{background:#fff5df;border:1px solid #dfc397;border-radius:10px;padding:9px}.ziwei-palace-grid small,.ziwei-palace-grid b,.ziwei-palace-grid span,.ziwei-palace-grid em,.ziwei-people-grid small,.ziwei-people-grid b,.ziwei-people-grid span{display:block}.ziwei-palace-grid small,.ziwei-people-grid small{font-size:7px;color:#8c735e;letter-spacing:.5px}.ziwei-palace-grid b,.ziwei-people-grid b{font:700 13px Georgia,serif;color:#7f2625;margin:3px 0}.ziwei-palace-grid span,.ziwei-people-grid span{font-size:7px;color:#705f54;line-height:1.4}.ziwei-palace-grid em{font-size:6.5px;font-style:normal;color:#9b6726;margin-top:3px}.ziwei-best-day{background:#6c1217;color:#fff4dc;border-radius:10px;padding:10px;margin-top:9px}.ziwei-best-day small,.ziwei-best-day b,.ziwei-best-day span{display:block}.ziwei-best-day small{font-size:7px;color:#e6bd73}.ziwei-best-day b{font:700 14px Georgia,serif;color:#f6d492;margin:4px 0}.ziwei-best-day span{font-size:7.5px;margin-top:3px}.ziwei-annual-line{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.ziwei-annual-line span{font-size:7.5px;background:#f4eee4;border-radius:7px;padding:7px}.ziwei-method-note{font-size:7.5px;line-height:1.5;color:#79675b;margin-top:8px}@media(max-width:600px){.ziwei-palace-grid,.ziwei-people-grid,.ziwei-annual-line{grid-template-columns:1fr}}

.ziwei-domain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:9px 0}.ziwei-domain-grid>div{background:#f8f0e3;border:1px solid #e0c9a6;border-radius:9px;padding:9px;text-align:center}.ziwei-domain-grid small,.ziwei-domain-grid b,.ziwei-domain-grid span{display:block}.ziwei-domain-grid small{font-size:7px;color:#8b715a}.ziwei-domain-grid b{font:700 16px Georgia,serif;color:#7d2526;margin:3px}.ziwei-domain-grid span{font-size:7px;color:#735f52}@media(max-width:600px){.ziwei-domain-grid{grid-template-columns:1fr 1fr}}

.ziwei-transit-stack{display:grid;gap:5px;background:#f5ead7;border:1px solid #d9ba86;border-radius:10px;padding:10px;margin:9px 0}.ziwei-transit-stack>b{font:700 11px Georgia,serif;color:#7b2425}.ziwei-transit-stack>span{font-size:7.5px;line-height:1.45;color:#6d5b4f}.ziwei-hour-list{display:grid;gap:3px;margin-top:7px}.ziwei-hour-list em{display:block;font-size:7px;font-style:normal;background:#ffffff14;border:1px solid #ffffff1f;border-radius:5px;padding:4px}

.legal-copy{font-size:9px;line-height:1.7}.legal-copy h2{font:700 15px Georgia,serif;color:#7d2525;margin-top:14px}

.legal-footer{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:18px 10px 84px;font-size:7px;color:#8a7668}.legal-footer a{color:#7d3a36;text-decoration:none}

/* Result download: mobile-first */
.result-actions .download-result-png,.result-actions .download-result-pdf{font-weight:800;letter-spacing:.25px}
@media(max-width:600px){.result-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.result-actions>*{min-width:0!important;width:100%!important}.result-actions .button-link{grid-column:1/-1}}
@media print{.result-actions,.bottom-nav,.legal-footer{display:none!important}}

/* =========================================================
   TRACUUTUVI.ORG - HOME UI FIX
   Desktop + Tablet + Mobile
   03/09/2026
   ========================================================= */

/* ===== KHUNG TRANG CHỦ ===== */
.home-shell{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    overflow:hidden;
}

/* ===== HERO ĐẦU TRANG ===== */
.home-hero-full{
    position:relative;
    width:100%;
    min-height:390px;
    padding:36px 40px 32px;
    box-sizing:border-box;
}

.hero-script{
    font-size:clamp(30px,3vw,44px);
    line-height:1.08;
}

.home-hero-full h1{
    font-size:clamp(46px,5vw,76px);
    line-height:0.98;
    letter-spacing:-1px;
    max-width:650px;
    margin:8px 0 18px;
}

.hero-sub{
    font-size:17px;
    line-height:1.5;
    margin-top:14px;
}

/* ===== LOGO ===== */
.hero-bagua{
    width:190px;
    height:190px;
    right:40px;
    top:50px;
    font-size:72px;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* ===== 2 NÚT CHÍNH ===== */
.hero-actions{
    margin-top:28px;
    gap:16px;
}

.hero-actions a{
    min-height:96px;
    padding:20px 24px;
    box-sizing:border-box;
}

.hero-actions a span{
    font-size:38px;
}

.hero-actions a b{
    font-size:22px;
    line-height:1.15;
}

.hero-actions a small{
    font-size:15px;
    line-height:1.35;
    margin-top:5px;
}

/* ===== NỘI DUNG ===== */
.home-content{
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:28px 24px 110px;
    box-sizing:border-box;
}

.home-panel{
    padding:28px;
    box-sizing:border-box;
}

.home-panel > h2{
    font-size:30px;
    line-height:1.2;
    letter-spacing:0;
    text-align:center;
    margin:0 0 24px;
}

/* ===== CÔNG CỤ PHỔ BIẾN ===== */
.tool-grid-complete{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
}

.tool-grid-complete a{
    min-height:132px;
    padding:18px 12px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    text-align:center;
    box-sizing:border-box;
}

.tool-grid-complete a span{
    font-size:42px;
    line-height:1;
}

.tool-grid-complete a b{
    font-size:17px;
    line-height:1.3;
    font-weight:700;
}

/* ===== LỊCH HÔM NAY ===== */
.mini-calendar .calendar-big{
    font-size:72px;
    line-height:1;
    position:relative;
    top:-28px !important;
    margin-bottom:-28px !important;
}

.mini-calendar .calendar-date{
    display:block;
    text-align:center;
    font-size:16px !important;
    font-weight:600;
    line-height:1.3;
    margin:4px 0 10px 0;
}

.mini-calendar .calendar-canchi{
    width:100%;
    text-align:center;
    white-space:nowrap;
    font-size:18px;
    line-height:1.4;
    margin:0 0 14px 0;
}

/* ===== TỬ VI 12 CON GIÁP ===== */
/* ===== TỬ VI 12 CON GIÁP ===== */

/* ===== TỬ VI 12 CON GIÁP ===== */

.zodiac-today > p {
    width: 100%;
    text-align: center;
    margin: 16px auto 24px;
}

/* Khung chứa 12 con giáp */
.zodiac-today .zodiac-mini {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
}

/* Từng con giáp */
.zodiac-today .zodiac-mini span {
    width: 100%;
    min-width: 0;
    min-height: 82px;
    box-sizing: border-box;
    padding: 8px 4px;

    display: flex;
    align-items: center;
    justify-content: center;

    text-align: center;
    font-size: 20px;
    line-height: 1.15;

    border: 1px solid #dfcfaa;
    border-radius: 10px;
}

/* ===== ĐIỆN THOẠI ===== */
@media (max-width: 600px) {

    .zodiac-today .zodiac-mini {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        width: 100%;
    }

    .zodiac-today .zodiac-mini span {
        width: 100%;
        min-width: 0;
        min-height: 82px;
        padding: 6px 3px;

        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        font-size: 20px;
        line-height: 1.15;
        text-align: center;
    }

    .zodiac-today > p {
        width: 100%;
        text-align: center;
        margin: 14px auto 20px;
    }
}

/* ===== THẦY AI ===== */
.ai-banner{
    padding:28px;
    box-sizing:border-box;
}

.ai-banner h2{
    font-size:31px;
    line-height:1.15;
    letter-spacing:0;
}

.ai-banner p{
    font-size:17px;
    line-height:1.5;
}

/* ===== 4 Ô GIỚI THIỆU ===== */
.trust-row div{
    padding:18px 14px;
}

.trust-row b{
    font-size:17px;
}

.trust-row small{
    font-size:14px;
    line-height:1.4;
}

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width:900px){

    .home-hero-full{
        min-height:370px;
        padding:30px 28px;
    }

    .hero-bagua{
        width:160px;
        height:160px;
        right:28px;
        top:55px;
        font-size:62px;
    }

    .tool-grid-complete{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .tool-grid-complete a{
        min-height:120px;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width:600px){

    .home-shell{
        width:100%;
        max-width:100%;
    }

    .home-hero-full{
        min-height:0;
        padding:28px 22px 32px;
    }

    .hero-script{
        font-size:31px;
        max-width:58%;
    }

    .home-hero-full h1{
        font-size:51px;
        line-height:0.98;
        max-width:65%;
        margin-top:8px;
    }

    .hero-sub{
        font-size:15px;
        line-height:1.45;
        max-width:90%;
        margin-top:18px;
    }

    .hero-bagua{
        width:145px;
        height:145px;
        right:18px;
        top:68px;
        font-size:56px;
    }

    .hero-actions{
        grid-template-columns:1fr;
        gap:12px;
        margin-top:26px;
    }

    .hero-actions a{
        min-height:92px;
        padding:16px 20px;
    }

    .hero-actions a span{
        font-size:34px;
    }

    .hero-actions a b{
        font-size:20px;
    }

    .hero-actions a small{
        font-size:14px;
    }

    .home-content{
        padding:22px 22px 110px;
    }

    .home-panel{
        padding:22px 18px;
    }

    .home-panel > h2{
        font-size:26px;
        line-height:1.2;
        margin-bottom:20px;
    }

    .tool-grid-complete{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }

    .tool-grid-complete a{
        min-height:126px;
        padding:16px 10px;
        gap:10px;
    }

    .tool-grid-complete a span{
        font-size:40px;
    }

    .tool-grid-complete a b{
        font-size:16px;
        line-height:1.3;
    }

    .mini-calendar{
        padding:20px;
    }

    .mini-calendar h3{
        font-size:25px;
    }

    .mini-calendar .calendar-big{
        font-size:58px;
    }

    .zodiac-mini{
        min-height:48px;
        font-size:14px;
    }

    .zodiac-mini span{
        font-size:21px;
    }

    .ai-banner{
        padding:22px;
    }

    .ai-banner h2{
        font-size:27px;
        line-height:1.2;
    }

    .ai-banner p{
        font-size:15px;
        line-height:1.5;
    }

    .trust-row b{
        font-size:16px;
    }

    .trust-row small{
        font-size:13px;
    }
}

/* =========================================================
   HERO BRAND + TITLE - FINAL
   Mobile + Desktop
   ========================================================= */

.hero-brand{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    width:100%;
    margin:-5px auto 18px !important;
}

.hero-bagua{
    position:static !important;
    width:auto !important;
    height:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:54px !important;
    line-height:1 !important;
    margin:0 !important;
}

.hero-domain{
    font-family: Georgia, "Times New Roman", serif;
    font-size:32px;
    font-weight:700;
    color:#f7c963;
    letter-spacing:1.5px;
    line-height:1;
    white-space:nowrap;
    text-align:left;
    text-shadow:0 1px 0 #8b5a16,
                0 0 8px rgba(247,201,99,.25);
}
.hero-script{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
    margin:0 auto 8px !important;
    font-weight:700;
}

.home-hero-full h1{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
    margin:0 auto 18px !important;
    white-space:nowrap !important;
}

.hero-sub{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* MOBILE */
@media (max-width:600px){

    .hero-brand{
        gap:10px;
        margin-bottom:14px;
    }

    .hero-bagua{
        font-size:42px !important;
    }

    .hero-domain{
        font-size:19px;
        letter-spacing:.5px;
    }

    .hero-script{
        font-size:28px !important;
        line-height:1.1 !important;
    }

    .home-hero-full h1{
        font-size:34px !important;
        line-height:1.08 !important;
        letter-spacing:-.5px !important;
    }

    .hero-sub{
        font-size:15px !important;
        max-width:95% !important;
    }
}

/* TABLET */
@media (min-width:601px) and (max-width:1023px){

    .hero-bagua{
        font-size:52px !important;
    }

    .hero-domain{
        font-size:24px;
    }

    .hero-script{
        font-size:34px !important;
    }

    .home-hero-full h1{
        font-size:46px !important;
    }
}

/* DESKTOP */
@media (min-width:1024px){

    .hero-brand{
        gap:18px;
        margin-bottom:20px;
    }

    .hero-bagua{
        font-size:64px !important;
    }

    .hero-domain{
        font-size:32px;
        letter-spacing:1.5px;
    }

    .hero-script{
        font-size:40px !important;
    }

    .home-hero-full h1{
        font-size:62px !important;
        line-height:1.05 !important;
    }

    .hero-sub{
        font-size:18px !important;
    }
}

/* ===== CHOT GIAO DIEN HERO ===== */

/* Logo + tên website */
.hero-brand{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:14px !important;
    margin:10px auto 24px !important;
}

.hero-bagua{
    position:static !important;
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    border:3px solid #f7c963 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:32px !important;
    color:#f7c963 !important;
}

.hero-domain{
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:30px !important;
    font-weight:900 !important;
    color:#f7c963 !important;
    letter-spacing:1px !important;
    white-space:nowrap !important;
    text-align:left !important;
}

/* TRA CỨU */
.hero-script{
    width:100% !important;
    text-align:center !important;
    font-size:34px !important;
    margin:0 auto 5px !important;
    color:#f7c963 !important;
}

/* TỬ VI & PHONG THỦY */
.home-hero-full h1{
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
    white-space:nowrap !important;
    font-size:54px !important;
    line-height:1.05 !important;
    margin:0 auto 18px !important;
    color:#ffe6a3 !important;
}

/* Điện thoại */
@media(max-width:600px){

    .hero-brand{
        gap:10px !important;
        margin:8px auto 24px !important;
    }

    .hero-bagua{
        width:48px !important;
        height:48px !important;
        min-width:48px !important;
        font-size:27px !important;
    }

    .hero-domain{
        font-size:22px !important;
    }

    .hero-script{
        font-size:30px !important;
    }

    .home-hero-full h1{
        font-size:35px !important;
        letter-spacing:-1px !important;
        white-space:nowrap !important;
    }
}

/* =========================================================
   HERO MOBILE BALANCE FIX
   ========================================================= */
@media (max-width:600px){

    .home-hero-full{
        padding:24px 22px 30px !important;
    }

    .hero-brand{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:10px !important;
        width:100% !important;
        margin:18px auto 24px !important;
    }

    .hero-bagua{
        position:static !important;
        width:52px !important;
        height:52px !important;
        min-width:52px !important;
        font-size:27px !important;
        border:3px solid #f7c963 !important;
        border-radius:50% !important;
    }

    .hero-domain{
        font-family:Georgia, "Times New Roman", serif !important;
        font-size:23px !important;
        font-weight:800 !important;
        line-height:1 !important;
        letter-spacing:.8px !important;
        color:#f7c963 !important;
        white-space:nowrap !important;
        text-shadow:none !important;
    }

    .hero-script{
        width:100% !important;
        margin:0 auto 6px !important;
        text-align:center !important;
        font-family:Georgia, "Times New Roman", serif !important;
        font-size:28px !important;
        line-height:1.1 !important;
        font-weight:700 !important;
        color:#f7c963 !important;
    }

    .home-hero-full h1{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto 18px !important;
        text-align:center !important;
        white-space:nowrap !important;
        font-family:Georgia, "Times New Roman", serif !important;
        font-size:clamp(28px,7.6vw,34px) !important;
        line-height:1.08 !important;
        letter-spacing:-.5px !important;
        color:#ffe7a5 !important;
    }

    .hero-sub{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto 24px !important;
        text-align:center !important;
        font-size:15px !important;
        line-height:1.45 !important;
    }

    .hero-actions{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:12px !important;
        margin-top:0 !important;
    }

    .hero-actions a{
        min-height:104px !important;
        padding:16px 18px !important;
        text-align:center !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .hero-actions a span{
        font-size:34px !important;
    }

    .hero-actions a b{
        font-size:21px !important;
        line-height:1.15 !important;
        text-align:center !important;
    }

    .hero-actions a small{
        font-size:14px !important;
        text-align:center !important;
    }
}

/* ===== VI TRI HERO MOBILE - OVERRIDE CUOI CUNG ===== */
@media (max-width:600px){

    .hero-brand{
        margin-top:-12px !important;
        margin-bottom:12px !important;
    }

    .hero-script{
        margin-top:0 !important;
        margin-bottom:5px !important;
    }

    .home-hero-full h1{
        margin-top:0 !important;
        margin-bottom:16px !important;
    }
}

/* Mô tả Hero luôn 1 dòng trên mobile */
@media (max-width:600px){
    .hero-sub{
        width:100% !important;
        max-width:none !important;
        white-space:nowrap !important;
        text-align:center !important;
        font-size:13px !important;
        letter-spacing:-0.2px !important;
        line-height:1.3 !important;
        margin:0 auto 22px !important;
    }
}

/* =====================================================
   HERO ACTIONS
   ICON BEN TRAI - TEXT CAN GIUA
   ===================================================== */

.hero-actions a{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
}

/* ICON GIỮ BÊN TRÁI */
.hero-actions a > span{
    position:absolute !important;
    left:22px !important;
    top:50% !important;
    transform:translateY(-50%) !important;

    width:auto !important;
    margin:0 !important;

    font-size:34px !important;
    line-height:1 !important;
    text-align:center !important;
}

/* TIÊU ĐỀ CĂN GIỮ + 1 DÒNG */
.hero-actions a > b{
    display:block !important;
    width:100% !important;

    margin:0 auto !important;
    padding:0 42px !important;

    box-sizing:border-box !important;
    text-align:center !important;

    white-space:nowrap !important;
    line-height:1.2 !important;
}

/* MÔ TẢ CŨNG CĂN GIỮ */
.hero-actions a > small{
    display:block !important;
    width:100% !important;

    margin:5px auto 0 !important;
    padding:0 42px !important;

    box-sizing:border-box !important;
    text-align:center !important;
}

/* ĐIỆN THOẠI */
@media (max-width:600px){

    .hero-actions a{
        min-height:100px !important;
        padding:14px 12px !important;
    }

    .hero-actions a > span{
        left:20px !important;
        font-size:32px !important;
    }

    .hero-actions a > b{
        font-size:19px !important;
        white-space:nowrap !important;
        padding:0 38px !important;
    }

    .hero-actions a > small{
        font-size:14px !important;
        padding:0 38px !important;
    }
}

/* FIX: LẬP LÁ SỐ TỬ VI LUÔN 1 DÒNG */
@media (max-width:600px){

    .hero-actions a > b{
        width:100% !important;
        max-width:none !important;

        padding:0 8px !important;
        margin:0 auto !important;

        font-size:18px !important;
        line-height:1.2 !important;

        text-align:center !important;
        white-space:nowrap !important;

        overflow:visible !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
    }

    /* Icon vẫn giữ bên trái */
    .hero-actions a > span{
        position:absolute !important;
        left:18px !important;
        top:50% !important;
        transform:translateY(-50%) !important;
    }
}

/* ===== FIX TEXT 2 THE HERO ACTIONS - DESKTOP ===== */
@media (min-width: 769px){

    .hero-actions a{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        text-align:center !important;
    }

    .hero-actions a > b{
        width:100% !important;
        text-align:center !important;
        white-space:nowrap !important;
        word-break:normal !important;
        overflow-wrap:normal !important;

        font-family:"Times New Roman", Times, serif !important;
        font-size:24px !important;
        font-weight:700 !important;
        line-height:1.15 !important;

        letter-spacing:0 !important;
        word-spacing:0 !important;

        margin:0 auto !important;
        padding:0 !important;
    }

    .hero-actions a > small{
        width:100% !important;
        text-align:center !important;

        font-size:15px !important;
        line-height:1.35 !important;

        letter-spacing:0 !important;
        word-spacing:0 !important;

        margin:6px auto 0 !important;
        padding:0 !important;
    }

    .hero-actions a > span{
        position:absolute !important;
        left:22px !important;
        top:50% !important;
        transform:translateY(-50%) !important;

        margin:0 !important;
        font-size:34px !important;
    }
}

@media (min-width: 769px) {
    .hero-actions b {
        word-spacing: 0 !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
    }
}

/* FIX FONT TIẾNG VIỆT TRÊN MÁY TÍNH */
@media (min-width:769px){

    .hero-actions b,
    .home-panel h2,
    .mini-calendar h3,
    .ai-banner h2{
        font-family: Cambria, "Times New Roman", serif !important;
        letter-spacing:0 !important;
        word-spacing:0 !important;
    }
}

/* FIX FONT 2 NÚT HERO - CHỈ MÁY TÍNH */
@media (min-width:769px){

    .hero-actions b{
        font-family: Arial, "Segoe UI", sans-serif !important;
        font-weight:700 !important;
        letter-spacing:0 !important;
        word-spacing:0 !important;
        font-variant:normal !important;
    }
}

/* ===== FIX LỊCH HÔM NAY TRÊN ĐIỆN THOẠI ===== */
@media (max-width: 600px){

    .mini-calendar{
        overflow:hidden;
    }

    .mini-calendar .calendar-canchi{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        white-space:normal !important;
        text-align:center !important;

        font-size:15px !important;
        line-height:1.5 !important;

        padding:0 8px !important;
        margin:8px auto 14px auto !important;

        box-sizing:border-box !important;
        overflow-wrap:normal !important;
        word-break:normal !important;
    }
}

/* ===== FIX CUỐI CÙNG - TỬ VI 12 CON GIÁP ===== */

.zodiac-today > p{
    width:100% !important;
    text-align:center !important;
    margin:16px auto 24px !important;
}

/* MÁY TÍNH: 6 ô / hàng */
.zodiac-today .zodiac-mini{
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:10px !important;

    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;

    box-sizing:border-box !important;
}

/* Từng ô */
.zodiac-today .zodiac-mini span{
    width:100% !important;
    min-width:0 !important;
    min-height:80px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:8px 6px !important;
    margin:0 !important;
    box-sizing:border-box !important;

    text-align:center !important;
    font-size:20px !important;
    line-height:1.2 !important;

    border:1px solid #dfcfaa !important;
    border-radius:10px !important;
}

/* ĐIỆN THOẠI: đúng 4 ô / hàng */
@media (max-width:600px){

    .zodiac-today .zodiac-mini{
        grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
        gap:8px !important;
        width:100% !important;
    }

    .zodiac-today .zodiac-mini span{
        min-height:82px !important;
        padding:6px 4px !important;
        font-size:20px !important;
    }
}

/* ===== FOOTER PHÁP LÝ ===== */
.legal-footer {
    font-size: 17px;
    line-height: 1.6;
}

.legal-footer a {
    font-size: 17px;
    font-weight: 600;
}

/* ===== FIX BOTTOM NAV DESKTOP ===== */
@media (min-width:601px){
    .bottom-nav{
        width:min(1280px, calc(100vw - 32px)) !important;
        max-width:none !important;
        left:50% !important;
        transform:translateX(-50%) !important;
    }
}

@media (min-width:601px){
    .bottom-nav a{
        font-size:15px !important;
    }

    .bottom-nav a span{
        font-size:26px !important;
    }

    .bottom-nav a b{
        font-size:14px !important;
        margin-top:5px !important;
    }

    .bottom-nav{
        min-height:82px !important;
        padding:10px 14px !important;
    }
}
.detail-card .narrative-section h3{color:#7b2b25!important;font-weight:800!important;} .detail-card .narrative-section p{color:#4b342c!important;opacity:1!important;font-weight:500!important;line-height:1.7!important;} .detail-card>h2{color:#7b2b25!important;opacity:1!important;} .detail-card>p{color:#4b342c!important;opacity:1!important;line-height:1.7!important;}
.result-content{padding-top:4px!important;}
.ziwei-basis-card{margin-top:-40px!important;}
.ziwei-basis-card{margin-top:-25px!important;}

/* ===== LA SO TU VI - BO CUC 12 CUNG TRUYEN THONG ===== */

.full-star-board.tuvi-board{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    grid-template-rows:auto auto auto auto !important;
    gap:2px !important;
    width:100% !important;
    max-width:1180px !important;
    margin:14px auto !important;
    padding:2px !important;
    box-sizing:border-box !important;
    background:#8b6b42 !important;
    border:2px solid #8b6b42 !important;
}

/* Mỗi cung */
.full-star-board.tuvi-board > .palace{
    position:relative !important;
    width:auto !important;
    min-width:0 !important;
    min-height:210px !important;
    margin:0 !important;
    padding:7px !important;
    box-sizing:border-box !important;
    border:1px solid #b99862 !important;
    border-radius:0 !important;
    background:#fffaf0 !important;
    overflow:hidden !important;
}

/* 4 cung hàng trên */
.full-star-board.tuvi-board > .palace:nth-of-type(1){grid-column:1;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(2){grid-column:2;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(3){grid-column:3;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(4){grid-column:4;grid-row:1;}

/* 2 cung bên phải */
.full-star-board.tuvi-board > .palace:nth-of-type(5){grid-column:4;grid-row:2;}
.full-star-board.tuvi-board > .palace:nth-of-type(6){grid-column:4;grid-row:3;}

/* 4 cung hàng dưới - chạy ngược để tạo vòng */
.full-star-board.tuvi-board > .palace:nth-of-type(7){grid-column:4;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(8){grid-column:3;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(9){grid-column:2;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(10){grid-column:1;grid-row:4;}

/* 2 cung bên trái */
.full-star-board.tuvi-board > .palace:nth-of-type(11){grid-column:1;grid-row:3;}
.full-star-board.tuvi-board > .palace:nth-of-type(12){grid-column:1;grid-row:2;}

/* Thiên bàn ở chính giữa */
.full-star-board.tuvi-board > .board-center{
    position:static !important;
    grid-column:2 / 4 !important;
    grid-row:2 / 4 !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:18px 12px !important;
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding-top:45px !important;
    transform:translateY(-45px) !important;
    text-align:center !important;
    background:#fff3d6 !important;
    border:1px solid #b99862 !important;
}

/* Tên cung */
.full-star-board .palace h3{
    margin:2px 0 5px !important;
    font-size:15px !important;
    line-height:1.2 !important;
    text-align:center !important;
    color:#68171b !important;
}

/* Sao trong cung */
.full-star-board .star-tag{
    line-height:1.25 !important;
}

/* Điện thoại: GIỮ NGUYÊN HÌNH BÀN 12 CUNG */
@media(max-width:600px){
    .full-star-board.tuvi-board{
        grid-template-columns:repeat(4, minmax(0,1fr)) !important;
        gap:1px !important;
        padding:1px !important;
    }

    .full-star-board.tuvi-board > .palace{
        min-height:175px !important;
        padding:3px !important;
        font-size:6px !important;
    }

    .full-star-board .palace h3{
        font-size:8px !important;
        margin:1px 0 3px !important;
    }

    .full-star-board .star-tag{
        font-size:5.5px !important;
    }

    .full-star-board.tuvi-board > .board-center{
        padding:6px 3px !important;
        font-size:7px !important;
    }
}

/* ===== LA SO TU VI - BO CUC 12 CUNG TRUYEN THONG ===== */

.full-star-board.tuvi-board{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-template-rows:repeat(4,auto) !important;
    gap:1px !important;
    padding:1px !important;
    background:#8f6b55 !important;
    border:2px solid #68171b !important;
    width:100% !important;
    box-sizing:border-box !important;
}

/* 4 cung tren */
.full-star-board.tuvi-board > .palace:nth-of-type(1){grid-column:1;grid-row:1}
.full-star-board.tuvi-board > .palace:nth-of-type(2){grid-column:2;grid-row:1}
.full-star-board.tuvi-board > .palace:nth-of-type(3){grid-column:3;grid-row:1}
.full-star-board.tuvi-board > .palace:nth-of-type(4){grid-column:4;grid-row:1}

/* 2 cung ben phai */
.full-star-board.tuvi-board > .palace:nth-of-type(5){grid-column:4;grid-row:2}
.full-star-board.tuvi-board > .palace:nth-of-type(6){grid-column:4;grid-row:3}

/* 4 cung duoi */
.full-star-board.tuvi-board > .palace:nth-of-type(7){grid-column:4;grid-row:4}
.full-star-board.tuvi-board > .palace:nth-of-type(8){grid-column:3;grid-row:4}
.full-star-board.tuvi-board > .palace:nth-of-type(9){grid-column:2;grid-row:4}
.full-star-board.tuvi-board > .palace:nth-of-type(10){grid-column:1;grid-row:4}

/* 2 cung ben trai */
.full-star-board.tuvi-board > .palace:nth-of-type(11){grid-column:1;grid-row:3}
.full-star-board.tuvi-board > .palace:nth-of-type(12){grid-column:1;grid-row:2}

/* Thien ban o chinh giua */
.full-star-board.tuvi-board > .board-center{
    grid-column:2 / 4 !important;
    grid-row:2 / 4 !important;
    position:static !important;
    width:auto !important;
    height:auto !important;
    transform:none !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;
    padding:14px !important;
    background:#fff8e9 !important;
    border:1px solid #b99862 !important;
    box-sizing:border-box !important;
    text-align:center !important;
}

/* O cung */
.full-star-board.tuvi-board > .palace{
    position:relative !important;
    min-width:0 !important;
    min-height:205px !important;
    padding:6px !important;
    margin:0 !important;
    background:#fff9ed !important;
    border:1px solid #b99862 !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
}

/* Dien thoai: GIU NGUYEN HINH BAN 12 CUNG */
@media(max-width:600px){
    .full-star-board.tuvi-board{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:1px !important;
        padding:1px !important;
    }

    .full-star-board.tuvi-board > .palace{
        min-height:145px !important;
        padding:2px !important;
        font-size:6.5px !important;
        line-height:1.18 !important;
    }

    .full-star-board.tuvi-board > .palace h3{
        font-size:8.5px !important;
        line-height:1.1 !important;
        margin:1px 0 3px !important;
    }

    .full-star-board.tuvi-board .star-tag{
        font-size:6px !important;
        line-height:1.18 !important;
    }

    .full-star-board.tuvi-board > .board-center{
        padding:5px 3px !important;
        font-size:7px !important;
        line-height:1.25 !important;
    }

    .full-star-board.tuvi-board > .board-center strong{
        font-size:8px !important;
    }
}

/* ===== LA SO TU VI - BO CUC 12 CUNG CHUAN ===== */

.full-star-board.tuvi-board{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-template-rows:repeat(4,auto) !important;
    gap:1px !important;
    width:100% !important;
    max-width:980px !important;
    margin:12px auto !important;
    padding:1px !important;
    box-sizing:border-box !important;
    background:#8b6b42 !important;
}

/* 4 cung tren */
.full-star-board.tuvi-board > .palace:nth-of-type(1){grid-column:1;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(2){grid-column:2;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(3){grid-column:3;grid-row:1;}
.full-star-board.tuvi-board > .palace:nth-of-type(4){grid-column:4;grid-row:1;}

/* 2 cung ben phai */
.full-star-board.tuvi-board > .palace:nth-of-type(5){grid-column:4;grid-row:2;}
.full-star-board.tuvi-board > .palace:nth-of-type(6){grid-column:4;grid-row:3;}

/* 4 cung duoi */
.full-star-board.tuvi-board > .palace:nth-of-type(7){grid-column:4;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(8){grid-column:3;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(9){grid-column:2;grid-row:4;}
.full-star-board.tuvi-board > .palace:nth-of-type(10){grid-column:1;grid-row:4;}

/* 2 cung ben trai */
.full-star-board.tuvi-board > .palace:nth-of-type(11){grid-column:1;grid-row:3;}
.full-star-board.tuvi-board > .palace:nth-of-type(12){grid-column:1;grid-row:2;}

/* Thien ban o chinh giua */
.full-star-board.tuvi-board > .board-center{
    grid-column:2 / 4 !important;
    grid-row:2 / 4 !important;
    position:static !important;
    width:auto !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
    box-sizing:border-box !important;
}

/* Dien thoai: van giu nguyen hinh ban 12 cung */
@media(max-width:600px){
    .full-star-board.tuvi-board{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        grid-template-rows:repeat(4,auto) !important;
        gap:1px !important;
        padding:1px !important;
    }

    .full-star-board.tuvi-board > .palace{
    min-width:0 !important;
    min-height:0 !important;
    height:auto !important;
    padding:2px !important;
    font-size:6.5px !important;
    line-height:1.12 !important;
    overflow:visible !important;
}
    }

    .full-star-board.tuvi-board > .palace h3{
        font-size:8.5px !important;
        line-height:1.1 !important;
        margin:1px 0 3px !important;
    }

    .full-star-board.tuvi-board .star-tag{
        font-size:6px !important;
        line-height:1.18 !important;
    }

    .full-star-board.tuvi-board > .board-center{
        padding:5px 3px !important;
        font-size:7px !important;
        line-height:1.25 !important;
    }

    .full-star-board.tuvi-board > .board-center strong{
        font-size:8px !important;
    }
}

/* ===== NGU HANH - CHINH TINH LA SO ===== */
.star-element-moc{
    color:#187a3d !important;
}
.star-element-hoa{
    color:#c62828 !important;
}
.star-element-tho{
    color:#9a6518 !important;
}
.star-element-kim{
    color:#555d66 !important;
}
.star-element-thuy{
    color:#1557a5 !important;
}

.main-star-list b[class^="star-element-"]{
    display:block;
    font-weight:800;
    line-height:1.35;
}

.main-star-list b[class^="star-element-"] i{
    color:inherit !important;
    font-size:.82em;
    font-weight:700;
}

/* ===== CHU GIAI MAU NGU HANH LA SO ===== */
.ngu-hanh-legend{
    margin:8px 0 12px;
    padding:7px 5px;
    text-align:center;
    font-size:12px;
    line-height:1.4;
    background:#fff8ea;
    border:1px solid #e2ca9f;
    border-radius:8px;
    white-space:nowrap;
}

.ngu-hanh-legend strong{
    color:#6f1d1b;
    font-weight:800;
}

.ngu-hanh-legend .star-element-moc{color:#187a3d !important;font-weight:800;}
.ngu-hanh-legend .star-element-hoa{color:#c62828 !important;font-weight:800;}
.ngu-hanh-legend .star-element-tho{color:#9a6518 !important;font-weight:800;}
.ngu-hanh-legend .star-element-kim{color:#555d66 !important;font-weight:800;}
.ngu-hanh-legend .star-element-thuy{color:#1557a5 !important;font-weight:800;}

/* ===== THUONG HIEU TRUNG TAM LA SO ===== */
.chart-brand{
    width:100%;
    margin:0 0 7px;
    padding:5px 3px 6px;
    text-align:center;
    border-bottom:1px solid #d8bd82;
    box-sizing:border-box;
}

.chart-brand strong{
    display:block;
    color:#7b1717;
    font-size:10px;
    font-weight:900;
    line-height:1.2;
}

.chart-brand b{
    display:block;
    color:#9a6518;
    font-size:8px;
    font-weight:800;
    margin-top:2px;
}

.chart-brand span{
    display:block;
    color:#4b3529;
    font-size:6px;
    line-height:1.3;
    margin-top:3px;
}

.chart-brand em{
    display:block;
    color:#7b1717;
    font-size:6.5px;
    font-style:normal;
    font-weight:900;
    margin-top:3px;
}
.home-banner{width:100%%;margin:0;padding:0;overflow:hidden}.home-banner img{display:block;width:100%%;height:auto;margin:0;padding:0}.home-hero-full{padding-top:0!important}.home-top{z-index:10!important}
.home-hero-full{position:relative!important;padding-top:0!important}.home-banner{width:100%%!important;margin:0!important;padding:0!important}.home-banner img{display:block!important;width:100%%!important;height:auto!important}.home-top{position:absolute!important;top:18px!important;left:0!important;right:0!important;z-index:20!important;padding:0 22px!important}
.home-banner{width:calc(100%% + 80px)!important;margin-left:-40px!important;margin-right:-40px!important}
.stack-form .continue-btn{margin-top:6px!important;margin-bottom:8px!important}.stack-form textarea[name="question"]{min-height:90px!important;height:90px!important;padding:12px!important}.stack-form .notice-box{margin-top:6px!important}

/* HOI THAY AI - O CHAT KIEU MESSENGER */

.chat-result .chat-input-wrap {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    width: 100%;
    padding: 8px;
    background: #ffffff;
    border: 1px solid #e0d5c4;
    border-radius: 30px;
    box-sizing: border-box;
}

.chat-result .chat-input-wrap textarea {
    flex: 1;
    width: 100%;
    min-width: 0;
    min-height: 42px;
    max-height: 150px;
    padding: 10px 8px;
    margin: 0;
    border: none;
    outline: none;
    resize: none;
    background: transparent;
    box-shadow: none;
    font: inherit;
    font-size: 16px;
    line-height: 22px;
}

.chat-result .chat-send-btn {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #991b25;
    color: #ffffff;
    font-size: 23px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.chat-result .chat-send-btn:hover {
    background: #751019;
}