/* Công cụ tính ngày giỗ — luxury dark style */
#sec-gio{background:radial-gradient(120% 95% at 50% -5%,#241307,#140a04);border-top:1px solid rgba(202,162,71,.2);padding:46px 16px;position:relative;overflow:hidden}
/* Top fade · smooth chuyển từ cream (Diff) xuống dark (Gio) */
#sec-gio::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(254,250,240,.15) 0%,transparent 80px),radial-gradient(70% 45% at 50% 0%,rgba(212,170,90,.12),transparent 60%);z-index:0}
#sec-gio .gw{position:relative;z-index:1}

/* BRIDGE · gold italic intro · pattern interrupt */
#sec-gio .g-bridge{margin-bottom:26px;text-align:center;padding:0 4px}
#sec-gio .g-bridge-orn{display:flex;align-items:center;justify-content:center;gap:13px;margin-bottom:14px}
#sec-gio .g-bridge-line{flex:1;max-width:55px;min-width:24px;height:1px;background:linear-gradient(90deg,transparent,#caa247)}
#sec-gio .g-bridge-mark{color:#caa247;font-size:.65rem;transform:rotate(45deg);display:inline-block;line-height:1;flex-shrink:0}
#sec-gio .g-bridge-text{font-size:.98rem;color:#cdb78f;line-height:1.6;margin:0 0 8px;text-wrap:balance;font-weight:500}
#sec-gio .g-bridge-italic{font-family:'Lora',serif;font-style:italic;font-size:1.18rem;color:#f3e7cf;line-height:1.55;margin:0;text-wrap:balance;font-weight:500}
#sec-gio .g-bridge-italic em{color:#f5dd97;font-style:italic;font-weight:600}

/* HERO ALTAR IMAGE · luxury frame trên dark */
#sec-gio .g-altar-hero{margin:0 0 28px;border-radius:8px;overflow:hidden;border:1px solid rgba(202,162,71,.5);box-shadow:0 14px 36px rgba(0,0,0,.5),0 3px 10px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.08);position:relative;line-height:0}
#sec-gio .g-altar-hero::before{content:"";position:absolute;inset:5px;border:1px solid rgba(202,162,71,.28);border-radius:4px;pointer-events:none;z-index:2}
#sec-gio .g-altar-hero img{display:block;width:100%;height:auto;max-width:100%;max-height:340px;object-fit:cover;object-position:center}
#sec-gio .g-altar-hero figcaption{font-family:'Lora',serif;font-style:italic;color:#cdb78f;text-align:center;font-size:.95rem;line-height:1.6;padding:13px 16px;background:linear-gradient(180deg,#241307,#140a04);border-top:1px solid rgba(202,162,71,.25);font-weight:500;text-wrap:balance}

