@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#14243a;--navy:#101c2c;--cream:#faf7f0;--paper:#fffdf8;--muted:#63717d;--line:#e2e1dc;--gold:#d7a867;--gold-light:#f3cf95;--blue:#d8e9eb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.site-shell{max-width:1600px;margin:auto}.topbar{height:76px;padding:0 clamp(24px,5vw,78px);display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff}.wordmark{font-size:24px;font-weight:700;letter-spacing:.11em;display:flex;gap:11px;align-items:center}.wordmark-star{font-size:29px;color:var(--gold-light);font-weight:400}.wordmark-period{color:var(--gold)}nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:600;letter-spacing:.03em}nav a,nav button{color:#f0f2f0}nav a:hover,nav button:hover{text-decoration:underline}.text-button{border:0;background:none;padding:8px 0}.text-button span{color:var(--gold-light);margin-left:7px}.intro{background:var(--navy);color:#fff;display:grid;grid-template-columns:1.03fr .97fr;min-height:555px}.intro-copy{padding:clamp(60px,8vw,112px) 25px 70px clamp(24px,8vw,122px);position:relative;z-index:1}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:700;color:#b27b3c}.intro .eyebrow{color:var(--gold-light);display:flex;align-items:center;gap:12px}.eyebrow-line{width:30px;height:1px;background:var(--gold-light)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1{font-size:clamp(48px,5.4vw,82px);line-height:1.06;letter-spacing:-.037em;margin:24px 0}h1 em{color:var(--gold-light);font-weight:500}.intro-copy>p{max-width:530px;color:#c9d2d5;font-size:16px;line-height:1.85}.intro-copy strong{color:#fff}.intro-actions{display:flex;align-items:center;gap:24px;margin-top:34px}.primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--gold-light);color:#162333;border:1px solid var(--gold-light);padding:17px 23px;font-size:13px;font-weight:700;letter-spacing:.02em;transition:transform .2s,background .2s}.primary-button:hover{background:#f8daad;transform:translateY(-2px)}.intro-note{font-size:12px;color:#b2bfc7;line-height:1.5}.winter-art{overflow:hidden;position:relative;min-height:500px;background:radial-gradient(circle at 70% 35%,#3f6272 0,#244454 33%,#142b3e 72%,#112134 100%)}.winter-art:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy),transparent 23%),radial-gradient(circle at 75% 23%,#d1e3d142,transparent 23%)}.moon{position:absolute;width:114px;height:114px;border-radius:50%;background:#e8e7d3;top:95px;right:22%;box-shadow:0 0 70px 25px #e7edd32b}.star{position:absolute;color:#f7e5ba}.s1{top:15%;left:30%;font-size:14px}.s2{top:39%;left:14%;font-size:20px}.s3{top:22%;right:8%;font-size:11px}.light-strand{position:absolute;z-index:6;top:34px;left:-3%;width:110%;height:150px;border-top:2px solid #bea96f;border-radius:50%;transform:rotate(7deg);display:flex;justify-content:space-around;align-items:flex-start}.light-strand i{display:block;margin-top:8px;width:7px;height:11px;background:#ffe6a6;border-radius:50%;box-shadow:0 0 18px 8px #fff0ad57}.light-strand i:nth-child(even){margin-top:20px}.mountain{position:absolute;width:125%;left:-10%;clip-path:polygon(0 100%,0 62%,13% 46%,23% 60%,37% 23%,54% 65%,69% 34%,86% 58%,100% 30%,100% 100%)}.mountain-back{height:270px;bottom:95px;background:#244354}.mountain-front{height:210px;bottom:55px;background:#173443;transform:scaleX(-1)}.lake{position:absolute;bottom:0;width:100%;height:115px;background:repeating-linear-gradient(175deg,#254c58 0 2px,#183646 3px 16px);box-shadow:0 -16px 30px #b6d6d427}.cabin{position:absolute;z-index:3;width:135px;height:90px;bottom:100px;left:41%;background:#142b34;border:3px solid #0d2631;box-shadow:0 10px 20px #07192780}.cabin:before{content:'';position:absolute;left:-18px;top:-54px;width:165px;height:65px;background:#102a33;clip-path:polygon(50% 0,100% 100%,0 100%)}.window{position:absolute;left:50px;top:18px;width:38px;height:40px;background:#ffd38c;box-shadow:0 0 35px 15px #f4be6860}.art-caption{position:absolute;right:28px;bottom:20px;color:#d7dbd2;font-size:10px;letter-spacing:.23em;z-index:5}.details-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#f0e8d9;padding:26px clamp(24px,6vw,98px);gap:25px}.details-strip>div{display:flex;align-items:center;gap:15px;border-right:1px solid #d5cdbc}.details-strip>div:last-child{border:0}.detail-icon{width:40px;height:40px;border:1px solid #c7bda9;border-radius:50%;display:grid;place-items:center;font-size:20px;color:#8f734d}.details-strip small{display:block;font-size:10px;letter-spacing:.16em;color:#827460;font-weight:700;margin-bottom:5px}.details-strip strong{font-size:13px}.signup-section{padding:100px clamp(24px,7vw,110px) 110px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading h2,.memories-section h2{font-size:clamp(42px,4vw,62px);letter-spacing:-.035em;margin:16px 0}.section-heading p{color:var(--muted);line-height:1.7;margin:0}.preview-tag{border:1px solid #dfd4c4;padding:10px 13px;color:#92734d;font-size:10px;letter-spacing:.1em;font-weight:700;white-space:nowrap}.notice{display:flex;gap:15px;align-items:start;background:#f4ecdf;border-left:3px solid #bf9355;margin:37px 0 24px;padding:15px 18px;color:#594e3e}.notice>span{font-size:19px;color:#a77c47}.notice p{margin:0;font-size:12px;line-height:1.6}.tabs{border-bottom:1px solid var(--line);display:flex;gap:32px;margin-bottom:26px}.tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:20px 3px;font-weight:700;color:#7a858c}.tabs button[aria-selected=true]{border-color:#bd8a4d;color:var(--ink)}.tab-count{font-weight:500;color:#a28d72;margin-left:6px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.slot-card{background:var(--paper);border:1px solid #e6e3dc;padding:24px;min-height:220px;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.slot-card:hover{box-shadow:0 16px 35px #192c3d12;transform:translateY(-2px)}.card-top{display:flex;justify-content:space-between;gap:15px}.card-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#e9f0ee;font-size:22px}.card-status{align-self:start;background:#edf3e9;color:#476c4c;padding:6px 9px;font-size:10px;font-weight:700;letter-spacing:.08em}.card-status.filled{background:#eeeae4;color:#817467}.slot-card h3{font-family:'Playfair Display',Georgia,serif;font-size:23px;font-weight:500;margin:19px 0 7px}.slot-card p{color:var(--muted);font-size:13px;line-height:1.6;flex:1}.card-footer{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:#61717a}.card-footer button{border:0;background:transparent;color:#9a6c38;font-weight:700;padding:5px}.card-footer button:hover{text-decoration:underline}.card-footer button:disabled{color:#9da2a1;cursor:not-allowed}.memories-section{background:#dfebeb;display:grid;grid-template-columns:.82fr 1.18fr;gap:55px;padding:92px clamp(24px,7vw,110px)}.memories-copy p{font-size:14px;line-height:1.8;color:#53656a;max-width:430px}.memory-stat{display:flex;align-items:center;gap:15px;border-top:1px solid #b9d0d0;margin-top:27px;padding-top:22px}.memory-stat strong{font-family:'Playfair Display',Georgia,serif;font-size:45px;font-weight:500}.memory-stat span{font-size:12px;color:#53656a}.media-placeholder{min-height:310px;background:linear-gradient(145deg,#1a3647,#183042 70%,#0f2637);color:white;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:26px;overflow:hidden}.media-placeholder:before,.media-placeholder:after{content:'';position:absolute;border:1px solid #9bc6c163;border-radius:50%;width:500px;height:500px;transform:rotate(25deg)}.media-placeholder:before{left:-290px;top:-290px}.media-placeholder:after{right:-280px;bottom:-330px}.placeholder-sparkle{font-size:48px;color:var(--gold-light)}.media-placeholder strong,.media-placeholder span{display:block;position:relative;z-index:1}.media-placeholder strong{font-family:'Playfair Display',Georgia,serif;font-size:26px;font-weight:500}.media-placeholder div span{font-size:12px;color:#b8cacc;margin-top:8px}.media-label{position:absolute!important;bottom:18px;right:20px;letter-spacing:.18em;font-size:9px;color:#a8bdbe}footer{background:var(--navy);color:#d6d9d4;padding:35px clamp(24px,7vw,110px);display:flex;justify-content:space-between;gap:20px;font-size:12px}footer span:first-child{font-weight:700;letter-spacing:.07em}footer span span{color:var(--gold-light);margin-left:6px}dialog{border:0;padding:0;width:min(480px,calc(100vw - 32px));box-shadow:0 25px 85px #0c1a2b65;color:var(--ink)}dialog::backdrop{background:#071525b8}dialog form,.manage-content{padding:40px;position:relative}dialog h2{font-size:38px;margin:15px 0}dialog p{font-size:13px;line-height:1.6;color:var(--muted)}dialog label{display:block;font-size:12px;font-weight:700;margin:19px 0 7px}dialog input{width:100%;height:46px;border:1px solid #cfd5d3;padding:0 13px;border-radius:0;background:white;color:var(--ink)}dialog input:focus{outline:2px solid #d7a867;outline-offset:2px}.dialog-close{position:absolute;right:21px;top:16px;background:none;border:0;font-size:29px;color:#6c777c}.form-note{font-size:11px;margin:15px 0 22px}.form-error{background:#fff0ee;color:#993f3d!important;padding:9px 12px}.full{width:100%}.lookup-row{display:flex;gap:8px}.lookup-row input{flex:1;min-width:0}.secondary-button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:0 17px;font-size:12px;font-weight:700}.lookup-result{margin-top:21px;font-size:13px;line-height:1.6}.lookup-card{background:#f4f0e8;padding:18px}.lookup-card strong{display:block;font-family:'Playfair Display',Georgia,serif;font-size:22px}.lookup-card small{display:block;color:var(--muted);margin:5px 0 15px}.release-button{background:transparent;border:0;border-bottom:1px solid #9c633d;color:#9c633d;padding:2px 0;font-weight:700}.toast{position:fixed;bottom:25px;right:25px;background:#182e3e;color:white;padding:15px 19px;box-shadow:0 10px 30px #0b1b2b40;z-index:10;font-size:13px}@media(max-width:900px){.intro{grid-template-columns:1fr}.intro-copy{padding:70px 7vw}.winter-art{min-height:370px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.memories-section{grid-template-columns:1fr;gap:30px}.media-placeholder{min-height:280px}}@media(max-width:600px){.topbar{height:65px;padding:0 18px}nav{gap:16px;font-size:11px}nav a:nth-child(2){display:none}.wordmark{font-size:19px}.intro-copy{padding:60px 24px}.intro-actions{align-items:flex-start;flex-direction:column;gap:15px}.winter-art{min-height:300px}.details-strip{grid-template-columns:1fr;gap:13px;padding:24px}.details-strip>div{border:0;border-bottom:1px solid #d5cdbc;padding-bottom:13px}.details-strip>div:last-child{padding:0}.signup-section{padding:70px 20px}.section-heading{align-items:start;flex-direction:column}.section-heading h2,.memories-section h2{font-size:42px}.cards{grid-template-columns:1fr}.tabs{gap:20px}.tabs button{font-size:13px}.memories-section{padding:65px 20px}.media-placeholder{min-height:260px}footer{padding:30px 20px;flex-direction:column}dialog form,.manage-content{padding:34px 23px}}
/* Keep the choices close to the first screen, especially on phones. */
.intro{min-height:430px}
.intro-copy{padding-top:60px;padding-bottom:55px}
.winter-art{min-height:430px}
.signup-section{padding-top:65px}
.notice{margin-top:25px}
@media(max-width:600px){.intro-copy{padding:45px 24px}.winter-art{display:none}.signup-section{padding-top:45px}}
.event-photo{margin:0;min-height:335px;position:relative;background:#203440;overflow:hidden}
.event-photo img{display:block;width:100%;height:100%;min-height:335px;object-fit:cover;filter:grayscale(1)}
.event-photo figcaption{position:absolute;right:14px;bottom:14px;background:#10202bc9;color:#fff;padding:8px 10px;font-size:10px;letter-spacing:.07em}
.gallery-link{display:inline-block;margin-top:25px;font-size:13px;font-weight:700;color:#765334;border-bottom:1px solid #765334;padding-bottom:4px}
.gallery-link span{margin-left:8px}
.winter-art{background:radial-gradient(circle at 56% 47%,#5a5a83 0,#243755 42%,#112236 77%);isolation:isolate}
.winter-art:before{background:radial-gradient(circle at 57% 48%,#e5c89e33,transparent 43%)}
.disco-ball{position:absolute;z-index:3;width:250px;height:250px;left:calc(50% - 125px);top:95px;border-radius:50%;background-color:#d8dce1;background-image:linear-gradient(0deg,transparent 47%,#20324680 48% 52%,transparent 53%),linear-gradient(90deg,transparent 47%,#20324680 48% 52%,transparent 53%),radial-gradient(circle at 35% 28%,#fff8df,#aac2d4 47%,#40556d 75%,#182944);background-size:33px 33px,33px 33px,100% 100%;box-shadow:0 0 65px 20px #e6c9a84f,inset -24px -28px 33px #15243d9c}
.disco-ball:before{content:'';position:absolute;width:2px;height:105px;background:#d6c6a7;left:50%;bottom:100%}
.disco-ball:after{content:'';position:absolute;width:330px;height:330px;left:-40px;top:-40px;border:1px solid #e8d6b64a;border-radius:50%}
.dance-floor{position:absolute;bottom:-45px;left:-10%;width:120%;height:190px;background:radial-gradient(ellipse at 50% 10%,#d8b57b72,transparent 53%),repeating-linear-gradient(170deg,#243650 0 4px,#152843 5px 27px);transform:perspective(230px) rotateX(55deg)}
@media(max-width:600px){.winter-art{display:none}}

/* The 2025 gallery gives the mockup a dressy, mischievous after-dark palette. */
:root{--ink:#25191c;--navy:#191116;--cream:#f8f2e9;--paper:#fffaf4;--muted:#776a69;--line:#e5d8ce;--gold:#dc704c;--gold-light:#f2c49a}
body{background:var(--cream)}
.topbar,.intro,footer{background:var(--navy)}
.topbar{border-bottom:1px solid #694544}
.wordmark-star,.wordmark-period{color:#ed9e73}
.intro{min-height:500px;grid-template-columns:1fr 1fr}
.intro-copy{padding-top:78px;padding-bottom:70px}
.intro h1{font-size:clamp(55px,6vw,96px);line-height:.98;letter-spacing:-.055em}
.intro h1 em{color:#ffb384}
.intro-copy>p{color:#eddbd1}
.intro-note{color:#dec8bb}
.intro .eyebrow,.eyebrow{color:#c86543}
.intro .eyebrow{color:#ffb384}
.primary-button{background:#d95d3f;border-color:#d95d3f;color:#fff}
.primary-button:hover{background:#b84731}
.winter-art{margin:0;min-height:500px;background:#4a2525;isolation:isolate}
.winter-art:before{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#191116 0%,#19111611 28%),linear-gradient(0deg,#1a0d13b0,transparent 45%),linear-gradient(130deg,#c34b291a,#781e356b)}
.winter-art .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:contrast(1.12)}
.winter-art .disco-ball,.winter-art .star,.winter-art .light-strand,.winter-art .dance-floor{display:none}
.hero-stamp{position:absolute;z-index:3;right:8%;top:9%;width:148px;height:148px;border-radius:50%;background:#d95d3f;color:#fff;display:grid;place-content:center;text-align:center;transform:rotate(12deg);font-size:15px;font-weight:700;line-height:1.4;letter-spacing:.09em;box-shadow:0 15px 35px #1b0b15a1}
.art-caption{z-index:3;right:23px;bottom:18px;color:#fff;background:#1a1014a8;padding:7px 9px}
.details-strip{background:#ecd8c9}
.details-strip>div{border-color:#cfb8aa}
.detail-icon{color:#ac4e38;border-color:#ccae9c}
.details-strip small{color:#945b4c}
.preview-tag{border-color:#ca9c85;color:#9a4934}
.notice{background:#faeadc;border-left-color:#c96141}
.notice>span,.card-footer button,.gallery-link{color:#b45137}
.tabs button[aria-selected=true]{border-color:#c96141}
.card-icon{background:#f7ded2;color:#ab442e}
.slot-card{border-color:#eadbd0}
.slot-card:hover{box-shadow:0 16px 35px #4c202620}
.memories-section{background:#2a1c20;color:#fff}
.memories-section .eyebrow{color:#f2ad86}
.memories-copy p,.memory-stat span{color:#dec7bf}
.memory-stat{border-color:#684648}
.gallery-link{color:#ffc69c;border-color:#ffc69c}
.event-photo{background:#160e11}
.event-photo img{filter:grayscale(1) contrast(1.08)}
dialog{background:#fffaf4}
dialog::backdrop{background:#170c14c9}
.admin-tools{padding:70px clamp(24px,7vw,110px);background:#eedacc;display:grid;grid-template-columns:.75fr 1.25fr;gap:40px}
.admin-tools[hidden]{display:none}
.admin-tools h2{font-size:44px;margin:10px 0 20px}
.admin-tools p{line-height:1.6;font-size:14px}
.admin-tools label{display:block;font-size:13px;font-weight:700;margin-bottom:10px}
.admin-tools textarea{width:100%;min-height:190px;border:1px solid #cda793;background:#fffaf4;color:var(--ink);padding:15px;font:12px/1.5 monospace;resize:vertical}
.admin-actions{display:flex;align-items:center;gap:20px;margin-top:14px;flex-wrap:wrap}
.admin-reset{background:none;border:0;color:#9a4934;text-decoration:underline;font-weight:700}
.import-feedback{min-height:24px;margin:15px 0 0!important}
.import-feedback.error{color:#a92f29}.import-feedback.success{color:#36543c}
@media(max-width:900px){.intro{grid-template-columns:1fr}.winter-art{min-height:400px}.admin-tools{grid-template-columns:1fr}}
@media(max-width:600px){.intro-copy{padding:55px 24px 42px}.intro h1{font-size:59px}.winter-art{display:block;min-height:300px}.hero-stamp{width:112px;height:112px;right:6%;top:7%;font-size:11px}.admin-tools{padding:55px 20px}}

/* A small photo collage makes the first screen feel like the actual party. */
.winter-art .hero-photo{object-position:52% 42%;filter:saturate(1.12) contrast(1.05)}
.winter-art:before{background:linear-gradient(90deg,#19111688,transparent 24%),linear-gradient(0deg,#1a0d13d9,transparent 29%),linear-gradient(130deg,#c34b291a,#781e3540)}
.hero-inset{position:absolute;z-index:3;left:5%;bottom:54px;width:34%;margin:0;padding:7px;background:#f8f2e9;box-shadow:0 18px 45px #120911aa;transform:rotate(-5deg)}
.hero-inset img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;filter:grayscale(1) contrast(1.08)}
.hero-inset figcaption{color:#5b2932;font-size:9px;font-weight:700;letter-spacing:.11em;text-align:center;padding:7px 2px 2px}
.art-caption{font-size:9px;letter-spacing:.12em}
.event-photo{width:100%;max-width:500px;height:500px;min-height:0;justify-self:end}
.event-photo img{height:100%;min-height:0;object-position:center top;filter:saturate(1.1) contrast(1.05)}
@media(max-width:900px){.winter-art{min-height:460px}.hero-inset{width:27%}}
@media(max-width:900px){.event-photo{justify-self:start}}
@media(max-width:600px){.winter-art{min-height:350px}.winter-art .hero-photo{object-position:47% center}.hero-inset{width:37%;left:4%;bottom:52px;padding:5px}.hero-inset figcaption{font-size:7px;letter-spacing:.05em;padding:5px 1px 1px}.hero-stamp{right:5%;top:5%}.art-caption{right:9px;bottom:10px;font-size:7px;letter-spacing:.05em}.event-photo{height:350px}}

/* Critical roles and organizer-reviewed requests. */
.slot-card.request-card{border-color:#d89f86;background:#fff8f0}
.critical-tag{align-self:flex-start;margin-top:16px;color:#a54431;font-size:10px;font-weight:700;letter-spacing:.12em}
.slot-card .critical-tag+h3{margin-top:8px}
.request-card .card-status{background:#f9e0cf;color:#9d4933}
.request-card .card-status.filled{background:#eeeae4;color:#817467}
.admin-main{min-width:0}
.admin-caveat{border-left:3px solid #b95239;padding-left:12px;color:#79463a}
.organizer-slot-row{display:grid;grid-template-columns:minmax(0,1fr) auto 76px auto auto;align-items:center;gap:12px;background:#fff8f0;border:1px solid #dcc5b5;padding:13px 15px;margin:9px 0}
.organizer-slot-row strong,.organizer-slot-row small{display:block}
.organizer-slot-row small{color:#725e57;margin-top:3px;overflow-wrap:anywhere}
.organizer-slot-row label{margin:0;font-size:12px;white-space:nowrap}
.organizer-slot-row input{width:76px;height:40px;border:1px solid #cda793;background:#fffaf4;color:var(--ink);padding:0 8px;font:inherit}
.organizer-slot-row button{height:40px;border:1px solid #b9775e;background:#fffaf4;color:#813e2f;padding:0 13px;font-size:12px;font-weight:700}
.organizer-requests{margin-top:35px;border-top:1px solid #cda793;padding-top:24px}
.organizer-requests h3{font-family:'Playfair Display',Georgia,serif;font-size:27px;font-weight:500;margin:10px 0}
.organizer-requests>p{font-size:12px}
.organizer-request{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#fff8f0;border:1px solid #dcc5b5;padding:13px 15px;margin:9px 0}
.organizer-request strong,.organizer-request small{display:block}
.organizer-request small{color:#725e57;margin-top:3px;overflow-wrap:anywhere}
.request-actions{display:flex;gap:6px}
.request-actions button,.organizer-request>button{border:1px solid #b9775e;background:#fffaf4;color:#813e2f;padding:8px 10px;font-size:12px;font-weight:700}
.request-actions button:disabled{opacity:.45;cursor:not-allowed}
#organizer-assign-form{margin-top:14px;display:grid;gap:8px}
#organizer-assign-form label{margin:5px 0 0}
#organizer-assign-form input,#organizer-assign-form select{width:100%;height:43px;border:1px solid #cda793;background:#fffaf4;color:var(--ink);padding:0 11px;font:inherit}
#organizer-assign-form button{height:43px;justify-self:start;margin-top:8px}
.organizer-edit-form{margin-top:18px;padding:18px;background:#fff8f0;border:1px solid #dcc5b5;display:grid;gap:8px}
.organizer-edit-form[hidden]{display:none}
.organizer-edit-form h4{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:500;margin:0 0 4px}
.organizer-edit-form label{margin:5px 0 0}
.organizer-edit-form input,.organizer-edit-form select,.organizer-edit-form textarea{width:100%;border:1px solid #cda793;background:#fffaf4;color:var(--ink);padding:10px 11px;font:inherit}
.organizer-edit-form input,.organizer-edit-form select{height:43px}
.organizer-edit-form textarea{min-height:75px;resize:vertical}
.organizer-edit-form .admin-actions{margin-top:8px}
.organizer-edit-form .secondary-button{min-height:43px}
.organizer-edit-form .import-feedback{margin:0}
.organizer-edit-form .slot-item-critical{display:flex;align-items:center;gap:10px;margin-top:8px}
.organizer-edit-form .slot-item-critical[hidden]{display:none}
.organizer-edit-form .slot-item-critical input{width:auto;height:auto}
.organizer-request .person-details{min-width:0}
@media(max-width:600px){.organizer-request{align-items:flex-start;flex-direction:column}.organizer-slot-row{grid-template-columns:minmax(0,1fr) 76px auto auto;gap:8px}.organizer-slot-row .person-details{grid-column:1/-1}.organizer-slot-row label{font-size:11px}.organizer-slot-row button{padding:0 8px}}

/* Put guest self-service beside the choices, with a deliberate cancel step. */
.manage-signup-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 17px;margin:0 0 16px;background:#fff7ef;border:1px solid #e4c9b8;color:#694c43;font-size:12px}
.manage-signup-bar button{border:0;background:none;color:#a54431;font-weight:700;padding:5px 0;text-decoration:underline;text-underline-offset:3px}
.manage-signup-bar button:hover{color:#742e20}
.release-confirmation{margin-top:15px;padding:13px;background:#fff7ee;border:1px solid #d5aa94;display:flex;gap:10px;flex-wrap:wrap}
.release-confirmation[hidden]{display:none}
.release-confirmation p{flex-basis:100%;margin:0 0 4px!important;color:#643e35}
.confirm-release{background:#a43d2d;color:#fff;border:1px solid #a43d2d;padding:9px 12px;font-size:12px;font-weight:700}
.keep-signup{background:transparent;color:#6a524a;border:1px solid #bda296;padding:9px 12px;font-size:12px;font-weight:700}
.choose-again{background:#a94933;color:#fff;border:0;padding:10px 14px;font-size:12px;font-weight:700}
.release-button:focus-visible,.confirm-release:focus-visible,.keep-signup:focus-visible,.choose-again:focus-visible,.manage-signup-bar button:focus-visible{outline:3px solid #b45137;outline-offset:3px}
@media(max-width:600px){.manage-signup-bar{align-items:flex-start;flex-direction:column;gap:5px}}
