/* Trang /su-kien — bổ sung cho gobi-apple.css (menu trái + các khối dài). Không màu hex: mọi màu lấy từ biến :root của gobi-apple.css.
   Phẳng: không bóng, không viền khối; chỉ kẻ mảnh var(--sep) ngăn khối. Tên lớp tiền tố riêng để khỏi đụng .app/.side/.cols của gobi-apple.css. */
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{padding-bottom:88px}
[id]{scroll-margin-top:72px}
h1,h2,h3,p,ol{margin:0}
a{-webkit-tap-highlight-color:transparent}
.vang{color:var(--ac)}
.cham{color:var(--ac)}
.nhan{color:var(--t2);font-size:13px;font-weight:600;letter-spacing:.08em}
.fn{color:var(--t2);font-size:13px}
strong{color:var(--t1);font-weight:600}

/* ---- khung: menu trái + chân trang dùng assets/khung.css (y trang chủ); cột chính là .khung-wrap ---- */
.trong{min-width:0}

.thanh-tren{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;flex-wrap:wrap}
.quay-ve{display:inline-flex;align-items:center;min-height:44px;color:var(--t2);font-size:15px}

/* ---- đầu trang ---- */
.dau-trang{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding:24px 0 56px}
.dau-chu .nhan{margin-bottom:20px}
h1{font-size:44px;font-weight:600;letter-spacing:-.035em;line-height:1.04;text-wrap:balance}
.phu{margin-top:20px;font-size:22px;font-weight:600;color:var(--t1)}
.doan{margin-top:12px;color:var(--t2);font-size:19px;line-height:1.5;max-width:34em}
.hanh-dong{display:flex;align-items:center;flex-wrap:wrap;gap:8px 28px;margin-top:28px}
.dau-chu>.fn{margin-top:14px}
.xem-lich{display:inline-flex;align-items:center;min-height:44px;font-size:17px}
.nut-hero,.nut-cta{display:none}
#da-ket-thuc{margin-top:28px}
#da-ket-thuc .row{min-height:56px}
.tro-buoi{display:flex;align-items:center;min-height:44px;margin-bottom:12px;color:var(--ac);font-size:16px;font-weight:600;line-height:1.4}
.tro-buoi[hidden]{display:none}
#da-ket-thuc .grow a{display:inline-flex;align-items:center;min-height:44px;color:var(--ac);font-weight:600}
.viec-ai{list-style:none;padding:0;margin-top:20px}
.viec-ai li{padding:16px 0;border-top:1px solid var(--sep);font-size:17px;line-height:1.5}
.viec-ai li:first-child{border-top:0}
.mang-theo{margin-top:24px;padding-top:20px;border-top:1px solid var(--sep)}
.mang-theo p:last-child{margin-top:8px;font-size:17px;line-height:1.5}
.cau-sang{background:var(--s1);border-radius:28px;padding:32px 24px}
.cau-sang p{margin-top:12px;color:var(--t2);font-size:17px;line-height:1.55}

