/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#27465a;--green:#78b9df;--gold:#e9a45e;--cream:#f6f8f8;--line:#d9e1e5}*{box-sizing:border-box}body{color:var(--ink);background:#f4f1ea;margin:0;font-family:Noto Sans TC,Microsoft JhengHei,sans-serif}button,input{font:inherit}button{cursor:pointer}body:before{content:"";pointer-events:none;opacity:.25;background-image:linear-gradient(90deg,#0000 49.8%,#275e530a 50%),linear-gradient(#275e5308 1px,#0000 1px);background-size:100% 100%,100% 24px;position:fixed;inset:0}.topbar{border-bottom:1px solid var(--line);z-index:2;background:#faf8f2;align-items:center;height:92px;padding:0 5vw;display:flex;position:relative}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:flex}.brandMark{border:1px solid var(--green);place-items:center;width:44px;height:44px;font-family:serif;font-size:23px;display:grid}.brand b{letter-spacing:.18em;display:block}.brand small{letter-spacing:.18em;color:#8f7b5f;margin-top:3px;font:9px Georgia,serif;display:block}.switcher{background:#fbe9e7;border-radius:4px;padding:5px;position:absolute;left:50%;transform:translate(-50%)}.switcher button{color:#777267;letter-spacing:.12em;background:0 0;border:0;border-radius:3px;padding:10px 34px;font-weight:700}.switcher button.active{color:#71352f;background:#f3b8b1;box-shadow:0 2px 8px #a85c5233}.status{color:#61706c;margin-left:auto;font-size:13px}.status i{background:#56a776;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block;box-shadow:0 0 0 4px #56a77620}.deskPage,.hostPage{max-width:1180px;margin:auto;padding:58px 28px 70px}.intro{text-align:center;margin-bottom:38px}.eyebrow{letter-spacing:.3em;color:var(--gold);font:700 12px Georgia,serif}.intro h1,.hostHeader h1{letter-spacing:.1em;margin:10px 0;font:700 42px Georgia,Noto Serif TC,serif}.intro>p:last-child,.hostHeader>div>p:last-child{color:#78756e}.deskGrid{grid-template-columns:1fr 1.08fr;gap:28px;display:grid}.card{border:1px solid var(--line);background:#fffdf8;padding:34px;box-shadow:0 14px 40px #2439340f}.cardTitle{border-bottom:1px solid #e9e4da;align-items:center;gap:16px;margin-bottom:28px;padding-bottom:22px;display:flex}.cardTitle>span{color:var(--gold);font:italic 18px Georgia,serif}.cardTitle h2{letter-spacing:.1em;margin:0;font:700 21px Georgia,Noto Serif TC,serif}.cardTitle p{color:#8b867b;margin:5px 0 0;font-size:12px}.formCard{flex-direction:column;display:flex}.formCard label{letter-spacing:.08em;margin:22px 0;font-size:14px;font-weight:700;display:block}.formCard label span{color:var(--gold);margin-left:4px}.formCard input{background:#fbfaf6;border:1px solid #cfc8b8;outline:none;width:100%;margin-top:10px;padding:15px 16px}.formCard input:focus{border-color:var(--green);box-shadow:0 0 0 3px #275e5312}.submit{background:var(--green);color:#fff;letter-spacing:.14em;border:0;width:100%;margin-top:9px;padding:16px;font-weight:700}.submit:disabled{opacity:.6}.notice{color:#28623f;text-align:center;background:#e8f3ec;margin-top:14px;padding:12px;font-size:13px}.guestList{min-height:280px}.guestList article{border-bottom:1px solid #eee9df;align-items:center;gap:13px;padding:13px 0;display:flex}.avatar,.hostAvatar{width:39px;height:39px;color:var(--green);background:#e2ebe6;border-radius:50%;place-items:center;font-family:serif;display:grid}.guestList h3{margin:0;font-size:15px}.guestList p{color:#857e72;margin:4px 0 0;font-size:12px}.guestList time{color:#999184;margin-left:auto;font:13px Georgia,serif}.guestList article button{color:#b7aea0;background:0 0;border:0;font-size:20px}.empty{text-align:center;color:#948e82;padding:42px 20px}.empty span{width:48px;height:48px;color:var(--gold);border:1px solid #cdbf9f;border-radius:50%;place-items:center;margin:auto;font-family:serif;display:grid}.empty h3{color:var(--ink);margin:15px 0 4px}.empty p{margin:0;font-size:13px}.hostPage{max-width:1050px}.hostHeader{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding-bottom:32px;display:flex}.hostHeader h1{margin-bottom:8px}.count{text-align:right;justify-content:flex-end;align-items:baseline;gap:7px;display:flex}.count strong{color:var(--gold);font:58px/1 Georgia,serif}.count span{color:#777;font-size:13px}.search{border:1px solid var(--line);background:#fffdf8;align-items:center;margin:30px 0 16px;padding:0 18px;display:flex}.search span{color:var(--gold);font-size:25px}.search input{background:0 0;border:0;outline:none;flex:1;padding:17px 12px}.search em{color:#8d887e;font-size:12px;font-style:normal}.hostList{border:1px solid var(--line);background:#fffdf8;min-height:330px}.hostList article{border-bottom:1px solid #eee9df;align-items:center;padding:22px 30px;display:flex}.number{color:#b69b73;width:48px;font:italic 14px Georgia,serif}.hostAvatar{flex:none;width:2cm;height:2cm;margin-right:18px;font-size:22px;overflow:hidden}.hostAvatar img{object-fit:cover;width:100%;height:100%;display:block}.guestInfo p{color:var(--gold);letter-spacing:.12em;margin:0 0 3px;font-size:12px}.guestInfo h2{letter-spacing:.12em;margin:0;font:700 23px Georgia,Noto Serif TC,serif}.hostList time{text-align:right;margin-left:auto;font:16px Georgia,serif}.hostList time small{color:#999;letter-spacing:.1em;margin-bottom:5px;font:10px sans-serif;display:block}.empty.large{padding:75px}footer{border-top:1px solid var(--line);color:#7f7a71;letter-spacing:.12em;justify-content:space-between;padding:25px 5vw;font-size:11px;display:flex}footer p{margin:0}@media (width<=760px){.topbar{flex-wrap:wrap;height:auto;padding:16px 20px}.status{display:none}.switcher{margin-left:auto;position:static;transform:none}.switcher button{padding:9px 15px}.deskPage,.hostPage{padding:35px 18px}.intro h1,.hostHeader h1{font-size:32px}.deskGrid{grid-template-columns:1fr}.card{padding:25px 21px}.hostHeader{align-items:center}.count strong{font-size:45px}.hostHeader>div>p:last-child{display:none}.hostList article{padding:17px 14px}.number{width:33px}.hostAvatar{width:2cm;height:2cm;margin-right:12px}.guestInfo h2{font-size:19px}.hostList time{font-size:14px}footer{padding:20px}.brand small{display:none}}.lockCard{text-align:center;max-width:480px;margin:0 auto}.lockIcon{width:58px;height:58px;color:var(--gold);border:1px solid #cdbf9f;border-radius:50%;place-items:center;margin:0 auto 18px;font-family:serif;font-size:22px;display:grid}.lockCard h2{letter-spacing:.1em;margin:0;font:700 24px Georgia,Noto Serif TC,serif}.lockCard>p{color:#888176;margin:8px 0 28px;font-size:13px}.lockCard label{text-align:left;font-size:13px;font-weight:700;display:block}.lockCard input{background:#fbfaf6;border:1px solid #cfc8b8;outline:none;width:100%;margin-top:9px;padding:15px 16px}.lockCard input:focus{border-color:var(--green);box-shadow:0 0 0 3px #78b9df22}.authError{color:#9d3c34;background:#f8e9e6;margin:12px 0;padding:10px;font-size:13px}.textButton{color:#777268;background:0 0;border:0;width:100%;margin-top:8px;padding:14px;font-size:12px;text-decoration:underline}.formCard .lockDeskButton{color:#a85b16;background:#fde7b5;border:1px solid #f2c878;border-radius:4px;align-self:center;width:60%;margin-top:auto;font-weight:700;text-decoration:none}.brandLogo{object-fit:cover;border-radius:50%;width:52px;height:52px;box-shadow:0 2px 8px #27465a22}.brandText{flex-direction:column;justify-content:center;gap:3px;width:190px;height:52px;display:flex}.brandText b{letter-spacing:0;text-align:justify;text-align-last:justify;white-space:nowrap;font-size:16px;line-height:20px}.brandText b:last-child{font-size:16px}.submit{color:#17394d}.submit:hover{background:#62a9d2}.eventBar{background:#eef7fc;border:1px solid #c5dfed;justify-content:space-between;align-items:center;margin-bottom:18px;padding:15px 20px;display:flex}.eventBar small{color:#718692;margin-bottom:4px;font-size:11px;display:block}.eventBar strong{letter-spacing:.08em;font-family:Georgia,Noto Serif TC,serif}.eventBar button{background:var(--green);color:#17394d;border:0;padding:11px 16px;font-weight:700}.newEvent{border:1px solid var(--line);background:#fffdf8;align-items:end;gap:14px;margin-bottom:18px;padding:22px;display:flex}.newEvent label{flex:1;font-size:13px;font-weight:700}.newEvent input{border:1px solid #cfc8b8;width:100%;margin-top:8px;padding:13px;display:block}.newEvent .submit{width:auto;margin:0}@media (width<=760px){.brandLogo{width:44px;height:44px}.brandText{gap:2px;width:160px;height:44px}.brandText b{font-size:14px;line-height:18px}.brandText b:last-child{font-size:14px}.eventBar,.newEvent{flex-direction:column;align-items:stretch}.newEvent .submit{width:100%}}.brandButton{text-align:left;background:0 0;border:0;padding:0}.setupPage{background:#f8fbfd;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.setupHero{background:linear-gradient(145deg,#d9effa 0%,#9dd2ee 55%,#f9c98e 130%);flex-direction:column;justify-content:center;padding:8vh 8vw;display:flex;position:relative;overflow:hidden}.setupHero:after{content:"";border:1px solid #fff8;border-radius:50%;width:430px;height:430px;position:absolute;bottom:-130px;right:-130px}.setupBrand{align-items:center;gap:14px;display:flex;position:absolute;top:7vh;left:8vw}.setupBrand img{object-fit:cover;border-radius:50%;width:78px;height:78px;box-shadow:0 8px 25px #315d7422}.setupBrand p{letter-spacing:.2em;color:#315d74;font:11px Georgia,serif}.setupHero h1{letter-spacing:.08em;color:#24475b;margin:0;font:700 58px/1.2 Georgia,Noto Serif TC,serif}.setupHero h1 span{font-size:76px}.setupHero>p{color:#486879;letter-spacing:.06em;max-width:460px;line-height:1.9}.setupPanel{place-items:center;padding:50px;display:grid}.setupForm{background:#fff;border:1px solid #d9e6ec;width:min(470px,100%);padding:46px;box-shadow:0 20px 60px #315d7412}.setupForm h2{letter-spacing:.1em;margin:6px 0;font:700 30px Georgia,Noto Serif TC,serif}.setupForm>p:not(.eyebrow){color:#7b8990;margin-bottom:30px}.setupForm label{margin:18px 0;font-size:13px;font-weight:700;display:block}.setupForm input{background:#fbfdfe;border:1px solid #cbd9df;outline:none;width:100%;margin-top:8px;padding:14px 15px;display:block}.setupForm input:focus{border-color:#78b9df;box-shadow:0 0 0 3px #78b9df22}.setupForm small{text-align:center;color:#8b979c;margin-top:15px;display:block}footer button{color:#647e8b;background:0 0;border:0;font-size:11px;text-decoration:underline}@media (width<=800px){.setupPage{grid-template-columns:1fr}.setupHero{min-height:42vh;padding:130px 28px 45px}.setupBrand{top:30px;left:28px}.setupBrand img{width:58px;height:58px}.setupHero h1{font-size:38px}.setupHero h1 span{font-size:48px}.setupPanel{padding:25px 18px 45px}.setupForm{padding:30px 24px}}.hostTools{align-items:stretch;gap:12px;margin:30px 0 16px;display:flex}.hostTools .search{flex:1;margin:0}.orderButton{color:#2f607a;white-space:nowrap;background:#eef8fd;border:1px solid #8fc4e1;padding:0 20px;font-weight:700}.orderButton.done{color:#17394d;background:#78b9df}.hostList.ordering article{cursor:grab;background:#fbfdfe;transition:box-shadow .15s}.hostList.ordering article:hover{box-shadow:inset 4px 0 #78b9df}.hostList.ordering article:active{cursor:grabbing}.hostList.ordering .number{color:#78a9c3;font-size:22px}.moveButtons{gap:7px;margin-left:auto;display:flex}.moveButtons button{color:#315d74;background:#fff;border:1px solid #c7dbe5;width:38px;height:38px;font-size:18px}.moveButtons button:disabled{opacity:.3}@media (width<=700px){.hostTools{flex-direction:column}.orderButton{padding:13px}.hostList.ordering article{padding:14px 10px}.moveButtons button{width:34px;height:34px}}.rosterCard{padding-bottom:24px}.importButton{color:#315d74;text-align:center;cursor:pointer;background:#eef8fd;border:1px dashed #78b9df;padding:12px;font-weight:700;display:block}.importButton input,.photoPicker input{display:none}.csvHint{text-align:center;color:#8b979c;margin:7px 0 15px;font-size:11px}.rosterList{max-height:560px;overflow:auto}.rosterList article{gap:11px}.rosterList article.checked{background:#f4faf7}.checkGuest input{display:none}.checkGuest span{cursor:pointer;border:2px solid #9fb5bf;border-radius:5px;width:23px;height:23px;display:block}.checkGuest input:checked+span{background:#69b98c;border-color:#69b98c;position:relative}.checkGuest input:checked+span:after{content:"✓";color:#fff;font-weight:700;position:absolute;top:-2px;left:4px}.photoPicker{cursor:pointer;flex:none}.photoPicker img,.largeAvatar{object-fit:cover;border-radius:50%;width:2.5cm;height:2.5cm}.largeAvatar{font-size:29px}.rosterList em{color:#a0784c;white-space:nowrap;margin-left:auto;font-size:11px;font-style:normal}.rosterList .checked em{color:#39805a}.orderShortcut{color:#315d74;background:#f3fafd;border:1px solid #c5dfed;width:100%;margin-top:16px;padding:12px;font-weight:700}@media (width<=760px){.photoPicker img,.largeAvatar{width:68px;height:68px}.rosterList article{align-items:flex-start}.rosterList em{display:none}}.rosterSetupPage{background:#f5f8f9;min-height:100vh;padding:45px max(24px,7vw)}.rosterSetupPage>header{align-items:center;gap:18px;max-width:1080px;margin:0 auto 30px;display:flex}.rosterSetupPage>header img{border-radius:50%;width:70px;height:70px}.rosterSetupPage header small{color:#7490a0;letter-spacing:.12em}.rosterSetupPage header h1{margin:4px 0;font:700 32px Georgia,Noto Serif TC,serif}.rosterSetupGrid{grid-template-columns:1fr 1fr;gap:20px;max-width:1080px;margin:auto;display:grid}.setupChoice,.setupRoster{background:#fff;border:1px solid #d9e5ea;padding:28px}.setupChoice>span{color:#e39a53;font:italic 18px Georgia,serif}.setupChoice h2{margin:8px 0}.setupChoice>p{color:#7a8b93}.setupChoice label:not(.importButton){margin:12px 0;font-size:13px;font-weight:700;display:block}.setupChoice input:not([type=file]){border:1px solid #cbd9df;width:100%;margin-top:6px;padding:12px;display:block}.setupRoster{max-width:1080px;margin:20px auto}.setupRoster h2{margin-top:0}.setupRoster h2 small{color:#78909b;font-size:13px}.setupRoster article{border-bottom:1px solid #edf1f2;grid-template-columns:45px 1fr 1fr;padding:12px;display:grid}.setupRoster article b{color:#d99b5c}.setupRoster article span{color:#72858e}.finishRoster{color:#17394d;background:#78b9df;border:0;margin:25px 0 0 auto;padding:15px 22px;font-weight:700;display:block}.finishRoster:disabled{opacity:.4}@media (width<=700px){.rosterSetupPage{padding:25px 16px}.rosterSetupGrid{grid-template-columns:1fr}.setupRoster article{grid-template-columns:35px 1fr}.setupRoster article strong{grid-column:2}}.rosterCard{order:1}.formCard{order:2}.rosterCard .cardTitle>span,.formCard .cardTitle>span{font-size:0}.rosterCard .cardTitle>span:after{content:"01";font-size:18px}.formCard .cardTitle>span:after{content:"02";font-size:18px}.orderShortcut{padding:14px!important}.orderShortcut:before{content:"03  ";color:#df9147;font:italic 16px Georgia,serif}.archiveBanner{color:#8b5318;text-align:center;background:#fde7b5;border:1px solid #efc46d;max-width:1180px;margin:18px auto 0;padding:13px 20px;font-weight:700}.manualArchive{color:#8b5318;background:#fde7b5;border:1px solid #efc46d;margin-left:16px;padding:8px 13px;font-weight:700}.hostCancel:disabled{opacity:.35;cursor:not-allowed}.adminLink{color:#315d74;margin-left:auto;margin-right:18px;font-size:13px;font-weight:700;text-decoration:none}.staffSettingsButton{color:#955b12;background:#fff3df;border:1px solid #e3b46d;border-radius:8px;margin-left:auto;padding:9px 12px;font-weight:800}.staffSettingsButton+.adminLink{margin-left:10px}.adminPage{color:#27465a;background:#f3f6f8;min-height:100vh;padding:22px 3vw 60px}.adminHeader{background:#fff;border:1px solid #d6e0e5;border-radius:14px;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.adminHeader a{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.adminHeader img{border-radius:50%;width:52px;height:52px}.adminHeader b,.adminHeader small{display:block}.adminHeader>div{text-align:right}.adminTabs{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.adminTabs button{color:#27465a;background:#e9eef2;border:0;border-radius:10px;padding:13px 20px;font-weight:700}.adminTabs button.active{color:#fff;background:#2877e8}.adminPanel{background:#fff;border:1px solid #d6e0e5;border-radius:14px;padding:26px}.adminPanel h1{margin-top:0}.historyGrid{gap:12px;display:grid}.historyGrid article{border:1px solid #dde5e9;border-radius:10px;grid-template-columns:1fr auto auto;align-items:center;gap:24px;padding:17px;display:grid}.historyGrid h2{margin:4px 0}.historyGrid p{color:#71808a;margin:0}.historyGrid>article>strong{font-size:25px}.historyGrid>article>strong small{font-size:11px}.historyGrid a,.importAccounts{color:#2169c7;background:#e9f2ff;border:1px solid #bcd5f6;border-radius:8px;padding:9px 13px;font-weight:700;text-decoration:none}.panelHeading{justify-content:space-between;align-items:center;display:flex}.importAccounts input{display:none}.adminPanel table{border-collapse:collapse;width:100%}.adminPanel th,.adminPanel td{text-align:left;border-bottom:1px solid #e5eaed;padding:11px}.adminMessage{color:#287242;background:#e6f5eb;margin:12px 0;padding:11px}.changeItem{border-bottom:1px solid #e5eaed;gap:18px;padding:17px 0;display:flex}.changeItem>b{color:#2877e8}.changeItem h2,.changeItem p{margin:0 0 6px}.adminLoading{text-align:center;padding:50px}@media (width<=700px){.historyGrid article{grid-template-columns:1fr}.adminPanel{padding:18px;overflow:auto}.panelHeading{flex-direction:column;align-items:flex-start;gap:15px}}.accessPage{background:linear-gradient(145deg,#e8f5fb,#fff8ef);place-items:center;min-height:100vh;padding:24px;display:grid}.accessCard{text-align:center;background:#fff;border:1px solid #d7e3e8;border-radius:18px;width:min(480px,100%);padding:48px;box-shadow:0 24px 70px #315d7417}.accessCard>img{object-fit:cover;border-radius:50%;width:86px;height:86px}.accessCard h1{color:#294d61;font:700 32px Georgia,Noto Serif TC,serif}.accessCard>p:not(.eyebrow){color:#6e7f88;line-height:1.8}.accessPrimary{color:#fff;background:#2877e8;border-radius:10px;margin-top:28px;padding:14px;font-weight:800;text-decoration:none;display:block}.accessSymbol{font-size:46px}.accessForm{text-align:left}.accessForm>img,.accessForm>.eyebrow,.accessForm>h1,.accessForm>p{text-align:center}.accessForm>img{margin:0 auto;display:block}.accessForm label{color:#365568;margin-top:15px;font-size:13px;font-weight:800;display:block}.accessForm input{background:#fbfdfe;border:1px solid #cad9e0;border-radius:8px;width:100%;margin-top:7px;padding:13px;display:block}.accessForm button{cursor:pointer;border:0;width:100%}.accessForm button:disabled{opacity:.6}.activityHome{color:#27465a;background:#f3f6f8;min-height:100vh;padding:22px 3vw 60px}.activityHeader{background:#fff;border:1px solid #d6e0e5;border-radius:14px;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.activityHeader>a{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.activityHeader img{border-radius:50%;width:54px;height:54px}.activityHeader b,.activityHeader small{display:block}.activityHeader>div{text-align:right}.activityHeader>div a{color:#8a5a3b;margin-left:13px;font-size:13px}.activityIntro{justify-content:space-between;align-items:end;padding:48px 4px 28px;display:flex}.activityIntro h1{margin:4px 0;font:700 42px Georgia,Noto Serif TC,serif}.activityIntro p{color:#71808a}.activityIntroActions{gap:10px;display:flex}.activityIntroActions button,.activityIntroActions a{color:#fff;cursor:pointer;background:#2877e8;border:0;border-radius:10px;padding:13px 18px;font-weight:800;text-decoration:none}.activityIntroActions a{color:#2877e8;background:#fff;border:1px solid #bcd5f6}.activityPanel{background:#fff;border:1px solid #d6e0e5;border-radius:14px;padding:26px}.activityPanelTitle{justify-content:space-between;align-items:center;display:flex}.activityPanelTitle h2{margin:0}.activityPanelTitle span{color:#71808a}.activityGrid{gap:12px;margin-top:20px;display:grid}.activityItem{color:inherit;border:1px solid #dfe6ea;border-radius:11px;justify-content:space-between;align-items:center;padding:20px;text-decoration:none;transition:all .15s;display:flex}.activityItem:hover{border-color:#87b8e8;transform:translateY(-1px);box-shadow:0 7px 22px #315d7410}.impersonationBanner{color:#244f7d;background:#eaf3ff;border:1px solid #94bce8;border-radius:10px;justify-content:center;align-items:center;gap:20px;margin:0 0 14px;padding:11px 18px;font-size:14px;display:flex;position:relative;box-shadow:0 3px 14px #244f7d20}.impersonationBanner button{color:#225f9f;cursor:pointer;background:#fff;border:1px solid #3d7fc5;border-radius:8px;padding:7px 12px;font-weight:800}.impersonationBanner .impersonationReturn{z-index:2000;position:fixed;top:14px;right:14px;box-shadow:0 5px 18px #173f6840}@media (width<=650px){.impersonationBanner{text-align:center;flex-direction:column;align-items:stretch;gap:7px}.impersonationBanner button{width:100%}.impersonationBanner .impersonationReturn{width:auto;left:14px}}.activityItem h3{margin:9px 0 5px}.activityItem p{color:#71808a;margin:0}.activityItem>strong{font-size:28px}.activityItem>strong small{color:#71808a;font-size:12px}.activityItem .active,.activityItem .archived{color:#26713f;background:#e5f5ea;border-radius:99px;padding:3px 8px;font-size:11px;display:inline-block}.activityItem .archived{color:#6f7c83;background:#edf0f2}.activityEmpty{text-align:center;color:#71808a;padding:55px}.activityEmpty span{color:#496574;font-size:22px;font-weight:800}@media (width<=700px){.accessCard{padding:34px 24px}.activityHeader,.activityIntro{align-items:flex-start}.activityHeader>div{font-size:12px}.activityIntro{flex-direction:column;gap:18px}.activityIntroActions{width:100%}.activityIntroActions>*{text-align:center;flex:1}.activityItem{flex-direction:column;align-items:flex-start;gap:15px}}.eventAdminActions{align-items:center;gap:8px;display:flex}.historyGrid .eventAdminActions a,.historyGrid .eventAdminActions button{border-radius:8px;padding:9px 13px;font-weight:700}.historyGrid .eventAdminActions button{color:#a33f32;cursor:pointer;background:#fff4f2;border:1px solid #e6b7b0}.historyGrid .eventAdminActions button:disabled{opacity:.55;cursor:wait}.accountPanel{background:#fff;border:1px solid #d6e0e5;border-radius:14px;padding:28px}.accountTitle,.accountToolbar,.editorHeading,.editorActions{justify-content:space-between;align-items:center;gap:16px;display:flex}.accountTitle h1{margin:0 0 6px}.accountTitle p{color:#71808a;margin:0}.accountTitle>span{color:#496574;background:#eef4f8;border-radius:99px;padding:7px 11px;font-size:12px}.accountToolbar{flex-wrap:wrap;justify-content:flex-start;margin:24px 0}.accountToolbar>input{flex:1;min-width:260px}.accountToolbar input,.accountToolbar select,.accountFields input,.accountFields select{background:#fff;border:1px solid #ccd9df;border-radius:9px;padding:12px 14px}.accountToolbar>label{align-items:center;gap:8px;display:flex}.newAccount{color:#fff;background:#2877e8;border:0;border-radius:9px;padding:13px 18px;font-weight:800}.csvTools{border:1px solid #d7e1e6;border-radius:10px;gap:7px;padding:7px;display:flex}.csvTools button,.csvTools label{color:#365568;cursor:pointer;background:#eef2f5;border:0;border-radius:7px;padding:8px 11px;font-weight:700}.csvTools label{color:#fff;background:#2877e8}.csvTools input{display:none}.accountEditorBackdrop{z-index:1000;background:#182b3685;place-items:center;padding:24px 16px;display:grid;position:fixed;inset:0}.accountEditor{background:#f8fbff;border:1px solid #bcd5f6;border-radius:14px;width:min(760px,100%);max-height:calc(100vh - 48px);margin:0;padding:24px;overflow-y:auto;box-shadow:0 22px 60px #16303e52}.editorHeading h2,.editorHeading p{margin:0 0 5px}.editorHeading p{color:#71808a}.editorHeading>button{background:0 0;border:0;font-size:24px}.accountFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.accountFields label{font-size:13px;font-weight:800}.accountFields input,.accountFields select{width:100%;margin-top:7px;display:block}.editorActions{justify-content:flex-end;margin-top:20px}.editorActions button{background:#fff;border:1px solid #cad7dd;border-radius:8px;padding:10px 18px;font-weight:800}.editorActions .saveAccount{color:#fff;background:#2877e8;border-color:#2877e8}.accountTableWrap{overflow:auto}.accountTable{border-collapse:collapse;width:100%}.accountTable th,.accountTable td{text-align:left;border-bottom:1px solid #e4eaed;padding:14px 12px}.accountTable td strong,.accountTable td small{display:block}.accountTable td small{color:#7b8990;margin-top:4px}.roleBadge,.enabled,.disabled{border-radius:99px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-block}.roleBadge{color:#365568;background:#eaf1f5}.roleBadge.system_admin{color:#7446a8;background:#f4eaff}.roleBadge.admin{color:#2169c7;background:#e9f2ff}.roleBadge.organizer{color:#9b5b15;background:#fff2df}.enabled{color:#287242;background:#e5f5ea}.disabled{color:#79848a;background:#f1f2f3}.toggleAccount{color:#496574;background:#fff;border:1px solid #cbd8de;border-radius:7px;padding:7px 11px}.accountEmpty{text-align:center;color:#71808a;padding:50px}.adminMessage{justify-content:space-between;align-items:center;display:flex}.adminMessage button{color:inherit;background:0 0;border:0;font-size:20px}@media (width<=800px){.accountPanel{padding:18px}.accountTitle{align-items:flex-start}.accountToolbar{flex-direction:column;align-items:stretch}.accountToolbar>input{min-width:0}.csvTools{flex-wrap:wrap}.accountFields{grid-template-columns:1fr}.accountTable{min-width:850px}}.accountActions{gap:7px;display:flex}.accountActions button{color:#315d74;cursor:pointer;background:#fff;border:1px solid #cbd8de;border-radius:7px;padding:7px 11px;font-weight:700}.accountFields input:disabled,.accountFields select:disabled{color:#74838b;cursor:not-allowed;background:#eef1f3}.accountActions .impersonateAccount{color:#1763b8;background:#eaf3ff;border-color:#9bc2ef}.rosterSearch{background:#fbfdfe;border:1px solid #c9dce5;align-items:center;margin-bottom:16px;padding:0 14px;display:flex}.rosterSearch span{color:#e5a05b;font-size:24px}.rosterSearch input{background:0 0;border:0;outline:none;flex:1;padding:14px 10px}.rosterSearch em{color:#78909b;font-size:11px;font-style:normal}.attendanceInfo{flex:1}.attendanceInfo h3{margin:0}.selfCheck{color:#526f7d;align-items:center;gap:5px;margin-top:8px;font-size:12px;display:inline-flex}.selfCheck input{width:17px;height:17px}.representativeInput{border:1px solid #c8d9e0;width:100%;max-width:260px;margin-top:7px;padding:8px 10px;display:block}.attendanceActions{flex-direction:column;gap:7px;margin-left:auto;display:flex}.attendanceActions button,.hostCancel{border:1px solid #b8d2df;padding:8px 12px;font-size:12px;font-weight:700}.guestList .checkinButton,.checkinSubmit{color:#fff;background:#4f9f68}.checkinSubmit{width:60%;margin:9px auto 0;display:block}.checkinSubmit:hover{background:#418858}.guestList .cancelButton,.hostCancel{color:#fff;background:#d65b55;border-color:#c84b45}.attendanceActions button:disabled{opacity:.35}.hostCancel{white-space:nowrap;margin-left:14px}@media (width<=700px){.rosterList article{flex-wrap:wrap}.attendanceActions{flex-direction:row;width:100%;margin-left:80px}.attendanceActions button{flex:1}.hostCancel{padding:6px;font-size:10px}}.topbar{gap:16px}.topbar .switcher{flex:none;margin-left:auto;display:flex;position:static;transform:none}.topbar .staffSettingsButton{white-space:nowrap;flex:none;margin-left:0}.topbar .adminLink{white-space:nowrap;flex:none;margin-left:0;margin-right:0}.topbar .status{flex:none;margin-left:0}@media (width<=760px){.topbar{gap:12px}.topbar .brandButton{flex:100%}.topbar .switcher{flex:auto;min-width:0;margin:0}.topbar .switcher button{flex:1}.topbar .staffSettingsButton{flex:none}}@media (width<=520px){.topbar .switcher{flex:100%}.topbar .staffSettingsButton{margin-left:auto}}.hostPage{height:auto;display:block;overflow:visible}.hostList{height:auto;min-height:330px;max-height:none;overflow:visible}.topbar:has(.topbarClock){z-index:20;position:sticky;top:0;box-shadow:0 5px 18px #24393414}.topbarClock{border-left:1px solid #e6ded2;border-right:1px solid #e6ded2;flex:none;margin-left:auto;padding:5px 16px}.topbarClock+.switcher{margin-left:0}.digitalClock{text-align:center;color:#274b60}.digitalClock small{color:#8c877d;letter-spacing:.14em;margin-bottom:3px;font-size:9px;display:block}.digitalClock strong{letter-spacing:.08em;font-variant-numeric:tabular-nums;white-space:nowrap;font:700 24px/1.05 Georgia,Noto Serif TC,serif}.hostSummary{z-index:10;position:fixed;top:160px;right:3vw}.hostSummary .count{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f0;border:1px solid #e2b676;min-width:126px;padding:16px 18px;box-shadow:0 12px 30px #2439341f}.hostSummary .count strong,.hostSummary .count span{color:#8b1e24}.archiveBanner{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.archiveExport{color:#8b5318;cursor:pointer;background:#fff8e8;border:1px solid #a86818;border-radius:7px;padding:8px 13px;font-weight:800}.archiveExport:hover{background:#fff1cf}.archiveBanner+.hostPage .hostSummary{top:255px}@media (width<=1280px){.hostSummary{position:static}.hostSummary .count{min-width:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}}@media (width<=900px){.topbarClock{order:2;margin-left:auto}.topbarClock+.switcher{order:3}.topbar .staffSettingsButton{order:4}.topbar .adminLink{order:5}}@media (width<=760px){.topbarClock{flex:auto;margin:0;padding:7px 12px}.topbarClock+.switcher{flex:100%;order:3}.digitalClock strong{font-size:21px}}
