@font-face{font-family:Cormorant;src:url('/panel/assets/fonts/cormorant-garamond-latin-variable.woff2') format('woff2');font-weight:300 700;font-style:normal;font-display:swap}
:root{--ink:#294a62;--muted:#526979;--paper:#fbf8f0;--blue:#e5eced;--gold:#a68b59;--line:#d8dedb;--serif:Cormorant,Georgia,serif;--background:#f4f4ef}
*{box-sizing:border-box}
html{min-width:280px;scrollbar-gutter:stable}
body{margin:0;background:var(--background);color:var(--ink);font:500 20px/1.4 var(--serif);-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
h1,h2,p{margin:0}button,input{font:inherit}button{cursor:pointer}button,input{-webkit-tap-highlight-color:transparent}button{color:inherit}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}button svg{pointer-events:none}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ink);outline-offset:5px}button{touch-action:manipulation}input{min-width:0}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.eyebrow{font-size:13px;font-weight:600;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.access-view{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:radial-gradient(ellipse at 5% 0%,#dce6e6 0,transparent 58%),radial-gradient(ellipse at 100% 100%,#e8e9df 0,transparent 54%),var(--background)}
.access-card{position:relative;width:100%;max-width:470px;padding:46px 48px 34px;text-align:center;border:1px solid #c9d3d0;border-radius:150px 150px 12px 12px;background:var(--paper);box-shadow:0 16px 65px #294a620a}
.access-card:before{content:"";position:absolute;inset:7px;border:1px solid #d8d9cc;border-radius:144px 144px 7px 7px;pointer-events:none}
.access-ornament{height:65px;display:grid;place-items:center;margin:8px 0 23px}.access-ornament svg{height:48px;width:98px;color:#78908b;stroke-width:1}
.access-card>.eyebrow{font-size:13px;letter-spacing:.12em}.access-card h1{font-size:43px;line-height:1.12;font-weight:500;letter-spacing:-.025em;margin:17px -10px 13px}.access-intro{color:var(--muted);font-size:21px;line-height:1.4}
#access-form{text-align:left;margin-top:32px}label{display:block;font-weight:600;font-size:20px;margin-bottom:9px}#folio{width:100%;height:56px;padding:12px 16px;border:1px solid #8da1aa;border-radius:5px;background:#fffefa;color:var(--ink);font-size:22px;letter-spacing:.025em}#folio::placeholder{color:#697a82;letter-spacing:0}#folio[aria-invalid="true"]{border-color:#9b443c;background:#fffaf6}.field-error{min-height:29px;margin:6px 0 10px;color:#923f38;font-size:18px;line-height:1.3}.primary-button{display:flex;align-items:center;justify-content:center;gap:17px;min-height:55px;width:100%;padding:12px 22px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:var(--paper);font-weight:600;font-size:22px;transition:background .15s ease}.primary-button:hover{background:#385e75}.primary-button svg{width:21px;height:21px}.access-date{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:34px;color:var(--muted);font-size:17px}.access-date>span{height:1px;width:22px;background:#c7c6b1}
.event-header{background:var(--paper);border-bottom:1px solid var(--line)}.event-header-inner{max-width:1088px;margin:auto;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.event-identity{display:flex;align-items:center;gap:18px;min-width:0}.event-mark{height:55px;width:42px;display:grid;place-items:center;flex:none;border:1px solid #b6b8a1;border-radius:23px 23px 3px 3px;color:#8c794e}.event-mark svg{width:26px;height:36px;stroke-width:1.2}.event-name{font-size:28px;font-weight:600;line-height:1.2;letter-spacing:-.015em}.event-identity time{display:block;font-size:17px;color:var(--muted);margin-top:4px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:none;min-height:44px;padding:8px 10px;border:0;border-radius:5px;background:transparent;font-size:19px;font-weight:600;line-height:1.3}.text-button:hover{background:var(--blue)}.text-button svg{width:18px;height:18px}
.panel-main{max-width:1088px;margin:auto;padding:43px 32px 0}.panel-intro{display:flex;justify-content:space-between;align-items:center;gap:24px}.panel-intro h1{font-size:48px;line-height:1.04;font-weight:500;letter-spacing:-.025em;margin:8px 0 12px}.panel-intro p:last-child{font-size:21px;color:var(--muted)}.panel-olive{width:104px;height:54px;color:#85998c;stroke-width:.9;margin-right:16px}
.statistics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.stat-card{position:relative;overflow:hidden;background:var(--blue);border:1px solid #ccd8d7;border-radius:9px;padding:21px 27px 23px}.stat-card:nth-child(2){background:#eeeee3;border-color:#d9dacb}.stat-card h2{font-size:21px;font-weight:500;position:relative;z-index:1}.stat-card p{display:flex;align-items:baseline;gap:13px;margin-top:4px;position:relative;z-index:1}.stat-card strong{font-weight:500;font-size:58px;line-height:1.1;letter-spacing:-.025em;font-variant-numeric:lining-nums tabular-nums}.stat-card p>span{font-size:21px;color:var(--muted)}.stat-decoration{position:absolute;right:25px;bottom:-1px;width:63px;height:91px;border:1px solid #8ea9af30;border-bottom:0;border-radius:44px 44px 0 0}.stat-decoration:after{content:"";position:absolute;inset:7px 7px -1px;border:1px solid #8ea9af30;border-radius:35px 35px 0 0}
.guest-list{margin-top:34px;background:#fffefa;border:1px solid var(--line);border-radius:10px;overflow:hidden}.list-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:23px 28px 21px}.list-heading h2{font-size:27px;font-weight:600;letter-spacing:-.015em}.list-heading p{font-size:18px;color:var(--muted)}table{border-collapse:collapse;width:100%;table-layout:fixed;text-align:left}thead{background:#f1f3ee;border-top:1px solid #e3e6df;border-bottom:1px solid #e3e6df}thead th{padding:12px 28px;font-size:17px;font-weight:600;color:var(--muted)}thead th:first-child{width:39%}.passes-heading{width:13%;text-align:center}thead th:nth-child(3){width:35%}.action-heading{width:13%;text-align:center}tbody th,tbody td{border-bottom:1px solid #e7e9e2;padding:10px 28px}tbody tr:last-child>*{border-bottom:0}tbody th{font-size:22px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}tbody tr{transition:background .15s ease}tbody tr:hover{background:#f7f8f2}.passes-cell{text-align:center;font-variant-numeric:lining-nums tabular-nums}.pass-count{font-size:24px;font-weight:600;line-height:1}.mobile-pass-label{display:none}.response-badge{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:5px;font-size:17px;font-weight:600;line-height:1.2;max-width:100%}.response-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}.response-yes{color:#375f4d;background:#eaf1e8}.response-pending{color:#7b633b;background:#f5efdf}.response-no{color:#606a72;background:#edf0f1}.action-cell{text-align:center;padding:7px 16px}.share-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;width:44px;min-height:44px;padding:11px;border:1px solid #d0dad8;border-radius:50%;color:var(--ink);background:transparent;transition:background .15s ease,border-color .15s ease}.share-button svg{width:20px;height:20px;stroke-width:1.5}.share-button:hover{background:var(--blue);border-color:#94aab1}.panel-footer{display:flex;align-items:center;justify-content:center;gap:18px;padding:28px 0 32px;color:var(--muted);text-align:center;font-size:17px}.panel-footer>span{height:1px;width:34px;background:#d3d6c9}
html.dialog-open{overflow:hidden}body.dialog-open{position:fixed;inset-inline:0;overflow:hidden;width:100%}.share-dialog{position:fixed;inset:0;margin:auto;padding:0;width:460px;max-width:calc(100% - 40px);max-height:calc(100dvh - 40px);border:1px solid #c7d0cd;border-radius:15px;background:var(--paper);color:var(--ink);box-shadow:0 24px 100px #182c3d30;overflow-y:auto;overscroll-behavior:contain}.share-dialog::backdrop{background:#1d35466b;backdrop-filter:blur(3px)}.share-dialog[open]{animation:dialog-in .18s ease-out}.dialog-top{position:sticky;top:0;z-index:1;display:flex;justify-content:flex-end;align-items:center;min-height:65px;padding:10px 18px 5px;background:var(--paper)}.back-button{margin-right:auto}.back-button svg{transform:rotate(180deg)}.dialog-content{padding:7px 32px 30px;text-align:center}.dialog-content h2{font-size:37px;font-weight:500;line-height:1.08;letter-spacing:-.02em;overflow-wrap:anywhere;margin-top:13px}.share-context{font-size:21px;color:var(--muted);margin-top:10px}.share-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:29px}.share-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-height:116px;padding:19px 8px;border:1px solid #b7c6c7;border-radius:8px;background:#eef1ed;font-size:21px;font-weight:600;line-height:1.15;transition:background .15s ease,border-color .15s ease}.share-option:hover{background:#e1e9e7;border-color:#829da6}.share-option svg{width:27px;height:27px;stroke-width:1.4}.copy-status{font-size:19px;line-height:1.3;color:#375f4d}.copy-status:not(:empty){margin-top:18px}.copy-fallback{text-align:left;margin-top:18px}.copy-fallback label{font-size:18px}.copy-fallback input{width:100%;padding:12px;border:1px solid #8da1aa;border-radius:5px;background:#fffefa;color:var(--ink);font-size:16px}.qr-view{margin-top:23px}.qr-image{max-width:272px;margin:auto;background:white;border:1px solid #e1e2db;border-radius:9px;overflow:hidden}.qr-image svg{display:block;width:100%;height:auto;max-width:100%;stroke:none}.qr-hint{font-size:21px;margin-top:17px}.qr-url{font-size:16px;color:var(--muted);line-height:1.4;overflow-wrap:anywhere;margin:8px auto 0;max-width:310px;user-select:all}.noscript-message{position:fixed;inset:auto 20px 20px;padding:20px;background:var(--paper);border:1px solid var(--ink);text-align:center}
@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.event-header-inner{padding:21px 22px}.event-identity{gap:12px}.event-mark{width:34px;height:47px}.event-mark svg{width:22px;height:32px}.event-name{font-size:23px}.event-identity time{font-size:16px}.panel-main{padding:29px 20px 0}.panel-intro{gap:12px}.panel-intro h1{font-size:41px;margin-top:7px;margin-bottom:10px}.panel-intro .eyebrow{font-size:12px}.panel-intro p:last-child{font-size:20px;max-width:300px}.panel-olive{width:66px;height:40px;margin-right:0;align-self:flex-start;margin-top:26px}.statistics{gap:12px;margin-top:25px}.stat-card{padding:17px 17px 20px}.stat-card h2{font-size:19px;line-height:1.15;max-width:150px;min-height:44px}.stat-card p{gap:8px;margin-top:7px}.stat-card strong{font-size:48px}.stat-card p>span{font-size:19px}.stat-decoration{right:15px;width:43px;height:72px}.guest-list{margin-top:26px}.list-heading{padding:21px 20px 19px;display:block;border-bottom:1px solid var(--line)}.list-heading h2{font-size:26px}.list-heading p{font-size:18px;margin-top:3px}table,tbody{display:block}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}tbody tr{display:grid;grid-template-columns:63px minmax(0,1fr) 44px;column-gap:9px;row-gap:10px;padding:19px 18px;border-bottom:1px solid #e7e9e2;align-items:center}tbody tr:last-child{border-bottom:0}tbody th,tbody td{display:block;border:0;padding:0;text-align:left}tbody th{grid-column:1/3;grid-row:1;font-size:23px;line-height:1.15}.passes-cell{grid-column:1;grid-row:2;white-space:nowrap;line-height:1}.pass-count{font-size:22px}.mobile-pass-label{display:inline;font-size:17px;color:var(--muted);margin-left:4px}.response-cell{grid-column:2;grid-row:2}.response-badge{padding:5px 8px;font-size:16px;gap:6px}.response-badge:before{width:4px;height:4px}.action-cell{grid-column:3;grid-row:1/3;justify-self:end}.panel-footer{font-size:16px;padding:25px 8px 28px;gap:12px}.panel-footer>span{width:17px;flex:none}}
@media(max-width:500px){.access-view{padding:27px 18px}.access-card{padding:38px 29px 29px;border-radius:140px 140px 10px 10px}.access-card:before{border-radius:134px 134px 5px 5px}.access-card h1{font-size:38px}.access-card>.eyebrow{font-size:12px;letter-spacing:.1em}.access-ornament{margin:7px 0 21px;height:61px}.access-intro{font-size:21px}#access-form{margin-top:29px}.access-date{font-size:16px;gap:10px}.access-date>span{width:15px}.event-header-inner{padding:18px 20px;gap:8px}.event-name{font-size:21px}.event-identity time{font-size:15px}.event-mark{display:none}.text-button{font-size:18px;gap:7px}.event-header .text-button{padding-inline:5px}.share-dialog{inset:auto 0 0;margin:0 auto;width:100%;max-width:100%;max-height:calc(100dvh - 16px);border-bottom:0;border-radius:22px 22px 0 0}.dialog-top{padding:12px 17px 4px;min-height:63px}.dialog-content{padding:7px 26px calc(30px + env(safe-area-inset-bottom,0px))}.dialog-content h2{font-size:35px}.share-options{margin-top:26px}.share-option{font-size:21px}.qr-image{max-width:260px}.qr-view{margin-top:20px}}
@media(max-width:359px){.panel-main{padding-inline:14px}.event-header-inner{padding-inline:16px}.event-name{font-size:20px}.event-identity time{font-size:15px}.panel-olive{display:none}.stat-card{padding-inline:13px}.stat-card h2{font-size:18px}.stat-card strong{font-size:44px}.stat-card p>span{font-size:18px}.stat-decoration{right:8px;width:31px}.list-heading{padding-inline:16px}tbody tr{padding-inline:14px;column-gap:7px;grid-template-columns:57px minmax(0,1fr) 44px}.response-badge{font-size:16px;padding:4px 6px}.dialog-content{padding-inline:21px}.share-options{gap:10px}.share-option{font-size:20px}.access-card{padding-inline:24px}.access-card h1{font-size:34px}.access-date{font-size:15px;gap:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Network states retain the approved layout and never substitute example data. */
.access-date>.access-privacy{width:auto;height:auto;background:none}.panel-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;font-size:18px;color:var(--muted)}.panel-notice.is-error{color:#923f38}.panel-notice p{flex:1}.empty-row{padding:24px;text-align:center;color:var(--muted);font-size:20px}button:disabled{cursor:wait;opacity:.65}#access-form[aria-busy="true"] input{opacity:.75}