/* thẻ vé */
.ve{background:var(--s1);border-radius:28px;padding:28px 24px}
.ve-dau{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ve-so{margin-top:20px;font-size:72px;font-weight:600;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.ve-thang{margin-top:10px;color:var(--t2);font-size:14px;font-weight:600;letter-spacing:.1em}
.ve-ngay{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:24px}
.ve-ngay div{display:flex;flex-direction:column;gap:2px;padding:12px 10px;border-radius:14px;background:var(--s2);text-align:center}
.ve-ngay span{color:var(--t2);font-size:11px;font-weight:600;letter-spacing:.06em}
.ve-ngay b{font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.ve-ngay .on{background:color-mix(in srgb,var(--ac) 16%,var(--s2))}
.ve-ngay .on span,.ve-ngay .on b{color:var(--ac)}
.xe{margin:24px 0 20px;border-top:2px dashed var(--t3);opacity:.6}
.ve-gio{font-size:17px;font-weight:600}
.ve .fn{margin-top:4px;font-size:14px}

/* ---- dải số ---- */
.dai-so{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding-bottom:56px}
.dai-so>div{background:var(--s1);border-radius:var(--r);padding:20px 24px}
.so{font-size:40px;font-weight:600;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}
.dai-so .fn{margin-top:6px;font-size:15px}

/* ---- khối chung ---- */
.khoi{padding:48px 0;border-top:1px solid var(--sep)}
.khoi>.nhan,.khoi-dau .nhan{margin-bottom:14px}
.tieu-de{font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1.12;text-wrap:balance}
.hai-cot{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.doan-lon{display:flex;flex-direction:column;gap:18px;color:var(--t2);font-size:19px;line-height:1.55}
.khoi-dau{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.phai{text-align:right;line-height:1.5;font-size:14px}

/* ---- lịch trình ---- */
.lich{display:flex;flex-direction:column;gap:12px}
.toi{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;background:var(--s1);border-radius:var(--r);padding:24px 20px 4px 28px;overflow:hidden}
.toi::before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:4px;border-radius:0 4px 4px 0;background:var(--ac)}
.ngay{display:flex;align-items:baseline;gap:12px}
.ngay b{font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}
.noi-dung{padding:16px 0 20px}
.vang-nho{color:var(--ac);font-size:13px;font-weight:600;letter-spacing:.06em}
.noi-dung h3{margin-top:8px;font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.noi-dung p:last-child{margin-top:10px;color:var(--t2);font-size:16px;line-height:1.55}
.tim-hieu{border-top:1px solid var(--sep);padding:18px 0 22px}
.tim-hieu p:last-child{margin-top:8px;font-size:17px;font-weight:600;line-height:1.35}
.ghi-chu{margin-top:12px;background:var(--s1);border-radius:var(--r);padding:20px 24px;color:var(--t2);font-size:17px;line-height:1.55}
.ghi-chu a{display:inline-block;padding:10px 0;margin:-10px 0;font-weight:600}

/* ---- nói thẳng ---- */
.noi-thang{display:flex;gap:16px;background:var(--s1);border-radius:28px;padding:32px 24px}
.ngoac{flex:none;color:var(--ac);font-size:72px;font-weight:600;line-height:.8;height:44px}
.noi-thang .tieu-de{margin-bottom:12px}
.noi-thang p{color:var(--t2);font-size:19px;line-height:1.55}

/* ---- cách tham gia ---- */
.link-vang{display:inline-flex;align-items:center;min-height:48px;margin-top:20px;font-size:17px;font-weight:600}
.buoc{list-style:none;padding:0}
.buoc li{display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--sep)}
.buoc li:first-child{border-top:0;padding-top:0}
.so-buoc{flex:none;min-width:36px;color:var(--ac);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}
.buoc h3{font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.3}
.buoc p{margin-top:6px;color:var(--t2);font-size:16px;line-height:1.55}

/* ---- khối kêu gọi ---- */
.cta{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;background:var(--s1);border-radius:32px;padding:36px 24px}
.cta .nhan{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.cham-vang{width:10px;height:10px;border-radius:50%;background:var(--ac);flex:none}
.cta .doan{margin-top:14px}
.cta-nut{display:flex;flex-direction:column;align-items:flex-start;gap:12px}

/* ---- sau khi đăng ký ---- */
.the-sau-hang{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.the-sau{position:relative;display:block;min-height:44px;background:var(--s1);border-radius:var(--r);padding:24px 64px 24px 24px;color:var(--t1)}
.the-sau h3{font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.25}
.the-sau p{margin-top:8px;color:var(--t2);font-size:16px;line-height:1.5}
.mui{position:absolute;top:20px;right:22px;color:var(--ac);font-size:26px;line-height:1}

/* ---- hỏi đáp ---- */
.hoi-dap{margin-top:28px}
.hoi-dap details{border-top:1px solid var(--sep)}
.hoi-dap details:last-child{border-bottom:1px solid var(--sep)}
.hoi-dap summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:16px 0;cursor:pointer;list-style:none;font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.35}
.hoi-dap summary::-webkit-details-marker{display:none}
.hoi-dap summary::after{content:"＋";flex:none;color:var(--ac);font-size:26px;font-weight:400;transition:transform .15s}
.hoi-dap details[open] summary::after{transform:rotate(45deg)}
.hoi-dap summary:focus-visible,a:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.hoi-dap details p{padding:0 40px 24px 0;color:var(--t2);font-size:17px;line-height:1.6;max-width:44em}

/* ---- thanh dính đáy (<1024) ---- */
.bar-day{position:fixed;left:0;right:0;bottom:0;z-index:10;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--bg)}

@media(min-width:640px){
  .dai-so{grid-template-columns:repeat(3,minmax(0,1fr))}
  .the-sau-hang{grid-template-columns:repeat(2,minmax(0,1fr))}
  .toi{padding-right:28px}
}
@media(min-width:1024px){
  body{padding-bottom:0}
  .bar-day{display:none}
  .nut-hero,.nut-cta{display:inline-flex}
  .thanh-tren{min-height:72px}
  .dau-trang{grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:center;padding:40px 0 88px}
  h1{font-size:76px;letter-spacing:-.04em;line-height:1}
  .phu{margin-top:28px}
  .doan{margin-top:14px}
  .ve{padding:32px 32px 36px}
  .ve-so{font-size:96px}
  .dai-so{padding-bottom:88px}
  .khoi{padding:88px 0}
  .tieu-de{font-size:48px}
  .hai-cot{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
  .doan-lon{padding-top:30px}
  .khoi-dau{margin-bottom:40px}
  .toi{grid-template-columns:200px minmax(0,1fr) 280px;align-items:start;padding:32px 0 0 40px}
  .toi::before{top:28px;bottom:28px}
  .ngay{display:block;padding-bottom:32px}
  .ngay b{display:block;margin-top:6px;font-size:40px}
  .noi-dung{padding:0 40px 32px 0}
  .tim-hieu{border-top:0;border-left:1px solid var(--sep);padding:0 32px 32px;margin-bottom:32px;align-self:stretch}
  .noi-thang{padding:48px 56px;gap:28px}
  .ngoac{font-size:120px;height:72px}
  .cta{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:56px;padding:64px 56px}
  .cta-nut{align-items:center;text-align:center}
  .the-sau{padding:32px 72px 32px 32px}
  .hoi-dap summary{font-size:22px;min-height:76px}
}
@media(min-width:1024px) and (max-width:1279px){
  h1{font-size:64px}
  .toi{grid-template-columns:160px minmax(0,1fr) 240px}
}
.viec-tieu{margin-top:32px}

/* ---- trang tổng hợp /su-kien: mỗi sự kiện một thẻ, cả thẻ bấm được (link phủ ::after của nút) ---- */
body.tong-hop{padding-bottom:0}
.dau-tong{padding:24px 0 40px}
.dau-tong .nhan{margin-bottom:20px}
.luoi-su-kien{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-bottom:56px}
.the-su-kien{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:24px;background:var(--s1);border-radius:28px;padding:28px 24px}
.the-su-kien:focus-within{outline:2px solid var(--ac);outline-offset:2px}
.the-su-kien h2{margin-top:12px;font-size:28px;font-weight:600;letter-spacing:-.03em;line-height:1.15;text-wrap:balance}
.the-su-kien .phu{margin-top:12px;font-size:19px}
.the-su-kien .ve-gio{margin-top:20px}
.the-su-kien .ve-so{margin-top:0;white-space:nowrap}
.ve-thu{margin-top:10px;color:var(--t2);font-size:13px;font-weight:600;letter-spacing:.08em}
.nut-xem{width:100%;margin-top:24px;min-height:50px}
.nut-xem::after{content:"";position:absolute;inset:0;border-radius:28px}
.nut-xem:focus-visible{outline:0}
.the-su-kien:hover{background:var(--s2)}

@media(min-width:640px){
  .the-su-kien{grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:center;padding:32px}
  .nut-xem{width:auto;min-width:200px;padding:0 28px}
}
@media(min-width:1024px){
  .dau-tong{padding:40px 0 56px}
  .the-su-kien{grid-template-columns:260px minmax(0,1fr);padding:40px 48px}
  .the-su-kien h2{font-size:40px}
  .the-su-kien .ve-so{font-size:80px}
  .luoi-su-kien{padding-bottom:88px}
}
