:root{--ivory:#f3efe6;--forest:#14251f;--carbon:#151713;--umber:#5a463a;--bone:#e7e0d5;--rule:#b7afa2;--muted:#746d61}*{box-sizing:border-box}html{background:var(--ivory)}body{background:var(--ivory);color:var(--carbon);margin:0;font-family:Arial,Noto Sans TC,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--forest);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3,.lead,.section-label,.chapter-subtitle{font-family:Georgia, var(--font-editorial-cjk), "Songti TC", "Times New Roman", serif;font-weight:400}h1{letter-spacing:-2.8px;margin:36px 0 20px;font-size:clamp(52px,14vw,76px);line-height:1.08}h2{font-size:30px;line-height:1.2}.maison h1.invitation-gate-heading{letter-spacing:-.6px;margin:24px 0 16px;font-size:clamp(28px,7vw,32px);line-height:1.2}p{margin-bottom:16px}.maison{background:var(--ivory);overscroll-behavior:none;grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-width:480px;margin:auto;padding:0;display:grid;position:fixed;inset:0;overflow:hidden}:is(html:has(.maison),body:has(.maison)){overscroll-behavior:none;background:var(--ivory);height:100%;overflow:hidden}body:has(.maison){width:100%;position:fixed;inset:0}.maison>header{background:var(--ivory);margin-inline:28px}.maison>main{overscroll-behavior:none;background:var(--ivory);-webkit-overflow-scrolling:touch;min-height:0;padding:0 28px 32px;scroll-padding-block:20px;overflow-y:auto}@media (max-width:600px){.maison:has(input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):focus,textarea:focus,[contenteditable=true]:focus)>.bottom-nav{display:none}}.maison header{padding:calc(30px + env(safe-area-inset-top,0px)) 0 25px;border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;display:flex}.brand{letter-spacing:4px;white-space:nowrap;font-family:Georgia,serif;font-size:23px;line-height:1.4}.brand span{letter-spacing:2.4px;margin-top:7px;font-family:Arial,sans-serif;font-size:9px;display:block}.maison header>a:last-child{padding-top:8px}.section-label{justify-content:space-between;margin-top:13px;font-size:19px;display:flex}.section-label span{color:var(--muted)}.lead{margin-bottom:28px;font-size:23px;line-height:1.35}.chapter-composition{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center;margin-bottom:24px;padding:30px 0 18px}.chapter-composition h2,.chapter-title{font-family:Georgia, var(--font-editorial-cjk), "Songti TC", serif;color:var(--umber);letter-spacing:-3px;font-size:74px;line-height:1.2}.chapter-title{margin-top:32px;font-size:86px}.chapter-subtitle{margin:0 0 16px;font-size:25px;font-style:italic}.artists{font-family:Georgia, var(--font-editorial-cjk), "Songti TC", serif;letter-spacing:4px;margin:20px 0;font-size:24px}.dateline{letter-spacing:2px;margin:24px 0 8px;font-size:11px}.caption{color:var(--muted);font-size:11px;line-height:1.6}.body-note{margin:24px 0 30px;font-size:14px;line-height:1.9}.button{border:1px solid var(--forest);width:100%;color:var(--ivory);background:var(--forest);justify-content:space-between;align-items:center;gap:12px;min-height:58px;margin:18px 0;padding:15px 22px;font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:400;display:flex}.button.outline{color:var(--carbon);border-color:var(--carbon);background:0 0}.button:hover{filter:brightness(1.15)}.text-button{color:var(--muted);background:0 0;border:0;padding:14px 0;font-size:13px;text-decoration:underline}.text-link{justify-content:space-between;align-items:center;margin:20px 0;font-size:14px;display:flex}.bottom-nav{background:var(--forest);width:100%;color:var(--ivory);border-top:1px solid var(--forest);padding:8px 12px max(8px, env(safe-area-inset-bottom,0px));z-index:10;grid-template-columns:1.1fr .8fr 1fr 1fr;gap:4px;display:grid;position:relative}.maison .member-heading h1{letter-spacing:-.5px;overflow-wrap:anywhere;margin:8px 0 12px;font-size:clamp(28px,8vw,36px);line-height:1.3}.member-heading{padding-block:28px 20px}.member-heading>p:last-child{color:var(--muted);font-size:14px}.member-section{border-top:1px solid var(--rule);padding-block:24px}.member-section h2{margin-bottom:18px;font-size:22px}.member-section h3{font-size:21px}.member-details{margin:0 0 14px;font-size:14px}.member-details>div{justify-content:space-between;gap:16px;padding-block:8px;display:flex}.member-details dt{color:var(--muted)}.member-details dd{text-align:right;margin:0}.notification-options{border:0;margin:0 0 20px;padding:0}.inbox-message{border-top:1px solid var(--rule);padding:20px 0}.inbox-account>details{margin-bottom:16px}.notification-options label{align-items:center;gap:12px;min-height:48px;display:flex}.notification-options input{width:20px;height:20px;accent-color:var(--forest)}.bottom-nav a{text-align:center;white-space:nowrap;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;min-height:44px;padding:0 4px;font-family:Georgia,serif;font-size:13px;display:flex}.bottom-nav a[aria-current=page]{background:var(--ivory);color:var(--forest);font-weight:700;text-decoration:none}.bottom-nav a:focus-visible{outline-offset:1px;outline:2px solid #c5b47f}.service-note{border-top:1px solid var(--rule);color:var(--muted);margin:28px 0;padding:20px 0;font-size:13px}.host-note{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:30px 0;padding:26px 0}.host-note h2{margin-bottom:18px;font-size:25px}.host-note p{font-size:15px;line-height:2}.host-note span{font-family:Georgia, var(--font-editorial-cjk), "Songti TC", serif;color:var(--umber);font-style:italic}.evening-outline{color:var(--umber);justify-content:space-between;gap:15px;font-size:11px;display:flex}.form-heading{font-size:60px}.rsvp-heading{letter-spacing:0;font-size:clamp(28px,7vw,36px);line-height:1.35}form>label,form>fieldset{margin:23px 0;display:block}label,legend{font-family:Georgia, var(--font-editorial-cjk), "Songti TC", serif;font-size:17px}input:not([type=checkbox]),select,textarea{border:1px solid var(--rule);width:100%;min-height:48px;color:var(--carbon);background:0 0;border-radius:0;margin-top:6px;padding:12px;font-family:Arial,sans-serif;font-size:16px;display:block}input::placeholder,textarea::placeholder{color:#8c8479}fieldset{border:0;padding:0}legend{margin-bottom:8px}.choices{grid-template-columns:1fr 1fr;gap:12px;display:grid}.choices label{border:1px solid var(--rule);align-items:center;gap:10px;padding:12px;font-size:17px;display:flex}input[type=checkbox]{width:19px;height:19px;accent-color:var(--forest);flex-shrink:0}.check{align-items:flex-start;gap:9px;margin-top:15px;font-family:Arial,sans-serif;font-size:12px;line-height:1.7;display:flex}.check a{text-underline-offset:3px;text-decoration:underline}.check>span{min-width:0}.check input[type=checkbox]{margin:2px 0 0}.error{color:#933e2e;margin-top:16px;font-size:13px}.schedule{border-top:1px solid var(--rule);margin-top:36px}.schedule>div{border-bottom:1px solid var(--rule);font-family:Georgia, var(--font-editorial-cjk), "Songti TC", serif;grid-template-columns:88px 1fr;gap:28px;padding:30px 0;font-size:24px;display:grid}.schedule time{border-right:1px solid var(--rule)}.schedule small{color:var(--muted);margin-top:6px;font-family:Arial,sans-serif;font-size:10px;display:block}.venue{margin:30px 0}.venue dt{color:var(--muted);margin-top:18px;font-size:12px}.venue dd{white-space:pre-line;margin:5px 0;font-size:14px}.evening-page .evening-title{letter-spacing:0;overflow-wrap:anywhere;margin:20px 0 12px;font-size:clamp(24px,6.5vw,30px);line-height:1.4}.evening-page .dateline{letter-spacing:.03em;text-align:left;margin:12px 0 20px;font-size:12px}.evening-page .schedule{margin-top:20px}.evening-page .schedule>div{grid-template-columns:52px minmax(0,1fr);gap:14px;padding:18px 0;font-size:16px;line-height:1.5}.evening-page .schedule small{font-size:12px}.evening-page .venue{margin:20px 0}.evening-page .button{margin-top:20px;font-size:17px}.journal-row,.profile-record,.invitation-row{border-top:1px solid var(--rule);margin-top:25px;padding:25px 0}.journal-row p{margin:14px 0;font-size:14px}.legal{max-width:660px;margin:auto;padding:45px 28px}.legal h1{font-size:48px}.legal p{margin-top:25px;line-height:2}.skip{position:absolute;left:-1000px}.skip:focus{background:var(--ivory);z-index:100;padding:10px;position:fixed;top:0;left:20px}.admin{max-width:1200px;margin:auto;padding:32px}.admin h1{font-size:48px}.admin header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.admin-grid{grid-template-columns:1fr 1fr;gap:36px;margin:30px 0;display:grid}.admin section{border-top:1px solid var(--rule);margin-top:30px;padding-top:24px}.admin .button{width:auto;font-size:16px}.admin table{border-collapse:collapse;width:100%;font-size:13px}.admin th,.admin td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:14px 10px}.admin th{color:var(--muted);font-weight:400}.admin .table-wrap{overflow-x:auto}.admin textarea{min-width:160px}.admin .admin-stats{flex-wrap:wrap;gap:25px;margin-top:24px;display:flex}.admin-stats span{color:var(--muted);font-size:12px}.admin-stats strong{color:var(--forest);font-family:Georgia,serif;font-size:36px;font-weight:400;display:block}@media (min-width:700px){.maison,.bottom-nav{border-inline:1px solid #d5cec0}.maison h1{font-size:70px}}@media (max-width:700px){.admin{padding:22px}.admin-grid{grid-template-columns:1fr;gap:12px}.admin header{align-items:flex-start;gap:20px}.admin .brand{letter-spacing:2px;font-size:18px}}@media (prefers-reduced-motion:no-preference){.button{transition:filter .2s}main{animation:.35s reveal}@keyframes reveal{0%{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}}.artist-dialogue{text-align:center;margin:32px 0 24px}.artist-voices{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;padding:0 10px;display:grid}.artist-voices>div{padding:0 8px}.artist-voices>div:last-child{border-left:1px solid var(--rule)}.artist-voices span{font-family:Georgia,var(--font-editorial-cjk),"Songti TC",serif;color:var(--forest);letter-spacing:3px;white-space:nowrap;font-size:clamp(28px,8.8vw,38px);line-height:1.4;display:block}.artist-voices small{letter-spacing:3px;color:var(--forest);font-family:Georgia,serif;font-size:18px;display:block}.artist-dialogue .framing{font-family:Georgia,var(--font-editorial-cjk),"Songti TC",serif;letter-spacing:.7px;color:var(--umber);margin:26px 0 0;font-size:13px}.artist-dialogue .refraction{font-family:Georgia,var(--font-editorial-cjk),"Songti TC",serif;letter-spacing:.6px;color:var(--umber);font-size:13px;font-style:italic}.evening-outline{flex-wrap:wrap}.program-number{display:none}.chapter-create{border-bottom:1px solid var(--rule);padding:20px 0}.chapter-create summary{cursor:pointer;font-family:Georgia,serif}
