.zft-bulletin{--zft-ink:#282d2c;--zft-red:#ae3731;--zft-line:#dfd1cc;--zft-wash:#f7f1ee;background:#fff;color:var(--zft-ink);padding:clamp(20px,4vw,52px);margin:28px 0;border:1px solid var(--zft-line);border-radius:4px;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.7}.zft-bulletin *{box-sizing:border-box}.zft-bulletin p{margin:0 0 .6em}.zft-bulletin a{color:var(--zft-red)}.zft-bulletin h2,.zft-bulletin h3,.zft-bulletin h4{color:var(--zft-ink);font-family:inherit;line-height:1.4}.zft-masthead{display:flex;justify-content:space-between;gap:24px;align-items:start;border-bottom:2px solid var(--zft-ink);padding-bottom:24px}.zft-brand{display:flex;align-items:start;gap:18px}.zft-stamp{background:var(--zft-red);color:#fff;padding:12px 9px;font-weight:800;white-space:nowrap}.zft-eyebrow{font-weight:800;letter-spacing:.03em}.zft-masthead h2{font-size:clamp(28px,4vw,40px);margin:4px 0 12px}.zft-subtitle{font-size:20px;font-weight:700}.zft-season{text-align:right;min-width:150px}.zft-season>.zft-emphasis{font-size:clamp(30px,4vw,44px);line-height:1.2;color:var(--zft-red);font-weight:800;white-space:nowrap}.zft-season>p:last-child{font-size:13px;color:#7d7470;margin-top:20px}.zft-jump-links{display:flex;gap:12px 22px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--zft-line)}.zft-jump-links a{font-size:14px;text-decoration:underline;text-underline-offset:5px}.zft-periods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:24px 0 32px}.zft-periods>div{border-left:1px solid var(--zft-line);padding:8px 16px}.zft-periods>div:first-child{border-left:0}.zft-periods h3{font-size:16px;margin:0 0 12px}.zft-periods p{font-size:14px;line-height:1.6}.zft-periods .zft-peak h3{color:var(--zft-red)}.zft-section{margin-top:36px;scroll-margin-top:160px}.zft-section>h3,.zft-section-head h3{font-size:22px;margin:0 0 16px;border-left:7px solid var(--zft-red);padding-left:14px}.zft-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.zft-section-head p{font-size:13px;color:#7d7470}.zft-table-scroll{overflow-x:auto;overscroll-behavior-x:contain;border-bottom:1px solid var(--zft-line)}.zft-table-scroll:focus-visible{outline:3px solid #307baa;outline-offset:3px}.zft-table-scroll table{border-collapse:collapse;width:100%;min-width:670px;font-size:16px}.zft-bulletin caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.zft-bulletin th,.zft-bulletin td{padding:7px 12px;border-bottom:1px solid var(--zft-line);vertical-align:middle}.zft-bulletin table p{margin:0}.zft-table-scroll thead th{background:var(--zft-ink);color:#fff;font-size:14px;text-align:right;white-space:nowrap}.zft-table-scroll thead th:first-child,.zft-table-scroll thead th:nth-child(2){text-align:left}.zft-table-scroll thead th:nth-child(4){background:var(--zft-red)}.zft-table-scroll tbody th{background:#f5f3f0;text-align:left;font-weight:700;white-space:nowrap;border-right:1px solid var(--zft-line)}.zft-table-scroll tbody td{text-align:right;white-space:nowrap;font-weight:700}.zft-table-scroll tbody th+td{text-align:left;font-weight:400}.zft-table-scroll tbody td[colspan]{text-align:center!important;font-weight:700!important;border-left:1px solid var(--zft-line)}.zft-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;scroll-margin-top:160px}.zft-box{border:1px solid var(--zft-line);position:relative;padding:22px;min-width:0}.zft-box:before{content:"";position:absolute;width:52px;height:3px;background:var(--zft-red);top:-2px;left:20px}.zft-box h3,.zft-box h4{font-size:18px;color:var(--zft-red);margin:0 0 16px}.zft-box p{font-size:14px}.zft-box-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.zft-box-head .zft-emphasis{font-size:28px;font-weight:800;line-height:1.2;white-space:nowrap}.zft-compact-table{width:100%;border-collapse:collapse;font-size:14px}.zft-compact-table th,.zft-compact-table td{padding:5px 0;border:0;white-space:normal}.zft-compact-table thead th{font-size:12px;color:#7d7470;font-weight:400;text-align:right}.zft-compact-table tbody th{text-align:left;font-weight:400}.zft-compact-table td{text-align:right;font-weight:800}.zft-price-list{margin:0 0 14px}.zft-price-list>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.zft-price-list dt{font-size:14px}.zft-price-list dd{margin:0;font-size:22px;font-weight:800;white-space:nowrap}.zft-note,.zft-bulletin p.zft-note{font-size:13px;color:#7d7470;line-height:1.65;margin-top:12px}.zft-note-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;font-size:14px;color:#7d7470}.zft-note-columns p{margin:0}.zft-season-table thead th{background:var(--zft-red)}.zft-season-table tbody tr:nth-child(even){background:var(--zft-wash)}.zft-season-table tbody th{background:transparent;font-weight:400}.zft-season-table tbody th+td{text-align:right;font-weight:700}.zft-season-table td.zft-unlisted{color:#877b75;font-weight:400}.zft-child-day{background:var(--zft-wash);padding:22px;display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;margin-top:20px;font-size:14px}.zft-child-day h4{margin:0 0 10px;font-size:18px}.zft-child-day strong{font-size:30px;margin-right:20px}.zft-child-day span{font-size:13px;color:#7d7470}.zft-child-day p{margin:0}.zft-source{border-top:1px solid var(--zft-line);margin-top:40px;padding-top:20px}.zft-source>p{font-size:13px;color:#7d7470}.zft-source-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.zft-source-actions a{border:1px solid var(--zft-red);border-radius:4px;padding:10px 16px;font-size:14px;text-decoration:none;font-weight:700}.zft-source-actions a:hover{background:var(--zft-wash)}@media(max-width:760px){.zft-masthead{flex-wrap:wrap;gap:10px}.zft-season{display:flex;justify-content:space-between;align-items:baseline;text-align:left;width:100%;gap:16px}.zft-season>p:last-child{margin-top:0}.zft-periods{grid-template-columns:repeat(2,minmax(0,1fr))}.zft-periods>div:nth-child(3){border-left:0}.zft-periods>div{padding:10px}.zft-special-grid,.zft-note-columns,.zft-child-day{grid-template-columns:1fr}.zft-section-head{display:block}.zft-box{padding:18px}.zft-box-head h3{font-size:16px}.zft-box-head .zft-emphasis{font-size:25px}.zft-child-day{gap:14px}.zft-table-scroll table{font-size:14px;min-width:620px}.zft-season-table{min-width:540px!important}.zft-section>h3,.zft-section-head h3{font-size:20px}.zft-source-actions{display:grid}.zft-source-actions a{overflow-wrap:anywhere}}

.zft-table-scroll td.zft-person{text-align:left!important;font-weight:400!important}.zft-price-list dd p{font-size:inherit}.zft-child-price-label{font-size:20px;font-weight:700}
@media(max-width:800px){.zft-table-scroll::before{content:"← 左右滑動查看完整票價 →";display:block;position:sticky;left:0;width:100%;padding:6px 0 10px;color:#8c3c35;font-size:12px;font-weight:700}}

.zft-topic-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 20px;padding:0;border:0;background:transparent}.zft-topic-nav a{display:flex;align-items:center;justify-content:center;gap:16px;min-height:94px;padding:20px 18px;border:1px solid #bfd2e0;border-top:5px solid #075bad;border-radius:12px;background:#edf5fc;color:#06285f;box-shadow:0 4px 14px #163d5610;font-size:17px;font-weight:800;text-align:center;text-decoration:none;line-height:1.6}.zft-topic-nav a:nth-child(2){border-color:#e2c9bf;border-top-color:#ae3731;background:#fcf2ed;color:#91352e}.zft-topic-nav a:nth-child(3){border-color:#c0d7d4;border-top-color:#2b716d;background:#eff7f4;color:#235c59}.zft-topic-nav a::after{content:"↓";font-size:22px;line-height:1}.zft-topic-nav a:hover{filter:brightness(.97)}.zft-topic-nav a:focus-visible{outline:3px solid #075bad;outline-offset:4px}.zft-bulletin,.zft-link-section{scroll-margin-top:150px}.zft-link-section{margin:42px 0}.zft-link-section>header{margin-bottom:22px}.zft-link-section h2{margin:0 0 10px;color:#243f4d;font-size:28px}.zft-link-section>header p{margin:0;color:#62737d;line-height:1.8}.zft-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.zft-link-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.zft-link-card{display:flex;min-width:0;flex-direction:column;border:1px solid #dfd1cc;border-top:4px solid #ae3731;border-radius:12px;background:#fff;padding:28px;box-shadow:0 6px 22px #25405608}.zft-link-card h3{margin:0 0 14px;color:#243f4d;font-size:22px;line-height:1.5}.zft-link-card p{margin:0 0 22px;color:#5f727b;font-size:16px;line-height:1.8}.zft-link-card p.zft-link-eyebrow{margin-bottom:12px;color:#ad3731;font-size:12px;font-weight:700;letter-spacing:.08em}.zft-link-card a{margin-top:auto;display:block;text-decoration:none;border:1px solid #d7c8c4;border-radius:8px;padding:12px 16px;color:#9c342e;background:#fcf8f6;font-size:15px;font-weight:700;line-height:1.5}.zft-link-card a:hover{background:#f5ebe7}.zft-link-card a:focus-visible{outline:3px solid #307baa;outline-offset:3px}@media(max-width:800px){.zft-link-grid{grid-template-columns:1fr}.zft-link-card{padding:24px}.zft-topic-nav{grid-template-columns:1fr;gap:12px}.zft-topic-nav a{justify-content:space-between;min-height:70px;padding:16px 20px;text-align:left}.zft-link-section h2{font-size:24px}}

.zft-link-card-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0 0 22px;border-radius:8px;background:#e8f2f8}
