:root{--navy:#081336;--cyan:#3dedf5;--white:#fff;--text-soft:#c5d6ee;--lime:#a6ce36;--font:Arial,"Microsoft YaHei","PingFang SC",sans-serif;--line:rgba(132,232,255,.38)}
*{box-sizing:border-box}html{background:#050b20}body{margin:0;font-family:var(--font);color:var(--white);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--lime);outline-offset:5px}[hidden]{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.event-shell{position:relative;isolation:isolate;margin:auto;width:100%;max-width:480px;min-height:max(100svh,760px);overflow:hidden;background:var(--navy) url('../assets/event-background.webp') center bottom / cover no-repeat;box-shadow:0 0 100px rgba(26,79,168,.12)}.event-shell:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(5,9,32,.18),rgba(7,15,49,.24) 42%,rgba(7,15,49,.02) 78%)}.topbar{height:86px;padding:18px 23px 12px;padding-top:max(18px,env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between}.nav-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;transition:background .2s}.nav-icon .icon{width:29px;height:29px}.nav-icon:hover{background:rgba(255,255,255,.12)}.nav-spacer{width:30px}.topbar-label{font-size:9px;letter-spacing:2.7px;color:#c3d4ef}.day-pill{display:flex;align-items:center;gap:7px;border:1px solid rgba(164,213,255,.28);padding:4px 13px;border-radius:20px;color:#eff7ff;font-size:13px;letter-spacing:1px;background:rgba(7,23,66,.3)}.day-pill .icon{width:14px;height:14px}.page-content{padding:0 31px 205px}.brand{display:inline-block;background:var(--lime);color:#272f31;padding:8px 12px;font-size:18px;font-family:Arial,sans-serif;font-weight:1000;letter-spacing:-.8px;line-height:1.35;min-width:114px;text-align:center;box-shadow:0 1px 0 rgba(255,255,255,.2)}.ceremony-heading{margin:34px 0 33px}.eyebrow{font-size:9px;letter-spacing:2.1px;line-height:1.6;color:var(--cyan);font-weight:600;margin:0 0 10px}.ceremony-heading h1{margin:0;font-size:31px;font-weight:900;letter-spacing:1px;line-height:1.32;background:linear-gradient(180deg,#fff 43%,#c8fcff 68%,#3fe9f3);background-clip:text;-webkit-text-fill-color:transparent}.ceremony-heading h1 span{display:block}.ceremony-en{font-size:9px;letter-spacing:1.5px;margin:14px 0 0;white-space:nowrap}.section-caption{margin-bottom:15px;display:flex;align-items:baseline;justify-content:space-between;gap:8px}.section-caption h2{font-size:15px;font-weight:500;margin:0}.section-caption>span{font-size:10px;color:var(--text-soft)}.date-cards{display:grid;gap:16px}.date-card{display:flex;align-items:center;gap:18px;min-height:105px;padding:16px 21px;background:linear-gradient(110deg,rgba(174,190,222,.32),rgba(86,119,158,.24));border:1px solid rgba(227,239,255,.37);border-bottom:2px solid var(--cyan);border-radius:9px;backdrop-filter:blur(7px);transition:background .2s,border-color .2s}.date-card:hover,.date-card:active{background:rgba(44,167,189,.35);border-color:var(--cyan)}.day-number{font-size:42px;font-weight:750;line-height:1;letter-spacing:-2px}.day-number>span{font-size:12px;font-weight:400;letter-spacing:0;margin-left:5px}.date-card-info{display:grid;gap:5px;flex:1;min-width:0}.date-card-info strong{font-size:16px;font-weight:500}.date-card-info>span{font-size:10px;color:var(--text-soft)}.date-card>.icon{width:21px}.welcome-note{text-align:center;margin:36px 0 0;font-size:12px;letter-spacing:3px;color:#d0e1f2}.welcome-note span{font-size:8px;letter-spacing:2px}.service-cards{display:grid;gap:24px}.service-card{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:129px;padding:21px 21px 22px;border:1px solid rgba(236,248,255,.4);border-bottom:2px solid var(--cyan);border-radius:9px;background:linear-gradient(115deg,rgba(196,201,216,.41),rgba(132,151,182,.37));backdrop-filter:blur(5px);transition:background .2s,border-color .2s;overflow:hidden}.service-card:hover,.service-card:active{background:rgba(93,177,199,.43);border-color:var(--cyan)}.service-card h2{font-size:25px;font-weight:600;line-height:1.3;letter-spacing:1px;margin:0 0 2px}.service-card p{font-size:13px;margin:0}.card-note{display:block;color:#e0edfa;font-size:10px;margin-top:12px}.service-icon{width:44px;height:44px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;align-self:flex-end}.card-index{position:absolute;right:19px;top:11px;font-size:8px;letter-spacing:2px;color:#e0ecfa}.event-footer{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:31px;right:31px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:rgba(232,248,255,.76)}.event-footer span:first-child{font-weight:900;letter-spacing:-.4px}.page-notice{border:1px solid var(--line);background:rgba(6,27,66,.82);padding:12px 14px;margin:16px 0;font-size:13px;color:#e1f8ff;border-radius:6px}.lookup-section{margin-top:68px}.lookup-heading{margin-bottom:33px}.lookup-heading h1{font-size:30px;font-weight:600;letter-spacing:3px;margin:0 0 1px}.lookup-heading>p:last-child{font-size:13px;letter-spacing:1px;margin:0;color:#d0e2f5}#seat-form>label{display:block;font-size:15px;margin-bottom:12px}#seat-form>label span{display:block;font-size:11px;color:#c3d3ed;margin-top:3px}.name-field{display:flex;align-items:stretch;border:1.5px solid rgba(250,255,255,.91);background:linear-gradient(110deg,rgba(39,191,209,.65),rgba(23,178,200,.46));border-radius:9px;min-height:61px;transition:border-color .2s,box-shadow .2s}.name-field:focus-within{border-color:var(--cyan);box-shadow:0 0 20px rgba(44,222,235,.19)}.name-field input{background:none;min-width:0;width:100%;border:0;color:#fff;padding:15px 16px;font-size:18px;outline:none}.name-field input:focus-visible{outline:0}.name-field input::placeholder{color:#def8fa}.name-field button{display:grid;place-items:center;min-width:58px;color:#fff;border:0;background:none;border-radius:7px}.name-field button .icon{width:28px;height:28px}.lookup-hint{font-size:11px;line-height:1.7;color:#cfddf0;margin:14px 0 25px}.lookup-hint>span{display:block;font-size:10px;color:#bdcce2}.query-button{display:flex;align-items:center;justify-content:center;gap:12px;border:0;width:100%;border-radius:7px;padding:15px;background:var(--cyan);color:#092b44;font-size:15px;font-weight:700;transition:background .2s}.query-button>span{font-size:11px;font-weight:400}.query-button>.icon{width:18px;height:18px}.query-button:hover{background:#8bfbff}.lookup-error{background:rgba(44,17,34,.85);border:1px solid #d2a2ad;color:#ffe9eb;border-radius:6px;padding:12px;font-size:13px;margin-bottom:15px}.lookup-error span{display:block;font-size:11px;margin-top:4px}.seat-result{margin-top:20px;outline:none}.result-heading{text-align:center;margin:0 0 24px}.result-heading h1{font-size:31px;letter-spacing:3px;font-weight:500;margin:0;line-height:1.3;background:linear-gradient(#fff 35%,#64eff5);background-clip:text;-webkit-text-fill-color:transparent}.result-heading>p:last-child{font-size:11px;letter-spacing:1px;color:var(--cyan);margin:4px 0 0}.result-heading>.eyebrow{font-size:8px;margin-bottom:7px}.seat-chart-frame{position:relative;padding:11px;border:1px solid rgba(212,248,255,.86);border-left-color:transparent;border-right-color:transparent}.seat-chart-frame:before,.seat-chart-frame:after{content:"";position:absolute;height:72%;width:9px;border:1px solid rgba(212,248,255,.86);top:20%;pointer-events:none}.seat-chart-frame:before{left:-3px;border-right:0}.seat-chart-frame:after{right:-3px;border-left:0;top:8%}.seat-chart{padding:0 13px 20px;background:rgba(14,22,78,.9);border:1px solid #47e6f1;border-radius:12px;box-shadow:0 0 17px rgba(43,241,245,.62),inset 0 0 30px rgba(31,49,96,.3);overflow:hidden}.stage{height:53px;margin:0 -3px 16px;clip-path:polygon(25% 0,75% 0,100% 80%,97% 100%,3% 100%,0 80%);background:#bcc1df;color:#151d56;text-align:center;padding-top:12px;line-height:1.1}.stage>span{font-size:14px;font-weight:700;letter-spacing:2px}.stage small{font-size:7px;display:block;letter-spacing:1px;margin-top:4px}.table-grid{display:grid;gap:11px}.table-row{display:flex;justify-content:space-between;gap:3px}.table-row.short-row{padding:0 12px}.table-disc{display:flex;align-items:center;justify-content:center;min-width:0;width:22px;height:22px;border-radius:50%;font-family:Arial,sans-serif;font-size:11px;font-weight:700;background:#f3f8ff;color:#131b57;line-height:1;flex-shrink:0}.table-disc.is-selected{background:var(--cyan);color:#072346;box-shadow:0 0 0 2px rgba(82,237,255,.18),0 0 12px rgba(71,232,250,.8);position:relative}.table-disc.is-selected:after{content:"";position:absolute;inset:-4px;border:1px solid var(--cyan);border-radius:50%}.seat-summary{text-align:center;background:var(--cyan);color:#10244e;border-radius:8px 8px 0 0;margin-top:12px;padding:10px 4px 11px}.seat-guest{font-size:10px;font-weight:500;display:block;margin-bottom:3px;overflow-wrap:anywhere}.seat-summary p{font-size:18px;font-weight:700;margin:0;line-height:1.25}.seat-summary strong{color:#fff;background:#132557;padding:1px 6px;border-radius:3px;margin:0 2px;display:inline-block;font-size:22px;line-height:1.25}.summary-en{font-size:11px;display:block;margin-top:4px}.summary-en b{font-size:12px}.chart-legend{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;color:#e2edff;margin-top:12px}.chart-legend>span:last-child{color:#becfe6;font-size:9px}.legend-dot{width:7px;height:7px;border-radius:50%;background:var(--cyan)}.another-query{background:rgba(22,56,103,.5);color:#e8f9ff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0 0;padding:11px 15px;width:100%;border-radius:6px;min-height:44px;font-size:13px}.another-query>span{font-size:10px;color:#c0d4ef}.another-query .icon{width:16px}.page-seat .page-content{padding-bottom:185px}.page-seat.has-result .page-content{padding-bottom:140px}.page-seat.has-result .event-shell{min-height:900px}.page-seat.has-result .event-shell:before{background:rgba(4,13,37,.2)}
@media(min-width:481px){body{padding:22px 0}.event-shell{border-radius:15px;min-height:850px}.topbar{height:90px}.page-content{padding-left:37px;padding-right:37px}.ceremony-heading h1{font-size:35px}.service-card{min-height:145px}.table-disc{width:25px;height:25px;font-size:12px}.table-grid{gap:12px}.page-seat.has-result .event-shell{min-height:960px}.event-footer{left:37px;right:37px}}
@media(max-width:359px){.page-content{padding-left:23px;padding-right:23px}.ceremony-heading h1{font-size:27px}.date-card{gap:13px;padding:15px}.date-card-info strong{font-size:14px}.ceremony-en{font-size:8px;letter-spacing:1px}.service-card h2{font-size:23px}.table-disc{width:19px;height:19px;font-size:9px}.table-grid{gap:10px}.table-row.short-row{padding:0 10px}.seat-chart{padding-left:9px;padding-right:9px}.seat-summary p{font-size:16px}.query-button{gap:7px}.lookup-section{margin-top:50px}.result-heading h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
