:root{font-family:Arial,"Noto Sans TC","PingFang TC",sans-serif;color:#201e50;background:#faf9f6;font-synthesis:none;--navy:#201e50;--gold:#aa7d35;--muted:#6f6c7f;--line:#e0dde5;--paper:#faf9f6;--serif:"Songti TC","Noto Serif TC","PMingLiU",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #bf944e;outline-offset:4px}header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(6%,calc((100vw - 1160px)/2));color:#fff;background:#111426;border-bottom:1px solid #ffffff24}.brand{display:flex;gap:20px;align-items:center;text-decoration:none;color:inherit;font-family:Georgia,serif;font-size:29px;letter-spacing:2px}.brand span{border-left:1px solid #ffffff42;padding-left:20px;font-family:Arial,"PingFang TC",sans-serif;font-size:12px;letter-spacing:2px;font-weight:400}.header-note{font-size:12px;color:#e5d7ba;text-decoration:none;letter-spacing:1px}.hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;color:#fff;background:#101625;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero::before{content:"";position:absolute;inset:0;background:#080f2333;z-index:-1}.hero-content{width:min(1160px,88%);margin:auto;padding:54px 0 64px}.year{font-family:Georgia,serif;font-size:26px;letter-spacing:6px;color:#e2bd72;margin:0 0 24px}.hero h1{font-family:var(--serif);font-size:clamp(48px,6.1vw,80px);font-weight:500;line-height:1.3;letter-spacing:.055em;margin:0;color:#fff}.hero-english{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(24px,2.9vw,38px);line-height:1.4;margin:18px 0 0;color:#fff}.hero-copy{font-family:var(--serif);font-size:22px;letter-spacing:3px;margin:26px 0 12px;padding-top:0;border-top:0;width:fit-content;color:#f7e6c5}.hero-copy::before{content:"";display:block;width:46px;border-top:2px solid #bf944e;margin-bottom:24px}.hero-description{font-size:14px;line-height:1.9;letter-spacing:.8px;margin:0;color:#e6e6ec}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}.hero-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 28px;border:1px solid #eeedf3;border-radius:100px;background:#201e50;color:#fff;text-decoration:none;font-size:14px;letter-spacing:1px;transition:background .15s}.hero-button.secondary{background:#10162538}.hero-button:hover{background:#3a366e}.hero-button.secondary:hover{background:#ffffff20}.hero-caption{position:absolute;bottom:16px;right:6%;font-size:10px;color:#e9e7df;letter-spacing:1px}main{max-width:1240px;padding:0 40px;margin:auto}.facts{display:grid;grid-template-columns:1.2fr 1.1fr 1fr;gap:30px;padding:36px 0}.facts>div{display:grid;gap:12px;padding-left:30px;border-left:1px solid var(--line)}.facts>div:first-child{padding-left:0;border-left:0}.facts span{font-size:11px;letter-spacing:1px;color:var(--muted)}.facts strong{font-family:Georgia,var(--serif);font-size:23px;letter-spacing:.3px;font-weight:500}.facts small{font-family:Arial,sans-serif;font-size:12px;font-weight:400}.booking-dates{display:flex;align-items:center;gap:40px;border-block:1px solid var(--line);padding:24px 0;margin-bottom:26px}.booking-dates>strong{font-family:Georgia,var(--serif);font-weight:500;font-size:27px;white-space:nowrap}.booking-dates small{font-family:Arial,sans-serif;font-size:11px;font-weight:400;color:var(--muted)}.booking-dates p{font-size:13px;line-height:1.9;margin:0}.notice{font-size:12px;background:#f2ebdc;color:#735724;border-left:2px solid #b38b46;padding:15px 18px;line-height:1.8;margin:0 0 30px}.notice.open{background:#efedf7;border-color:#67608f;color:var(--navy)}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:28px;align-items:start}.schedule,.booking{background:#fff;border:1px solid var(--line);border-radius:4px;padding:26px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title>div{display:flex;align-items:center;gap:12px}h2{font-family:var(--serif);font-size:23px;letter-spacing:1px;font-weight:600;margin:0}h3{font-family:var(--serif);font-size:17px;letter-spacing:.5px;margin:0 0 10px}.step{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid #c5ae87;color:#95702e;font-family:Georgia,serif;font-size:12px;flex-shrink:0}.section-title>span{font-size:10px;color:var(--muted)}.hint{font-size:12px;color:var(--muted);line-height:1.8;margin:16px 0 22px}table{width:100%;border-collapse:collapse;text-align:center;table-layout:fixed}th{font-size:12px;background:#f1eff5;padding:15px 3px;font-weight:500;letter-spacing:.5px}th:first-child{width:23%}td{padding:9px 6px;border-bottom:1px solid #eeebf1;font-size:18px;font-weight:500}td:first-child{font-family:Georgia,serif;font-variant-numeric:tabular-nums}td button{display:flex;flex-direction:column;align-items:center;gap:7px;width:100%;min-height:62px;padding-bottom:9px;border:1px solid #dcd7e5;border-radius:5px;color:#514d70;background:#fff;transition:.15s}td button:hover{background:#f4f2f8;border-color:#9f94b4}td button.selected{background:var(--navy);color:#fff;border-color:var(--navy)}td button small{font-size:10px;font-weight:400}td button .seat-count{font-size:12px;font-weight:600;padding-top:10px}td button:disabled{opacity:.55;background:#efedf3}.footnote{font-size:10px;line-height:1.8;color:var(--muted);margin:20px 0 0}.selection{background:#f2eff7;border-left:2px solid #b18b4b;border-radius:2px;padding:15px;font-size:13px;line-height:1.8;margin:22px 0;color:#51466c}.booking label:not(.consent){display:flex;justify-content:space-between;margin:18px 0 8px;font-size:12px;font-weight:600}.booking label>span{color:var(--muted);font-size:10px;font-weight:400}.booking input:not([type=checkbox]){width:100%;height:47px;border:1px solid #d1cbdc;border-radius:4px;padding:10px 12px;font-size:14px;color:var(--navy);background:#fff}.booking input::placeholder{color:#8d879a}.field-note{font-size:11px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}.consent{display:flex;gap:8px;align-items:flex-start;margin:22px 0}.consent input{margin:3px 0 0;accent-color:var(--navy);width:15px;height:15px;flex-shrink:0}.booking .consent span{font-size:11px;line-height:1.8;color:var(--muted)}.primary{display:block;width:100%;padding:15px 20px;border:1px solid var(--navy);border-radius:100px;background:var(--navy);color:#fff;font-size:14px;font-weight:500;text-decoration:none;text-align:center;letter-spacing:.5px}.primary:hover:not(:disabled){background:#373268}.primary:disabled{background:#e7e3ee;border-color:#e7e3ee;color:#797185}.text-button{display:block;border:0;background:none;color:#62517a;font-size:11px;margin:18px auto 0;padding:6px;text-decoration:underline;text-underline-offset:4px}.payment-note{display:flex;gap:14px;padding:24px 12px}.payment-note p{color:var(--muted);font-size:12px;line-height:1.8;margin:8px 0}.payment-note p:last-child{color:#8f6b2c;font-size:11px}#feedback{font-size:12px;line-height:1.8;overflow-wrap:anywhere;color:#91442c}#feedback a{display:block;margin-top:12px}#feedback button{margin-top:12px;width:100%;padding:10px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:44px;padding:24px 0 35px;color:var(--muted);font-size:10px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:500;color:var(--gold)}dialog{border:1px solid #c7b18d;border-radius:6px;width:min(560px,calc(100% - 36px));padding:36px;color:var(--navy);background:#fff;box-shadow:0 16px 90px #0c102a55}dialog::backdrop{background:#0c102bc7}dialog h2{margin:15px 0 22px;font-size:26px}dialog p{font-size:13px;line-height:1.8}dialog dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px;padding:20px 0;border-top:1px solid var(--line);font-size:13px;margin-top:25px}dialog dt{color:var(--muted)}dialog dd{margin:0;overflow-wrap:anywhere}.close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:27px;color:#82718e}.group-players{padding:0;margin:20px 0;list-style:none;display:grid;gap:10px}.group-players li{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:4px;padding:16px;font-size:15px;overflow-wrap:anywhere}.group-seat{font-family:Georgia,serif;font-size:12px;color:var(--gold);font-variant-numeric:tabular-nums;flex-shrink:0}.group-players .empty-seat{background:#f7f5f9;color:#81798e;border-style:dashed}#group-summary{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:950px){.workspace{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);gap:18px}.schedule,.booking{padding:20px}.section-title{flex-wrap:wrap}.facts{gap:20px}.facts>div{padding-left:20px}.facts strong{font-size:20px}.section-title>span{margin-left:40px}.hero{min-height:610px}}@media(max-width:700px){header{padding:0 22px;height:64px}.header-note{display:none}main{padding:0 18px}.hero{min-height:600px}.hero-content{width:88%;padding:46px 0 60px}.hero-image{object-position:78% center}.hero::before{background:#080f2366}.year{font-size:21px;margin-bottom:22px}.hero h1{font-size:clamp(38px,8.4vw,54px);letter-spacing:.025em}.hero-english{font-size:clamp(21px,4.7vw,30px);margin-top:16px}.hero-copy{font-size:20px;margin-top:25px}.hero-description{font-size:12px;letter-spacing:.25px}.hero-actions{gap:10px;margin-top:24px}.hero-button{padding:12px 22px;min-height:48px;font-size:12px}.facts{grid-template-columns:1fr 1fr;gap:24px 12px;padding:28px 4px}.facts>div{gap:10px;padding-left:14px}.facts>div:nth-child(3){grid-column:1/-1;padding-left:0;border:0}.facts strong{font-size:19px}.workspace{grid-template-columns:1fr;gap:20px}.schedule,.booking{padding:22px 17px}.section-title>span{margin-left:0}h2{font-size:21px}.notice{font-size:12px;margin-bottom:22px}td{padding:8px 4px}footer{flex-direction:column;gap:10px;margin-top:18px}dialog{padding:30px 22px}dialog h2{font-size:23px}.booking-dates{display:block;padding:22px 4px}.booking-dates p{margin-top:14px}.booking-dates>strong{font-size:26px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,.hero,.notice,.booking,.payment-note,footer{display:none}main{padding:0}.workspace{display:block}.schedule{border:0;padding:0}td button{border:0}}

[hidden]{display:none!important}.practice-days{display:flex;justify-content:center;gap:12px;padding:14px 20px;background:#171830;border-bottom:1px solid #ffffff24}.practice-days button{padding:11px 22px;border:1px solid #81778d;border-radius:100px;background:transparent;color:#e5e2ed;font-size:13px;letter-spacing:.5px}.practice-days button.active{background:#f0e5cb;border-color:#dfc38f;color:#282342}.practice-days button:disabled{opacity:.6}.event-competition{font-family:var(--serif);font-size:20px;line-height:1.7;margin:28px 0 10px}.event-source{font-size:12px;color:#8f6b2c;text-underline-offset:4px}#practice-deadlines{white-space:pre-line}@media(max-width:500px){.practice-days{gap:8px;padding:12px}.practice-days button{flex:1;font-size:11px;padding:11px 8px}.event-competition{font-size:18px}}

#practice-fee>small{display:block;margin-top:10px;font-family:Arial,"PingFang TC",sans-serif;font-size:12px;font-weight:400;color:var(--gold)}.practice-days{flex-wrap:wrap}@media(max-width:500px){.practice-days button{flex:1 1 30%;font-size:10px;padding:11px 5px}}
