:root{--bg: #faf7f2;--bg-deep: #f2ece1;--surface: #ffffff;--surface-sunk: #f7f3ec;--ink: #1c1815;--ink-soft: #4a423a;--muted: #7a7065;--line: #e8e0d4;--line-strong: #d8ccba;--accent: #a4552f;--accent-deep: #813f20;--accent-wash: #f6ece4;--accent-ink: #fffdfa;--gold: #b98d3e;--ok: #2f6f4f;--ok-wash: #e7f0e9;--danger: #a5372a;--danger-wash: #fbeae6;--warn: #8a5a12;--warn-wash: #fbf1de;--font-display: "Fraunces", "Iowan Old Style", Georgia, "Times New Roman", serif;--font-body: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--radius: 14px;--radius-sm: 9px;--radius-lg: 22px;--shadow-sm: 0 1px 2px rgba(28, 24, 21, .05), 0 2px 8px -4px rgba(28, 24, 21, .08);--shadow: 0 2px 4px rgba(28, 24, 21, .04), 0 12px 28px -18px rgba(28, 24, 21, .35);--shadow-lg: 0 4px 8px rgba(28, 24, 21, .04), 0 32px 64px -32px rgba(28, 24, 21, .42);--ring: 0 0 0 3px rgba(164, 85, 47, .28);--shell: 74rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0 0 .5rem;font-family:var(--font-display);font-weight:600;font-optical-sizing:auto;line-height:1.15;letter-spacing:-.015em}h1{font-size:clamp(1.75rem,3.4vw,2.35rem)}h2{font-size:1.3rem}h3{font-size:1.05rem}p{margin:0 0 1rem}a{color:var(--accent);text-underline-offset:.18em}hr{border:none;border-top:1px solid var(--line);margin:1.5rem 0}code{background:var(--surface-sunk);border:1px solid var(--line);padding:.1rem .4rem;border-radius:5px;font-size:.85em}::selection{background:var(--accent-wash);color:var(--accent-deep)}.brand{font-family:var(--font-display);font-size:1.4rem;font-weight:600;letter-spacing:-.02em;color:var(--ink);text-decoration:none}.brand:first-letter{color:var(--accent)}.eyebrow{margin:0 0 .7rem;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.lede{color:var(--muted);font-size:1.06rem;line-height:1.65;max-width:38rem}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.82rem;margin:.35rem 0 0}.script{font-family:var(--font-display);font-style:italic;font-weight:400}.page{max-width:68rem;margin:0 auto;padding:2.25rem 1.25rem 5rem}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;margin-bottom:1.75rem}.page-head h1{margin-bottom:.25rem}.page-head p{margin:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.card.empty{text-align:center;padding:3.5rem 1.5rem}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem;padding-bottom:.85rem;border-bottom:1px solid var(--line)}.card-head h2,.card-head h3{margin:0}.card-head p{margin:0;font-size:.88rem}.back{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1.25rem;font-size:.9rem;font-weight:500;color:var(--muted);text-decoration:none}.back:hover{color:var(--accent)}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:50;background:var(--surface);border:1px solid var(--line);padding:.6rem 1rem;border-radius:var(--radius-sm)}label{display:block;font-size:.82rem;font-weight:600;letter-spacing:.01em;color:var(--ink-soft);margin:1.1rem 0 .35rem}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=datetime-local],input:not([type]),select,textarea{width:100%;padding:.65rem .85rem;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:inherit;font:inherit;font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder,textarea::placeholder{color:#a89e91}input:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea{resize:vertical;min-height:4.5rem}.field{margin-bottom:.25rem}.field label{margin-top:0}.inline-form{display:flex;flex-wrap:wrap;gap:.85rem;align-items:flex-end}.inline-form>div{flex:1 1 10rem}.inline-form>div.narrow{flex:0 0 6.5rem}.inline-form label{margin-top:0}.form-grid{display:grid;gap:.25rem 1rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.form-grid .full{grid-column:1 / -1}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.5rem}.check{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.92rem;color:var(--ink);margin:0;cursor:pointer}.check input{width:auto;accent-color:var(--accent);width:1.05rem;height:1.05rem}.channel-row{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:.9rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.6rem 1.15rem;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-size:.93rem;font-weight:600;line-height:1.35;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .12s ease,box-shadow .15s ease}.btn:hover:not(:disabled){border-color:var(--ink);box-shadow:var(--shadow-sm)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:#322a23;border-color:#322a23}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-accent:hover:not(:disabled){background:var(--accent-deep);border-color:var(--accent-deep)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}.btn-ghost:hover:not(:disabled){background:var(--bg-deep);border-color:transparent;box-shadow:none}.btn-sm{padding:.42rem .9rem;font-size:.86rem}.btn-lg{padding:.8rem 1.6rem;font-size:1rem}.btn-block{width:100%}.file-btn{margin:0;font-size:.93rem;font-weight:600;color:var(--ink)}.choice-row{display:flex;gap:.65rem;flex-wrap:wrap}.choice{flex:1 1 9rem;border-radius:var(--radius-sm);padding:.75rem .9rem}.choice.chosen{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-sm)}.link{border:none;background:none;padding:0;font:inherit;font-size:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:.18em;cursor:pointer}.link:hover{color:var(--accent-deep)}.link.danger{color:var(--danger)}.link.quiet{color:var(--muted);text-decoration:none;font-weight:500}.link.quiet:hover{color:var(--accent)}.banner{display:flex;gap:.6rem;padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid transparent;margin:0 0 1.25rem;font-size:.9rem}.banner-error{background:var(--danger-wash);border-color:#f0d3cd;color:#7f291f}.banner-info{background:var(--ok-wash);border-color:#cfe3d7;color:#23543c}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .65rem;border-radius:999px;background:var(--surface-sunk);border:1px solid var(--line);color:var(--ink-soft);font-size:.76rem;font-weight:600;letter-spacing:.01em;text-transform:capitalize;white-space:nowrap}.pill-attending,.pill-paid{background:var(--ok-wash);color:#23543c;border-color:#cfe3d7}.pill-declined{background:var(--danger-wash);color:#7f291f;border-color:#f0d3cd}.pill-warn,.pill-pending{background:var(--warn-wash);color:var(--warn);border-color:#f0dfc0}.stat-row{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));margin-bottom:1.25rem}.stat{margin:0;padding:1.1rem 1rem;text-align:center;font-size:.82rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.stat-num{display:block;font-family:var(--font-display);font-size:1.9rem;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:var(--ink);text-transform:none}.stat-accent .stat-num{color:var(--accent)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--line);vertical-align:middle}thead th{position:sticky;top:0;background:var(--surface-sunk);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);white-space:nowrap}tbody tr:last-child td,tbody tr:last-child+.notes-row td{border-bottom:none}tbody tr:hover td{background:#fdfbf8}.notes-row td{padding-top:0;font-style:italic;font-size:.88rem}.notes-row:hover td{background:transparent}.skipped{margin-top:1rem;font-size:.86rem}.skipped summary{cursor:pointer;font-weight:600;color:var(--warn)}.skipped ul{margin:.6rem 0 0;padding-left:1.15rem;color:var(--muted)}.event-grid{list-style:none;padding:0;margin:0;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.event-card{margin:0;padding:0;overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.event-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.event-thumb{display:block;width:100%;height:9.5rem;object-fit:cover;background:var(--bg-deep)}.motif{position:relative;background-color:var(--c1, var(--bg-deep));background-repeat:repeat;overflow:hidden}.motif[data-motif=dots]{background-image:radial-gradient(circle at 50% 50%,var(--c2) 1.6px,transparent 1.7px),radial-gradient(circle at 50% 50%,var(--c2) 1.1px,transparent 1.2px);background-size:22px 22px,22px 22px;background-position:0 0,11px 11px}.motif[data-motif=stripes]{background-image:repeating-linear-gradient(115deg,var(--c2) 0 9px,transparent 9px 26px)}.motif[data-motif=gingham]{background-image:repeating-linear-gradient(90deg,color-mix(in srgb,var(--c2) 42%,transparent) 0 14px,transparent 14px 28px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--c2) 42%,transparent) 0 14px,transparent 14px 28px)}.motif[data-motif=waves]{background-image:radial-gradient(circle at 50% 100%,transparent 9px,var(--c2) 9px 11px,transparent 11px),radial-gradient(circle at 50% 100%,transparent 9px,color-mix(in srgb,var(--c2) 45%,transparent) 9px 11px,transparent 11px);background-size:30px 18px,30px 18px;background-position:0 0,15px 9px}.motif[data-motif=confetti]{background-image:repeating-linear-gradient(58deg,var(--c2) 0 3px,transparent 3px 9px),repeating-linear-gradient(-42deg,color-mix(in srgb,var(--c2) 55%,transparent) 0 3px,transparent 3px 11px);background-size:44px 44px,62px 62px}.motif[data-motif=sunset]{background-image:radial-gradient(circle at 50% 84%,var(--c2) 0 16%,transparent 16.5%),linear-gradient(180deg,color-mix(in srgb,var(--c2) 30%,var(--c1)) 0%,var(--c1) 55%,color-mix(in srgb,var(--c2) 22%,var(--c1)) 100%)}.motif[data-motif=arches]{background-image:radial-gradient(circle at 50% 100%,transparent 15px,var(--c2) 15px 17px,transparent 17px);background-size:40px 40px}.motif[data-motif=frame]:after{content:"";position:absolute;inset:10px;border:1px solid var(--c2);box-shadow:inset 0 0 0 3px var(--c1),inset 0 0 0 4px color-mix(in srgb,var(--c2) 55%,transparent)}.motif[data-motif=floral]{background-image:radial-gradient(circle at 20% 25%,var(--c2) 0 3.5px,transparent 4px),radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--c2) 70%,transparent) 0 2.5px,transparent 3px),radial-gradient(circle at 26% 34%,color-mix(in srgb,var(--c2) 55%,transparent) 0 2.5px,transparent 3px),radial-gradient(circle at 70% 68%,var(--c2) 0 3.5px,transparent 4px),radial-gradient(circle at 80% 62%,color-mix(in srgb,var(--c2) 70%,transparent) 0 2.5px,transparent 3px),radial-gradient(circle at 74% 78%,color-mix(in srgb,var(--c2) 55%,transparent) 0 2.5px,transparent 3px);background-size:74px 74px}.motif[data-motif=postage]{background-image:radial-gradient(circle at 50% 0,transparent 4px,var(--c1) 4.5px),radial-gradient(circle at 50% 100%,transparent 4px,var(--c1) 4.5px);background-size:16px 8px;background-position:top left,bottom left;background-repeat:repeat-x}.motif[data-motif=postage]:after{content:"";position:absolute;inset:14px;border:1.5px dashed color-mix(in srgb,var(--c2) 70%,transparent);border-radius:3px}.motif[data-motif=garland]{background-image:radial-gradient(circle at 50% 0,transparent 13px,var(--c2) 13px 15px,transparent 15px);background-size:34px 34px;background-repeat:repeat-x;background-position:top center}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
