@font-face{font-family:Trajan Pro;src:url(/assets/TrajanPro-Regular-Lq2szPtT.ttf) format("truetype"),local("Trajan Pro"),local("TrajanPro-Regular"),local("TrajanPro");font-display:swap;font-style:normal;font-weight:400}.photo-layout-builder{gap:24px}.photo-layout-builder-header,.photo-layout-section-heading,.photo-layout-save-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.photo-layout-builder-header h2,.photo-layout-section-heading h3{margin:3px 0 0}.photo-layout-builder-header>div>p:last-child{max-width:680px;margin:8px 0 0;color:var(--muted);font-weight:650;line-height:1.55}.photo-layout-orientation-badge{flex:0 0 auto;border:1px solid #cdb995;border-radius:999px;padding:8px 11px;background:#fbf4e7;color:#795a31;font-size:.67rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.photo-layout-section{display:grid;gap:14px;border-top:1px solid #e4dfd6;padding-top:22px}.photo-layout-section-heading{align-items:center}.photo-layout-section-heading>span{color:#84643a;font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.photo-layout-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.photo-layout-picker-card{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-width:0;border:1px solid #ded8ce;border-radius:10px;padding:8px;background:#fffefa;color:#302f2b;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.photo-layout-picker-card:hover:not(:disabled){border-color:#aa8957;box-shadow:0 9px 18px #463a261a;transform:translateY(-2px)}.photo-layout-picker-card.is-selected{border-color:#8c6939;background:#fbf5ea;box-shadow:0 0 0 2px #8c693929}.photo-layout-picker-card>span:last-child{display:grid;gap:3px;min-width:0}.photo-layout-picker-card strong,.photo-layout-picker-card small{min-width:0;overflow-wrap:anywhere}.photo-layout-picker-card strong{font-family:var(--grand-serif);font-size:.84rem;font-weight:600;line-height:1.16}.photo-layout-picker-card small{color:var(--muted);font-size:.62rem;font-weight:800}.photo-layout-miniature{position:relative;display:block;width:100%;aspect-ratio:1 / 1;overflow:hidden;border:1px solid #8c7a5f;border-radius:5px;background:#f5f1e9}.photo-layout-miniature-cell{position:absolute;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px #665a48;background:#d9d0c1;color:#5f513f;font-size:.56rem;font-weight:900}.photo-layout-miniature.is-diagonal-pair:after{position:absolute;z-index:2;top:50%;left:-10%;width:120%;height:2px;background:#665a48;content:"";transform:rotate(9deg);transform-origin:center}.photo-layout-upload-all,.photo-layout-upload-actions .icon-button{position:relative;overflow:hidden}.photo-layout-upload-all input,.photo-layout-upload-actions .icon-button input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.photo-layout-upload-all.is-disabled,.photo-layout-upload-actions .icon-button.is-disabled{pointer-events:none;opacity:.56}.photo-layout-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-layout-upload-card{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;border:1px solid #ded8ce;border-radius:10px;padding:9px;background:#fffefa}.photo-layout-upload-card.has-image{border-color:#cab58f;background:#fdf9f0}.photo-layout-upload-card.is-active{box-shadow:0 0 0 2px #8c693926}.photo-layout-upload-preview{position:relative;display:grid;place-items:center;width:74px;aspect-ratio:1 / 1;overflow:hidden;border:1px solid #2c2b27;border-radius:8px;background:#25241f;color:#d6bc8e}.photo-layout-upload-preview img{width:100%;height:100%;object-fit:cover}.photo-layout-upload-preview>span{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#141311d1;color:#fffefa;font-size:.64rem;font-weight:900}.photo-layout-upload-copy{display:grid;gap:3px;min-width:0}.photo-layout-upload-copy strong{font-family:var(--grand-serif);font-size:.94rem;font-weight:600}.photo-layout-upload-copy small{min-width:0;overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.photo-layout-upload-actions{display:flex;align-items:center;gap:4px}.photo-layout-upload-actions .icon-button{width:34px;height:34px}.photo-layout-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.photo-layout-preview-column{display:grid;justify-items:center;gap:10px;min-width:0}.photo-layout-canvas{display:block;width:100%;aspect-ratio:16 / 9;border:1px solid #292929;border-radius:9px;background:#f5f1e9;box-shadow:0 14px 34px #2d281f24}.photo-layout-canvas.is-portrait{width:min(100%,500px);aspect-ratio:9 / 16}.photo-layout-slot-selector{display:grid;gap:5px;width:min(100%,600px);border:1px solid var(--line);border-radius:9px;padding:5px;background:#fffc}.photo-layout-slot-selector button{min-height:36px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font-weight:900}.photo-layout-slot-selector button.is-selected{border-color:#c9a2276b;background:#fbf4df;color:var(--ink)}.photo-layout-crop-panel{position:sticky;top:16px}.photo-layout-empty-editor{display:grid;justify-items:center;gap:8px;min-height:230px;align-content:center;color:var(--muted);text-align:center}.photo-layout-empty-editor strong{color:var(--ink);font-family:var(--grand-serif);font-size:1rem;font-weight:600}.photo-layout-empty-editor span{max-width:230px;font-size:.76rem;font-weight:700;line-height:1.45}.photo-layout-save-actions{align-items:center;border-top:1px solid #e4dfd6;padding-top:20px}.photo-layout-save-actions>p{margin:0;color:var(--muted);font-size:.72rem;font-weight:800}@media(max-width:980px){.photo-layout-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-layout-editor{grid-template-columns:1fr}.photo-layout-crop-panel{position:static}}@media(max-width:720px){.photo-layout-builder-header,.photo-layout-section-heading,.photo-layout-save-actions{align-items:stretch;flex-direction:column}.photo-layout-orientation-badge,.photo-layout-section-heading>span{align-self:flex-start}.photo-layout-picker-grid,.photo-layout-upload-grid{grid-template-columns:1fr}.photo-layout-picker-card{grid-template-columns:64px minmax(0,1fr)}.photo-layout-upload-all,.photo-layout-save-actions .primary-button{width:100%;justify-content:center}.photo-layout-upload-card{grid-template-columns:64px minmax(0,1fr);grid-template-areas:"preview copy" "actions actions"}.photo-layout-upload-preview{grid-area:preview;width:64px}.photo-layout-upload-copy{grid-area:copy}.photo-layout-upload-actions{grid-area:actions;justify-content:flex-end}.photo-layout-save-actions>p{text-align:center}}@font-face{font-family:Trajan Pro;src:url(/assets/TrajanPro-Bold-BqrE6oXJ.otf) format("opentype"),local("Trajan Pro Bold"),local("TrajanPro-Bold");font-display:swap;font-style:normal;font-weight:700}:root{color:#252525;background:#f7f3eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #252525;--charcoal: #0b0b0b;--muted: #73706b;--soft: #f7f3eb;--surface: #fffefa;--line: #e5e3dc;--accent: #c9a227;--accent-strong: #9f7c14;--accent-soft: #f4ead0;--rose: #8e4756;--blue: #344154;--grand-serif: "Trajan Pro", Georgia, "Times New Roman", serif}*{box-sizing:border-box;letter-spacing:0}html,body,#root{min-height:100%}body{margin:0;background:linear-gradient(90deg,rgba(201,162,39,.04) 1px,transparent 1px),linear-gradient(0deg,rgba(201,162,39,.04) 1px,transparent 1px),var(--soft);background-size:72px 72px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}.brand-button,h1,h2,h3,h4,h5,h6{font-family:var(--grand-serif)}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:14px clamp(16px,3vw,34px);border-bottom:1px solid var(--line);background:#fffefaf5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand-button,.primary-button,.secondary-button,.ghost-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:8px;border:1px solid transparent;padding:9px 13px;font-weight:700;color:var(--ink);background:transparent}.brand-button{display:grid;justify-items:start;gap:1px;padding-left:0;font-size:1rem}.brand-wordmark{font-size:clamp(1.35rem,2.8vw,1.85rem);font-weight:400;line-height:1;text-transform:uppercase}.brand-subtitle{color:var(--muted);font-size:.78rem;font-weight:800}.primary-button{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 14px 30px #c9a22733}.primary-button:hover:not(:disabled){background:var(--accent-strong)}.secondary-button{background:#fff;border-color:var(--line)}.secondary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled){border-color:#c9a22785;background:#fbf6e8}.ghost-button{border-color:transparent}.compact-button{min-height:34px;padding:7px 10px}.icon-button{width:40px;height:40px;padding:0;border-color:var(--line);background:#fff}.danger-button{color:var(--rose)}.stretch-button{width:100%}.workspace,.client-workspace{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}.client-workspace{width:min(980px,calc(100% - 32px))}.admin-header,.client-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.client-header{display:grid;justify-content:stretch;justify-items:stretch;text-align:center;width:100%}.client-header .eyebrow,.client-header h1{justify-self:stretch;width:100%;text-align:center}.client-header .eyebrow{font-family:var(--grand-serif);font-weight:400;line-height:1;text-transform:uppercase}.admin-header h1,.client-header h1{margin:7px 0 0;font-size:clamp(2rem,4vw,4rem);line-height:1}.client-header-note{margin:10px 0 0;color:var(--muted);font-weight:800}.admin-header-actions,.topbar-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.ghost-button.is-active{border-color:#c9a22785;background:#fbf6e8}.mobile-menu-button{display:none;flex:0 0 auto}.mobile-menu-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;flex-direction:column;padding:14px clamp(16px,5vw,28px) 28px;overflow-y:auto;background:#fffefafa;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;border-bottom:1px solid var(--line)}.mobile-menu-brand{min-width:0;padding-left:0}.mobile-menu-actions{display:grid;gap:10px;padding:26px 0}.mobile-menu-action{display:inline-flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-height:58px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#fff;color:var(--ink);font-weight:900;text-align:left}.mobile-menu-action:hover:not(:disabled),.mobile-menu-action.is-active{border-color:#c9a22785;background:#fbf6e8}.mobile-menu-action:last-child{margin-top:10px;color:var(--rose)}.user-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;max-width:260px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:#fff;color:var(--ink);font-weight:800}.user-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip strong{border-radius:6px;padding:3px 6px;background:var(--accent-soft);color:#665018;font-size:.72rem;text-transform:uppercase}.user-chip-staff{background:#ffffffd1}.eyebrow{margin:0;color:var(--accent);font-size:.8rem;font-weight:800}.panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 22px 54px #25252514}.flow-panel{padding:clamp(18px,3vw,30px)}.client-hub-panel{display:grid;gap:16px}.client-instruction{max-width:680px;margin:8px 0 0;color:var(--muted);font-size:.93rem;font-weight:750;line-height:1.45}.client-check-toolbar .client-instruction{margin-right:auto;margin-left:auto}.client-instruction-box{display:grid;gap:7px;max-width:760px;margin:12px 0 0;border:1px solid #c7d7e8;border-left:4px solid #6d94bd;border-radius:8px;padding:12px 14px;background:#f5f9fd;color:#274a70;text-align:left}.client-instruction-box-title{color:#274a70;font-size:.74rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.client-instruction-box-content{display:grid;gap:8px}.client-instruction-box-content p,.client-instruction-box-content ul,.client-instruction-box-content ol{margin:0;font-size:.93rem;font-weight:750;line-height:1.45}.client-instruction-box-content ul,.client-instruction-box-content ol{padding-left:1.1rem}.client-instruction-box-content li+li{margin-top:3px}.client-instruction-example{display:grid;gap:4px;border-top:1px solid rgba(109,148,189,.26);padding-top:8px}.client-instruction-example ol{display:grid;gap:2px;padding-left:0;list-style:none}.client-instruction-example li{color:#274a70;font-size:.86rem;font-weight:800;line-height:1.25}.client-check-toolbar .client-instruction-box{margin-right:auto;margin-left:auto}.choice-option-stack{display:flex;min-width:0;flex-direction:column;gap:12px}.choice-option-stack .client-instruction-box{max-width:none;margin:0}.choice-option-stack .seating-plan-option{width:100%;flex:1}.client-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-action-button{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-areas:"icon copy" "icon pill";align-items:center;gap:8px 13px;min-height:152px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:18px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 12px 24px #2525250d}.client-action-button:hover:not(:disabled){border-color:#c9a2279e;background:#fffaf0}.client-action-button:disabled{opacity:1;color:var(--muted);background:#f7f4ec}.client-action-icon{grid-area:icon;display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid #e2d5aa;border-radius:8px;background:#fff7df;color:var(--accent-strong)}.client-action-button:disabled .client-action-icon{border-color:var(--line);background:#fff;color:var(--muted)}.client-action-copy{grid-area:copy;display:grid;gap:7px;min-width:0}.client-action-title-row{display:flex;align-items:flex-start;gap:8px;min-width:0}.client-action-title,.client-action-meta,.client-action-detail{min-width:0;overflow-wrap:anywhere}.client-action-title{font-family:var(--grand-serif);font-size:clamp(1.05rem,2vw,1.3rem);font-weight:700;line-height:1.12}.client-action-meta{color:var(--ink);font-size:.92rem;font-weight:800}.client-action-detail{color:var(--muted);font-size:.85rem;font-weight:700;line-height:1.35}.client-action-pill{grid-area:pill;justify-self:start;border:1px solid var(--line);border-radius:999px;padding:4px 9px;background:#fff;color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.client-back-row{display:flex;justify-content:flex-start;margin-bottom:16px}.seating-count-grid,.seating-plan-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.seating-plan-option,.seating-plan-card{display:grid;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 12px 24px #2525250d}.seating-plan-option:hover:not(:disabled),.seating-plan-card:hover:not(:disabled){border-color:#c9a2279e;background:#fffaf0}.seating-plan-option{justify-items:start;gap:12px;min-height:190px;padding:20px}.seating-plan-option strong,.seating-plan-card strong{font-family:var(--grand-serif);font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.15}.seating-plan-option>span:last-child,.seating-plan-card small{color:var(--muted);font-size:.9rem;font-weight:800;line-height:1.35}.seating-plan-card{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:104px;padding:18px}.seating-plan-card>span:nth-child(2){display:grid;gap:6px;min-width:0}.seating-plan-card-action{display:inline-flex;min-height:34px;align-items:center;justify-content:center;border:1px solid #e2d5aa;border-radius:8px;padding:7px 10px;background:#fff7df;color:var(--accent-strong);font-weight:800;white-space:nowrap}.stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0;margin:0 0 18px;list-style:none}.stepper li{display:flex;align-items:center;gap:10px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;color:var(--muted)}.stepper li.is-active{border-color:#c9a2279e;background:#fbf4df;color:var(--ink)}.stepper span{display:inline-flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border-radius:50%;background:#efe7d3;font-weight:800}.stepper li.is-active span{background:var(--accent);color:#fff}.stepper strong{min-width:0;overflow-wrap:anywhere}.feedback{margin:0 0 14px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;background:#fff;color:var(--ink);font-weight:700}.feedback-error{border-color:#e1b3bd;background:#fff4f6;color:#74293c}.feedback-success{border-color:#d8c27a;background:#fff8e7;color:#5a430a}.feedback-warning{border-color:#e7d199;background:#fff9e9;color:#6a4b13}.feedback-info{border-color:#c7d7e8;background:#f2f7fd;color:#274a70}.auth-workspace{display:grid;width:min(100% - 32px,460px);min-height:100vh;align-content:center;margin:0 auto;padding:32px 0}.auth-panel{display:grid;gap:18px;padding:clamp(20px,4vw,30px);border-top:4px solid var(--accent)}.auth-lockup{display:grid;justify-items:start;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--line)}.auth-panel h1{margin:7px 0 0;font-size:clamp(2rem,8vw,3rem);line-height:1}.auth-copy{margin:0;color:var(--muted);font-weight:700;line-height:1.5}.auth-form{display:grid;gap:14px}.auth-input-shell{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;border:1px solid #ddd8ca;border-radius:8px;padding:0 12px;background:#fff}.auth-input-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #c9a22729}.auth-input-shell svg{color:var(--muted)}.auth-input-shell input{border:0;padding-right:0;padding-left:0}.auth-input-shell input:focus{box-shadow:none}.auth-submit-button{width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:clamp(18px,3vw,30px)}.field-wide{grid-column:1 / -1}.field,.admin-meta-form label,.control-section label,.export-setting{display:grid;gap:7px;min-width:0;color:#36332d;font-weight:800}.field span,.admin-meta-form span,.control-section span,.export-grid span{font-size:.84rem}.export-setting strong{display:flex;align-items:center;width:100%;min-height:43px;min-width:0;border:1px solid #ddd8ca;border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);font-size:.95rem;line-height:1.2}input,textarea,select{width:100%;min-height:43px;min-width:0;border:1px solid #ddd8ca;border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}textarea{min-height:132px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #c9a22729}.field-error{color:var(--rose);font-weight:700}.segmented-control,.choice-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid var(--line);border-radius:8px;padding:5px;background:#f7f2e7}.segmented-control button,.choice-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800}.segmented-control button.is-selected,.choice-tabs button.is-selected{background:#fff;color:var(--ink);box-shadow:0 1px 8px #20232714}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.form-actions-end{grid-column:1 / -1;justify-content:flex-end}.form-actions-between{justify-content:space-between}.choice-tabs{max-width:440px;margin-bottom:20px}.seating-plan-tabs{max-width:520px}.seating-plan-title-field{max-width:520px;margin-bottom:18px}.admin-seating-title-field{margin-top:-4px}.upload-dropzone{display:grid;justify-items:center;gap:14px;min-height:260px;border:1px dashed #d5bc68;border-radius:8px;padding:30px;background:#fffaf0;text-align:center}.upload-dropzone input{max-width:460px;background:#fff}.asset-upload-dropzone{min-height:300px}.asset-upload-note{color:var(--muted);font-size:.9rem;font-weight:800}.asset-upload-panel{display:grid;gap:14px}.asset-upload-slots{display:grid;grid-template-columns:1fr;gap:12px}.asset-upload-slots.is-split{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-upload-slot{display:grid;grid-template-columns:minmax(116px,.34fr) minmax(0,1fr);grid-template-areas:"thumb copy" "thumb actions";align-items:center;gap:12px 14px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fff;box-shadow:0 12px 24px #2525250d}.asset-upload-slot.has-image{border-color:#c9a22780;background:#fffdf7}.asset-upload-thumb{grid-area:thumb;display:grid;width:100%;min-width:96px;aspect-ratio:16 / 9;place-items:center;overflow:hidden;border:1px solid #292929;border-radius:8px;background:#151515;color:#f7edcf}.asset-upload-slot.is-portrait .asset-upload-thumb{width:min(100%,150px);aspect-ratio:9 / 16;justify-self:center}.asset-upload-thumb img{width:100%;height:100%;object-fit:cover}.asset-upload-slot-copy{grid-area:copy;display:grid;gap:4px;min-width:0}.asset-upload-slot-copy strong,.asset-upload-slot-copy span,.asset-upload-slot-copy small{min-width:0;overflow-wrap:anywhere}.asset-upload-slot-copy strong{font-family:var(--grand-serif);font-size:1.14rem;line-height:1.15}.asset-upload-slot-copy span{font-weight:800}.asset-upload-slot-copy small{color:var(--muted);font-weight:800}.asset-upload-slot-actions{grid-area:actions;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.asset-upload-button{position:relative;overflow:hidden;cursor:pointer}.asset-upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.asset-upload-button.is-disabled{pointer-events:none;cursor:not-allowed;opacity:.58}.asset-upload-status{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;padding:11px 13px;background:#fffaf0;color:var(--muted);font-weight:800}.asset-upload-status div{display:flex;gap:6px}.asset-upload-status div span{display:block;width:40px;height:7px;border-radius:999px;background:#e7dcc1}.asset-upload-status div span.is-ready{background:var(--accent)}.asset-crop-grid{display:grid;grid-template-columns:1fr;gap:14px}.asset-crop-grid.is-split{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-crop-card{display:grid;gap:14px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fff;box-shadow:0 12px 24px #2525250d}.asset-crop-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.asset-crop-card header div{display:grid;gap:4px;min-width:0}.asset-crop-card strong,.asset-crop-card header span{min-width:0;overflow-wrap:anywhere}.asset-crop-card strong{font-family:var(--grand-serif);font-size:1.08rem;line-height:1.15}.asset-crop-card header span{color:var(--muted);font-size:.82rem;font-weight:800}.asset-crop-canvas{display:block;width:100%;aspect-ratio:16 / 9;border:1px solid #292929;border-radius:8px;background:#111}.asset-crop-canvas.is-split{aspect-ratio:8 / 9}.asset-crop-controls{display:grid;gap:12px}.asset-crop-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.asset-tv-crop-preview{display:grid;gap:12px;min-width:0}.asset-tv-preview-canvas{display:block;width:100%;aspect-ratio:16 / 9;border:1px solid #292929;border-radius:8px;background:#111}.asset-tv-preview-canvas.is-portrait{width:min(100%,540px);aspect-ratio:9 / 16;justify-self:center}.asset-preview-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;border:1px solid var(--line);border-radius:8px;padding:5px;background:#ffffffc7}.asset-preview-selector button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:40px;border:1px solid transparent;border-radius:7px;padding:8px 10px;background:transparent;color:var(--muted);font-weight:800}.asset-preview-selector button span{min-width:0;overflow-wrap:anywhere}.asset-preview-selector button.is-selected{border-color:#c9a2276b;background:#fbf4df;color:var(--ink)}.asset-crop-control-panel{display:grid;gap:16px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:16px;background:#fff;box-shadow:0 12px 24px #2525250d}.asset-crop-control-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.asset-crop-control-panel header div{display:grid;gap:4px;min-width:0}.asset-crop-control-panel h3,.asset-crop-control-panel header span{min-width:0;overflow-wrap:anywhere}.asset-crop-control-panel h3{margin:0;font-size:1.08rem;line-height:1.2}.asset-crop-control-panel header span{color:var(--muted);font-size:.82rem;font-weight:800}.asset-tv-preview-shell{border:1px solid #292929;border-radius:8px;padding:10px;background:#151515;box-shadow:inset 0 0 0 1px #ffffff0f}.asset-tv-preview-shell img{display:block;width:100%;aspect-ratio:16 / 9;border-radius:6px;background:#111;object-fit:contain}.asset-tv-preview-shell.is-portrait{width:min(100%,560px);justify-self:center}.asset-tv-preview-shell.is-portrait img{aspect-ratio:9 / 16}.manual-input-grid{display:grid;gap:14px}.section-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.section-toolbar h2{margin:4px 0 0;font-size:clamp(1.4rem,2.4vw,2.1rem)}.client-check-toolbar{justify-content:center;text-align:center}.section-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.settings-save-state{color:var(--muted);font-size:.8rem;font-weight:800;white-space:nowrap}.settings-save-state-error{color:#74293c}.client-review-actions{align-items:center;justify-content:flex-end;gap:12px;margin-top:8px}.client-review-actions>button{width:min(260px,100%)}.review-confirmation{display:flex;align-items:flex-start;gap:10px;max-width:720px;margin:8px auto 0;border:1px solid #e5d9ad;border-radius:8px;padding:13px 15px;background:#fffaf0;color:#3d3627;font-weight:800;line-height:1.45}.review-confirmation input{width:18px;min-width:18px;height:18px;min-height:18px;margin:2px 0 0;accent-color:var(--accent-strong)}.review-confirmation span{min-width:0}.table-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.client-table-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-editor{border:1px solid var(--line);border-radius:8px;padding:14px;background:#fffdf7}.table-editor-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.table-editor-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.guest-list{display:grid;gap:9px;padding:0;margin:14px 0;list-style:none}.guest-list li{display:grid;grid-template-columns:32px minmax(0,1fr) 40px;align-items:center;gap:8px}.guest-list li>span{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border-radius:50%;background:#f0eadc;color:var(--muted);font-weight:800}.song-request-form{display:grid;gap:18px}.song-request-list{display:grid;gap:12px}.song-request-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1.25fr) minmax(220px,1fr) 40px;align-items:end;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffdf7}.song-request-row textarea{min-height:72px}.song-request-remove{align-self:end}.admin-songs-panel,.admin-digital-assets-panel{margin:16px 0}.admin-song-list{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.admin-song-row{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1fr);align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:13px 14px}.admin-song-row:last-child{border-bottom:0}.admin-song-row>div,.admin-song-row a,.admin-song-link-text,.admin-song-link-empty{min-width:0}.admin-song-row>div{display:inline-flex;align-items:center;gap:8px}.admin-song-row svg{flex:0 0 auto;color:var(--accent)}.admin-song-row strong,.admin-song-row span{overflow-wrap:anywhere}.admin-song-row a{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;color:#274a70;font-weight:800}.admin-song-link-text,.admin-song-link-empty{color:var(--muted);font-weight:800}.admin-song-notes{grid-column:1 / -1;margin:0;border-left:3px solid #d7c492;padding-left:11px;color:#4f4a42;font-size:.92rem;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.submission-summary,.metric{display:grid;gap:4px;min-height:88px;align-content:center;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fffaf0}.submission-summary strong,.metric strong{font-size:2rem;line-height:1}.submission-summary span,.metric span{color:var(--muted);font-weight:700}.confirmation-box{display:grid;justify-items:center;gap:10px;min-height:260px;align-content:center;text-align:center}.confirmation-box h2{margin:0;font-size:clamp(1.8rem,3vw,2.6rem)}.confirmation-box p{margin:0;color:var(--muted);font-weight:700}.empty-state{display:grid;justify-items:center;gap:14px;min-height:220px;align-content:center;border:1px solid var(--line);border-radius:8px;padding:24px;background:#fff;color:var(--muted);text-align:center;font-weight:700}.empty-state-error{border-color:#e1b3bd;background:#fff4f6;color:#74293c}.plan-list{display:grid}.plan-filter-panel{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(170px,.85fr) minmax(150px,.7fr) minmax(120px,.55fr) auto;align-items:flex-end;gap:12px;padding:16px;margin-bottom:14px}.plan-advanced-toggle{display:none}.plan-advanced-toggle strong{display:inline-grid;min-width:24px;height:24px;place-items:center;border-radius:999px;padding:0 7px;background:var(--accent-soft);color:#665018;font-size:.78rem;line-height:1}.plan-advanced-toggle svg:last-child{transition:transform .16s ease}.plan-advanced-toggle.is-open svg:last-child{transform:rotate(180deg)}.plan-advanced-filters{display:contents}.plan-search-shell{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:43px;border:1px solid #ddd8ca;border-radius:8px;padding:0 12px;background:#fff}.plan-search-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #c9a22729}.plan-search-shell svg{color:var(--muted)}.plan-search-shell input{min-height:41px;border:0;padding-right:0;padding-left:0}.plan-search-shell input:focus{box-shadow:none}.plan-filter-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px}.plan-filter-count{display:grid;min-height:43px;min-width:78px;align-content:center;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:#fffaf0;color:var(--muted);font-size:.76rem;font-weight:800;line-height:1.1}.plan-filter-count strong{color:var(--ink);font-size:1rem}.plan-list-panel{overflow:hidden}.ads-workspace{display:grid;align-content:start;gap:14px}.ads-filter-panel{display:grid;grid-template-columns:minmax(280px,1fr) minmax(150px,.35fr) minmax(150px,.35fr);align-items:end;gap:12px;padding:16px}.ads-filter-panel label{display:grid;gap:7px;color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.ads-range-control{align-self:end;grid-template-columns:repeat(4,minmax(0,1fr))}.ads-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.ads-metric{position:relative;padding-left:48px}.ads-metric svg{position:absolute;top:16px;left:16px;color:#38495b}.ads-insights-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:stretch;gap:14px;min-width:0}.ads-chart-panel,.ads-map-panel{display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;min-width:0;padding:16px}.ads-chart-frame,.ads-map-frame{height:clamp(320px,34vw,420px);min-height:0;min-width:0}.ads-chart-frame{width:100%;overflow:hidden}.ads-map-frame{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#eef3f5;isolation:isolate}.ads-map-frame .leaflet-container{width:100%;height:100%;min-height:100%;font:inherit}.ads-map-frame .leaflet-pane,.ads-map-frame .leaflet-top,.ads-map-frame .leaflet-bottom{z-index:1}.ads-map-frame .leaflet-control{z-index:2}.ads-map-frame .leaflet-popup-pane{z-index:3}.ads-map-frame .leaflet-popup-content{display:grid;gap:4px;margin:12px 14px;color:var(--ink);font-size:.82rem;font-weight:800}.ads-map-frame .leaflet-popup-content span,.ads-map-frame .leaflet-popup-content small{color:var(--muted)}.ads-layout{display:grid;grid-template-columns:minmax(260px,.45fr) minmax(0,1fr);align-items:start;gap:14px;min-width:0}.ads-source-panel,.ads-events-panel{display:grid;gap:14px;min-width:0;padding:16px}.ads-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ads-panel-header h2{margin:2px 0 0;font-size:1.25rem}.ads-panel-header svg{color:#38495b}.ads-map-header{align-items:center;flex-wrap:wrap}.ads-map-mode-control{flex:0 1 320px;grid-template-columns:repeat(3,minmax(0,1fr))}.ads-map-mode-control button{min-height:34px;padding:0 9px;font-size:.78rem}.ads-map-mode-control svg{color:currentColor}.ads-source-list,.ads-event-list{display:grid;gap:8px}.ads-event-toolbar,.ads-event-filters,.ads-event-pagination,.ads-pagination-controls{display:flex;align-items:center}.ads-event-toolbar,.ads-event-pagination{justify-content:space-between;gap:12px}.ads-event-filters{flex:1 1 auto;flex-wrap:wrap;gap:8px;min-width:0}.ads-event-search{position:relative;flex:1 1 280px;min-width:210px}.ads-event-search>svg{position:absolute;top:50%;left:11px;z-index:1;color:var(--muted);transform:translateY(-50%);pointer-events:none}.ads-event-search input{width:100%;min-height:38px;padding:8px 38px 8px 34px}.ads-event-search input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ads-event-search button{position:absolute;top:50%;right:5px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);transform:translateY(-50%)}.ads-event-search button:hover{background:#f7f3ea;color:var(--ink)}.ads-event-type-control{flex:0 1 300px;grid-template-columns:repeat(3,minmax(0,1fr))}.ads-event-type-control button{min-height:38px;padding:0 10px;font-size:.76rem}.ads-event-result-count,.ads-pagination-summary{color:var(--muted);font-size:.78rem;font-weight:900;white-space:nowrap}.ads-event-pagination{border-top:1px solid var(--line);padding-top:12px}.ads-pagination-controls{gap:5px}.ads-pagination-controls button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:34px;min-height:34px;border:1px solid var(--line);border-radius:7px;padding:5px 9px;background:#fff;color:var(--ink);font-size:.76rem;font-weight:900}.ads-pagination-controls button:hover:not(:disabled),.ads-pagination-controls button.is-active{border-color:#c9a227;background:#fff8e4;color:#6a5420}.ads-pagination-controls button:disabled{opacity:.42;cursor:not-allowed}.ads-pagination-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:22px;color:var(--muted);font-weight:900}.ads-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fffaf0}.ads-source-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ads-source-row span{color:var(--muted);font-weight:900}.ads-event-row{display:grid;grid-template-columns:86px minmax(0,1fr) 92px minmax(112px,.35fr) 70px;align-items:center;gap:10px;width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;color:inherit;text-align:left}.ads-event-row:hover{border-color:#c9a22794;background:#fffdf8;box-shadow:0 10px 24px #35271214}.ads-event-row:focus-visible{outline:3px solid rgba(201,162,39,.32);outline-offset:2px}.ads-event-type,.ads-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#eef3f5;color:#38495b;font-size:.72rem;font-weight:900;text-transform:uppercase}.ads-event-lead{background:#fff8e4;color:#6a5420}.ads-event-main{display:grid;gap:3px;min-width:0}.ads-event-main strong,.ads-event-main span,.ads-event-main small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ads-event-main span,.ads-event-main small,.ads-event-meta{color:var(--muted);font-size:.76rem;font-weight:800}.ads-pill.is-good{border-color:#38805f57;background:#f4fbf7;color:#286a4c}.ads-pill.is-muted{background:#f7f3ea;color:var(--muted)}.ads-empty-state{min-height:150px}.ads-event-modal-backdrop{z-index:70}.ads-event-modal{width:min(100%,920px);max-height:min(86vh,820px);overflow:auto}.ads-event-modal-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffaf0}.ads-event-modal-summary strong,.ads-event-modal-summary span{min-width:0;overflow-wrap:anywhere}.ads-event-modal-summary>span:last-child{color:var(--muted);font-size:.8rem;font-weight:800}.ads-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ads-detail-grid section{display:grid;align-content:start;gap:9px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fff}.ads-detail-grid h3{margin:0;color:var(--ink);font-size:1rem}.ads-detail-grid dl{display:grid;gap:8px;margin:0}.ads-detail-row{display:grid;grid-template-columns:minmax(96px,.36fr) minmax(0,1fr);gap:10px;min-width:0}.ads-detail-row dt{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.ads-detail-row dd{min-width:0;margin:0;color:var(--ink);font-size:.86rem;font-weight:800;overflow-wrap:anywhere}.ads-detail-row a{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:#344154;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.ads-detail-row a span{min-width:0;overflow-wrap:anywhere}.ads-detail-row a svg{flex:0 0 auto}.ads-detail-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.78rem}.ads-detail-empty{margin:0;color:var(--muted);font-size:.86rem;font-weight:800}.plan-row{display:grid;grid-template-columns:minmax(0,1fr) 58px;align-items:stretch;gap:0;width:100%;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.plan-row:last-child{border-bottom:0}.plan-row:hover{background:#f7faf5}.plan-row-open{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;grid-template-columns:minmax(150px,.68fr) minmax(0,1.55fr) minmax(232px,.82fr) minmax(150px,.72fr);align-items:center;gap:14px;width:100%;border:0;padding:16px;background:transparent;color:var(--ink);text-align:left}.plan-row-open:focus-visible,.plan-row-delete:focus-visible{outline:2px solid rgba(201,162,39,.76);outline-offset:-4px}.plan-row-delete{align-self:center;justify-self:center}.plan-row-main,.plan-row-date,.plan-row-upload-icons{min-width:0}.plan-row strong,.plan-row small{display:block;min-width:0;overflow-wrap:anywhere}.plan-row small{margin-top:4px;color:var(--muted)}.plan-row-date{display:grid;gap:4px;color:var(--ink);font-weight:800}.plan-row-date-value,.plan-row-date-period{min-width:0;overflow-wrap:anywhere}.plan-row-date-period{color:var(--muted);font-size:.82rem;line-height:1}.plan-row-upload-icons{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:6px;justify-content:flex-start}.plan-upload-indicator{display:inline-flex;flex:0 0 auto;min-height:30px;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:5px 8px;background:#f2efe8;color:var(--muted);font-size:.78rem;font-weight:800;line-height:1;white-space:nowrap}.plan-upload-indicator svg{flex:0 0 auto}.plan-upload-indicator.is-active{border-color:#e2d5aa;background:#fff7df;color:var(--accent-strong)}.status-badge{display:inline-flex;width:fit-content;min-height:30px;align-items:center;border-radius:8px;padding:5px 9px;background:#f2efe8;color:#47524d;font-weight:800}.status-submitted-to-the-grand,.status-graphic-ready{background:#fff6dc;color:#6f510a}.status-completed{background:#f4ead0;color:#55410d}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0b0b0b7a}.confirmation-modal{display:grid;gap:16px;width:min(100%,480px);border:1px solid var(--line);border-radius:8px;padding:20px;background:var(--surface);box-shadow:0 24px 70px #0b0b0b3d}.confirmation-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.confirmation-modal h2{margin:5px 0 0;font-size:1.55rem;line-height:1.1}.confirmation-modal p{margin:0;color:var(--muted);font-weight:700;line-height:1.5}.create-plan-form{display:grid;gap:14px}.delete-plan-summary{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffaf0}.delete-plan-summary strong,.delete-plan-summary span{min-width:0;overflow-wrap:anywhere}.delete-plan-summary span{color:var(--muted);font-size:.88rem;font-weight:800}.modal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.danger-action-button{border-color:var(--rose);background:var(--rose);color:#fff;box-shadow:0 14px 30px #8e475633}.danger-action-button:hover:not(:disabled){background:#733343}.admin-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-wide{grid-column:span 2;align-content:center}.admin-meta-panel{padding:16px;margin-bottom:16px}.admin-meta-form{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(120px,.55fr) minmax(180px,.85fr) auto;align-items:end;gap:12px}.admin-create-form{grid-template-columns:minmax(150px,.8fr) minmax(120px,.55fr) auto}.admin-name-grid{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(130px,1fr));gap:12px}.admin-date-group{display:grid;grid-column:1 / -1;gap:7px;min-width:0;color:#36332d;font-weight:800}.admin-date-group>span{font-size:.84rem}.admin-date-grid{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(170px,1.35fr) minmax(120px,.8fr);gap:12px;min-width:0}.admin-date-grid>label{min-width:0}.admin-create-actions{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:10px}.copy-strip{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px 10px;min-width:0;margin-top:12px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-weight:700}.copy-strip>svg{color:var(--accent-strong)}.copy-strip span{min-width:0;overflow-wrap:anywhere}.copy-strip-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.admin-seating-note{margin:0;color:var(--muted);font-weight:700}.graphic-builder{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:16px;align-items:start}.graphic-controls{padding:16px}.builder-feedback{display:flex;align-items:center;justify-content:space-between;gap:10px}.builder-feedback .compact-button{flex:0 0 auto}.control-section{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.control-section h3{display:flex;align-items:center;gap:8px;margin:0;font-size:1rem}.range-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;font-weight:800}.range-field input{grid-column:1 / -1;min-height:28px;padding:0;accent-color:var(--accent)}.toggle-stack{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.toggle-stack label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800}.toggle-stack input{width:20px;min-height:20px;accent-color:var(--accent)}.export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:16px;margin:16px 0}.graphic-preview-shell{position:sticky;top:90px;display:flex;justify-content:center;max-height:calc(100vh - 110px);overflow:auto;border:1px solid var(--line);border-radius:8px;padding:clamp(10px,2vw,18px);background:#eee6d5}.seating-board-preview-viewport{flex:0 0 auto;overflow:visible}#preview-popout-root{min-height:100vh}.preview-popout-shell{display:flex;min-height:100vh;justify-content:center;overflow:auto;padding:24px;background:#eee6d5}.seating-board-popout{width:min(100%,850px);align-self:flex-start}.seating-board{display:flex;flex-direction:column;width:min(100%,850px);min-width:520px;min-height:0;overflow:hidden;border:1px solid #e1ddd6;border-radius:8px;padding:var(--board-title-top-spacing, clamp(28px, 5vw, 58px)) clamp(28px,5vw,58px) clamp(28px,5vw,58px);background-color:#fffefa;background-position:center;background-size:cover;color:#232424;box-shadow:0 22px 60px #2023271f}.schedule-graphic-capture{position:fixed;top:0;left:-10000px;width:560px;pointer-events:none}.seating-board-header{display:grid;justify-items:center;text-align:center}.seating-board-header h2{max-width:100%;margin:0;overflow-wrap:anywhere;font-family:var(--grand-serif);font-size:var(--board-title-size);font-weight:500;line-height:1.05}.seating-board-tables{display:grid;grid-template-columns:repeat(var(--board-columns),minmax(0,1fr));column-gap:clamp(12px,2vw,24px);row-gap:var(--board-table-row-gap, clamp(12px, 2vw, 24px));align-content:center;flex:1;margin:var(--board-title-bottom-spacing, clamp(24px, 4vw, 46px)) 0 clamp(24px,4vw,46px)}.seating-board-tables article{min-width:0;padding:10px;text-align:center}.seating-board-tables h4{margin:0 0 10px;color:var(--accent);font-size:var(--board-table-header-size);font-weight:800}.seating-board-tables ul{display:grid;gap:5px;padding:0;margin:0;list-style:none}.seating-board-tables li{min-width:0;overflow-wrap:anywhere;font-size:var(--board-guest-size);line-height:var(--board-line-height)}.board-editable-text{display:inline-block;max-width:100%;min-width:1ch;overflow-wrap:anywhere;vertical-align:baseline;border-radius:4px;padding:2px 4px;margin:-2px -4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;caret-color:currentColor;cursor:text;outline:none;transition:background-color .12s ease,box-shadow .12s ease}.board-editable-text:hover{background:#ffffff7a;box-shadow:0 0 0 1px #c7971661}.board-editable-text:focus{background:#fffc;box-shadow:0 0 0 1px #c79716c2,0 0 0 4px #c7971624}.seating-board[data-export-capture=true] .board-editable-text{padding:0;margin:0;background:transparent;box-shadow:none}.board-empty{display:grid;flex:1;place-items:center;color:var(--muted);font-weight:800}.staff-workspace{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0 56px}.staff-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.staff-header h1{margin:7px 0 0;font-size:2.7rem;line-height:1}.staff-header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.staff-header-actions>span{display:inline-flex;min-height:38px;align-items:center;border:1px solid #d7dfdd;border-radius:8px;padding:8px 11px;background:#fff;color:#3d4f4c;font-weight:800}.staff-search-shell{position:sticky;top:84px;z-index:12;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:76px;border:1px solid #cbd8d7;border-radius:8px;padding:10px 12px 10px 16px;background:#fffffff7;box-shadow:0 18px 44px #2a3a371f}.staff-search-shell svg{color:#3f6864}.staff-search-shell input{min-height:54px;border:0;padding:0;background:transparent;font-size:1.45rem;font-weight:800}.staff-search-shell input:focus{box-shadow:none}.staff-result-count{min-height:34px;padding:12px 2px 0;color:#536562;font-weight:800}.staff-table-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px;margin-top:12px}.staff-table-card{overflow:hidden;border:1px solid #d8dfdd;border-radius:8px;background:#fff;box-shadow:0 12px 32px #2525250f}.staff-table-card header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;border-bottom:1px solid #d8dfdd;padding:14px;background:#f4f8f7}.staff-table-card header span{color:#3f6864;font-size:.82rem;font-weight:900;text-transform:uppercase}.staff-table-card header h2{grid-column:1;margin:0;overflow-wrap:anywhere;font-size:1.35rem;line-height:1.1}.staff-table-card header strong{grid-column:2;grid-row:1 / span 2;align-self:center;border:1px solid #d7dfdd;border-radius:8px;padding:7px 9px;background:#fff;color:#465452;font-size:.9rem}.staff-table-actions{display:grid;border-top:1px solid var(--line);padding:12px 14px;background:#fffdf8}.staff-full-table-button{display:inline-flex;width:100%;min-height:38px;align-items:center;justify-content:center;border:1px solid rgba(201,162,39,.46);border-radius:8px;padding:8px 12px;background:#fff8e7;color:#70540c;font-size:.88rem;font-weight:900}.staff-full-table-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:#fff}.staff-guest-list{display:grid;padding:0;margin:0;list-style:none}.staff-guest-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;border-bottom:1px solid var(--line);padding:12px 14px}.staff-guest-list li:last-child{border-bottom:0}.staff-guest-list li.is-match{background:#fff8e7;box-shadow:inset 4px 0 0 var(--accent)}.staff-guest-name{min-width:0;overflow-wrap:anywhere;font-size:1.08rem;font-weight:800}.staff-guest-name mark{border-radius:4px;padding:0 2px;background:#f0d46a;color:inherit}.staff-seat{display:inline-flex;min-width:64px;min-height:31px;align-items:center;justify-content:center;border-radius:8px;background:#f2efe8;color:var(--muted);font-size:.84rem;font-weight:800}.staff-plan-list{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.staff-event-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;border:1px solid #d7dfdd;border-radius:8px;padding:12px;background:#fff}.staff-event-toolbar>div:first-child{display:grid;gap:3px;min-width:0}.staff-event-toolbar strong{min-width:0;overflow-wrap:anywhere;font-size:1rem}.staff-event-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;min-width:226px;border:1px solid #d7dfdd;border-radius:8px;padding:4px;background:#eef4f3}.staff-event-tabs button{min-height:36px;border:0;border-radius:6px;background:transparent;color:#536562;font-weight:900}.staff-event-tabs button.is-selected{background:#fff;color:var(--ink);box-shadow:0 1px 8px #2a3a3714}.staff-plan-row{display:grid;grid-template-columns:minmax(140px,.46fr) minmax(0,1fr) minmax(104px,auto) minmax(84px,auto);align-items:center;gap:14px;width:100%;border:0;border-bottom:1px solid var(--line);padding:16px;background:#fff;text-align:left}.staff-plan-row:last-child{border-bottom:0}.staff-plan-row:hover{background:#f4f8f7}.staff-plan-row strong,.staff-plan-row small{display:block;min-width:0;overflow-wrap:anywhere}.staff-plan-row small{margin-top:4px;color:var(--muted);font-weight:700}.staff-plan-date strong{font-size:.98rem}.staff-plan-date small{color:#3f6864;font-weight:900}.staff-plan-main{min-width:0}.staff-event-date{margin:8px 0 0;color:#4f625f;font-size:clamp(.95rem,1.6vw,1.1rem);font-weight:900}.dj-workspace{padding-top:28px}.dj-header .eyebrow{color:var(--accent)}.dj-plan-row>span:not(.staff-plan-date):not(.staff-plan-main){justify-self:end;font-weight:800;white-space:nowrap}.dj-plan-updated{color:#3f6864;font-variant-numeric:tabular-nums}.dj-songs-panel{margin-top:16px}.dj-song-list{border-color:#d7dfdd}.dj-song-row a{color:#315f5a}.dj-song-updated{grid-column:1 / -1;margin:0;color:#657572;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:800}.dj-song-empty{min-height:180px}.app-shell-staff{min-height:100svh;background:#eef4f3}.app-shell-staff .staff-workspace{width:min(1180px,calc(100% - 24px));padding:max(12px,env(safe-area-inset-top)) 0 max(40px,env(safe-area-inset-bottom))}.app-shell-staff .staff-workspace-live{position:relative;width:min(1120px,calc(100% - 28px));min-height:100svh;padding:max(24px,env(safe-area-inset-top)) 0 calc(112px + env(safe-area-inset-bottom))}.app-shell-staff .staff-workspace-live:not(.has-results){display:flex;align-items:center;justify-content:center}.staff-focus-panel{width:100%}.staff-workspace-live:not(.has-results) .staff-focus-panel{max-width:900px;transform:translateY(-3vh)}.staff-workspace-live.has-results .staff-focus-panel{position:sticky;top:0;z-index:16;width:auto;margin:0 calc((100vw - 100%)/-2) 0;padding:max(10px,env(safe-area-inset-top)) calc((100vw - 100%)/2) 12px;border-bottom:1px solid #ccd9d7;background:#eef4f3f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.staff-brand-lockup{display:none}.staff-workspace-live:not(.has-results) .staff-brand-lockup{display:flex;justify-content:center;margin-bottom:clamp(58px,11vh,132px);transform:translateY(clamp(-64px,-7vh,-24px))}.staff-brand-wordmark{font-family:var(--grand-serif);color:var(--charcoal);font-size:clamp(2.1rem,5vw,3.7rem);font-weight:400;line-height:1;text-transform:uppercase}.staff-session-button{position:absolute;top:max(14px,env(safe-area-inset-top));right:0;z-index:18;border-color:#cbd8d7;background:#ffffffeb;color:#334744;box-shadow:0 12px 28px #2a3a371f}.staff-workspace-live.has-results .staff-session-button{display:none}.staff-hero-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:16px}.staff-workspace-live:not(.has-results) .staff-hero-row{grid-template-columns:1fr;justify-items:center;margin-bottom:22px;text-align:center}.staff-workspace-live:not(.has-results) .staff-header-actions{display:none}.staff-title-block{min-width:0}.staff-title-block .eyebrow{color:#3f6864}.staff-title-block h1{margin:5px 0 0;overflow-wrap:anywhere;font-size:clamp(2.1rem,6vw,5.2rem);line-height:.98;transition:font-size .14s ease-out}.staff-workspace-live.has-results .staff-title-block h1{font-size:clamp(1.65rem,2.4vw,2.4rem)}.app-shell-staff .staff-header-actions{gap:8px}.app-shell-staff .staff-header-actions>span{min-height:34px;padding:7px 10px}.app-shell-staff .compact-button,.app-shell-staff .icon-button{min-height:44px}.app-shell-staff .icon-button{width:44px;height:44px}.app-shell-staff .staff-search-shell{position:relative;top:auto;min-height:96px;grid-template-columns:34px minmax(0,1fr) auto;gap:16px;padding:14px 16px 14px 20px;border-color:#bed0ce;background:#fff;box-shadow:0 24px 60px #2a3a3724;transition:min-height .14s ease-out,padding .14s ease-out,box-shadow .14s ease-out}.staff-workspace-live:not(.has-results) .staff-search-shell>svg{color:var(--accent)}.app-shell-staff .staff-search-shell input{min-height:64px;font-size:clamp(1.55rem,3.2vw,2.15rem)}.app-shell-staff .staff-search-shell input::-webkit-search-cancel-button,.app-shell-staff .staff-search-shell input::-webkit-search-decoration{display:none;-webkit-appearance:none}.app-shell-staff .staff-search-shell.is-condensed{min-height:60px;grid-template-columns:26px minmax(0,1fr) auto;padding:8px 10px 8px 14px;box-shadow:0 12px 34px #2a3a371a}.app-shell-staff .staff-search-shell.is-condensed input{min-height:42px;font-size:1.18rem}.staff-clear-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;padding:0 16px;background:#fff;color:var(--ink);font-size:.95rem;font-weight:900}.app-shell-staff .staff-search-shell.is-condensed .staff-clear-button{min-height:50px;border-color:var(--accent);background:var(--accent);color:#fff;font-size:1rem;box-shadow:0 10px 22px #c9a2273d}.app-shell-staff .staff-search-shell.is-condensed .staff-clear-button:hover:not(:disabled){background:var(--accent-strong)}.app-shell-staff .staff-result-count{min-height:30px;padding:10px 2px 0;color:#4f625f;text-align:center}.staff-workspace-live.has-results .staff-result-count{text-align:left}.staff-results-panel{animation:staffTablesSlideUp .18s ease-out}@keyframes staffTablesSlideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.app-shell-staff .staff-table-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.staff-bottom-action{position:fixed;right:0;bottom:0;left:0;z-index:30;display:flex;justify-content:center;padding:34px 18px max(18px,env(safe-area-inset-bottom));background:linear-gradient(0deg,#eef4f3 64%,#eef4f300)}.staff-show-tables-button,.staff-hide-tables-button{width:min(520px,100%);min-height:64px;font-size:1.12rem;box-shadow:0 18px 36px #694f072e}.staff-hide-tables-button{background:#fff;border-color:#cbd8d7;color:#334744;box-shadow:0 18px 36px #2a3a371f}.inline-feedback{border:1px solid var(--line);border-radius:8px;padding:11px 13px;background:#fff;color:var(--muted);font-weight:800;line-height:1.35}.inline-feedback-success{border-color:#38805f59;background:#eef7f1;color:#256447}.inline-feedback-error{border-color:#8e475659;background:#fff2f4;color:var(--rose)}.segmented-control button.is-active{background:#fff;color:var(--ink);box-shadow:0 1px 8px #20232714}.tv-display-page{display:grid;width:100vw;height:100vh;overflow:hidden;background:#000;color:#fff}.tv-display-media{width:100%;height:100%;object-fit:contain;background:#000}.tv-display-blackout{cursor:none}.tv-display-state{place-self:center;max-width:min(680px,calc(100vw - 40px));color:#ffffffd1;font-family:var(--grand-serif);font-size:clamp(1.4rem,4vw,3.2rem);line-height:1.15;text-align:center}.tv-admin-workspace,.production-workspace{display:grid;gap:18px}.tv-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.tv-admin-toolbar .segmented-control,.production-source-control{width:min(360px,100%)}.tv-media-root,.production-source-pill{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:#fff;color:var(--muted);font-size:.82rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.tv-screen-meta dt,.production-result-stats span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.tv-screen-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tv-screen-card,.tv-add-screen-panel,.production-panel,.production-results-panel,.tv-media-card{padding:clamp(16px,2vw,22px)}.tv-screen-card{display:grid;gap:15px;min-width:0}.tv-screen-card-header,.production-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tv-screen-card-header h2,.tv-add-screen-panel h2,.production-panel-header h2,.tv-media-card h2{margin:4px 0 0;font-size:1.35rem;line-height:1.1}.tv-screen-card-header span,.tv-media-card p,.muted-note{color:var(--muted);font-size:.88rem;font-weight:700}.tv-screen-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.tv-screen-meta div,.production-result-stats div{display:grid;gap:5px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff}.tv-screen-meta dd{min-width:0;margin:0;overflow:hidden;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tv-schedule-form,.tv-add-screen-form{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(130px,1fr) minmax(130px,1fr) 82px auto;align-items:end;gap:10px}.tv-schedule-form label,.tv-add-screen-form label,.production-option-grid label,.toggle-field{display:grid;gap:7px;min-width:0;color:#36332d;font-weight:800}.tv-schedule-list{display:grid;gap:9px}.tv-schedule-item{display:grid;grid-template-columns:26px minmax(0,1fr) auto 40px 40px;align-items:center;gap:8px;min-width:0;border:1px solid var(--line);border-left:4px solid #6c7f92;border-radius:8px;padding:9px;background:#fff}.tv-schedule-active{border-left-color:#38805f}.tv-schedule-ended{border-left-color:#a8a39a}.tv-schedule-item span{display:grid;min-width:0}.tv-schedule-item strong,.tv-schedule-item small,.production-result-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-schedule-item small{color:var(--muted);font-weight:700}.tv-schedule-status,.tv-media-type{border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#f5f7f8;color:#38495b;font-size:.72rem;font-weight:900;text-transform:uppercase}.tv-schedule-edit{grid-template-columns:minmax(160px,1fr) minmax(130px,1fr) minmax(130px,1fr) auto;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fffdf8}.tv-inline-actions{display:flex;align-items:center;gap:8px}.tv-add-screen-panel{display:grid;gap:14px}.tv-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.tv-toolbar-actions .secondary-button.is-active{border-color:#c9a22785;background:#fbf6e8}.tv-range-panel{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:clamp(14px,2vw,18px)}.tv-range-summary{display:grid;gap:5px;min-width:180px}.tv-range-summary strong{font-size:1.05rem;line-height:1.25}.tv-range-controls{display:grid;grid-template-columns:minmax(170px,1.4fr) minmax(140px,1fr) minmax(140px,1fr);align-items:end;gap:10px;width:min(620px,100%)}.tv-range-controls label,.tv-schedule-modal-form label,.tv-schedule-media-field{display:grid;gap:7px;min-width:0;color:#36332d;font-weight:800}.tv-board-panel{overflow:hidden;padding:0}.tv-board-scroll{width:100%;overflow-x:auto}.tv-board-table{--tv-screen-col: 284px;--tv-date-col: 196px;min-width:max-content}.tv-board-header,.tv-board-row{display:grid;grid-template-columns:var(--tv-board-template)}.tv-board-header{min-height:96px;border-bottom:1px solid var(--line);background:#f8f5ed}.tv-board-corner,.tv-board-screen{position:sticky;left:0;z-index:2;border-right:1px solid var(--line);background:var(--surface)}.tv-board-corner{display:flex;align-items:center;padding:14px;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.tv-board-date{display:grid;align-content:center;gap:4px;min-width:0;border-left:1px solid var(--line);padding:12px}.tv-board-date span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.tv-board-date strong,.tv-board-date small,.tv-board-screen-title h2,.tv-board-screen-title span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-board-date strong{font-size:.92rem;line-height:1.2}.tv-board-date small{color:var(--muted);font-size:.78rem;font-weight:800}.tv-board-row+.tv-board-row{border-top:1px solid var(--line)}.tv-board-screen,.tv-board-cell{height:168px;min-width:0}.tv-board-screen{display:grid;gap:10px;padding:12px}.tv-board-screen-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.tv-board-screen-title>div{min-width:0}.tv-board-screen-title h2{margin:3px 0 2px;font-size:1rem;line-height:1.18}.tv-board-screen-title span,.tv-board-screen-meta>span{color:var(--muted);font-size:.78rem;font-weight:800}.tv-board-screen-meta{display:grid;gap:7px;min-width:0}.tv-board-screen-meta label{display:grid;gap:5px;min-width:0}.tv-board-fallback-button{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;width:100%;min-height:34px;border:1px solid #ddd8ca;border-radius:8px;padding:6px 8px;background:#fff;color:var(--ink);text-align:left}.tv-board-fallback-button>svg{color:var(--muted)}.tv-board-fallback-button span,.tv-board-fallback-button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-board-fallback-button strong{display:block;font-size:.82rem;font-weight:800}.tv-board-fallback-button:hover:not(:disabled){border-color:#c9a22785;background:#fbf6e8}.tv-board-screen-meta select{min-height:34px;padding:6px 8px;font-size:.82rem;font-weight:800}.tv-board-cell{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px;border-left:1px solid var(--line);padding:10px;background:#fffefa}.tv-board-cell.is-empty{background:#fbfaf5}.tv-cell-slots{display:grid;align-content:start;gap:7px;min-height:0;overflow-y:auto;padding-right:2px}.tv-slot-chip,.tv-agenda-slot{border:1px solid var(--line);border-left:4px solid #49677e;border-radius:8px;background:#fff;color:var(--ink)}.tv-slot-chip{display:grid;gap:2px;width:100%;min-height:63px;padding:7px 8px;text-align:left}.tv-slot-chip span,.tv-slot-chip small{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.tv-slot-chip strong{min-width:0;overflow:hidden;font-size:.86rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.tv-slot-active{border-left-color:#38805f;background:#f4fbf7}.tv-slot-ended{border-left-color:#a8a39a;background:#f7f6f3}.tv-cell-add,.tv-cell-empty-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #d8d1c2;border-radius:8px;background:#fff;color:var(--muted);font-size:.78rem;font-weight:900}.tv-cell-add{justify-self:end;width:30px;height:30px}.tv-cell-empty-add{width:100%;min-height:36px}.tv-cell-add:hover:not(:disabled),.tv-cell-empty-add:hover:not(:disabled){border-color:#c9a227a6;background:#fbf6e8;color:var(--ink)}.tv-empty-state{display:grid;justify-items:center;gap:10px;padding:30px;text-align:center}.tv-empty-state h2{margin:0;font-size:1.35rem}.tv-empty-state p{max-width:460px;margin:0;color:var(--muted);font-weight:800}.tv-agenda-list{display:grid;gap:14px}.tv-agenda-day{display:grid;gap:14px;padding:clamp(16px,2vw,22px)}.tv-agenda-day-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tv-agenda-day-header h2{margin:3px 0 0;font-size:1.35rem;line-height:1.12}.tv-agenda-day-header span{color:var(--muted);font-size:.86rem;font-weight:800}.tv-agenda-screen-list,.tv-agenda-screen,.tv-agenda-slots{display:grid;gap:10px}.tv-agenda-screen{border-top:1px solid var(--line);padding-top:12px}.tv-agenda-screen h3{margin:0;font-family:inherit;font-size:.92rem;font-weight:900}.tv-agenda-slot{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:58px;padding:9px 10px;text-align:left}.tv-agenda-slot span:not(.tv-schedule-status){display:grid;min-width:0}.tv-agenda-slot strong,.tv-agenda-slot small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-agenda-slot small{color:var(--muted);font-weight:800}.tv-add-screen-header h2{margin:4px 0 0;font-size:1.2rem}.tv-schedule-modal{max-height:calc(100vh - 48px);overflow-y:auto;width:min(100%,920px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tv-schedule-modal-form{display:grid;grid-template-columns:minmax(250px,.82fr) minmax(360px,1.18fr);align-items:start;gap:16px}.tv-schedule-modal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.tv-schedule-modal-fields>label:first-child,.tv-schedule-media-field,.tv-schedule-modal-actions{grid-column:1 / -1}.tv-schedule-modal-actions{justify-content:space-between}.tv-media-select-button{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:48px;border:1px solid #ddd8ca;border-radius:8px;padding:8px 10px;background:#fff;color:var(--ink);text-align:left}.tv-media-select-button>svg{color:var(--muted)}.tv-media-select-button span{display:grid;gap:2px;min-width:0}.tv-media-select-button strong,.tv-media-select-button small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-media-select-button small{color:var(--muted);font-size:.78rem;font-weight:800}.tv-media-select-button:hover:not(:disabled){border-color:#c9a22785;background:#fbf6e8}.tv-schedule-media-preview{display:grid;align-content:start;gap:12px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffdf8}.tv-schedule-media-frame{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#111;color:#fff}.tv-schedule-media-frame img,.tv-schedule-media-frame video{width:100%;height:100%;object-fit:contain}.tv-schedule-media-frame.is-scrollable-image,.tv-media-picker-frame.is-scrollable-image{display:block;overflow:auto;overscroll-behavior:contain;scrollbar-color:rgba(115,112,107,.72) rgba(255,253,248,.28);scrollbar-gutter:stable;scrollbar-width:thin}.tv-schedule-media-frame.is-scrollable-image:focus-visible,.tv-media-picker-frame.is-scrollable-image:focus-visible{outline:2px solid rgba(201,162,39,.78);outline-offset:2px}.tv-schedule-media-frame.is-scrollable-image img,.tv-media-picker-frame.is-scrollable-image img{display:block;width:100%;height:auto;object-fit:initial}.tv-schedule-media-frame.is-scrollable-image::-webkit-scrollbar,.tv-media-picker-frame.is-scrollable-image::-webkit-scrollbar{width:10px;height:10px}.tv-schedule-media-frame.is-scrollable-image::-webkit-scrollbar-track,.tv-media-picker-frame.is-scrollable-image::-webkit-scrollbar-track{background:#fffdf847}.tv-schedule-media-frame.is-scrollable-image::-webkit-scrollbar-thumb,.tv-media-picker-frame.is-scrollable-image::-webkit-scrollbar-thumb{border:2px solid rgba(255,253,248,.28);border-radius:999px;background:#73706bb8}.tv-schedule-media-details{display:grid;align-content:center;justify-items:start;gap:5px;min-width:0}.tv-schedule-media-details strong,.tv-schedule-media-details small{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-schedule-media-details small{color:var(--muted);font-size:.8rem;font-weight:800}.tv-schedule-modal-action-group{display:inline-flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.tv-media-picker-backdrop{z-index:1210}.tv-media-picker-modal{grid-template-rows:auto auto auto minmax(0,1fr) auto;height:min(820px,calc(100vh - 48px));width:min(1080px,100%);max-height:calc(100vh - 48px);overflow:hidden;overscroll-behavior:contain}.tv-media-picker-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(250px,.58fr) minmax(260px,.62fr);align-items:end;gap:12px}.tv-media-picker-search{display:grid;gap:7px;min-width:0;color:#36332d;font-weight:800}.tv-media-picker-search-input{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;border:1px solid #ddd8ca;border-radius:8px;padding:0 10px;background:#fff}.tv-media-picker-search-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #c9a22729}.tv-media-picker-search-input svg{color:var(--muted)}.tv-media-picker-search-input input{border:0;padding-right:0;padding-left:0}.tv-media-picker-search-input input:focus{box-shadow:none}.tv-media-type-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.tv-media-picker-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;min-width:0}.tv-media-picker-upload label:first-child{display:grid;gap:7px;min-width:0}.tv-media-picker-upload select{min-width:0}.tv-media-folder-filter{display:flex;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px}.tv-media-folder-filter button{display:inline-flex;align-items:center;flex:0 0 auto;gap:6px;min-height:34px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff;color:var(--muted);font-size:.78rem;font-weight:900}.tv-media-folder-filter button.is-active{border-color:#c9a2279e;background:#fff8e4;color:var(--ink)}.tv-media-folder-filter small{border-radius:999px;padding:2px 6px;background:#eef3f5;color:#38495b;font-size:.68rem;font-weight:900}.tv-media-picker-body{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.35fr);gap:14px;min-height:0;overflow:hidden}.tv-media-picker-preview{display:grid;align-content:start;gap:12px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffdf8}.tv-media-picker-frame,.tv-media-picker-thumb{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#111;color:#fff}.tv-media-picker-frame img,.tv-media-picker-frame video,.tv-media-picker-thumb img,.tv-media-picker-thumb video{width:100%;height:100%;object-fit:contain}.tv-media-picker-preview-details,.tv-media-picker-card-copy{display:grid;gap:5px;min-width:0}.tv-media-picker-preview-details strong,.tv-media-picker-preview-details small,.tv-media-picker-card-copy strong,.tv-media-picker-card-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-media-picker-preview-details small,.tv-media-picker-card-copy small{color:var(--muted);font-size:.78rem;font-weight:800}.tv-media-picker-results{min-height:0;overflow-y:auto;padding-right:2px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tv-media-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.tv-media-picker-card{position:relative;display:grid;gap:8px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;color:var(--ink);text-align:left}.tv-media-picker-card.is-selected{border-color:#c9a227b8;box-shadow:0 0 0 3px #c9a22724}.tv-media-picker-check{position:absolute;top:10px;right:10px;border-radius:999px;padding:3px;background:var(--accent);color:#fff}.tv-media-picker-empty{display:grid;justify-items:center;gap:12px;min-height:260px;border:1px dashed #d8d2c8;border-radius:8px;padding:24px;background:#fffdfa;color:var(--muted);text-align:center}.tv-media-picker-actions{justify-content:space-between}.tv-add-screen-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.tv-folder-library,.tv-media-folder{display:grid;gap:18px}.tv-media-folder{min-width:0}.tv-media-folder-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;border-bottom:1px solid var(--line);padding-bottom:10px}.tv-media-folder-title{display:flex;align-items:center;gap:10px;min-width:0}.tv-media-folder-title>svg{flex:0 0 auto;color:#38495b}.tv-media-folder-title h2{min-width:0;margin:3px 0 0;overflow:hidden;font-size:1.25rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.tv-folder-count{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:#fff;color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.tv-media-folder-actions{display:flex;flex:0 0 auto;align-items:center;gap:9px}.tv-media-upload-button{position:relative;overflow:hidden;cursor:pointer}.tv-media-upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.tv-media-upload-button.is-disabled{cursor:not-allowed;opacity:.62}.tv-media-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tv-media-card{display:grid;gap:13px}.tv-media-preview{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#111;color:#fff}.tv-media-preview img,.tv-media-preview video{width:100%;height:100%;object-fit:contain}.tv-media-card-body{display:grid;gap:9px}.tv-media-card-body>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.tv-chip-row{display:flex;flex-wrap:wrap;gap:7px}.tv-chip-row span{border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#fff;color:var(--muted);font-size:.76rem;font-weight:900}.tv-empty-media{grid-column:1 / -1;display:grid;justify-items:center;gap:12px;padding:28px}.tv-folder-empty{display:flex;align-items:center;gap:9px;min-height:58px;border:1px dashed #d8d2c8;border-radius:8px;padding:13px;background:#fffdfa;color:var(--muted);font-weight:800}.production-tool-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.production-tool-button{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:13px;background:#fff;color:var(--ink);text-align:left}.production-tool-button.is-active{border-color:#c9a2279e;background:#fff8e4}.production-tool-button>svg{display:inline-flex;width:38px;height:38px;padding:9px;border-radius:8px;background:#eef3f5;color:#344154}.production-tool-button span{display:grid;gap:3px;min-width:0}.production-tool-button small{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.production-tool-button strong{min-width:0;overflow:hidden;font-family:var(--grand-serif);font-size:1.12rem;text-overflow:ellipsis;white-space:nowrap}.production-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:14px}.production-panel,.production-results-panel{display:grid;gap:15px}.production-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) repeat(2,auto);align-items:end;gap:10px}.photobooth-default-panel{display:grid;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#fffdf8}.photobooth-default-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.photobooth-default-header>div{display:grid;gap:3px;min-width:0}.photobooth-default-header strong,.photobooth-default-header small,.photobooth-background-row strong,.photobooth-background-row small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photobooth-default-header strong{font-size:.98rem;font-weight:900}.photobooth-default-header small,.photobooth-background-row small{color:var(--muted);font-size:.76rem;font-weight:800}.photobooth-default-preview{display:grid;place-items:center;width:100%;aspect-ratio:9 / 16;max-height:320px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#111;color:#fff}.photobooth-default-preview video{width:100%;height:100%;object-fit:contain}.photobooth-default-actions{display:flex;justify-content:flex-start}.photobooth-upload-button{position:relative;overflow:hidden;cursor:pointer}.photobooth-upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.photobooth-upload-button.is-disabled{cursor:not-allowed;opacity:.62}.photobooth-background-list{display:grid;gap:8px}.photobooth-background-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:8px 9px;background:#fff}.photobooth-background-row.is-active{border-color:#c9a22794;background:#fff8e7}.photobooth-background-row>svg{color:var(--muted)}.photobooth-background-row>span:not(.photobooth-current-pill){display:grid;gap:2px;min-width:0}.photobooth-current-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(56,128,95,.34);border-radius:999px;padding:5px 8px;background:#f4fbf7;color:#286a4c;font-size:.74rem;font-weight:900;text-transform:uppercase}.toggle-field{min-height:43px;grid-template-columns:auto auto;align-items:center;align-self:end;justify-content:start;border:1px solid var(--line);border-radius:8px;padding:8px 11px;background:#fff}.toggle-field input{width:18px;min-height:18px}.production-actions{display:flex;justify-content:flex-end}.production-result-stats{display:grid;grid-template-columns:1fr;gap:10px}.production-result-stats strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.production-result-list{display:grid;gap:8px}.production-result-item{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff;color:var(--ink);font-weight:800}.portrait-artwork-studio{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:16px}.portrait-controls-column{display:grid;gap:16px}.portrait-control-panel,.portrait-preview-panel{display:grid;gap:18px;padding:22px}.portrait-section-header{display:grid;gap:6px}.portrait-section-header-row,.portrait-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.portrait-section-header-row>div,.portrait-preview-header>div{display:grid;gap:6px}.portrait-section-header h2,.portrait-preview-header h2{margin:0;color:var(--ink);font-size:1.45rem;font-weight:400;letter-spacing:-.02em}.portrait-section-header p{max-width:680px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.portrait-section-kicker{color:var(--accent-strong);font-size:.67rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.portrait-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portrait-upload-card{display:grid;gap:10px;min-width:0;border:1px solid #dfdbd1;border-radius:9px;padding:12px;background:#fffefa}.portrait-upload-card.is-ready{border-color:#327b586b;background:#fbfefc}.portrait-upload-card.has-error{border-color:#9a34346b;background:snow}.portrait-upload-copy{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px}.portrait-upload-copy>span:not(.portrait-step-number){display:grid;gap:1px;min-width:0}.portrait-upload-copy strong{color:var(--ink);font-size:.86rem;font-weight:900}.portrait-upload-copy small{color:var(--muted);font-size:.72rem;font-weight:700}.portrait-upload-copy>svg{color:#327b58}.portrait-step-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eee7dc;color:#755a33;font-family:var(--grand-serif);font-size:.82rem;font-weight:700}.portrait-upload-dropzone{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4 / 3;overflow:hidden;border:1px dashed #cfc7ba;border-radius:7px;background:linear-gradient(135deg,#a987520f,#fffc),#f7f4ee;color:#8b806f;cursor:pointer}.portrait-upload-dropzone>img{width:100%;height:100%;object-fit:contain}.portrait-upload-dropzone>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.portrait-upload-overlay{position:absolute;right:8px;bottom:8px;left:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid rgba(255,255,255,.7);border-radius:6px;padding:7px 10px;background:#1d1c19d6;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.76rem;text-align:center}.portrait-upload-status{min-height:34px;margin:0;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.45}.portrait-upload-card.has-error .portrait-upload-status{color:#8d3636}.portrait-privacy-note{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.45}.portrait-privacy-note svg{flex:0 0 auto;color:var(--accent-strong)}.portrait-copy-fields{display:grid;grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);gap:12px}.portrait-wide-field{grid-column:1 / -1}.portrait-connector-field input{font-family:Snell Roundhand,Apple Chancery,cursive;font-size:1.2rem;text-align:center}.portrait-placement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portrait-layer-control{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dfdbd1;border-radius:9px;padding:14px;background:#fffefa}.portrait-layer-control>span{display:grid;gap:2px}.portrait-layer-control>span strong{color:var(--ink);font-size:.88rem;font-weight:900}.portrait-layer-control>span small{color:var(--muted);font-size:.72rem;font-weight:700}.portrait-layer-control .segmented-control{flex:0 0 auto}.portrait-layer-control .segmented-control button{min-height:38px;padding:8px 14px}.portrait-placement-group{display:grid;gap:13px;border:1px solid #dfdbd1;border-radius:9px;padding:14px;background:#fffefa}.portrait-placement-title{display:grid;gap:2px}.portrait-placement-title strong{color:var(--ink);font-size:.88rem;font-weight:900}.portrait-placement-title small{color:var(--muted);font-size:.72rem;font-weight:700}.portrait-range-field{display:grid;gap:7px}.portrait-range-field>span{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.73rem}.portrait-range-field strong{color:var(--ink);font-weight:800}.portrait-range-field output{font-variant-numeric:tabular-nums;font-weight:800}.portrait-range-field input{width:100%;accent-color:#8b6d41}.portrait-preview-column{position:sticky;top:88px}.portrait-preview-panel{gap:14px;background:#f7f3ed}.portrait-resolution-pill{flex:0 0 auto;border:1px solid #d9d2c6;border-radius:999px;padding:6px 9px;background:#fffefa;color:#6f6250;font-size:.69rem;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.04em}.portrait-canvas-frame{width:min(100%,430px);margin:0 auto;border-radius:4px;padding:10px;background:#282622;box-shadow:0 22px 48px #26221c2e}.portrait-canvas-frame canvas{display:block;width:100%;aspect-ratio:9 / 16;background:#fff}.portrait-export-button{width:100%;justify-content:center}.portrait-export-note{margin:-4px 0 0;color:var(--muted);font-size:.74rem;font-weight:700;line-height:1.4;text-align:center}.memorial-artwork-studio{display:grid;grid-template-columns:minmax(420px,.82fr) minmax(540px,1.18fr);align-items:start;gap:16px}.memorial-controls-column{display:grid;gap:16px}.memorial-control-panel,.memorial-preview-panel{display:grid;gap:18px;padding:22px}.memorial-section-header,.memorial-section-header-row>div,.memorial-preview-header>div{display:grid;gap:6px}.memorial-section-header-row,.memorial-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.memorial-section-header h2,.memorial-preview-header h2{margin:0;color:var(--ink);font-size:1.45rem;font-weight:400;letter-spacing:-.02em}.memorial-section-header p{max-width:680px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.memorial-section-kicker{color:var(--accent-strong);font-size:.67rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.memorial-upload-grid,.memorial-caption-grid,.memorial-crop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.memorial-upload-card{display:grid;gap:10px;min-width:0;border:1px solid #dfdbd1;border-radius:9px;padding:12px;background:#fffefa}.memorial-upload-card.is-ready{border-color:#327b586b;background:#fbfefc}.memorial-upload-card.has-error{border-color:#9a34346b;background:snow}.memorial-upload-heading{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px}.memorial-upload-heading>span:not(.memorial-step-number){display:grid;gap:1px;min-width:0}.memorial-upload-heading strong{color:var(--ink);font-size:.86rem;font-weight:900}.memorial-upload-heading small{color:var(--muted);font-size:.72rem;font-weight:700}.memorial-upload-heading>svg{color:#327b58}.memorial-step-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eee7dc;color:#755a33;font-family:var(--grand-serif);font-size:.82rem;font-weight:700}.memorial-upload-dropzone{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4 / 3;overflow:hidden;border:1px dashed #cfc7ba;border-radius:7px;background:linear-gradient(135deg,#a987520f,#fffc),#f7f4ee;color:#8b806f;cursor:pointer}.memorial-upload-dropzone>img{width:100%;height:100%;object-fit:cover}.memorial-upload-dropzone>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.memorial-upload-overlay{position:absolute;right:8px;bottom:8px;left:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid rgba(255,255,255,.7);border-radius:6px;padding:7px 10px;background:#1d1c19d6;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.76rem;text-align:center}.memorial-upload-card>p{min-height:34px;margin:0;overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.45;text-overflow:ellipsis}.memorial-upload-card.has-error>p{color:#8d3636}.memorial-privacy-note{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.45}.memorial-privacy-note svg{flex:0 0 auto;color:var(--accent-strong)}.memorial-caption-group,.memorial-crop-group{min-width:0;border:1px solid #dfdbd1;border-radius:9px;padding:14px;background:#fffefa}.memorial-caption-group{display:grid;gap:12px;margin:0}.memorial-caption-group legend{padding:0 6px;color:#755a33;font-family:var(--grand-serif);font-size:.86rem;font-weight:700}.memorial-crop-group{display:grid;gap:13px}.memorial-crop-group>div{display:grid;gap:2px}.memorial-crop-group>div strong{color:var(--ink);font-size:.88rem;font-weight:900}.memorial-crop-group>div small{color:var(--muted);font-size:.72rem;font-weight:700}.memorial-crop-group>label{display:grid;gap:7px}.memorial-crop-group>label>span{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.73rem}.memorial-crop-group>label strong,.memorial-crop-group output{color:var(--ink);font-weight:800}.memorial-crop-group output{font-variant-numeric:tabular-nums}.memorial-crop-group input{width:100%;accent-color:#8b6d41}.memorial-preview-column{position:sticky;top:88px}.memorial-preview-panel{gap:14px;background:#f7f3ed}.memorial-resolution-pill{flex:0 0 auto;border:1px solid #d9d2c6;border-radius:999px;padding:6px 9px;background:#fffefa;color:#6f6250;font-size:.69rem;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.04em}.memorial-canvas-frame{width:100%;overflow:hidden;border-radius:5px;padding:10px;background:#282622;box-shadow:0 22px 48px #26221c2e}.memorial-canvas-frame canvas{display:block;width:100%;aspect-ratio:16 / 9;background:#f3e9df}.memorial-canvas-frame .inline-feedback{margin:0 0 10px}.memorial-export-button{width:100%;justify-content:center}.memorial-export-note{margin:-4px 0 0;color:var(--muted);font-size:.74rem;font-weight:700;line-height:1.4;text-align:center}.sign-studio{display:grid;gap:16px}.sign-template-library,.sign-control-panel,.sign-preview-panel{display:grid;gap:18px;padding:22px}.sign-section-header,.sign-section-header-row>div,.sign-preview-header>div{display:grid;gap:6px}.sign-section-header-row,.sign-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.sign-section-header h2,.sign-preview-header h2{margin:0;color:var(--ink);font-size:1.45rem;font-weight:400;letter-spacing:-.02em}.sign-section-header p{max-width:760px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.sign-section-kicker{color:var(--accent-strong);font-size:.67rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.sign-resolution-pill,.sign-template-orientation{flex:0 0 auto;border:1px solid #d9d2c6;border-radius:999px;padding:6px 9px;background:#fffefa;color:#6f6250;font-size:.67rem;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase}.sign-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sign-template-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;border:1px solid #dfdbd1;border-radius:9px;padding:9px;background:#fffefa;color:var(--ink);text-align:left}.sign-template-card:hover{border-color:#bca577;background:#fbf8f1}.sign-template-card.is-active{border-color:#9d8156;background:#f3ede2;box-shadow:inset 0 -2px #9d8156}.sign-template-card>svg{align-self:flex-start;color:#327b58}.sign-template-thumb{position:relative;display:grid;place-items:center;width:72px;height:92px;overflow:hidden;border:1px solid rgba(67,58,47,.18);border-radius:6px;background:#eee8df}.sign-template-thumb.is-landscape{height:54px}.sign-template-thumb>img{width:100%;height:100%;object-fit:cover}.sign-template-thumb.has-artwork>img{filter:saturate(.9) contrast(.95)}.sign-template-thumb-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;gap:4px;padding:8px;background:linear-gradient(145deg,#f5f1ea,#d8d0c4);color:#4c453c;text-align:center}.sign-template-thumb.is-wedding-cover .sign-template-thumb-placeholder{background:linear-gradient(150deg,#2b2b2b,#878787 54%,#1d1d1d);color:#fff}.sign-template-thumb.is-childhood-story .sign-template-thumb-placeholder{background:linear-gradient(90deg,#ececec 0,#ececec 48%,#fff 48%,#fff 52%,#bdbdbd 52%,#bdbdbd);color:#171513}.sign-template-thumb.is-golden-portrait .sign-template-thumb-placeholder{background:linear-gradient(90deg,#cfc1aa 0,#cfc1aa 48%,#f4eee3 65%,#f4eee3);color:#9d7428}.sign-template-thumb.is-modern-editorial .sign-template-thumb-placeholder{background:#fff;color:#171513}.sign-template-thumb.is-portrait-artwork .sign-template-thumb-placeholder{background:linear-gradient(145deg,#242321,#8b7657 54%,#e7dcc9);color:#fff}.sign-template-thumb.is-photo-memorial .sign-template-thumb-placeholder{background:linear-gradient(90deg,#d8c7b4 0,#d8c7b4 48%,#f5eadf 48%,#f5eadf 52%,#b9a28b 52%,#b9a28b);color:#5e3d2d}.sign-template-thumb-placeholder small{font-size:.56rem;font-weight:900;letter-spacing:.12em}.sign-template-thumb-placeholder strong{font-family:var(--grand-serif);font-size:.63rem;line-height:1.25}.sign-template-orientation{position:absolute;right:4px;bottom:4px;padding:3px 5px;border:0;background:#1c1b18c7;color:#fff;font-size:.48rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sign-template-card-copy{display:grid;gap:3px;min-width:0}.sign-template-card-copy small{color:#8b6d41;font-size:.61rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.sign-template-card-copy strong{overflow:hidden;font-family:var(--grand-serif);font-size:.88rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sign-template-card-copy>span{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.69rem;font-weight:650;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.sign-editor-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:16px}.sign-editor-layout.is-landscape{grid-template-columns:minmax(390px,.82fr) minmax(560px,1.18fr)}.sign-controls-column{display:grid;gap:16px}.sign-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sign-wide-field{grid-column:1 / -1}.sign-style-grid{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(260px,1.28fr);gap:12px}.sign-colourway-fieldset{display:grid;gap:13px;min-width:0;margin:0;border:1px solid #dfdbd1;border-radius:9px;padding:14px;background:#fffefa}.sign-colourway-fieldset legend{display:grid;gap:3px;width:100%;padding:0}.sign-colourway-fieldset legend>span{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:.76rem;font-weight:800}.sign-colourway-fieldset legend small{color:var(--muted);font-size:.7rem;font-weight:700;line-height:1.4}.sign-colourway-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.sign-colourway-option{display:grid;gap:6px;min-width:0;border:1px solid #ded8ce;border-radius:8px;padding:6px;background:#fff;color:#5e574e;font-size:.64rem;font-weight:800;line-height:1.2;text-align:center}.sign-colourway-option:hover{border-color:#bca577;background:#fbf8f1}.sign-colourway-option.is-active{border-color:#8b6d41;box-shadow:0 0 0 2px #8b6d4129;color:var(--ink)}.sign-colourway-preview{position:relative;display:block;width:100%;aspect-ratio:4 / 3;overflow:hidden;border-radius:5px}.sign-colourway-preview img{width:100%;height:100%;object-fit:cover;mix-blend-mode:luminosity}.sign-colourway-preview svg{position:absolute;top:5px;right:5px;border-radius:999px;padding:2px;background:#ffffffeb;color:#327b58;box-shadow:0 1px 5px #1f1d192e}.sign-color-field,.sign-scale-field,.sign-crop-group{display:grid;gap:12px;border:1px solid #dfdbd1;border-radius:9px;padding:14px;background:#fffefa}.sign-color-field>span,.sign-scale-field>span,.sign-crop-group label>span{display:flex;align-items:center;justify-content:space-between;gap:9px;color:var(--ink);font-size:.76rem;font-weight:800}.sign-color-field>span:last-child{justify-content:flex-start}.sign-color-field input[type=color]{width:44px;min-height:36px;border:1px solid #d7d0c4;border-radius:7px;padding:3px;background:#fff}.sign-color-field output,.sign-scale-field output,.sign-crop-group output{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:800}.sign-scale-field input,.sign-crop-group input{width:100%;accent-color:#8b6d41}.sign-photo-grid,.sign-crop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sign-photo-finish{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;border:1px solid #dfdbd1;border-radius:9px;padding:12px 14px;background:#fffefa}.sign-photo-finish>span{display:grid;gap:2px}.sign-photo-finish>span strong{color:var(--ink);font-size:.82rem}.sign-photo-finish>span small{color:var(--muted);font-size:.72rem;font-weight:700}.sign-photo-finish .segmented-control{flex:0 0 auto;min-width:250px}.sign-photo-finish .segmented-control button{padding-inline:14px;white-space:nowrap}.sign-photo-grid.has-1,.sign-crop-grid.has-1{grid-template-columns:minmax(0,1fr)}.sign-photo-card{display:grid;gap:10px;min-width:0;border:1px solid #dfdbd1;border-radius:9px;padding:12px;background:#fffefa}.sign-photo-card.is-ready{border-color:#327b586b;background:#fbfefc}.sign-photo-card.has-error{border-color:#9a34346b;background:snow}.sign-photo-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.sign-photo-heading>span{display:grid;gap:2px}.sign-photo-heading strong{color:var(--ink);font-size:.86rem;font-weight:900}.sign-photo-heading small,.sign-photo-card>p,.sign-privacy-note{color:var(--muted);font-size:.72rem;font-weight:700;line-height:1.45}.sign-photo-heading>svg{color:#327b58}.sign-photo-dropzone{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4 / 3;overflow:hidden;border:1px dashed #cfc7ba;border-radius:7px;background:linear-gradient(135deg,#a987520f,#fffc),#f7f4ee;color:#8b806f;cursor:pointer}.sign-photo-dropzone>img{width:100%;height:100%;object-fit:cover}.sign-photo-dropzone>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sign-photo-overlay{position:absolute;right:8px;bottom:8px;left:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid rgba(255,255,255,.7);border-radius:6px;padding:7px 10px;background:#1d1c19d6;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.76rem;text-align:center}.sign-photo-card>p{min-height:32px;margin:0}.sign-photo-card.has-error>p{color:#8d3636}.sign-privacy-note{display:flex;align-items:flex-start;gap:8px}.sign-privacy-note svg{flex:0 0 auto;color:var(--accent-strong)}.sign-crop-group>strong{color:var(--ink);font-size:.85rem;font-weight:900}.sign-crop-group label{display:grid;gap:7px}.sign-preview-column{position:sticky;top:-84px}.sign-preview-panel{gap:14px;background:#f7f3ed}.sign-canvas-frame{position:relative;width:min(100%,500px);margin:0 auto;overflow:hidden;border-radius:5px;padding:10px;background:#282622;box-shadow:0 22px 48px #26221c2e}.sign-canvas-frame.is-landscape{width:100%}.sign-canvas-frame canvas{display:block;width:100%;aspect-ratio:9 / 16;background:#f7f3eb}.sign-canvas-frame.is-landscape canvas{aspect-ratio:16 / 9}.sign-canvas-loading{position:absolute;top:10px;right:10px;bottom:10px;left:10px;z-index:1;display:grid;place-items:center;padding:18px;background:#efeae1;color:var(--muted);font-size:.78rem;font-weight:800;text-align:center}.sign-export-button{width:100%;justify-content:center}.sign-export-note{margin:-4px 0 0;color:var(--muted);font-size:.74rem;font-weight:700;line-height:1.4;text-align:center}.is-spinning{animation:client-state-spin .9s linear infinite}@media(max-width:1180px){.portrait-artwork-studio{grid-template-columns:1fr}.portrait-preview-column{position:static}.memorial-artwork-studio{grid-template-columns:1fr}.memorial-preview-column{position:static}.sign-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sign-editor-layout,.sign-editor-layout.is-landscape{grid-template-columns:1fr}.sign-preview-column{position:static}}@media(max-width:680px){.portrait-control-panel,.portrait-preview-panel{padding:17px}.portrait-upload-grid,.portrait-placement-grid,.portrait-copy-fields{grid-template-columns:1fr}.portrait-wide-field{grid-column:auto}.portrait-section-header-row,.portrait-preview-header{align-items:stretch;flex-direction:column}.portrait-resolution-pill{align-self:flex-start}.portrait-layer-control{align-items:stretch;flex-direction:column}.portrait-layer-control .segmented-control{width:100%}.memorial-control-panel,.memorial-preview-panel{padding:17px}.memorial-upload-grid,.memorial-caption-grid,.memorial-crop-grid{grid-template-columns:1fr}.memorial-section-header-row,.memorial-preview-header{align-items:stretch;flex-direction:column}.memorial-resolution-pill{align-self:flex-start}.sign-template-library,.sign-control-panel,.sign-preview-panel{padding:17px}.sign-section-header-row,.sign-preview-header{align-items:stretch;flex-direction:column}.sign-resolution-pill{align-self:flex-start}.sign-template-grid,.sign-copy-grid,.sign-style-grid,.sign-photo-grid,.sign-crop-grid{grid-template-columns:1fr}.sign-colourway-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sign-wide-field{grid-column:auto}.sign-photo-finish{align-items:stretch;flex-direction:column}.sign-photo-finish .segmented-control{width:100%;min-width:0}}@media(max-width:400px){.sign-colourway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.staff-title-block h1,.app-shell-staff .staff-search-shell{transition:none}.staff-results-panel{animation:none}}.client-screen-panel{gap:24px}.client-screen-layout{display:grid;gap:22px;border:1px solid #ded8ce;border-radius:18px;padding:clamp(18px,3vw,28px);background:linear-gradient(rgba(126,105,72,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(126,105,72,.045) 1px,transparent 1px),#f5f2eb;background-size:24px 24px}.client-screen-map{display:grid;gap:26px;min-width:0;border:1px solid #d9d2c7;border-radius:14px;padding:clamp(18px,3vw,26px);background:radial-gradient(circle at 50% 0%,rgba(203,179,139,.18),transparent 38%),#fffefaf5;box-shadow:0 14px 34px #39322614}.client-screen-map-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.client-screen-map-header h3,.client-screen-picker h3{margin:3px 0 0;color:#272621;font-family:var(--grand-serif);font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:500}.client-screen-map-header>small{max-width:190px;color:#77726a;font-size:.72rem;font-weight:650;line-height:1.4;text-align:right}.client-screen-map-displays{display:grid;grid-template-columns:minmax(88px,.8fr) minmax(150px,1.45fr) minmax(68px,.54fr) minmax(88px,.8fr) minmax(88px,.8fr);align-items:flex-end;justify-content:center;gap:clamp(12px,2.4vw,26px);min-height:286px}.client-tv-map-button{display:grid;align-content:end;gap:10px;width:100%;max-width:132px;justify-self:center;border:0;padding:0;background:transparent;color:#302f2b;text-align:left;cursor:pointer}.client-tv-map-button.is-landscape{max-width:220px}.client-tv-map-screen{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:9 / 16;overflow:hidden;border:4px solid #292824;border-radius:6px;background:linear-gradient(145deg,rgba(232,200,148,.12),transparent 55%),#20201d;color:#fffefa;box-shadow:0 6px #bcb4a7,0 15px 24px #2725202b;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.client-tv-map-button.is-landscape .client-tv-map-screen{aspect-ratio:16 / 9}.client-tv-map-number{color:#e1bf89;font-family:var(--grand-serif);font-size:clamp(3rem,6vw,4.7rem);line-height:1}.client-tv-map-orientation{position:absolute;right:8px;bottom:7px;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:3px 6px;color:#d4cec4;font-size:.5rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.client-tv-map-copy{display:grid;gap:2px;min-width:0;text-align:center}.client-tv-map-copy strong{color:#302f2b;font-family:var(--grand-serif);font-size:.95rem;font-weight:600}.client-tv-map-copy small{display:-webkit-box;overflow:hidden;color:#77726a;font-size:.61rem;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.client-tv-map-button:hover:not(:disabled) .client-tv-map-screen,.client-tv-map-button:focus-visible .client-tv-map-screen,.client-tv-map-button.is-selected .client-tv-map-screen{border-color:#c59a58;box-shadow:0 0 0 4px #c59a5833,0 6px #a9844c,0 18px 26px #27252033;transform:translateY(-3px)}.client-tv-map-button:focus-visible,.client-tv-picker-button:focus-visible{outline:3px solid rgba(154,120,71,.25);outline-offset:4px}.client-tv-map-button.is-custom:not(.is-selected) .client-tv-map-screen{border-color:#9f855d}.client-screen-corner{display:grid;align-self:center;justify-items:center;gap:10px;color:#765c35}.client-screen-corner>span:first-child{font-size:.55rem;font-weight:900;letter-spacing:.07em;text-align:center;text-transform:uppercase}.client-screen-corner-arrow{position:relative;width:34px;height:34px;border-right:3px solid #98794c;border-bottom:3px solid #98794c;border-radius:0 0 5px}.client-screen-corner-arrow:after{position:absolute;right:-5px;top:-1px;width:10px;height:10px;border-top:3px solid #98794c;border-right:3px solid #98794c;content:"";transform:rotate(-45deg)}.client-screen-layout-lower{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:22px;align-items:stretch}.client-screen-entrance{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;min-height:190px;border-radius:14px;padding:24px;background:#fffefab8}.client-screen-entrance>div{display:grid;gap:4px;text-align:center}.client-screen-entrance>div>span{color:#9a7847;font-size:.6rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.client-screen-entrance strong{color:#272621;font-family:var(--grand-serif);font-size:clamp(1.45rem,3vw,2rem);font-weight:500}.client-screen-entrance small{max-width:150px;color:#77726a;font-size:.66rem;font-weight:600;line-height:1.4}.client-screen-entrance-line{width:100%;height:100%;min-height:126px;border:1px solid #d3cbbf;border-top:0;border-bottom:0}.client-screen-picker{display:grid;gap:14px;border:1px solid #d9d2c7;border-radius:14px;padding:20px;background:#fffefa;box-shadow:0 12px 30px #39322612}.client-screen-picker>header{display:flex;align-items:center;justify-content:space-between;gap:14px}.client-screen-picker>header>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#272621;color:#fffefa;font-size:.68rem;font-weight:900;letter-spacing:.05em}.client-screen-picker-list{display:grid;gap:8px}.client-tv-picker-button{display:grid;grid-template-columns:36px minmax(96px,auto) minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;border:1px solid #ddd6cb;border-radius:9px;padding:10px 12px;background:#fbf9f4;color:#302f2b;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.client-tv-picker-button:hover:not(:disabled),.client-tv-picker-button.is-selected{border-color:#a98752;background:#f4ecdf;transform:translate(2px)}.client-tv-picker-button.is-custom:not(.is-selected){border-color:#baa27c}.client-tv-picker-number{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:#292824;color:#e1bf89;font-family:var(--grand-serif);font-size:1.18rem}.client-tv-picker-copy{display:grid;gap:1px}.client-tv-picker-copy strong{font-family:var(--grand-serif);font-size:.92rem;font-weight:600}.client-tv-picker-copy small,.client-tv-picker-detail{color:#77726a;font-size:.61rem;font-weight:650;line-height:1.35}.client-tv-picker-copy small{text-transform:capitalize}.client-tv-picker-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-tv-picker-action{border-radius:999px;padding:6px 8px;background:#eee7da;color:#72572f;font-size:.57rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.client-screen-editor{display:grid;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);gap:20px;border:1px solid #ded8ce;border-radius:9px;padding:20px;background:#fffefa}.client-screen-editor-header{display:grid;align-content:start;grid-template-columns:50px minmax(0,1fr);gap:12px}.client-screen-editor-number{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#252522;color:#e1bf89;font-family:var(--grand-serif);font-size:1.4rem}.client-screen-editor-header>div{display:grid;gap:5px}.client-screen-editor-header .eyebrow,.client-screen-editor-header h2,.client-screen-editor-header h3,.client-screen-editor-header p{margin:0}.client-screen-editor-header h2,.client-screen-editor-header h3{color:#272621;font-family:var(--grand-serif);font-size:1.65rem;font-weight:500}.client-screen-editor-header p:last-child{color:#77726a;font-size:.78rem;line-height:1.5;text-transform:capitalize}.client-screen-picker,.client-screen-gallery-section{display:grid;gap:14px;min-width:0}.client-screen-seating-warning{display:flex;align-items:flex-start;gap:11px;border:1px solid #d9b96f;border-radius:8px;padding:13px 14px;background:#fff8e6;color:#684d1f}.client-screen-seating-warning>svg{flex:0 0 auto;margin-top:1px;color:#a56c12}.client-screen-seating-warning p,.client-screen-seating-warning strong{display:block;margin:0}.client-screen-seating-warning p{font-size:.76rem;font-weight:650;line-height:1.5}.client-screen-seating-warning strong{margin-bottom:2px;color:#513913;font-size:.8rem}.client-screen-gallery-section+.client-screen-gallery-section{border-top:1px solid #e4dfd6;padding-top:18px}.client-screen-gallery-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.client-screen-gallery-heading>div{display:grid;gap:4px}.client-screen-gallery-heading .eyebrow,.client-screen-gallery-heading h3,.client-screen-gallery-heading h4{margin:0}.client-screen-gallery-heading h3,.client-screen-gallery-heading h4{color:#272621;font-family:var(--grand-serif);font-size:1.14rem;font-weight:550}.client-screen-gallery-heading>span{border-radius:999px;padding:5px 8px;background:#eee8dc;color:#6f6250;font-size:.63rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.client-screen-gallery-panel{gap:24px}.client-screen-gallery-panel>.client-screen-editor-header{border-bottom:1px solid #e4dfd6;padding-bottom:18px}.client-screen-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-screen-current-choice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #ded8ce;border-radius:10px;padding:12px 13px;background:#f8f5ef}.client-screen-current-choice.has-selection{border-color:#c9b28c;background:#faf5eb}.client-screen-current-choice-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d8cbb5;border-radius:50%;background:#fffefa;color:#8b6938}.client-screen-current-choice-copy{display:grid;gap:2px;min-width:0}.client-screen-current-choice-copy small{color:#8b6938;font-size:.58rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.client-screen-current-choice-copy strong{color:#302f2b;font-family:var(--grand-serif);font-size:1rem;font-weight:600}.client-screen-current-choice-copy>span{color:#77726a;font-size:.68rem;font-weight:600;line-height:1.4}.client-screen-clear-selection{min-height:38px;padding:8px 11px;color:#6f5430;font-size:.72rem}.client-screen-clear-selection:disabled{opacity:.48}.client-screen-option-card{position:relative;display:grid;align-content:start;gap:10px;min-width:0;overflow:hidden;border:1px solid #ddd7cd;border-radius:12px;padding:9px;background:#fffefa;color:#302f2b;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.client-screen-option-card:hover:not(:disabled){border-color:#9f7c48;box-shadow:0 13px 30px #463a2621;transform:translateY(-3px)}.client-screen-option-card:focus-visible{outline:3px solid rgba(154,120,71,.24);outline-offset:3px}.client-screen-option-card.is-selected{border-color:#8c6939;box-shadow:0 0 0 2px #8c69392e}.client-screen-option-preview{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4 / 5;overflow:hidden;border-radius:7px;background:#272621}.client-screen-option-preview>img{width:100%;height:100%;object-fit:contain}.client-screen-option-card.is-portrait .client-screen-option-preview>img{object-fit:cover}.client-screen-option-card.is-upload .client-screen-option-preview{background:radial-gradient(circle at 50% 6%,rgba(226,191,134,.22),transparent 38%),linear-gradient(155deg,#34322d,#1e1e1a 66%)}.client-screen-option-card.is-photo-layout .client-screen-option-preview{background:radial-gradient(circle at 50% 0%,rgba(226,191,134,.24),transparent 42%),linear-gradient(150deg,#33312c,#1d1d1a 72%)}.client-screen-photo-layout-preview{display:grid;justify-items:center;gap:8px;width:100%;padding:22px;color:#fffefa}.client-screen-photo-layout-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:min(88%,220px)}.client-screen-photo-layout-preview .client-screen-photo-layout-showcase .photo-layout-miniature{width:100%;aspect-ratio:1 / 1;border-color:#f0cc91c2;background:#fffefa14}.client-screen-photo-layout-preview .photo-layout-miniature-cell{border-color:#f0cc91;background:#fffefa29}.client-screen-photo-layout-preview .photo-layout-miniature.is-diagonal-pair:after{background:#f0cc91}.client-screen-photo-layout-preview>strong{font-family:var(--grand-serif);font-size:.92rem;font-weight:600}.client-screen-photo-layout-preview>small{color:#fffefaad;font-size:.57rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.client-screen-option-upload-layout{display:grid;align-content:center;justify-items:center;gap:12px;width:100%;height:100%;padding:24px 16px;color:#fffefa}.client-screen-option-upload-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(226,191,134,.68);border-radius:999px;padding:8px 12px;background:#0f0f0dd1;color:#f0cc91;font-size:.72rem;line-height:1}.client-screen-option-upload-action strong{color:#fffefa;font-weight:850;letter-spacing:.01em}.client-screen-option-upload-layout>small{color:#fffefab3;font-size:.58rem;font-weight:800;letter-spacing:.06em;line-height:1.35;text-align:center;text-transform:uppercase}.client-screen-option-upload-preview{display:grid;place-items:center;gap:8px;color:#e2bf86}.client-screen-option-upload-preview small{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.38);border-radius:50%;color:#fffefa;font-family:var(--grand-serif);font-size:1rem}.client-screen-option-number{position:absolute;top:8px;left:8px;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:4px 7px;background:#1c1b18c7;color:#fffefa;font-size:.58rem;font-weight:900;letter-spacing:.08em}.client-screen-option-copy{display:grid;gap:4px;padding:0 3px 4px}.client-screen-option-copy small{color:#92703f;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.client-screen-option-copy strong{color:#302f2b;font-family:var(--grand-serif);font-size:1rem;font-weight:600}.client-screen-option-copy>span{color:#77726a;font-size:.68rem;font-weight:600;line-height:1.45}.client-screen-gallery-actions{justify-content:space-between;border-top:1px solid #e4dfd6;padding-top:18px}.client-screen-gallery-actions>p{flex:1 1 260px;margin:0;color:#6f6b63;font-size:.74rem;font-weight:650;line-height:1.45}.client-screen-maker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-screen-maker-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;border:1px solid #ddd6ca;border-radius:9px;padding:12px;background:linear-gradient(145deg,#fffefa,#f6f1e8);color:#302f2b;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.client-screen-maker-card:hover:not(:disabled){border-color:#b2915f;box-shadow:0 8px 22px #463a261a;transform:translateY(-1px)}.client-screen-maker-card>svg{color:#9a7540}.client-screen-maker-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#282722;color:#e2bf86}.client-screen-maker-copy,.client-screen-media-copy{display:grid;gap:3px;min-width:0}.client-screen-maker-copy small,.client-screen-media-copy small{color:#92703f;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.client-screen-maker-copy strong,.client-screen-media-copy strong{overflow:hidden;color:#302f2b;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.client-screen-maker-copy>span,.client-screen-media-copy>span{color:#77726a;font-size:.67rem;font-weight:600;line-height:1.35}.client-screen-saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,360px));gap:10px}.client-screen-media-card{position:relative;display:grid;gap:9px;min-width:0;border:1px solid #ddd7cd;border-radius:9px;padding:8px;background:#fffefa;cursor:pointer}.client-screen-media-card:hover,.client-screen-media-card.is-selected{border-color:#9f7c48;background:#faf6ee}.client-screen-media-card.is-selected{box-shadow:0 0 0 3px #9f7c4829}.client-screen-media-card>input{position:absolute;width:1px;height:1px;opacity:0}.client-screen-media-preview{position:relative;display:grid;place-items:center;isolation:isolate;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:6px;background:#262521}.client-screen-media-preview.is-portrait{aspect-ratio:4 / 3}.client-screen-media-preview:after{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#12110f0a,#12110f52),radial-gradient(circle at center,transparent 35%,rgba(18,17,15,.22));content:"";pointer-events:none}.client-screen-media-preview .client-screen-media-backdrop{position:absolute;z-index:-2;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;object-fit:cover;filter:blur(18px) saturate(.72);opacity:.56;transform:scale(1.06)}.client-screen-media-preview .client-screen-media-artwork{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:10px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.28))}.client-screen-media-preview.is-portrait .client-screen-media-artwork{padding:12px}.client-screen-media-preview .client-screen-radio{position:absolute;z-index:2;top:8px;right:8px;border-color:#ffffffe0;background:#1c1b18b8;box-shadow:0 1px 5px #00000038}.client-screen-media-card.is-selected .client-screen-radio{border-color:#fffefa;background:#b18443;box-shadow:inset 0 0 0 4px #fffefa,0 1px 5px #00000038}.client-screen-tool-view{display:grid;gap:18px}.client-screen-tool-heading{display:grid;gap:6px;border-left:3px solid #a9854f;padding:4px 0 4px 14px}.client-screen-tool-heading .eyebrow,.client-screen-tool-heading h2,.client-screen-tool-heading p{margin:0}.client-screen-tool-heading h2{color:var(--ink);font-family:var(--grand-serif);font-size:clamp(1.65rem,3vw,2.15rem);font-weight:500}.client-screen-tool-heading p:last-child{color:var(--muted);font-size:.82rem}.client-screen-content-options{display:grid;gap:8px}.client-screen-content-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;border:1px solid #dfdbd1;border-radius:7px;padding:11px 13px;background:#fffefa;cursor:pointer}.client-screen-content-option:hover:not(.is-unavailable),.client-screen-content-option.is-selected{border-color:#a98752;background:#faf6ee}.client-screen-content-option>input{position:absolute;width:1px;height:1px;opacity:0}.client-screen-radio{display:grid;place-items:center;width:18px;height:18px;border:1.5px solid #a7a095;border-radius:50%}.client-screen-content-option.is-selected .client-screen-radio{border-color:#8b6938;box-shadow:inset 0 0 0 4px #faf6ee;background:#8b6938}.client-screen-content-option:focus-within{outline:3px solid rgba(154,120,71,.22);outline-offset:2px}.client-screen-option-copy{display:grid;gap:3px}.client-screen-option-copy strong{color:#302f2b;font-size:.84rem}.client-screen-option-copy small{color:#77726a;font-size:.72rem;font-weight:550;line-height:1.4}.client-screen-option-note{border-radius:999px;padding:5px 8px;background:#efebe4;color:#77726a;font-size:.63rem;font-weight:800;white-space:nowrap}.client-screen-content-option.is-unavailable:not(.is-selected){cursor:not-allowed;opacity:.66}@media(max-width:820px){.client-experience .client-action-grid{grid-template-columns:1fr}.client-screen-layout{padding:14px}.client-screen-map{gap:22px;padding:20px 16px}.client-screen-map-displays{grid-template-columns:minmax(76px,.8fr) minmax(130px,1.38fr) 56px minmax(76px,.8fr) minmax(76px,.8fr);gap:10px;min-height:250px}.client-tv-map-button{max-width:114px}.client-tv-map-button.is-landscape{max-width:190px}.client-screen-layout-lower{grid-template-columns:1fr}.client-screen-entrance{min-height:154px}.client-screen-entrance-line{min-height:94px}.client-screen-editor{grid-template-columns:1fr}.client-screen-saved-grid,.client-screen-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.client-screen-panel{gap:18px}.client-screen-layout{gap:14px;margin:0;border:0;padding:0;background:transparent}.client-screen-map{gap:24px;border:1px solid #ddd6cb;border-radius:12px;padding:18px 14px 22px}.client-screen-map-header{align-items:flex-start;flex-direction:column;gap:6px}.client-screen-map-header>small{max-width:none;text-align:left}.client-screen-map-displays{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:24px;min-height:0}.client-tv-map-button{width:min(116px,100%);max-width:none;gap:8px}.client-tv-map-button.is-landscape{width:100%;max-width:none}.client-tv-map-screen{border-width:3px;box-shadow:0 6px #bcb4a7,0 12px 20px #27252029}.client-tv-map-number{font-size:3rem}.client-tv-map-copy strong{font-size:.9rem}.client-tv-map-copy small{font-size:.6rem}.client-screen-corner{grid-column:1 / -1;gap:8px;padding:2px 0 4px}.client-screen-corner-arrow{width:3px;height:38px;border:0;border-radius:0;background:#98794c}.client-screen-corner-arrow:after{right:-4px;top:auto;bottom:0;border-top:0;border-right:3px solid #98794c;border-bottom:3px solid #98794c;transform:rotate(45deg)}.client-screen-layout-lower{gap:14px}.client-screen-entrance{gap:10px;min-height:132px;padding:18px 14px}.client-screen-entrance-line{min-height:82px}.client-screen-picker{padding:17px 14px}.client-tv-picker-button{grid-template-columns:34px minmax(0,1fr) auto;gap:9px;padding:10px}.client-tv-picker-detail{grid-column:2 / -1;grid-row:2;white-space:normal}.client-screen-editor{gap:16px;padding:14px}.client-screen-maker-grid,.client-screen-option-grid,.client-screen-saved-grid{grid-template-columns:1fr}.client-screen-option-card{grid-template-columns:126px minmax(0,1fr);align-items:center}.client-screen-option-preview{aspect-ratio:4 / 5}.client-screen-option-upload-layout{gap:5px;padding:12px 7px 7px}.client-screen-option-upload-action{gap:4px;padding:6px 8px;font-size:.58rem}.client-screen-option-upload-action>svg{width:13px}.client-screen-option-upload-layout>small{font-size:.48rem}.client-screen-current-choice{grid-template-columns:auto minmax(0,1fr)}.client-screen-clear-selection{grid-column:1 / -1;width:100%}.client-screen-gallery-heading{align-items:flex-start}.client-screen-gallery-heading>span{flex:0 0 auto}.client-screen-maker-card{min-height:82px}.client-screen-media-card{grid-template-columns:126px minmax(0,1fr);align-items:center}.client-screen-media-preview{aspect-ratio:16 / 10}.client-screen-media-preview.is-portrait{aspect-ratio:1}.client-screen-content-option{grid-template-columns:18px minmax(0,1fr);min-height:76px;padding:11px}.client-screen-content-option>input{grid-column:1}.client-screen-radio{grid-column:1;grid-row:1 / span 2}.client-screen-option-copy{grid-column:2}.client-screen-option-note{grid-column:2;justify-self:start;white-space:normal}}@media(max-width:1024px){.topbar{align-items:center;flex-direction:row;padding:12px 14px}.topbar-actions{display:none}.topbar .brand-button{max-width:calc(100% - 56px);min-width:0}.topbar .brand-wordmark,.mobile-menu-panel .brand-wordmark{font-size:clamp(1.16rem,5.7vw,1.42rem)}.mobile-menu-button{display:inline-flex}}@media(max-width:900px){.admin-header,.staff-header{align-items:flex-start;flex-direction:column}.form-grid,.admin-meta-form,.admin-name-grid,.graphic-builder,.admin-summary-grid,.ads-filter-panel,.ads-insights-grid,.ads-layout{grid-template-columns:1fr}.ads-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ads-chart-frame,.ads-map-frame{height:340px}.ads-event-row{grid-template-columns:76px minmax(0,1fr) 78px}.ads-event-row .ads-pill{justify-self:start}.ads-event-modal-summary,.ads-detail-grid,.ads-detail-row{grid-template-columns:1fr}.ads-event-modal-summary>span:last-child{justify-self:start}.admin-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-create-actions{justify-content:flex-start}.copy-strip{grid-template-columns:20px minmax(0,1fr)}.copy-strip-actions{grid-column:2;justify-content:flex-start}.metric-wide{grid-column:auto}.plan-list-panel{overflow:visible;border:0;background:transparent;box-shadow:none}.plan-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-search-field,.plan-filter-actions{grid-column:1 / -1}.plan-filter-actions{align-items:stretch}.plan-list{gap:12px}.plan-row{grid-template-columns:1fr;align-items:stretch;gap:0;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 34px #25252512}.plan-row-open{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;padding:16px}.plan-row-delete{justify-self:end;margin:0 16px 16px 0}.plan-row:last-child{border-bottom:1px solid var(--line)}.plan-row:hover{transform:translateY(-1px);box-shadow:0 18px 40px #2525251a}.plan-row-main,.plan-row-date,.plan-row-upload-icons,.plan-row .status-badge{grid-column:1 / -1}.plan-row strong{font-size:1.12rem;line-height:1.15}.plan-row-date{min-height:58px;align-content:center;border:1px solid #ece4d4;border-radius:8px;padding:10px 12px;background:#fffaf0}.plan-row-upload-icons{min-height:42px;align-content:center;border:1px solid #ece4d4;border-radius:8px;padding:8px 10px;background:#fffaf0}.plan-row .status-badge{min-height:36px;padding:8px 12px}.graphic-preview-shell{position:static;max-height:none}.asset-upload-slots.is-split,.asset-crop-workspace,.asset-crop-grid.is-split{grid-template-columns:1fr}.staff-search-shell{top:82px}.app-shell-staff .staff-workspace-live{width:min(100% - 24px,1120px)}.staff-workspace-live.has-results .staff-focus-panel{padding-bottom:10px}.staff-title-block h1{font-size:clamp(2.4rem,8vw,4.6rem)}.staff-workspace-live.has-results .staff-title-block h1{font-size:clamp(1.55rem,3.8vw,2rem)}.app-shell-staff .staff-search-shell{min-height:86px}.app-shell-staff .staff-search-shell input{min-height:58px}.tv-screen-grid,.tv-media-library,.production-layout{grid-template-columns:1fr}.tv-schedule-form,.tv-add-screen-form,.production-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.user-chip{max-width:100%}.workspace,.client-workspace{width:min(100% - 20px,1180px);padding-top:18px}.client-action-grid,.copy-strip{grid-template-columns:1fr}.copy-strip>svg{display:none}.copy-strip-actions{grid-column:1;align-items:stretch;flex-direction:column}.copy-strip-actions>*,.admin-create-actions>*{width:100%}.admin-create-actions{align-items:stretch;flex-direction:column}.seating-count-grid,.seating-plan-card-grid{grid-template-columns:1fr}.seating-plan-option{min-height:144px}.asset-upload-slot{grid-template-columns:1fr;grid-template-areas:"thumb" "copy" "actions"}.asset-upload-slot-actions{align-items:stretch;flex-direction:column}.asset-upload-slot-actions>*,.asset-upload-button{width:100%}.asset-upload-status{align-items:stretch;flex-direction:column}.seating-plan-card{grid-template-columns:48px minmax(0,1fr)}.seating-plan-card-action{grid-column:2;justify-self:start}.client-action-button{min-height:116px}.stepper{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#ffffffb8;margin-bottom:14px}.stepper li{justify-content:center;gap:4px;min-height:34px;border:0;padding:5px 3px;background:transparent}.stepper li.is-active{background:#fbf4df;box-shadow:inset 0 0 0 1px #c9a2275c}.stepper span{width:20px;height:20px;flex-basis:20px;font-size:.7rem}.stepper strong{overflow-wrap:normal;white-space:nowrap;font-size:clamp(.62rem,2.55vw,.72rem);line-height:1}.form-actions,.form-actions-between,.admin-header-actions{align-items:stretch;flex-direction:column}.form-actions>*,.admin-header-actions>*{width:100%}.client-review-actions{align-items:stretch;gap:12px;margin-top:14px}.client-review-actions>button{width:100%;min-height:48px}.section-toolbar,.table-editor-header{grid-template-columns:1fr}.section-toolbar{flex-direction:column}.section-toolbar-actions{justify-content:flex-start}.client-table-editor-grid,.plan-filter-panel,.ads-summary-grid{grid-template-columns:1fr}.ads-filter-panel,.ads-chart-panel,.ads-map-panel,.ads-source-panel,.ads-events-panel{padding:12px}.ads-range-control{grid-template-columns:repeat(2,minmax(0,1fr))}.ads-chart-frame,.ads-map-frame{height:300px}.ads-panel-header{align-items:center}.ads-panel-header h2{font-size:1.05rem;line-height:1.16}.ads-map-mode-control{flex-basis:100%}.ads-event-row{grid-template-columns:1fr;align-items:start}.ads-event-toolbar,.ads-event-pagination{align-items:stretch;flex-direction:column}.ads-event-filters{display:grid;grid-template-columns:1fr}.ads-event-search,.ads-event-type-control{min-width:0;width:100%}.ads-event-type-control{flex-basis:auto}.ads-event-result-count,.ads-pagination-summary{white-space:normal}.ads-pagination-controls{justify-content:center;flex-wrap:wrap}.plan-filter-actions{flex-direction:column}.plan-filter-count{width:100%}.plan-list{gap:10px}.plan-row{padding:0}.plan-row-open{padding:14px}.plan-row-delete{margin:0 14px 14px 0}.plan-row strong{font-size:1.08rem}.admin-header{gap:12px;margin-bottom:14px}.admin-header h1{font-size:clamp(1.9rem,11vw,2.6rem)}.admin-header>.primary-button{width:100%;min-height:46px}.admin-event-toolbar{gap:10px;margin-bottom:10px;padding:10px}.admin-event-toolbar .eyebrow{font-size:.72rem}.admin-event-toolbar strong{font-size:.95rem}.admin-event-toolbar .staff-event-tabs button{min-height:34px;padding:7px 8px}.plan-filter-panel{gap:10px;padding:12px;margin-bottom:12px}.plan-search-field{grid-column:1 / -1}.plan-search-field>span,.plan-advanced-filters .field>span{font-size:.78rem}.plan-filter-panel input,.plan-filter-panel select,.plan-search-shell{min-height:46px;font-size:16px}.plan-search-shell{grid-template-columns:18px minmax(0,1fr);padding:0 11px}.plan-search-shell input{min-height:44px}.plan-advanced-toggle{display:grid;grid-column:1 / -1;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;justify-content:stretch;width:100%;min-height:44px;padding:9px 11px;text-align:left}.plan-advanced-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-advanced-toggle svg:last-child{justify-self:end}.plan-advanced-filters{display:none;grid-column:1 / -1;gap:10px}.plan-advanced-filters.is-open{display:grid}.plan-filter-actions{gap:8px}.plan-filter-actions .ghost-button{width:100%;min-height:44px}.plan-filter-count{min-height:42px;padding:7px 10px}.plan-row-open{grid-template-columns:1fr;gap:10px;padding:12px}.plan-row-date,.plan-row-upload-icons{min-height:0;padding:9px 10px}.plan-row-upload-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.plan-upload-indicator{justify-content:center;width:100%;min-width:0;padding:7px 5px;font-size:.72rem}.plan-upload-indicator span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-row .status-badge{width:100%;min-height:34px;justify-content:center;padding:7px 10px;text-align:center}.modal-backdrop{padding:12px}.confirmation-modal{padding:16px}.modal-actions{align-items:stretch;flex-direction:column}.guest-list li{grid-template-columns:30px minmax(0,1fr) 38px}.song-request-row,.admin-song-row{grid-template-columns:1fr}.song-request-remove{width:100%}.export-grid{grid-template-columns:1fr}.seating-board{min-width:420px}.staff-workspace{width:min(100% - 20px,1120px);padding-top:18px}.staff-header h1{font-size:2.1rem}.staff-header-actions,.staff-header-actions .ghost-button{width:100%}.staff-search-shell{top:130px;min-height:66px;grid-template-columns:24px minmax(0,1fr) auto}.staff-search-shell input{min-height:46px;font-size:1.15rem}.staff-table-list,.staff-plan-row{grid-template-columns:1fr}.dj-plan-row>span:not(.staff-plan-date):not(.staff-plan-main){justify-self:start;white-space:normal}.staff-table-card header{grid-template-columns:1fr}.staff-table-card header strong{grid-column:auto;grid-row:auto;width:fit-content}.staff-event-toolbar{align-items:stretch;flex-direction:column}.staff-event-tabs{width:100%;min-width:0}.app-shell-staff .staff-workspace{width:min(100% - 18px,1120px);padding-top:max(10px,env(safe-area-inset-top))}.app-shell-staff .staff-workspace-live{width:min(100% - 18px,1120px);padding-top:max(12px,env(safe-area-inset-top));padding-bottom:calc(104px + env(safe-area-inset-bottom))}.staff-workspace-live:not(.has-results) .staff-focus-panel{transform:translateY(-2vh)}.staff-hero-row,.staff-workspace-live.has-results .staff-hero-row{grid-template-columns:1fr;justify-items:stretch;gap:10px;margin-bottom:12px}.staff-workspace-live:not(.has-results) .staff-hero-row{justify-items:center}.app-shell-staff .staff-header-actions,.app-shell-staff .staff-header-actions .ghost-button{width:auto}.app-shell-staff .staff-header-actions{justify-content:center}.staff-workspace-live.has-results .staff-header-actions{justify-content:flex-start}.staff-title-block{text-align:center}.staff-workspace-live.has-results .staff-title-block{text-align:left}.staff-title-block h1{font-size:clamp(2.5rem,14vw,4.2rem)}.staff-workspace-live.has-results .staff-title-block h1{font-size:1.55rem}.app-shell-staff .staff-search-shell{min-height:76px;grid-template-columns:28px minmax(0,1fr) auto;padding:10px 10px 10px 14px}.app-shell-staff .staff-search-shell input{min-height:52px;font-size:1.32rem}.tv-admin-toolbar,.tv-media-folder-header,.production-panel-header{align-items:stretch;flex-direction:column}.tv-admin-toolbar .segmented-control,.production-source-control{width:100%}.tv-screen-grid,.tv-media-library,.production-layout,.production-tool-strip,.tv-schedule-form,.tv-schedule-edit,.tv-add-screen-form,.production-option-grid{grid-template-columns:1fr}.tv-schedule-item{grid-template-columns:24px minmax(0,1fr) auto}.tv-schedule-item .icon-button{width:100%}.tv-schedule-item>.icon-button{grid-column:span 1}.app-shell-staff .staff-search-shell.is-condensed{min-height:58px}.app-shell-staff .staff-search-shell.is-condensed input{min-height:40px;font-size:1.08rem}.app-shell-staff .staff-table-list{grid-template-columns:1fr}.staff-bottom-action{padding:30px 12px max(14px,env(safe-area-inset-bottom))}.staff-show-tables-button,.staff-hide-tables-button{min-height:60px}}@media(max-width:480px){.admin-date-grid{grid-template-columns:1fr}}.app-shell-admin{--ink: #20201d;--charcoal: #171816;--muted: #716f68;--soft: #f3f1ec;--surface: #fffefa;--line: #ddd9cf;--accent: #a98752;--accent-strong: #755a33;--accent-soft: #eee6d8;min-height:100vh;padding-left:252px;background:#f3f1ec;color:var(--ink)}.app-shell-admin .topbar{position:fixed;inset:0 auto 0 0;z-index:1000;width:252px;min-height:100vh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:26px;border:0;border-right:1px solid rgba(215,196,157,.2);padding:32px 20px 22px;background:#181917;box-shadow:18px 0 42px #19191614;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell-admin .topbar .brand-button{width:100%;min-height:0;justify-items:start;gap:7px;border:0;border-bottom:1px solid rgba(231,220,196,.16);border-radius:0;padding:0 2px 26px;color:#f6f1e7;text-align:left}.app-shell-admin .brand-wordmark{color:#f7f2e8;font-size:1.52rem;font-weight:400;letter-spacing:.075em;line-height:1}.app-shell-admin .brand-subtitle{color:#b9a98d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.64rem;font-weight:700;letter-spacing:.16em;line-height:1.3;text-transform:uppercase}.app-shell-admin .topbar-actions{display:flex;width:100%;flex:1;align-items:stretch;justify-content:flex-start;flex-direction:column;flex-wrap:nowrap;gap:5px}.app-shell-admin .topbar-actions:before{content:"Workspace";padding:0 12px 8px;color:#8d887f;font-size:.64rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.app-shell-admin .topbar-actions .ghost-button{position:relative;width:100%;min-height:45px;justify-content:flex-start;gap:11px;border:1px solid transparent;border-radius:7px;padding:10px 12px;color:#c7c5bd;font-size:.88rem;font-weight:650;text-align:left}.app-shell-admin .topbar-actions .ghost-button svg{color:#918c82;stroke-width:1.7}.app-shell-admin .topbar-actions .ghost-button:hover:not(:disabled){border-color:#e2d3b31f;background:#ffffff0e;color:#fff}.app-shell-admin .topbar-actions .ghost-button.is-active{border-color:#decaa129;background:#fffaf017;color:#fff}.app-shell-admin .topbar-actions .ghost-button.is-active:before{content:"";position:absolute;top:10px;bottom:10px;left:-1px;width:2px;border-radius:2px;background:#b99863}.app-shell-admin .topbar-actions .ghost-button.is-active svg{color:#c6a771}.app-shell-admin .topbar-actions .ghost-button:last-child{margin-top:auto;border-top:1px solid rgba(231,220,196,.12);border-radius:0;padding-top:16px;color:#aaa69c}.app-shell-admin .workspace{width:min(1240px,calc(100% - 72px))}.dashboard-home{padding-top:48px;padding-bottom:72px}.dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:34px}.dashboard-hero-copy{max-width:760px}.dashboard-home .eyebrow{color:#8b6d41;font-size:.67rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.dashboard-hero h1{margin:12px 0 0;color:#1d1e1b;font-size:clamp(2.45rem,4.8vw,4.35rem);font-weight:400;letter-spacing:-.035em;line-height:.98}.dashboard-hero-intro{max-width:660px;margin:18px 0 0;color:#65635d;font-size:1rem;line-height:1.65}.app-shell-admin .primary-button{border-color:#24241f;border-radius:6px;background:#24241f;color:#fff;box-shadow:0 12px 26px #1c1c1824}.app-shell-admin .primary-button:hover:not(:disabled){border-color:#81663d;background:#81663d}.dashboard-primary-action{min-height:48px;flex:0 0 auto;padding:12px 17px}.dashboard-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}.dashboard-metric{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;min-width:0;min-height:138px;border:1px solid #e0ddd4;border-radius:8px;padding:20px;background:#fffefaeb;box-shadow:0 12px 30px #2a28230b}.dashboard-metric-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid #ded1bc;border-radius:50%;background:#f3ede2;color:#81643a}.dashboard-metric-copy{display:grid;min-width:0;gap:3px}.dashboard-metric-copy strong{color:#20211e;font-family:var(--grand-serif);font-size:2rem;font-weight:400;line-height:1}.dashboard-metric-copy>span{margin-top:5px;color:#302f2b;font-size:.86rem;font-weight:780;line-height:1.25}.dashboard-metric-copy small{color:#77746d;font-size:.74rem;font-weight:600;line-height:1.38}.dashboard-events-panel{overflow:hidden;border-color:#dfdbd1;border-radius:9px;background:#fffefa;box-shadow:0 18px 46px #2a282311}.dashboard-events-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid #e3dfd6;padding:26px 28px 23px}.dashboard-events-header h2{margin:8px 0 0;color:#20211e;font-size:clamp(1.55rem,2.4vw,2.15rem);font-weight:400;letter-spacing:-.025em;line-height:1.08}.dashboard-events-header p:last-child{margin:8px 0 0;color:#77746d;font-size:.82rem;font-weight:600}.dashboard-home .staff-event-tabs{min-width:210px;border-color:#dcd7cc;border-radius:7px;background:#f0ede6}.dashboard-home .staff-event-tabs button{border-radius:5px;color:#77736a;font-size:.8rem;font-weight:750}.dashboard-home .staff-event-tabs button.is-selected{color:#22221f;box-shadow:0 2px 10px #2a282314}.dashboard-home .plan-filter-panel{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;margin:0;border-bottom:1px solid #e3dfd6;padding:20px 28px;background:#faf8f3}.dashboard-home .plan-search-field>span,.dashboard-home .plan-advanced-filters .field>span{color:#67645d;font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.dashboard-home .plan-search-shell{min-height:46px;border-color:#dcd7cc;border-radius:6px;background:#fffefa}.dashboard-home .plan-search-shell:focus-within{border-color:#a98752;box-shadow:0 0 0 3px #a9875221}.dashboard-home .plan-search-shell input{min-height:44px;color:#292925}.dashboard-home .plan-search-shell input::placeholder{color:#9a978f}.dashboard-home .plan-advanced-toggle{display:inline-flex;min-height:46px;border-color:#dcd7cc;border-radius:6px;background:#fffefa}.dashboard-home .plan-advanced-filters{display:none;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;border-top:1px solid #e3dfd6;padding-top:16px}.dashboard-home .plan-advanced-filters.is-open{display:grid}.dashboard-home .plan-filter-count{border-color:#dcd7cc;border-radius:6px;background:#f4f0e7}.dashboard-home .plan-list-panel{overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.dashboard-home .plan-row{grid-template-columns:minmax(0,1fr) 52px;border-color:#e8e4dc;background:#fffefa}.dashboard-home .plan-row:hover{background:#fbf8f1}.dashboard-home .plan-row-open{grid-template-columns:minmax(140px,.72fr) minmax(170px,1.15fr) minmax(210px,.95fr) minmax(150px,.82fr) 22px;gap:18px;padding:19px 22px 19px 28px}.dashboard-home .plan-row-date{gap:5px;font-weight:750}.dashboard-home .plan-row-date-value{color:#3b3934;font-family:var(--grand-serif);font-size:.94rem;font-weight:400}.dashboard-home .plan-row-date-period{color:#858178;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-home .plan-row-main strong{color:#252522;font-family:var(--grand-serif);font-size:1rem;font-weight:400;line-height:1.2}.dashboard-home .plan-row-main small{color:#8a867e;font-size:.71rem}.dashboard-home .plan-upload-indicator{min-height:30px;border-color:#e1ddd4;border-radius:999px;background:#f2f0eb;color:#8a867e;font-size:.69rem;font-weight:700}.dashboard-home .plan-upload-indicator.is-active{border-color:#d9c8aa;background:#f3eadb;color:#755a33}.dashboard-home .status-badge{min-height:28px;border:1px solid #dfdbd2;border-radius:999px;padding:5px 10px;background:#f1efea;color:#5f625e;font-size:.7rem;font-weight:750}.dashboard-home .status-submitted-to-the-grand,.dashboard-home .status-graphic-ready{border-color:#d9c8aa;background:#f4ead9;color:#6f542e}.dashboard-home .status-completed{border-color:#cbd8cf;background:#edf4ef;color:#41614c}.dashboard-home .plan-row-arrow{display:inline-flex;align-items:center;justify-content:center;color:#aaa69e}.dashboard-home .plan-row-delete{width:36px;height:36px;border-color:transparent;background:transparent;color:#a18e91;opacity:.55}.dashboard-home .plan-row:hover .plan-row-delete,.dashboard-home .plan-row-delete:focus-visible{opacity:1}.dashboard-home .empty-state{min-height:240px;border:0;border-radius:0;background:transparent}.dashboard-empty-state>div{display:grid;justify-items:center;gap:8px;max-width:520px}.dashboard-empty-state h3{margin:0;color:#24241f;font-size:1.6rem;font-weight:400}.dashboard-empty-state p{margin:0;line-height:1.55}@media(max-width:1280px){.dashboard-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metric{min-height:118px}.dashboard-home .plan-row-open{grid-template-columns:minmax(132px,.7fr) minmax(155px,1fr) minmax(160px,.9fr) minmax(132px,.75fr) 20px;gap:12px;padding-right:16px;padding-left:20px}.dashboard-home .plan-upload-indicator{padding-right:6px;padding-left:6px}}@media(max-width:1180px){.app-shell-admin{padding-left:0}.app-shell-admin .topbar{position:sticky;inset:auto;width:100%;min-height:72px;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;border-right:0;border-bottom:1px solid rgba(231,220,196,.15);padding:12px 18px;box-shadow:0 12px 34px #1919161f}.app-shell-admin .topbar .brand-button{width:auto;max-width:calc(100% - 56px);border-bottom:0;padding:0}.app-shell-admin .topbar-actions{display:none}.app-shell-admin .topbar-actions:before{content:none}.app-shell-admin .mobile-menu-button{display:inline-flex;border-color:#e7dcc433;background:#ffffff0f;color:#f7f2e8}.app-shell-admin .mobile-menu-panel{background:#181917fb;color:#f7f2e8}.app-shell-admin .mobile-menu-header{border-color:#e7dcc426}.app-shell-admin .mobile-menu-header .icon-button{border-color:#e7dcc433;background:#ffffff0f;color:#f7f2e8}.app-shell-admin .mobile-menu-action{border-color:#e7dcc424;background:#ffffff0b;color:#d4d0c7}.app-shell-admin .mobile-menu-action:hover:not(:disabled),.app-shell-admin .mobile-menu-action.is-active{border-color:#e2d3b33d;background:#fffaf017;color:#fff}.app-shell-admin .workspace{width:min(1120px,calc(100% - 44px))}.dashboard-home .plan-row-open{grid-template-columns:minmax(140px,.72fr) minmax(170px,1.15fr) minmax(210px,.95fr) minmax(150px,.82fr) 22px;gap:16px;padding-right:20px;padding-left:24px}}@media(max-width:900px){.dashboard-home{padding-top:34px}.dashboard-hero{align-items:flex-start;flex-direction:column;gap:22px}.dashboard-events-header{align-items:flex-start;flex-direction:column}.dashboard-home .staff-event-tabs{width:100%}.dashboard-home .plan-filter-panel,.dashboard-home .plan-advanced-filters{grid-template-columns:1fr}.dashboard-home .plan-search-field,.dashboard-home .plan-advanced-toggle,.dashboard-home .plan-advanced-filters,.dashboard-home .plan-filter-actions{grid-column:1}.dashboard-home .plan-row{border:0;border-bottom:1px solid #e8e4dc;border-radius:0;box-shadow:none}.dashboard-home .plan-row-open{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dashboard-home .plan-row-main,.dashboard-home .plan-row-date,.dashboard-home .plan-row-upload-icons,.dashboard-home .plan-row .status-badge{grid-column:1 / -1}.dashboard-home .plan-row-date,.dashboard-home .plan-row-upload-icons{border:1px solid #e4dfd5;border-radius:6px;padding:10px 12px;background:#faf7f0}.dashboard-home .plan-row-arrow{display:none}}@media(max-width:640px){.app-shell-admin .workspace{width:min(100% - 24px,1120px)}.dashboard-home{padding-top:26px;padding-bottom:44px}.dashboard-hero{margin-bottom:26px}.dashboard-hero h1{font-size:clamp(2.15rem,12vw,3.15rem)}.dashboard-hero-intro{font-size:.93rem;line-height:1.55}.dashboard-primary-action{width:100%}.dashboard-overview{grid-template-columns:1fr;gap:9px}.dashboard-metric{min-height:0;padding:16px}.dashboard-events-header,.dashboard-home .plan-filter-panel{padding-right:16px;padding-left:16px}.dashboard-events-header{padding-top:22px;padding-bottom:20px}.dashboard-home .plan-filter-panel{padding-top:16px;padding-bottom:16px}.dashboard-home .plan-row-open{grid-template-columns:1fr;padding:16px}.dashboard-home .plan-row-upload-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-home .plan-row-delete{margin-right:12px;margin-bottom:12px;opacity:.75}}@media(max-width:900px){.tv-range-panel{align-items:stretch;flex-direction:column}.tv-range-controls{width:100%}.tv-board-table{--tv-screen-col: 250px;--tv-date-col: 178px}.tv-media-picker-controls,.tv-media-picker-body{grid-template-columns:1fr}.tv-media-picker-body{grid-template-rows:auto minmax(0,1fr)}.tv-media-picker-preview{grid-template-columns:minmax(180px,.75fr) minmax(0,1fr);align-items:center}}@media(max-width:720px){.modal-backdrop{align-items:start;justify-items:center;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))}.tv-toolbar-actions{align-items:stretch;flex-direction:column;width:100%}.tv-toolbar-actions>*{width:100%}.tv-range-controls,.tv-schedule-modal-form,.tv-schedule-modal-fields{grid-template-columns:1fr}.tv-schedule-modal,.tv-media-picker-modal{width:100%;max-height:none;overflow:visible}.tv-schedule-modal{padding:14px}.tv-schedule-media-preview,.tv-media-picker-preview{grid-template-columns:minmax(86px,34%) minmax(0,1fr);align-items:center;gap:10px;padding:10px}.tv-schedule-media-frame,.tv-media-picker-frame{align-self:start;border-radius:6px}.tv-schedule-media-frame.is-scrollable-image,.tv-media-picker-frame.is-scrollable-image{display:grid;overflow:hidden;overscroll-behavior:auto}.tv-schedule-media-frame.is-scrollable-image img,.tv-media-picker-frame.is-scrollable-image img{width:100%;height:100%;object-fit:contain}.tv-schedule-modal-fields>label:first-child,.tv-schedule-media-field,.tv-schedule-modal-actions{grid-column:auto}.tv-media-picker-modal{grid-template-rows:none;height:auto;min-height:0;padding:12px}.tv-media-picker-controls{gap:10px}.tv-media-picker-search-input input,.tv-media-picker-upload select{min-height:44px;font-size:16px}.tv-media-picker-upload{grid-template-columns:1fr}.tv-media-picker-upload .tv-media-upload-button{width:100%;min-height:44px;justify-content:center}.tv-media-folder-filter{margin-inline:-4px;padding:0 4px 4px}.tv-media-picker-body{grid-template-rows:none;gap:10px;min-height:0;overflow:visible}.tv-media-picker-results{overflow:visible;padding-right:0}.tv-media-picker-grid{grid-template-columns:1fr;gap:8px}.tv-media-picker-card{grid-template-columns:92px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:74px}.tv-media-picker-thumb{width:92px;border-radius:6px}.tv-media-picker-check{position:static;justify-self:end}.tv-media-picker-actions{align-items:stretch;flex-direction:column;position:sticky;bottom:0;z-index:1;margin:0 -12px -12px;border-top:1px solid var(--line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--surface)}.tv-board-scroll{overflow-x:visible}.tv-board-table{display:grid;min-width:0;gap:12px}.tv-board-header{display:none}.tv-board-row{grid-template-columns:1fr;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.tv-board-row+.tv-board-row{border-top:1px solid var(--line)}.tv-board-screen{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.tv-board-cell{height:auto;min-height:118px;border-left:0;border-top:1px solid var(--line)}.tv-board-cell:before{content:attr(data-date-label);color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.tv-cell-slots{overflow:visible}.tv-agenda-day-header,.tv-schedule-modal-actions,.tv-schedule-modal-action-group{align-items:stretch;flex-direction:column}.tv-schedule-modal-action-group,.tv-schedule-modal-action-group>*,.tv-schedule-modal-actions>button{width:100%}.tv-agenda-slot{grid-template-columns:22px minmax(0,1fr)}.tv-agenda-slot .tv-schedule-status{grid-column:2;width:fit-content}}.workspace-intro{max-width:640px;margin:13px 0 0;color:var(--muted);font-size:.96rem;font-weight:500;line-height:1.55}.app-shell-admin :is(.admin-detail,.ads-workspace,.tv-admin-workspace,.production-workspace,.dj-workspace){padding-top:46px;padding-bottom:76px}.app-shell-admin .admin-header{align-items:flex-end;margin-bottom:28px}.app-shell-admin .admin-header>div:first-child{min-width:0}.app-shell-admin .admin-header .eyebrow{margin-top:11px;color:#8b6d41;font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.app-shell-admin .admin-header h1{margin-top:10px;color:#1d1e1b;font-size:clamp(2.5rem,5vw,4.4rem);font-weight:400;letter-spacing:-.035em;line-height:.98}.app-shell-admin .admin-header-actions{flex:0 0 auto}.app-shell-admin .admin-header-actions :is(.ghost-button,.secondary-button,.primary-button){min-height:46px;border-radius:6px;padding-inline:16px}.app-shell-admin .secondary-button,.app-shell-admin .ghost-button{border-color:#d9d5cb;border-radius:6px;background:#fffefacc;color:#3a3934;box-shadow:none}.app-shell-admin .ghost-button:hover:not(:disabled),.app-shell-admin .secondary-button:hover:not(:disabled){border-color:#bda781;background:#fffefa}.app-shell-admin .topbar .topbar-actions .ghost-button{border-color:transparent;background:transparent;color:#c7c5bd}.app-shell-admin .topbar .topbar-actions .ghost-button svg{color:#918c82}.app-shell-admin .topbar .topbar-actions .ghost-button:hover:not(:disabled){border-color:#e2d3b31f;background:#ffffff0e;color:#fff}.app-shell-admin .topbar .topbar-actions .ghost-button.is-active{border-color:#decaa129;background:#fffaf017;color:#fff}.app-shell-admin .topbar .topbar-actions .ghost-button:last-child{border-color:transparent;border-top-color:#e7dcc41f;border-radius:0;background:transparent;color:#aaa69c}.app-shell-admin .panel{border-color:#dfdbd1;border-radius:10px;background:#fffefa;box-shadow:0 18px 46px #2a282311}.app-shell-admin :is(input,textarea,select){border-color:#d9d5cb;border-radius:6px;background-color:#fff}.app-shell-admin :is(input,textarea,select):focus{border-color:#9d8156;box-shadow:0 0 0 3px #a9875224}.app-shell-admin :is(label,.field)>span,.app-shell-admin .production-field-label{color:#716f68;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.app-shell-admin .segmented-control{gap:3px;border-color:#d9d5cb;border-radius:7px;padding:4px;background:#efede7}.app-shell-admin .segmented-control button{min-height:38px;border-radius:5px;color:#6f6c65}.app-shell-admin .segmented-control button:is(.is-active,.is-selected){background:#fffefa;color:#262621;box-shadow:0 2px 10px #2a282314}.app-shell-admin .admin-detail>.admin-header .compact-button:first-child{min-height:34px;border:0;padding:0;background:transparent;color:#716f68}.app-shell-admin .admin-meta-panel{margin-bottom:18px;padding:22px}.app-shell-admin .admin-meta-form{gap:14px}.app-shell-admin .admin-meta-form :is(input,select){min-height:46px}.app-shell-admin .copy-strip{margin-top:18px;padding-top:17px}.app-shell-admin .admin-hub-panel{padding:18px}.app-shell-admin .admin-action-grid{gap:12px}.app-shell-admin .client-action-button{min-height:164px;border-color:#dfdbd1;border-radius:8px;box-shadow:0 10px 26px #2a28230a}.app-shell-admin .client-action-button:hover:not(:disabled){border-color:#bca577;background:#fbf8f1;transform:translateY(-1px)}.app-shell-admin .client-action-icon{border-color:#ded1bc;border-radius:50%;background:#f3ede2;color:#81643a}.app-shell-admin .client-back-row{margin-bottom:22px}.app-shell-admin .client-back-row .ghost-button{border:0;padding-left:0;background:transparent;color:#716f68}.app-shell-admin .section-toolbar h2,.app-shell-admin .production-panel-header h2,.app-shell-admin .ads-panel-header h2{color:#262621;font-weight:400;letter-spacing:-.02em}.app-shell-admin .flow-panel{padding:clamp(22px,3vw,32px)}.app-shell-admin .ads-filter-panel{padding:18px}.app-shell-admin .ads-summary-grid .metric{border-color:#dfdbd1;background:#fffefa}.app-shell-admin .ads-metric svg{color:#8b6d41;stroke-width:1.6}.app-shell-admin .ads-chart-panel,.app-shell-admin .ads-map-panel,.app-shell-admin .ads-source-panel,.app-shell-admin .ads-events-panel{padding:20px}.app-shell-admin .ads-source-row,.app-shell-admin .ads-event-row{border-color:#e4e0d7}.app-shell-admin .tv-admin-toolbar{margin-bottom:2px;border-bottom:1px solid #ddd9cf;padding-bottom:18px}.app-shell-admin .tv-range-panel,.app-shell-admin .tv-screen-library,.app-shell-admin .tv-agenda-day,.app-shell-admin .tv-board-scroll{border-color:#dfdbd1;border-radius:9px;background:#fffefa}.app-shell-admin .production-tool-strip{gap:10px}.app-shell-admin .production-tool-button{min-height:78px;border-color:#dfdbd1;border-radius:8px;padding:15px;background:#fffefa;box-shadow:0 8px 22px #2a282309}.app-shell-admin .production-tool-button:hover{border-color:#bca577;background:#fbf8f1}.app-shell-admin .production-tool-button.is-active{border-color:#9d8156;background:#f3ede2;box-shadow:inset 0 -2px #9d8156}.app-shell-admin .production-tool-button>svg{border-radius:50%;background:#e9e3d8;color:#81643a}.app-shell-admin .production-tool-button strong{font-size:.96rem}.app-shell-admin .production-layout{gap:16px}.app-shell-admin .production-panel,.app-shell-admin .production-results-panel{padding:22px}.app-shell-admin .dj-songs-panel{margin-top:0}.app-shell-admin .dj-song-row{border-color:#e2ded5;background:#fffefa}.app-shell-admin .dj-song-row a{color:#755a33}.client-experience{position:relative;z-index:0;width:min(1020px,calc(100% - 36px));min-width:0;min-height:100svh;padding-top:clamp(38px,7vw,76px);padding-bottom:84px;color:#20201d}.client-experience:before,.auth-workspace:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 50% -18%,rgba(169,135,82,.14),transparent 38%),#f3f1ec}.client-experience .client-header{position:relative;gap:0;margin-bottom:34px;padding-bottom:28px}.client-experience .client-header:after{content:"";position:absolute;bottom:0;left:50%;width:52px;height:1px;transform:translate(-50%);background:#a98752}.client-experience .client-header .eyebrow{color:#8b6d41;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.66rem;font-weight:800;letter-spacing:.2em}.client-experience .client-header h1{max-width:100%;margin-top:13px;color:#1d1e1b;font-size:clamp(2.5rem,6vw,4.7rem);font-weight:400;letter-spacing:-.035em;line-height:.98;overflow-wrap:anywhere;text-wrap:balance}.client-experience .client-header h1.client-couple-name-long{max-width:880px;margin-right:auto;margin-left:auto;font-size:clamp(2.1rem,4.7vw,3.9rem);line-height:1.04}.client-experience :is(h1,h2)[tabindex="-1"]:focus{outline:none}.client-experience .client-header-note{margin-top:14px;color:#6e6b64;font-size:.88rem;font-weight:650}.client-experience .panel{min-width:0;border-color:#ddd9cf;border-radius:10px;background:#fffefa;box-shadow:0 24px 64px #2a282314}.client-experience .client-hub-panel{gap:22px;padding:clamp(22px,4vw,36px)}.client-experience .client-instruction{max-width:620px;margin:0;color:#6e6b64;font-size:.96rem;font-weight:550;line-height:1.6}.client-table-advisory{display:grid;gap:6px;margin:0 0 20px;border:1px solid #d8c9ae;border-left:4px solid #a98752;border-radius:7px;padding:14px 16px;background:#faf6ee;color:#53472f}.client-table-advisory strong{font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.client-table-advisory p{margin:0;font-size:.9rem;font-weight:600;line-height:1.55}.client-document-guide{margin:0 0 20px;border-block:1px solid #e3dfd6;padding:12px 2px;color:#53472f}.client-document-guide summary{cursor:pointer;font-size:.86rem;font-weight:800}.client-document-guide .client-instruction-example{max-width:460px;margin-top:12px;border-top:0;padding:0 0 2px 18px}.client-document-guide .client-instruction-example p{margin:0 0 8px;color:#6e6659;font-size:.88rem;line-height:1.45}.client-document-guide .client-instruction-example ol{grid-template-columns:1fr;gap:3px;margin:0}.client-state-workspace{display:grid;align-content:start}.client-state-card{display:grid;justify-items:center;gap:10px;width:min(100%,580px);margin:0 auto;border:1px solid #ddd9cf;border-radius:10px;padding:clamp(28px,6vw,52px);background:#fffefa;color:#514f49;text-align:center;box-shadow:0 24px 64px #2a282314}.client-state-card h2,.client-state-card p{margin:0}.client-state-card h2{color:#262621;font-family:var(--grand-serif);font-size:clamp(1.55rem,4vw,2.2rem);font-weight:400}.client-state-card p{max-width:430px;line-height:1.55}.client-state-card .primary-button{margin-top:8px}.client-state-card-error{border-top:3px solid #a98752}.client-state-spinner{width:38px;height:38px;border:2px solid #ddd3c2;border-top-color:#8b6d41;border-radius:50%;animation:client-state-spin .85s linear infinite}@keyframes client-state-spin{to{transform:rotate(360deg)}}.client-progress{display:grid;gap:10px;border-block:1px solid #e3dfd6;padding:17px 0}.client-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#716f68;font-size:.76rem;font-weight:700}.client-progress-copy span{letter-spacing:.09em;text-transform:uppercase}.client-progress-copy strong{color:#34332f;font-size:.82rem}.client-progress-track{display:block;height:5px;overflow:hidden;border-radius:999px;background:#e8e4dc}.client-progress-track>span{display:block;height:100%;border-radius:inherit;background:#9a7847;transition:width .22s ease}.client-experience .client-action-grid{gap:12px}.client-experience .client-action-button{min-height:186px;grid-template-columns:44px minmax(0,1fr);align-items:start;border-color:#dfdbd1;border-radius:8px;padding:20px;background:#fffefa;box-shadow:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}.client-experience .client-action-button:hover:not(:disabled){border-color:#ad946b;background:#faf7f0;transform:translateY(-2px)}.client-experience .client-action-button.is-complete{border-color:#c9bea9}.client-experience .client-action-icon{width:44px;height:44px;border-color:#ded1bc;border-radius:50%;background:#f3ede2;color:#81643a}.client-experience .client-action-title{font-size:clamp(1.12rem,2vw,1.32rem);font-weight:400}.client-experience .client-action-meta{color:#383731;font-size:.88rem;font-weight:750}.client-experience .client-action-detail{color:#75726b;font-size:.82rem;font-weight:550}.client-action-state{grid-area:pill;display:inline-flex;align-items:center;justify-self:start;gap:5px;border:1px solid #ddd9cf;border-radius:999px;padding:4px 9px;color:#79766f;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.client-action-state.is-complete{border-color:#b9aa8f;background:#f2ece1;color:#6f5430}.client-experience .flow-panel:not(.client-hub-panel){padding:clamp(22px,4vw,36px)}.client-experience .section-toolbar h2{color:#262621;font-weight:400;letter-spacing:-.02em}.client-experience .section-toolbar .eyebrow{color:#8b6d41;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase}.client-experience .client-back-row .ghost-button{border:0;padding-left:0;background:transparent;color:#716f68}.client-experience .client-instruction-box{border-color:#d8c9ae;border-left-color:#a98752;border-radius:6px;background:#faf6ee;color:#53472f}.client-experience .client-instruction-box-title,.client-experience .client-instruction-box-content,.client-experience .client-instruction-example li{color:#53472f}.client-experience .table-editor{min-width:0;border-color:#dfdbd1;background:#fffefa}.table-guest-count{display:inline-flex;width:fit-content;margin-top:10px;border-radius:999px;padding:4px 9px;background:#f2ece1;color:#6f5430;font-size:.74rem;font-weight:800}.client-sticky-review{position:fixed;z-index:20;left:50%;bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:min(948px,calc(100% - 32px));max-height:calc(100svh - 20px);margin:0;overflow-y:auto;border:1px solid rgba(185,170,143,.82);border-radius:9px;padding:12px;background:#fffefaf5;box-shadow:0 14px 38px #2a282324;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translate(-50%)}.client-experience .flow-panel.client-seating-editor-panel{padding-bottom:220px}.client-sticky-review .feedback{grid-column:1 / -1;width:100%;margin:0}.client-sticky-review .review-confirmation{max-width:none;margin:0;border:0;padding:8px;background:transparent}.client-sticky-review .client-review-actions{margin:0}.client-experience :is(input,textarea,select){min-height:46px;border-color:#d9d5cb;border-radius:6px}.client-experience :is(input,textarea,select):focus{border-color:#9d8156;box-shadow:0 0 0 3px #a9875224}.client-experience .primary-button{border-color:#24241f;border-radius:6px;background:#24241f;box-shadow:0 12px 26px #1c1c1824}.client-experience .primary-button:hover:not(:disabled){border-color:#81663d;background:#81663d}.client-experience :is(.secondary-button,.ghost-button){border-color:#d9d5cb;border-radius:6px;background:#fffefa}.client-experience :is(.seating-plan-option,.seating-plan-card){border-color:#dfdbd1;border-radius:8px;background:#fffefa;box-shadow:0 10px 26px #2a28230a}.client-experience :is(.seating-plan-option,.seating-plan-card):hover{border-color:#ad946b;background:#faf7f0}.client-experience.is-screen-selection-view{width:min(1120px,calc(100% - 36px));padding-top:clamp(22px,4vw,44px)}.client-experience .client-screen-selection-panel{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.client-screen-selection-panel .client-check-toolbar{margin-bottom:8px}.client-screen-selection-panel .client-instruction-box{max-width:680px;margin-top:14px;border:0;border-block:1px solid rgba(126,105,72,.2);border-radius:0;padding:12px 0;background:transparent}.client-screen-selection-panel .client-screen-layout{gap:0;border:0;border-radius:0;padding:0;overflow:hidden}.client-screen-selection-panel .client-screen-map{gap:26px;border:0;border-radius:0;padding:clamp(24px,4vw,38px);background:transparent;box-shadow:none}.client-screen-selection-panel .client-screen-layout-lower{gap:0}.client-screen-selection-panel .client-screen-entrance{border:0;border-radius:0;background:transparent}.client-screen-selection-panel .client-screen-entrance-line:first-child{border-left:0}.client-screen-selection-panel .client-screen-entrance-line:last-child{border-right:0}.client-screen-selection-panel .client-screen-picker{border:0;border-left:1px solid rgba(126,105,72,.2);border-radius:0;padding:clamp(22px,3vw,30px);background:transparent;box-shadow:none}.client-screen-selection-panel .client-screen-picker-list{gap:0}.client-screen-selection-panel .client-tv-picker-button{border:0;border-top:1px solid rgba(126,105,72,.2);border-radius:0;padding:11px 10px;background:transparent}.client-screen-selection-panel .client-tv-picker-button:first-child{border-top:0}.client-screen-selection-panel .client-tv-picker-button:hover:not(:disabled),.client-screen-selection-panel .client-tv-picker-button.is-selected{border-color:#7e694833;background:#fffefa9e;box-shadow:inset 3px 0 #a98752;transform:none}.client-screen-selection-panel .client-tv-picker-button.is-custom:not(.is-selected){border-color:#7e694833}@media(max-width:820px){.client-screen-selection-panel .client-screen-picker{border-top:1px solid rgba(126,105,72,.2);border-left:0}}@media(max-width:620px){.client-experience.is-screen-selection-view{width:min(100% - 24px,1120px);padding-top:18px}.client-screen-selection-panel .client-screen-layout{background:linear-gradient(rgba(126,105,72,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(126,105,72,.045) 1px,transparent 1px),#f5f2eb;background-size:24px 24px}.client-screen-selection-panel .client-screen-map,.client-screen-selection-panel .client-screen-entrance,.client-screen-selection-panel .client-screen-picker{padding-right:14px;padding-left:14px}.client-screen-selection-panel .client-screen-entrance{display:none}}.auth-workspace{position:relative;z-index:0;width:min(100% - 32px,480px)}.auth-panel{gap:22px;overflow:hidden;border-color:#d8d2c7;border-top:0;border-radius:10px;padding:clamp(24px,5vw,38px);background:#fffefa;box-shadow:0 32px 86px #2a282321}.auth-lockup{gap:7px;padding-bottom:24px;border-color:#e1ddd4}.auth-lockup .brand-wordmark{color:#20201d;font-size:1.72rem;letter-spacing:.08em}.auth-lockup .brand-subtitle{color:#8b6d41;font-size:.62rem;letter-spacing:.17em;text-transform:uppercase}.auth-panel .eyebrow{color:#8b6d41;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.auth-panel h1{margin-top:10px;color:#20201d;font-size:clamp(2.4rem,8vw,3.6rem);font-weight:400;letter-spacing:-.03em}.auth-intro{max-width:330px;margin:12px 0 0;color:#716f68;font-size:.9rem;line-height:1.55}.auth-form label>span{color:#716f68;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.auth-input-shell{min-height:50px;border-color:#d9d5cb;border-radius:6px}.auth-input-shell:focus-within{border-color:#9d8156;box-shadow:0 0 0 3px #a9875224}.auth-submit-button{min-height:50px;border-color:#24241f;border-radius:6px;background:#24241f;box-shadow:0 12px 26px #1c1c1824}.app-shell-staff{--ink: #20201d;--charcoal: #171816;--muted: #716f68;--soft: #f3f1ec;--surface: #fffefa;--line: #ddd9cf;--accent: #a98752;--accent-strong: #755a33;--accent-soft: #eee6d8;background:radial-gradient(circle at 50% -22%,rgba(169,135,82,.14),transparent 40%),#f3f1ec;color:#20201d}.app-shell-staff .staff-workspace:not(.staff-workspace-live){width:min(1120px,calc(100% - 32px));padding-top:34px}.app-shell-staff .staff-workspace:not(.staff-workspace-live)>.staff-header{align-items:center;margin-bottom:18px;border-radius:10px;padding:24px 26px;background:#181917;color:#f7f2e8;box-shadow:0 20px 48px #19191624}.app-shell-staff .staff-header .eyebrow{color:#b99863;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.app-shell-staff .staff-header h1{margin-top:9px;color:inherit;font-size:clamp(2rem,4vw,3.25rem);font-weight:400;letter-spacing:-.025em}.app-shell-staff .staff-header .ghost-button{border-color:#e2d3b338;background:#ffffff0f;color:#e9e4d9}.app-shell-staff .staff-event-toolbar,.app-shell-staff .staff-plan-list,.app-shell-staff .staff-table-card{border-color:#ddd9cf;border-radius:9px;background:#fffefa;box-shadow:0 14px 36px #2a28230e}.app-shell-staff .staff-event-toolbar{padding:16px}.app-shell-staff .staff-event-tabs{border-color:#d9d5cb;background:#efede7}.app-shell-staff .staff-event-tabs button{color:#716f68}.app-shell-staff .staff-event-tabs button.is-selected{background:#fffefa;color:#262621}.app-shell-staff .staff-plan-row{border-color:#e3dfd6;background:#fffefa}.app-shell-staff .staff-plan-row:hover{background:#faf7f0}.app-shell-staff .staff-plan-date small,.app-shell-staff .staff-title-block .eyebrow{color:#8b6d41}.app-shell-staff .staff-workspace-live{width:min(1120px,calc(100% - 32px))}.app-shell-staff .staff-brand-wordmark{color:#20201d;letter-spacing:.07em}.app-shell-staff .staff-title-block h1{color:#20201d;font-weight:400;letter-spacing:-.035em}.app-shell-staff .staff-event-date{color:#716f68}.app-shell-staff .staff-search-shell{border-color:#cfc5b5;border-radius:9px;background:#fffefa;box-shadow:0 24px 60px #2a282321}.app-shell-staff .staff-search-shell svg{color:#8b6d41}.app-shell-staff .staff-search-shell.is-condensed .staff-clear-button,.app-shell-staff .staff-show-tables-button{border-color:#24241f;background:#24241f;color:#fff;box-shadow:0 10px 22px #1c1c1829}.app-shell-staff .staff-table-card header{border-color:#e2ded5;background:#f5f1e9}.app-shell-staff .staff-table-card header span{color:#81643a}.app-shell-staff .staff-guest-list li.is-match{background:#f6efe3;box-shadow:inset 4px 0 #a98752}.app-shell-staff .staff-seat{background:#efede7;color:#66635d}@media(max-width:1180px){.app-shell-admin :is(.admin-detail,.ads-workspace,.tv-admin-workspace,.production-workspace,.dj-workspace){padding-top:34px}.app-shell-admin .admin-header h1{font-size:clamp(2.25rem,6vw,3.8rem)}}@media(max-width:820px){.app-shell-admin .admin-header{align-items:stretch;flex-direction:column;gap:20px}.app-shell-admin .admin-header-actions{justify-content:flex-start}.app-shell-admin .admin-header-actions>*{flex:1 1 auto}.app-shell-admin .admin-action-grid,.client-experience .client-action-grid{grid-template-columns:1fr}.client-experience .client-action-button{min-height:144px}.app-shell-staff .staff-workspace:not(.staff-workspace-live)>.staff-header{align-items:flex-start}}@media(max-width:620px){.app-shell-admin :is(.admin-detail,.ads-workspace,.tv-admin-workspace,.production-workspace,.dj-workspace){width:min(100% - 24px,1240px);padding-top:26px;padding-bottom:54px}.app-shell-admin .admin-header{margin-bottom:22px}.app-shell-admin .admin-header h1{font-size:clamp(2.1rem,12vw,3rem)}.app-shell-admin .admin-header-actions{display:grid;grid-template-columns:1fr}.app-shell-admin .admin-meta-panel,.app-shell-admin .production-panel,.app-shell-admin .production-results-panel,.app-shell-admin .flow-panel{padding:17px}.app-shell-admin .copy-strip{grid-template-columns:20px minmax(0,1fr)}.app-shell-admin .copy-strip-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell-admin .copy-strip-actions>*{width:100%}.client-experience{width:min(100% - 24px,1020px);padding-top:30px;padding-bottom:52px}.client-experience .client-header{margin-bottom:24px;padding-bottom:22px}.client-experience .client-header h1{font-size:clamp(2rem,11vw,3.1rem);line-height:1.02}.client-experience .client-header h1.client-couple-name-long{font-size:clamp(1.55rem,7.6vw,2.25rem);letter-spacing:-.02em;line-height:1.12;overflow-wrap:break-word}.client-experience .client-hub-panel,.client-experience .flow-panel:not(.client-hub-panel){padding:18px}.client-progress-copy{align-items:flex-start;flex-direction:column;gap:5px}.client-experience .client-action-button{min-height:0;padding:17px}.client-table-advisory{padding:13px 14px}.client-document-guide .client-instruction-example{padding-left:4px}.client-document-guide .client-instruction-example ol{grid-template-columns:1fr}.client-sticky-review{grid-template-columns:1fr;gap:8px;width:min(calc(100% - 20px),948px);bottom:max(6px,env(safe-area-inset-bottom));padding:10px}.client-experience .flow-panel.client-seating-editor-panel{padding-bottom:280px}.client-sticky-review .review-confirmation{padding:6px;font-size:.9rem}.client-sticky-review .client-review-actions,.client-sticky-review .client-review-actions>button{width:100%}.client-state-card{padding:28px 20px}.auth-workspace{align-content:start;padding-top:max(24px,env(safe-area-inset-top))}.auth-panel{padding:24px 20px}.app-shell-staff .staff-workspace:not(.staff-workspace-live){width:min(100% - 20px,1120px);padding-top:10px}.app-shell-staff .staff-workspace:not(.staff-workspace-live)>.staff-header{align-items:stretch;flex-direction:column;border-radius:8px;padding:20px}.app-shell-staff .staff-header-actions,.app-shell-staff .staff-header-actions .ghost-button{width:100%}.app-shell-staff .staff-event-toolbar{align-items:stretch;flex-direction:column}.app-shell-staff .staff-event-tabs{width:100%;min-width:0}.app-shell-staff .staff-workspace-live{width:min(100% - 20px,1120px)}}@media(prefers-reduced-motion:reduce){.client-state-spinner{animation:none}.client-experience .client-action-button,.client-progress-track>span{transition:none}}
