.gift-panel{gap:24px;display:grid}.gift-tabs{flex-wrap:wrap;gap:12px;display:flex}.gift-awards,.gift-ballot{gap:20px;min-width:0;display:grid}.gift-awards .card{min-width:0;padding:24px}.gift-awards-intro h2{margin:8px 0 16px;font-size:clamp(28px,4vw,42px)}.gift-sealed{border-left:3px solid var(--accent,#b8d982);background:var(--accent-soft,#ffffff08);padding:10px 14px}.gift-awards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.gift-award-category{flex-direction:column;gap:16px;display:flex}.gift-award-category p,.gift-award-category h3,.gift-award-category h4{overflow-wrap:anywhere;margin:0}.gift-award-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.gift-award-title h3{font-size:20px;line-height:1.4}.gift-award-points{color:var(--accent,#42682e);flex-shrink:0;font-size:22px;font-weight:800}.gift-award-points.negative{color:var(--danger,#b4443b)}.gift-awards .field{gap:8px;min-width:0;display:grid}.gift-awards select,.gift-awards input{width:100%;min-width:0}.gift-awards .btn{white-space:normal}.gift-ballot-choice{overflow-wrap:anywhere;align-items:center;gap:12px;display:flex}.gift-ballot-choice img{object-fit:contain;border-radius:8px;width:64px;height:64px}.gift-ballot-choice small{margin-top:6px;display:block}.gift-ballot-submit{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.gift-awards-controls{gap:16px;display:grid}.gift-awards-controls h3,.gift-awards-controls p{margin:0}.gift-award-settings{gap:16px;margin-top:18px;display:grid}.gift-award-settings>div{grid-template-columns:minmax(0,1fr) 110px;gap:12px;display:grid}.gift-award-winner{border:1px solid var(--accent,#b8d982);border-radius:10px;gap:10px;padding:16px;display:grid}.gift-award-winner h4{font-size:23px}.gift-vote-totals{gap:6px;padding:0;list-style:none;display:grid}.gift-vote-totals li{border-bottom:1px solid var(--line,#e1e5da);justify-content:space-between;gap:16px;display:flex}.gift-vote-totals span{overflow-wrap:anywhere}@media (max-width:700px){.gift-awards-grid{grid-template-columns:1fr}.gift-awards .card{padding:18px}.gift-ballot-submit .btn{width:100%}.gift-award-settings>div{grid-template-columns:minmax(0,1fr) 85px}}.gift-controls{gap:16px;display:grid}.gift-next{z-index:3;background:var(--card,#fffefa);border:1px solid var(--accent,#b8d982);border-radius:16px;padding:20px 24px;position:sticky;top:0;box-shadow:0 6px 24px #0003}.gift-next h2{margin:6px 0;font-size:clamp(24px,3vw,42px)}.gift-next p{margin:0}.gift-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;display:grid}.gift-card{text-align:left;border:1px solid var(--line,#e1e5da);background:var(--card,#fffefa);color:inherit;cursor:pointer;border-radius:16px;padding:12px;overflow:hidden}:is(.gift-card:hover,.gift-card:focus-visible){border-color:var(--accent,#b8d982);transform:translateY(-2px)}.gift-card img,.gift-placeholder{aspect-ratio:4/3;object-fit:contain;background:#ffffff08;border-radius:10px;width:100%;margin-bottom:14px;display:block}.gift-placeholder{place-items:center;font-size:60px;display:grid}.gift-card h3{overflow-wrap:anywhere;margin:8px 0;font-size:20px}.gift-card p{margin:8px 0;font-size:14px}.modal.gift-dialog{width:min(920px,94vw);max-width:920px;max-height:92dvh;overflow:auto}.gift-detail img{object-fit:contain;border-radius:12px;width:100%;max-height:60dvh}.gift-description{white-space:pre-wrap;overflow-wrap:anywhere}.gift-detail-actions{gap:14px;margin-top:20px;display:grid}.gift-detail-actions .btn{white-space:normal}.gift-screen{min-height:100dvh;padding:32px}.gift-screen-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.gift-screen .gift-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.gift-panel details summary{cursor:pointer}.gift-panel details li{padding:6px}@media (max-width:600px){.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gift-card{padding:9px}.gift-card h3{font-size:17px}.gift-next{padding:16px}.gift-panel .section-title{flex-direction:column;align-items:flex-start;gap:12px}.gift-screen{padding:16px}.gift-controls .stack-actions{display:grid}.gift-dialog{padding:18px}}.gift-controls{padding:24px}.gift-panel .stack-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.gift-dialog::backdrop{background:#10201899}.gift-dialog .form-grid{gap:16px;display:grid}.gift-dialog .field{gap:7px;display:grid}.gift-dialog p[role=alert]{color:var(--danger,#a34331)}@media (max-width:600px){.gift-panel .gift-controls .stack-actions{display:grid}.gift-controls{padding:18px}.gift-dialog:has(.gift-detail-actions) .gift-detail img{max-height:32dvh}.gift-detail-actions{gap:10px}}.gift-controls>summary{cursor:pointer;font-size:18px;font-weight:700}.gift-controls[open]>summary{margin-bottom:16px}.gift-controls[open]>.stack-actions{margin:16px 0}.gift-search{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.gift-search .field{flex:1;gap:7px;min-width:180px;display:grid}.gift-search input{width:100%;min-width:0}.gift-search>span{padding-bottom:12px;font-size:14px}.gift-receipt{overflow-wrap:anywhere;color:var(--accent);font-size:14px;margin-top:10px!important}.gift-next .stack-actions{margin-top:12px}.gift-undo{white-space:normal;text-align:left}.gift-collect{background:var(--card,#fffefa);z-index:2;gap:10px;padding:12px 0;display:grid;position:sticky;bottom:0}.gift-exchange{border-top:1px solid var(--line,#e1e5da);padding-top:14px}.gift-exchange[open]{gap:12px;display:grid}.gift-exchange-preview{border:1px solid var(--accent);border-radius:8px;padding:12px;font-size:15px}.gift-dialog .modal-head h2{overflow-wrap:anywhere;font-size:clamp(22px,3vw,32px)}.gift-dialog .field select{width:100%;min-width:0}@media (max-width:600px){.gift-next{padding:12px}.gift-next h2{font-size:25px}.gift-next p{font-size:13px}.gift-next .btn,.gift-next .text-btn{min-height:40px;padding:8px;font-size:12px}.gift-next .stack-actions{gap:4px;margin-top:6px}.gift-next .gift-undo{flex:1}.gift-dialog:has(.gift-detail-actions) .gift-detail img{max-height:24dvh}.gift-dialog .gift-detail p{margin:10px 0;font-size:14px}}@media (min-width:1000px) and (min-height:650px){.gift-screen{flex-direction:column;gap:12px;height:100dvh;min-height:0;padding:20px;display:flex;overflow:hidden}.gift-screen-head{flex:none}.gift-screen-head h1{margin:4px 0;font-size:32px}.gift-screen-head .eyebrow{margin:0}.gift-screen .gift-next{flex:none;justify-content:space-between;align-items:center;gap:24px;padding:12px 18px;display:flex;position:static}.gift-screen .gift-next h2{margin:3px 0;font-size:30px}.gift-screen .gift-next p{font-size:15px}.gift-screen .gift-receipt{max-width:45%;margin:0!important}.gift-screen .gift-grid{grid-template-columns:repeat(var(--gift-columns),minmax(0,1fr));grid-template-rows:repeat(var(--gift-rows),minmax(0,1fr));flex:1;gap:10px;min-height:0}.gift-screen .gift-card{border-radius:10px;flex-direction:column;min-height:0;padding:8px;display:flex}.gift-screen .gift-card img,.gift-screen .gift-placeholder{aspect-ratio:auto;object-fit:contain;border-radius:6px;flex:1;width:100%;min-height:0;margin:0 0 6px}.gift-screen .gift-card .eyebrow{flex:none;font-size:12px}.gift-screen .gift-card h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:none;margin:4px 0 0;font-size:clamp(15px,1.1vw,21px);line-height:1.15;display:-webkit-box;overflow:hidden}}.rsvp-layout{gap:20px;display:grid}.rsvp-intro{align-items:flex-start;gap:20px;display:flex}.rsvp-intro>svg{color:var(--accent);flex-shrink:0}.rsvp-intro h2{margin:8px 0}.rsvp-deadline{font-size:14px}.rsvp-form{gap:16px;display:grid}.rsvp-form h3{margin:0}.rsvp-form fieldset{border:0;min-width:0;margin:0;padding:0}.rsvp-form legend{margin-bottom:10px;font-size:14px}.rsvp-form .field{margin:0}.rsvp-form textarea{resize:vertical;width:100%}.rsvp-choices{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.rsvp-choices label{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:13px 18px;display:flex}.rsvp-choices label.selected,.rsvp-summary button.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.rsvp-choices input,.rsvp-clear input{width:auto;accent-color:var(--accent)}.rsvp-clear{align-items:center;gap:10px;margin:0 0 12px;font-size:14px;display:flex}.rsvp-actions{flex-wrap:wrap;gap:10px;display:flex}.rsvp-summary{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.rsvp-summary button{text-align:left;color:inherit;cursor:pointer}.rsvp-summary span{font-size:14px}.rsvp-summary strong{margin-top:10px;font-size:36px;display:block}.rsvp-settings{grid-template-columns:1fr 1fr;gap:20px;display:grid}.rsvp-filters{grid-template-columns:2fr 1fr;gap:16px;display:grid}.rsvp-table small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.rsvp-table .rsvp-private{white-space:pre-wrap;overflow-wrap:anywhere;max-width:320px}.rsvp-table code{-webkit-user-select:all;user-select:all}.rsvp-warning{border:1px solid var(--accent);border-radius:8px;padding:14px;font-size:14px}.rsvp-warning button{margin-top:8px;display:block}.rsvp-edit{border-color:var(--accent)}.rsvp-form .btn{justify-self:start}.rsvp-table .btn{white-space:nowrap}@media (max-width:700px){.rsvp-summary{grid-template-columns:repeat(2,1fr)}.rsvp-settings,.rsvp-filters{grid-template-columns:1fr}.rsvp-choices label{flex:1;justify-content:center;min-width:120px}.rsvp-intro{gap:12px}.rsvp-summary strong{font-size:30px}}.rsvp-layout>.card,.rsvp-settings>.card,.rsvp-summary>.card{padding:24px}.rsvp-layout .card-head{padding:0 0 18px}.rsvp-layout .card-head h2{align-items:center;gap:10px;display:flex}.rsvp-layout .sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:700px){.rsvp-layout>.card,.rsvp-settings>.card,.rsvp-summary>.card{padding:18px}.rsvp-layout .card-head{align-items:flex-start;gap:12px}.rsvp-layout .card-head h2{font-size:20px}}.director-panel{gap:22px;display:grid}.director-status,.director-status>span{align-items:center;gap:12px;display:flex}.director-status{background:var(--soft);color:var(--ink);border:1px solid var(--line);border-radius:10px;justify-content:space-between;padding:16px 20px}.director-status .text-btn{color:inherit}.director-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:22px;display:grid}.director-panel .card{padding:26px}.director-current h2{margin:12px 0;font-size:2rem}.director-current>p,.director-shortcuts>p{line-height:1.65}.director-actions{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.director-private{background:var(--soft);border:1px dashed var(--line);border-radius:8px;margin:20px 0;padding:20px}.director-private .eyebrow{color:var(--ink)}.director-cues,.director-public-notes{white-space:pre-wrap;overflow-wrap:anywhere}.director-next{border-top:1px solid #7d8b7540;margin-top:22px;padding-top:20px}.director-next h3{margin:8px 0}.director-clock{text-align:center;gap:10px;padding:22px 0;display:grid}.director-clock time{font-variant-numeric:tabular-nums;font-size:clamp(3rem,5vw,5rem);font-weight:750;line-height:1.1}.director-clock span{letter-spacing:.14em;font-size:.75rem}.director-clock.ended{color:var(--accent)}.director-timer form{margin:20px 0}.director-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.director-editor fieldset{border:0;min-width:0;margin:0;padding:0}.director-editor textarea{resize:vertical;min-height:80px}.director-runsheet ol{margin:16px 0 0;padding:0;list-style:none}.director-runsheet li{border-top:1px solid #7d8b7540;align-items:flex-start;gap:18px;padding:20px 0;display:flex}.director-runsheet li.current{border-left:4px solid var(--accent);padding-left:16px}.director-order{color:var(--accent);font-size:1.5rem;font-weight:700}.director-activity{overflow-wrap:anywhere;flex:1;min-width:0}.director-activity h3{margin:7px 0;font-size:1.2rem}.director-activity p{font-size:.9rem;line-height:1.5}.director-activity details{margin-top:12px}.director-activity summary{cursor:pointer;font-size:.9rem}.director-row-actions{flex-wrap:wrap;align-items:center;gap:10px;max-width:240px;display:flex}.director-checklist{gap:12px;margin:16px 0;display:grid}.director-checklist label{align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.director-checklist input{width:18px;height:18px;accent-color:var(--forest);flex:0 0 18px}.director-panel button:disabled{opacity:.45;cursor:not-allowed}.director-broadcast{background:var(--paper);min-height:0;color:var(--ink);flex:1;justify-content:space-between;align-items:center;gap:5vw;padding:4vh 5vw;display:flex;overflow:auto}.director-broadcast>section{flex:1;min-width:0}.director-broadcast h2{overflow-wrap:anywhere;margin:20px 0;font-size:clamp(2.5rem,5.8vw,6.5rem);line-height:1.05}.director-broadcast>section>p{font-size:clamp(1.2rem,2.3vw,2.8rem);line-height:1.5}.director-broadcast>.director-clock{min-width:23vw}.director-broadcast>.director-clock time{font-size:clamp(4rem,8vw,9rem)}.director-broadcast .eyebrow{color:var(--muted)}@media (max-width:900px){.director-grid{grid-template-columns:1fr}.director-runsheet li{flex-wrap:wrap}.director-row-actions{max-width:none;padding-left:42px}.director-status{flex-direction:column;align-items:flex-start}.director-broadcast{flex-direction:column;align-items:stretch}.director-broadcast>.director-clock{min-width:0}.director-broadcast>.director-clock time{font-size:4rem}}@media (max-width:520px){.director-panel .card{padding:18px}.director-fields{grid-template-columns:1fr}.director-actions .btn{width:100%}.director-runsheet>.section-title{flex-direction:column;align-items:flex-start;gap:16px}.director-activity{min-width:65%}}.director-screen-select{border-top:1px solid var(--line);padding-top:20px}.director-screen-select [aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 -3px var(--accent)}.director-showing-briefing{align-items:center;gap:3vw;padding:2vh 3vw}.director-showing-briefing>.director-clock{min-width:16vw}.director-showing-briefing>.director-clock time{font-size:clamp(3rem,5.5vw,6rem)}.director-showing-briefing .briefing-display{box-shadow:none;background:0 0;border:0;padding:0}.director-showing-briefing .briefing-display h2{margin:12px 0;font-size:clamp(2rem,3.5vw,4rem)}.director-showing-briefing .briefing-display p,.director-showing-briefing .briefing-display li{font-size:clamp(1rem,1.8vw,2rem)}.director-showing-briefing .briefing-display h3{font-size:clamp(1.2rem,2vw,2.2rem)}.director-showing-briefing .briefing-number{font-size:1.6rem}.director-showing-briefing .briefing-diagram li strong{font-size:clamp(1rem,1.6vw,1.6rem)}.director-briefing-wait p{font-size:1.5rem}