@media(max-width:520px){
  #sec-gio{padding:38px 14px}
  #sec-gio .g-bridge{margin-bottom:22px}
  #sec-gio .g-bridge-orn{gap:9px;margin-bottom:12px}
  #sec-gio .g-bridge-line{max-width:40px;min-width:18px}
  #sec-gio .g-bridge-text{font-size:.9rem}
  #sec-gio .g-bridge-italic{font-size:1.02rem}
  #sec-gio .g-altar-hero{margin-bottom:24px;border-radius:6px;box-shadow:0 10px 28px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.06)}
  #sec-gio .g-altar-hero img{max-height:240px}
  #sec-gio .g-altar-hero figcaption{font-size:.85rem;padding:11px 13px;line-height:1.55}
}
#sec-gio .gw{max-width:560px;margin:0 auto;position:relative;z-index:1;text-align:center}
#sec-gio .g-orn{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:14px}
#sec-gio .g-orn span.l{width:42px;height:1px;background:linear-gradient(90deg,transparent,#caa247)}
#sec-gio .g-orn span.r{width:42px;height:1px;background:linear-gradient(90deg,#caa247,transparent)}
#sec-gio .g-orn span.d{color:#caa247;font-size:.6rem;transform:rotate(45deg)}
#sec-gio .g-kick{font-size:.66rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#caa247;margin-bottom:10px}
#sec-gio h2{font-family:'Lora',serif;font-size:clamp(1.35rem,4vw,1.7rem);font-weight:700;color:#f3e7cf;line-height:1.3;text-wrap:balance}
#sec-gio .g-sub{font-size:.92rem;color:#cdb78f;line-height:1.6;margin-top:10px;text-wrap:balance}
#sec-gio .g-tool{background:linear-gradient(180deg,#fff8ec,#fdf0d8);border:2px solid rgba(202,162,71,.6);border-radius:16px;padding:16px 14px;margin-top:20px;box-shadow:0 14px 40px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.6)}
#sec-gio .g-tool-lbl{font-size:.74rem;font-weight:900;color:#8a4d12;letter-spacing:.03em;text-transform:uppercase;margin-bottom:11px}
#sec-gio .g-mode{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
#sec-gio .g-mode-btn{flex:1;min-width:130px;background:#fff;border:1.5px solid rgba(202,162,71,.5);color:#8a4d12;font-weight:700;font-size:.82rem;padding:9px 10px;border-radius:10px;cursor:pointer;font-family:inherit}
#sec-gio .g-mode-btn.on{background:linear-gradient(135deg,#f0cd7e,#caa247);color:#3a1e0c;border-color:rgba(255,235,190,.7)}
#sec-gio .g-row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;justify-content:center}
#sec-gio select{flex:1;min-width:0;width:100%;font-family:inherit;font-size:1rem;font-weight:600;color:#1a0800;background:#fffdf8;border:2px solid rgba(202,162,71,.55);border-radius:11px;padding:12px 30px 12px 12px;outline:none;cursor:pointer;text-overflow:ellipsis}
#sec-gio select:focus{border-color:#b45309}
#sec-gio .g-btn{width:100%;margin-top:11px;background:linear-gradient(135deg,#fdf0c8,#f0cd7e 38%,#caa247 70%,#a8772b);color:#3a1e0c;font-weight:900;font-size:1rem;border:1px solid rgba(255,235,190,.7);border-radius:50px;padding:14px;cursor:pointer;font-family:inherit;box-shadow:0 10px 26px -8px rgba(168,119,43,.55),inset 0 1px 0 rgba(255,255,255,.7)}
#sec-gio #gio-result{display:none;margin-top:16px}
#sec-gio .g-card{background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(202,162,71,.45);border-radius:16px;padding:18px 16px;box-shadow:0 14px 40px rgba(0,0,0,.45)}
#sec-gio .g-card .big{font-family:'Lora',serif;font-size:1.15rem;color:#f3e7cf;line-height:1.4;font-weight:700}
#sec-gio .g-card .big b{color:#f5dd97}
#sec-gio .g-card .note{font-size:.86rem;color:#dccaa3;margin-top:8px;line-height:1.5}
#sec-gio .g-card .g-cta{display:inline-block;margin-top:14px;background:linear-gradient(135deg,#fdf0c8,#f0cd7e 38%,#caa247 70%,#a8772b);color:#3a1e0c;font-weight:900;font-size:.98rem;padding:13px 26px;border-radius:50px;text-decoration:none;border:1px solid rgba(255,235,190,.7);box-shadow:0 10px 26px -8px rgba(168,119,43,.55),inset 0 1px 0 rgba(255,255,255,.7);cursor:pointer}
#sec-gio .g-hint{font-size:.74rem;color:#9c8a68;margin-top:12px}
#sec-gio .gio-row{display:flex;gap:9px;align-items:center;margin-bottom:9px}
#sec-gio .gio-row select{flex:1;min-width:0}
#sec-gio .gio-rm{flex-shrink:0;width:36px;height:44px;border-radius:10px;border:1.5px solid rgba(180,83,9,.4);background:#fff;color:#b45309;font-size:.95rem;cursor:pointer;line-height:1}
#sec-gio .g-add{display:inline-block;margin:2px 0 4px;background:transparent;border:1.5px dashed rgba(180,83,9,.55);color:#8a4d12;font-weight:700;font-size:.84rem;padding:9px 16px;border-radius:50px;cursor:pointer;font-family:inherit}
#sec-gio .g-list{margin:12px 0;text-align:left}
#sec-gio .g-li{display:flex;justify-content:space-between;gap:10px;font-size:.86rem;color:#e6d3ad;padding:7px 0;border-bottom:1px solid rgba(202,162,71,.18)}
#sec-gio .g-li:last-child{border-bottom:none}
#sec-gio .g-li b{color:#f5dd97;white-space:nowrap}
#sec-gio .g-rec{font-size:.95rem;color:#f3e7cf;margin-top:8px}
#sec-gio .g-rec b{color:#f5dd97}
#sec-gio .g-more-hint{font-size:.84rem;color:#dccaa3;margin:10px 0;text-align:center}
#sec-gio .g-more-hint a{color:#f5dd97;font-weight:800;text-decoration:none;border-bottom:1px dashed rgba(245,221,151,.5);padding-bottom:1px}
#sec-gio .g-camnang{margin-top:14px;border-top:1px solid rgba(202,162,71,.25);padding-top:12px}
#sec-gio .g-cn-toggle{width:100%;background:rgba(202,162,71,.1);border:1px solid rgba(202,162,71,.35);color:#e7c875;font-weight:700;font-size:.84rem;padding:11px 12px;border-radius:10px;cursor:pointer;font-family:inherit;text-align:left}
#sec-gio .g-cn-body{margin-top:10px;text-align:left;font-size:.85rem;color:#dccaa3;line-height:1.6}
#sec-gio .g-cn-body h4{color:#f3e7cf;font-family:'Lora',serif;font-size:.95rem;margin:13px 0 5px;font-weight:700}
#sec-gio .g-cn-body ul{margin:4px 0 0;padding-left:18px}
#sec-gio .g-cn-body li{margin-bottom:3px}
#sec-gio .g-cn-body .khan{background:rgba(255,255,255,.04);border-left:2px solid #caa247;padding:11px 13px;border-radius:0 8px 8px 0;color:#e6d3ad;font-style:italic;margin-top:6px;line-height:1.7}
#sec-gio .g-cn-note{font-size:.76rem;color:#9c8a68;margin-top:9px}
#sec-gio .g-cn-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}
#sec-gio .g-cn-tab{background:rgba(202,162,71,.08);border:1px solid rgba(202,162,71,.3);color:#cdb78f;font-size:.76rem;font-weight:700;padding:6px 11px;border-radius:30px;cursor:pointer;font-family:inherit}
#sec-gio .g-cn-tab.on{background:linear-gradient(135deg,#f0cd7e,#caa247);color:#3a1e0c;border-color:rgba(255,235,190,.6)}
#sec-gio .g-cn-more{display:inline-block;margin-top:4px;color:#caa247;font-style:italic;font-size:.8rem}
#sec-gio .g-cn-gift{margin-top:14px;background:linear-gradient(135deg,rgba(202,162,71,.16),rgba(202,162,71,.05));border:1px solid rgba(202,162,71,.45);border-radius:12px;padding:13px 14px;font-size:.84rem;color:#e6d3ad;line-height:1.55}
#sec-gio .g-cn-gift b{color:#f3e7cf}
#sec-gio .g-cn-gift-cta{display:block;margin-top:11px;text-align:center;background:linear-gradient(135deg,#fdf0c8,#f0cd7e 38%,#caa247 70%,#a8772b);color:#3a1e0c;font-weight:800;font-size:.9rem;padding:11px 16px;border-radius:40px;text-decoration:none;cursor:pointer;border:1px solid rgba(255,235,190,.6)}
