@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=DM+Serif+Display&display=swap";:root{--color-bg: #fffcf9;--color-bg-subtle: #faf6f2;--color-bg-hover: #f5ede5;--color-text: #2d2319;--color-text-muted: #6b5c4d;--color-text-light: #8a7a6a;--color-primary: #c4511a;--color-primary-hover: #a84315;--color-primary-text: #ffffff;--color-accent: #e06820;--color-accent-light: #f08530;--color-accent-blue: #c4511a;--color-selection: #fef3eb;--color-success: #2d7a4f;--color-success-bg: #e6f4ed;--color-warning: #9a6700;--color-warning-bg: #fff4cc;--color-danger: #c4302b;--color-error: #c4302b;--color-error-bg: #ffebe9;--color-border: #e0d5ca;--color-border-light: #ece4db;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-serif: "DM Serif Display", serif;font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased;color:var(--color-text)}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background-color:var(--color-bg);background-image:radial-gradient(circle,var(--color-border-light) 1px,transparent 1px);background-size:20px 20px;color:var(--color-text);min-height:100vh}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--color-text)}h1{font-family:var(--font-serif);font-weight:400;font-size:2.5rem}h2{font-size:1.25rem}h3{font-size:1rem}p{margin:0}a{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:2px;transition:all .2s}a:hover{color:var(--color-primary);text-decoration-color:var(--color-primary)}input,textarea,select{font-family:inherit;font-size:.9375rem;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);width:100%;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #c4511a1a}input::placeholder,textarea::placeholder{color:var(--color-text-light)}label{display:block;font-weight:600;font-size:.8125rem;margin-bottom:.375rem;color:var(--color-text-muted)}button{font-family:inherit;font-size:.9375rem;font-weight:500;padding:.5rem 1rem;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}button:hover:not(:disabled){background:var(--color-bg-hover)}button:active:not(:disabled){background:var(--color-border)}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background:var(--color-bg-subtle);color:var(--color-text);border:1px solid var(--color-border)}.btn-outline{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover:not(:disabled){color:var(--color-text);background:var(--color-bg-subtle)}.card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:0 2px 8px #2d23190f}.container{max-width:640px;margin:0 auto;padding:0 var(--space-md)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-out}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.landing{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.hero{flex:1;display:flex;align-items:center;justify-content:center;padding:4rem 1.5rem}.hero-content{text-align:center;max-width:480px}.brand{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin-bottom:.75rem}.hero h1{font-family:var(--font-serif);font-size:clamp(2rem,6vw,3rem);font-weight:400;line-height:1.2;margin-bottom:1.5rem;color:var(--color-text);white-space:nowrap}.hero h1 .accent{font-style:italic;color:var(--color-primary)}.hero-sub{font-size:1.125rem;color:var(--color-text-muted);margin-bottom:2rem;line-height:1.5}.cta-btn{display:inline-block;font-size:1rem;font-weight:600;padding:.875rem 2rem;text-decoration:none;background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-sm);transition:all .2s ease}.cta-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026;text-decoration:none}.hero-note{margin-top:1.5rem;font-size:.8125rem;color:var(--color-text-light)}.how-section{padding:2rem 1rem;background:var(--color-bg-subtle);border-top:1px solid var(--color-border)}.steps{display:flex;align-items:center;justify-content:center;gap:.5rem;max-width:800px;margin:0 auto}.step{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border-radius:var(--radius-md);border:1px solid var(--color-border);flex:1;min-width:0}.step-num{font-family:var(--font-serif);font-size:1.125rem;color:var(--color-primary);font-weight:400;flex-shrink:0}.step-text{display:flex;flex-direction:column;gap:0;min-width:0}.step-text strong{font-weight:600;font-size:.875rem;color:var(--color-text)}.step-text span{color:var(--color-text-muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-arrow{color:var(--color-text-light);font-size:1rem;flex-shrink:0}@media(max-width:540px){.how-section{padding:1.5rem 1rem}.steps{flex-direction:column;gap:.375rem}.step-arrow{display:none}.step{width:100%;max-width:260px;padding:.5rem .75rem}.step-text span{white-space:normal}}.landing-footer{padding:2rem 1.5rem;text-align:center;border-top:1px solid var(--color-border)}.landing-footer p{font-size:.8125rem;color:var(--color-text-muted)}.editor-overlay{position:fixed;inset:0;background:#fffc;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.editor-modal{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;max-width:480px;max-height:85vh;display:flex;flex-direction:column;animation:fadeIn .2s ease-out;box-shadow:0 4px 12px #00000014}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border-light)}.editor-header h2{font-size:1rem;margin:0;font-weight:600}.editor-close{width:28px;height:28px;background:transparent;border:none;font-size:1.25rem;display:flex;align-items:center;justify-content:center;padding:0;min-height:auto;color:var(--color-text-light);cursor:pointer}.editor-close:hover{color:var(--color-text);background:var(--color-bg-subtle);border-radius:var(--radius-sm)}.editor-content{flex:1;overflow-y:auto;padding:1.5rem}.editor-row{display:flex;gap:1rem;margin-bottom:1.5rem}.emoji-button{width:48px;height:48px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-subtle);font-size:1.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;min-height:auto;cursor:pointer}.emoji-button:hover{background:var(--color-bg-hover);border-color:var(--color-text-muted)}.category-name-input{flex:1;font-size:1.125rem;font-weight:500;border:none;border-bottom:1px solid var(--color-border);border-radius:0;padding:.5rem 0;background:transparent;box-shadow:none}.category-name-input:focus{border-color:var(--color-accent-blue);box-shadow:none}.emoji-picker{display:grid;grid-template-columns:repeat(8,1fr);gap:.5rem;padding:1rem;background:var(--color-bg-subtle);border-radius:var(--radius-sm);margin-bottom:1.5rem}.emoji-option{width:32px;height:32px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;font-size:1.25rem;display:flex;align-items:center;justify-content:center;padding:0;min-height:auto;cursor:pointer}.emoji-option:hover{background:var(--color-bg);border-color:var(--color-border)}.emoji-option.selected{background:var(--color-bg);border-color:var(--color-accent-blue);box-shadow:0 1px 2px #0000000d}.slots-section label{margin-bottom:.75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light)}.slots-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.slot-row{display:flex;align-items:center;gap:.75rem}.slot-number{width:20px;height:20px;color:var(--color-text-light);font-size:.75rem;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0}.slot-row input{flex:1;padding:.5rem;font-size:.9375rem;border:none;border-bottom:1px solid var(--color-border-light);border-radius:0;background:transparent;box-shadow:none}.slot-row input:focus{border-color:var(--color-text-muted);box-shadow:none}.slot-remove{width:28px;height:28px;border:none;background:transparent;font-size:1.25rem;display:flex;align-items:center;justify-content:center;padding:0;min-height:auto;color:var(--color-text-light);cursor:pointer;opacity:0;transition:opacity .2s}.slot-row:hover .slot-remove{opacity:1}.slot-remove:hover:not(:disabled){color:var(--color-error);background:var(--color-error-bg);border-radius:var(--radius-sm)}.add-slot-btn{width:100%;border:none;background:transparent;font-size:.875rem;font-weight:500;color:var(--color-text-muted);min-height:auto;text-align:left;padding:.5rem .5rem .5rem 2.25rem;cursor:pointer}.add-slot-btn:hover{color:var(--color-text)}.editor-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border-light);display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--color-bg-subtle);border-radius:0 0 var(--radius-md) var(--radius-md)}.delete-btn{background:none;border:none;color:var(--color-error);font-size:.875rem;font-weight:500;padding:.5rem;min-height:auto;cursor:pointer}.delete-btn:hover{text-decoration:underline}.editor-actions{display:flex;gap:.75rem;margin-left:auto}.editor-actions button{min-width:72px}.create-page{min-height:100vh;min-height:100dvh;padding-bottom:2rem}.create-header{position:sticky;top:0;z-index:50;background:var(--color-primary);padding:.75rem 1rem;display:flex;align-items:center;gap:1rem}@media(min-width:768px){.create-header{justify-content:center}.create-header .back-link,.create-header .header-brand{position:relative}.create-header .back-link{position:absolute;left:1rem}}.back-link{font-weight:500;font-size:.875rem;color:#fffc;text-decoration:none;padding:.375rem .75rem;border-radius:var(--radius-sm);transition:all .2s}.back-link:hover{color:#fff;background:#ffffff26;text-decoration:none}.header-brand{font-weight:700;font-size:1rem;color:#fff;text-decoration:none;letter-spacing:-.01em}.header-brand:hover{text-decoration:none;opacity:.9}.progress-bar{display:flex;justify-content:center;gap:2rem;padding:1rem;background:#fff;border-bottom:1px solid var(--color-border)}.progress-dot{display:flex;flex-direction:column;align-items:center;gap:.375rem;background:none;border:none;padding:0;min-height:auto;cursor:pointer}.progress-dot:disabled{cursor:default;opacity:.5}.progress-dot:hover:not(:disabled){background:none}.progress-dot .dot{width:8px;height:8px;border-radius:50%;background:var(--color-border);transition:all .2s}.progress-dot.active .dot{background:var(--color-primary);box-shadow:0 0 0 2px var(--color-bg),0 0 0 4px var(--color-primary)}.progress-dot.completed .dot{background:var(--color-primary)}.progress-dot .dot-label{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light)}.progress-dot.active .dot-label{color:var(--color-primary)}.progress-dot.completed .dot-label{color:var(--color-text-muted)}.create-form{padding:1rem 0 5rem;display:flex;flex-direction:column;gap:1rem}.step-content{display:flex;flex-direction:column;gap:1rem}.step-title{font-size:1.25rem;font-family:var(--font-serif);font-weight:400;color:var(--color-text);text-align:center;margin-bottom:0}.step-subtitle{font-size:.875rem;color:var(--color-text-muted);text-align:center;margin-top:-.5rem}.step-nav{position:fixed;bottom:0;left:0;right:0;display:flex;gap:.75rem;padding:1rem;background:#fff;border-top:1px solid var(--color-border);box-shadow:0 -2px 10px #0000000d;z-index:40}.step-nav .btn-secondary{flex:1;padding:.75rem}.step-nav .btn-primary{flex:2;padding:.75rem}.quick-start{display:flex;flex-direction:column;gap:.75rem}.quick-start-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.presets-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.presets-row .preset-chip.featured{order:-1}.preset-chip{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:1rem;min-height:36px;transition:all .2s ease;color:var(--color-text)}.preset-chip:hover{border-color:var(--color-text-muted);background:var(--color-bg-hover)}.preset-chip.featured{padding:.5rem 1rem}.preset-emoji{font-size:1rem}.preset-chip.featured .preset-emoji{font-size:1.25rem}.preset-name{font-size:.875rem;font-weight:600}.form-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 2px 8px #2d23190f}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light)}.card-header label{margin:0;font-size:.75rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em}.item-badge{font-size:.75rem;font-weight:600;background:var(--color-selection);color:var(--color-primary);padding:.125rem .5rem;border-radius:var(--radius-full);border:1px solid var(--color-border)}.field{display:flex;flex-direction:column}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.tz-hint{font-weight:400;color:var(--color-text-light);font-size:.75rem}.empty-hint{font-size:.875rem;color:var(--color-text-muted);text-align:center;padding:1.5rem 0;font-style:italic}.categories-list{display:flex;flex-direction:column;gap:.5rem}.category-block{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg)}.category-header-row{display:flex;align-items:center;background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border-light)}.category-title-btn{flex:1;display:flex;justify-content:space-between;align-items:center;padding:.375rem .625rem;background:transparent;border:none;border-radius:0;text-align:left;min-height:auto;font-size:.8125rem;font-weight:600;color:var(--color-text)}.category-title-btn:hover{background:var(--color-bg-hover)}.category-title{display:flex;align-items:center;gap:.375rem}.edit-hint{font-size:.75rem;font-weight:500;color:var(--color-text-light)}.category-title-btn:hover .edit-hint{color:var(--color-accent-blue)}.category-remove-btn{padding:.375rem .5rem;background:transparent;border:none;border-left:1px solid var(--color-border-light);border-radius:0;min-height:auto;font-size:1rem;line-height:1;color:var(--color-text-light)}.category-remove-btn:hover{background:var(--color-error-bg);color:var(--color-error)}.category-items{list-style:none;margin:0;padding:.25rem 0}.category-items li{padding:.125rem .625rem .125rem 1.75rem;font-size:.75rem;color:var(--color-text-muted);position:relative}.category-items li:before{content:"•";position:absolute;left:.75rem;color:var(--color-text-light)}.add-btn{width:100%;padding:.75rem;background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.875rem;font-weight:500;min-height:auto;transition:all .2s ease}.add-btn:hover{border-color:var(--color-text-muted);color:var(--color-text);background:var(--color-bg-subtle)}.bonus-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.bonus-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;background:transparent;border:none;border-radius:0;font-size:.875rem;font-weight:500;color:var(--color-text-muted);min-height:auto;transition:all .2s}.bonus-toggle:hover{background:var(--color-bg-subtle);color:var(--color-text)}.bonus-toggle.active{color:var(--color-text);border-bottom:1px solid var(--color-border-light)}.toggle-icon{font-size:1.125rem;font-weight:400;color:var(--color-text-light)}.poll-form{padding:1rem;display:flex;flex-direction:column;gap:.75rem;background:var(--color-bg-subtle)}.poll-form .field input{font-size:.9375rem;background:var(--color-bg)}.poll-option-row{display:flex;gap:.5rem;align-items:center}.poll-option-row input{flex:1;font-size:.875rem;padding:.5rem .75rem;background:var(--color-bg)}.remove-option-btn{width:28px;height:28px;min-height:auto;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-light);font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center}.remove-option-btn:hover{background:var(--color-bg-hover);color:var(--color-danger)}.add-option-btn{padding:.5rem;background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-light);font-size:.8125rem;font-weight:500;min-height:auto}.add-option-btn:hover{border-color:var(--color-text-muted);color:var(--color-text-muted);background:var(--color-bg)}.submit-btn{width:100%;margin-top:.5rem;font-size:1rem;padding:.875rem}.review-sections{display:flex;flex-direction:column;gap:.5rem}.review-card{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:left;min-height:auto;transition:all .2s}.review-card:hover{border-color:var(--color-primary);background:var(--color-selection)}.review-icon{font-size:1.25rem;flex-shrink:0}.review-content{flex:1;min-width:0}.review-main{font-weight:600;font-size:.875rem;color:var(--color-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-details{font-size:.75rem;color:var(--color-text-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-empty{font-size:.75rem;color:var(--color-text-light);margin:0}.review-card .edit-hint{font-size:.75rem;font-weight:500;color:var(--color-text-light);flex-shrink:0}.review-card:hover .edit-hint{color:var(--color-primary)}.extras-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-light)}.extras-label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.75rem}.extras-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}@media(max-width:480px){.extras-grid{grid-template-columns:repeat(2,1fr)}}.extra-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;min-height:auto;transition:all .2s}.extra-card:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-selection)}.extra-card.active{border-color:var(--color-primary);background:var(--color-selection)}.extra-card.disabled{opacity:.5;cursor:not-allowed}.extra-icon{font-size:1.25rem}.extra-name{font-weight:500;font-size:.6875rem;color:var(--color-text-muted)}.extra-card:hover:not(:disabled) .extra-name{color:var(--color-text)}.extra-desc{font-size:.625rem;color:var(--color-text-light);display:none}.extra-check{position:absolute;top:.5rem;right:.5rem;width:18px;height:18px;background:var(--color-primary);color:#fff;border-radius:50%;font-size:.625rem;display:flex;align-items:center;justify-content:center}.remove-extra-btn{width:100%;padding:.5rem;background:transparent;border:1px dashed var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:.8125rem;font-weight:500;min-height:auto}.remove-extra-btn:hover{background:var(--color-error-bg)}.error-banner{padding:.75rem 1rem;background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:.875rem;text-align:center;margin-bottom:1rem}@media(min-width:768px){.step-nav{left:50%;transform:translate(-50%);max-width:600px;border-radius:var(--radius-md) var(--radius-md) 0 0}.step-nav .btn-secondary,.step-nav .btn-primary{flex:0 0 auto;min-width:120px}.step-nav .btn-primary{margin-left:auto}}.slot-button{position:relative;display:flex;align-items:center;gap:.75rem;padding:.5rem;background:transparent;border:none;border-radius:var(--radius-sm);min-height:auto;text-align:left;transition:all .2s ease;cursor:pointer}.slot-button:hover:not(:disabled){background:var(--color-bg-hover)}.slot-button.selected{background:var(--color-selection)}.slot-button.claimed{opacity:.5;cursor:not-allowed}.slot-button.claimed:hover{background:transparent}.slot-button:before{content:"";width:18px;height:18px;border:1px solid var(--color-border);border-radius:3px;background:var(--color-bg);flex-shrink:0;transition:all .2s}.slot-button:hover:before{border-color:var(--color-text-muted)}.slot-button.selected:before{background:var(--color-primary);border-color:var(--color-primary);box-shadow:inset 0 0 0 2px #fff}.slot-button.claimed:before{background:var(--color-bg-subtle);border-color:var(--color-border)}.slot-label{font-weight:400;font-size:.9375rem;color:var(--color-text);flex:1}.slot-button.claimed .slot-label{text-decoration:line-through;color:var(--color-text-muted)}.slot-claimed-by{font-size:.75rem;color:var(--color-text-light);font-style:italic}.slot-check{display:none}.slot-button.blank .slot-label{font-style:italic;color:var(--color-text-muted)}.slot-button.blank-input{background:var(--color-selection);cursor:default}.slot-button.blank-input:before{background:var(--color-primary);border-color:var(--color-primary);box-shadow:inset 0 0 0 2px #fff}.slot-button.blank-input .slot-check{display:none}.slot-button.blank-input input{flex:1;border:none;border-bottom:1px solid var(--color-primary);background:transparent;padding:.25rem 0;font-size:.9375rem;border-radius:0;box-shadow:none}.slot-button.blank-input input:focus{outline:none;box-shadow:none}.category-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.category-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--color-selection);border-bottom:1px solid var(--color-border)}.category-title{display:flex;align-items:center;gap:.5rem}.category-emoji{font-size:1.25rem}.category-title h3{font-size:1rem;font-weight:600;color:var(--color-text);font-family:var(--font-serif)}.slots-needed{font-size:.75rem;font-weight:500;color:var(--color-text-muted);background:var(--color-bg-subtle);padding:.125rem .5rem;border-radius:var(--radius-sm)}.slots-full{font-size:.75rem;font-weight:500;color:var(--color-success);background:var(--color-success-bg);padding:.125rem .5rem;border-radius:var(--radius-sm)}.slots-grid{display:flex;flex-direction:column;gap:.25rem;padding:.5rem}.event-page{min-height:100vh;padding-bottom:6rem}.event-header{text-align:center;padding:2.5rem 1.5rem 2rem;background:linear-gradient(135deg,#b8450f,#9a3a0a,#7d2f08);color:#fff;position:relative;overflow:hidden}.event-header:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.06) 0%,transparent 40%);pointer-events:none}.event-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2) 20%,rgba(255,255,255,.4) 50%,rgba(255,255,255,.2) 80%,transparent)}.event-brand{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#ffffffb3;margin-bottom:.75rem;position:relative}.event-header h1{font-size:2.25rem;font-weight:800;margin-bottom:1rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2);position:relative;line-height:1.1}@media(min-width:480px){.event-header h1{font-size:2.75rem}}.event-details{display:flex;flex-direction:column;align-items:center;gap:.375rem;margin-bottom:1rem;position:relative}.event-datetime{display:flex;align-items:center;gap:.5rem}.event-detail{color:#fff;font-size:1rem;font-weight:500}.event-detail-sep{color:#ffffff80;font-weight:300}.event-location{color:#ffffffd9;font-size:.9375rem;font-weight:400}.time-display{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.time-primary{display:flex;align-items:center;gap:.375rem}.time-tz{font-size:.5625rem;color:#fff;font-weight:700;text-transform:uppercase;background:#0003;padding:.125rem .375rem;border-radius:4px;border:none}.time-secondary{font-size:.6875rem;color:#fffc;font-weight:500}.host-note{padding:1rem;background:var(--color-selection);border-left:3px solid var(--color-primary);margin-bottom:1rem}.host-note-label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem}.host-note-text{margin:0;font-size:.9375rem;color:var(--color-text);line-height:1.5}.event-preview{background:#fff;border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1rem;text-align:center;box-shadow:0 1px 3px #0000000d}.event-preview h3{font-size:1rem;margin-bottom:.75rem;color:var(--color-text)}.preview-categories{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.preview-category{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-bg-subtle);border-radius:var(--radius-sm)}.preview-emoji{font-size:1.125rem}.preview-name{flex:1;font-weight:500;font-size:.875rem;color:var(--color-text);text-align:left}.preview-count{font-size:.75rem;font-weight:600;color:var(--color-primary);background:var(--color-selection);padding:.25rem .5rem;border-radius:var(--radius-sm)}.preview-guests{margin-bottom:1.25rem;text-align:left}.preview-guests h4{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:.5rem}.preview-guest-list{display:flex;flex-wrap:wrap;gap:.375rem}.preview-guest-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;background:var(--color-bg-subtle);border-radius:var(--radius-full);font-size:.75rem;font-weight:500;color:var(--color-text-muted)}.preview-guest-more{font-size:.75rem;color:var(--color-text-light);padding:.25rem .5rem}.rsvp-cta-section{background:#fff;border-radius:var(--radius-md);padding:2rem 1.5rem;margin-bottom:1.25rem;margin-top:1.25rem;text-align:center;box-shadow:0 2px 8px #00000014}.rsvp-cta-btn{width:100%;padding:1rem 1.5rem;font-size:1.125rem;font-weight:600}.rsvp-cta-subtext{font-size:.8125rem;color:var(--color-text-muted);margin-top:.75rem}.stats-bar{display:flex;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:.5rem 0}.stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:.5rem;border-right:1px solid var(--color-border-light)}.stat:last-child{border-right:none}.stat-value{font-size:1.25rem;font-weight:600;line-height:1;color:var(--color-text);font-family:var(--font-serif)}.stat-label{font-size:.6875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-top:.25rem}.stat.highlight .stat-value{color:var(--color-success)}.poll-section{margin:1.5rem auto;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);max-width:500px}.poll-section h3{text-align:center;margin-bottom:1rem;font-size:1rem;font-weight:600;color:var(--color-text)}.poll-options{display:flex;flex-direction:column;gap:.5rem}.poll-option{position:relative;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;text-align:left;min-height:auto;z-index:1;transition:all .2s}.poll-option:hover{border-color:var(--color-text-muted)}.poll-option.selected{border-color:var(--color-accent-blue);background:var(--color-selection)}.poll-option-label{font-weight:500;font-size:.9375rem;color:var(--color-text);z-index:2}.poll-option-votes{font-size:.75rem;font-weight:500;color:var(--color-text-muted);z-index:2}.poll-option-bar{position:absolute;left:0;top:0;bottom:0;background:var(--color-bg-subtle);z-index:0;transition:width .3s ease}.poll-option.selected .poll-option-bar{background:#2563eb1a}.rsvp-section{margin:1.5rem auto;padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);max-width:500px;box-shadow:0 1px 3px #0000000a}.rsvp-section h2{text-align:center;margin-bottom:1.25rem;font-size:1.125rem;font-family:var(--font-serif)}.name-input-wrapper{margin-bottom:1.25rem}.name-input{text-align:center;font-weight:500;font-size:1.125rem;border:none;border-bottom:1px solid var(--color-border);border-radius:0;padding:.5rem;background:transparent}.name-input:focus{border-color:var(--color-text);box-shadow:none}.attendance-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.attendance-btn{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.375rem;padding:.625rem .5rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:auto;transition:all .2s ease}.attendance-btn:hover{background:var(--color-bg-hover);border-color:var(--color-text-muted)}.attendance-btn.selected.yes{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success)}.attendance-btn.selected.maybe{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning)}.attendance-btn.selected.no{background:var(--color-error-bg);color:var(--color-error);border-color:var(--color-error)}.attendance-emoji{font-size:1rem}.attendance-btn span:last-child{font-size:.8125rem;font-weight:600}.allergies-input-wrapper{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-light)}.allergies-input{font-size:.875rem;padding:.5rem .75rem;border:1px dashed var(--color-border);background:transparent}.allergies-input:focus{border-style:solid}.additional-guests{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-light)}.additional-guests-label{display:block;font-size:.75rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.5rem}.additional-guest-row{display:flex;gap:.5rem;margin-bottom:.5rem}.additional-guest-input{flex:1;font-size:.875rem;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.remove-guest-btn{width:36px;min-height:36px;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:1.25rem;line-height:1}.remove-guest-btn:hover{background:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.add-guest-btn{width:100%;padding:.5rem;background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.8125rem;font-weight:500;min-height:auto}.add-guest-btn:hover{border-color:var(--color-text-muted);color:var(--color-text);background:var(--color-bg-subtle)}.dibs-reminder{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:var(--color-selection);border:1px solid var(--color-primary);border-radius:var(--radius-sm);animation:pulse-border 2s ease-in-out infinite}@keyframes pulse-border{0%,to{border-color:var(--color-primary)}50%{border-color:#c4511a66}}.dibs-reminder-icon{font-size:1.125rem;animation:bounce 1s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.dibs-reminder-text{font-size:.8125rem;color:var(--color-text)}.dibs-reminder-text strong{color:var(--color-primary)}.dibs-section{padding:1rem 0;max-width:600px;margin:0 auto}.dibs-section h2{text-align:center;margin-bottom:.25rem;font-size:1.25rem;font-family:var(--font-serif)}.dibs-section>.text-muted{text-align:center;font-size:.875rem;margin-bottom:1.5rem;color:var(--color-text-light);font-style:italic}.categories-list{display:flex;flex-direction:column;gap:1.5rem}.guest-add-item-container{margin-top:1.5rem;padding:0 1rem}.guest-add-btn{width:100%;padding:.75rem;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-light);font-size:.875rem;font-weight:500;background:transparent;transition:all .2s ease}.guest-add-btn:hover{border-color:var(--color-text-muted);color:var(--color-text);background:var(--color-bg-subtle)}.guest-add-item-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.75rem;display:flex;gap:.5rem;animation:fadeIn .2s ease-out;box-shadow:0 2px 8px #0000000d}.guest-add-item-form input{flex:1;border:none;background:transparent;padding:.5rem;font-size:.9375rem;box-shadow:none}.guest-add-item-form input:focus{box-shadow:none}.guest-add-actions{display:flex;gap:.5rem}.btn-sm{padding:.375rem .75rem;font-size:.8125rem;min-height:32px}.submit-section{position:fixed;bottom:0;left:0;right:0;padding:1rem;background:#fffffff2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-top:1px solid var(--color-border);z-index:100}.submit-btn{width:100%;max-width:480px;margin:0 auto;display:block;font-size:1rem;box-shadow:0 2px 4px #0000001a}.allergies-section{padding:0 1rem;margin-top:2rem;max-width:600px;margin-left:auto;margin-right:auto}.allergies-section h3{font-size:.75rem;text-align:center;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;color:var(--color-warning);font-weight:600}.allergies-list{background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-md);padding:.75rem 1rem}.allergy-item{display:flex;gap:.5rem;padding:.25rem 0;font-size:.875rem}.allergy-item:not(:last-child){border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:.5rem;margin-bottom:.25rem}.allergy-name{font-weight:600;color:var(--color-text)}.allergy-text{color:var(--color-text-muted)}.guest-list-section{padding:0 1rem;margin-top:2rem;max-width:600px;margin-left:auto;margin-right:auto}.guest-list-section h3{font-size:.75rem;text-align:center;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;color:var(--color-text-light);font-weight:600}.guest-list{border-top:1px solid var(--color-border)}.guest-item{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.guest-item:last-child{border-bottom:none}.guest-status{width:20px;height:20px;color:var(--color-success);font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center}.guest-name{flex:1;font-weight:500;font-size:.9375rem;color:var(--color-text)}.guest-plus{font-weight:600;color:var(--color-primary)}.guest-bringing{font-size:.8125rem;color:var(--color-text-muted);font-style:italic}.success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(to bottom,var(--color-primary) 0%,var(--color-primary) 120px,transparent 120px)}.success-content{text-align:center;max-width:360px;width:100%;background:#fff;padding:2rem 1.5rem;border-radius:var(--radius-lg);box-shadow:0 4px 20px #2d23191a}.success-brand{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:1rem}.success-icon{position:relative;width:72px;height:72px;margin:0 auto 1rem}.success-emoji{font-size:3.5rem;display:block}.success-checkmark{position:absolute;bottom:-2px;right:-2px;width:24px;height:24px;background:var(--color-success);color:#fff;font-weight:700;font-size:.625rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full)}.success-content h1{font-size:1.5rem;margin-bottom:.375rem}.success-name{color:var(--color-text-muted);font-size:1rem;margin-bottom:1.25rem}.summary-card{margin-bottom:1rem;text-align:left;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.summary-card h2{font-size:.9375rem;margin-bottom:.75rem;text-align:center}.summary-details{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.875rem}.summary-detail{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-muted)}.summary-detail span:first-child{font-size:1rem}.bringing-section{border-top:1px dashed var(--color-border);padding-top:.875rem}.bringing-section h3{font-size:.625rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;color:var(--color-text-muted)}.bringing-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.375rem}.bringing-list li{background:var(--color-selection);color:var(--color-primary);padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.party-status{text-align:left;margin-bottom:1.25rem}.party-status h3{font-size:.875rem;margin-bottom:.75rem;color:var(--color-text)}.status-stats{display:flex;gap:.5rem;margin-bottom:1rem}.status-stat{flex:1;text-align:center;padding:.625rem .5rem;background:var(--color-bg-subtle);border-radius:var(--radius-sm)}.status-value{display:block;font-size:1.25rem;font-weight:700;color:var(--color-text)}.status-label{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.whos-coming h4{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:.5rem}.guest-list-status{display:flex;flex-direction:column;gap:.5rem}.guest-row{padding:.625rem .75rem;background:var(--color-bg-subtle);border-radius:var(--radius-sm)}.guest-row-header{display:flex;align-items:center;gap:.5rem}.guest-row.yes .guest-row-status{color:var(--color-success)}.guest-row.maybe .guest-row-status{color:var(--color-warning)}.guest-row-status{font-weight:700;font-size:.8125rem}.guest-row-name{font-weight:600;font-size:.8125rem;color:var(--color-text)}.guest-row-plus{font-size:.75rem;color:var(--color-text-muted);padding-left:1.25rem;margin-top:.125rem}.guest-row-items{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem;padding-left:1.25rem}.guest-item-tag{font-size:.6875rem;color:var(--color-text-muted);background:var(--color-bg);padding:.125rem .5rem;border-radius:var(--radius-sm)}.success-actions{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}.edit-btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1rem;font-weight:600;font-size:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-text);text-decoration:none}.edit-btn:hover{border-color:var(--color-text-muted);text-decoration:none}.calendar-btn{min-height:40px}.viral-cta{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-selection);padding:1rem;margin-bottom:1rem}.cta-text{font-weight:600;margin-bottom:.875rem;font-size:.9375rem}.cta-btn{width:100%;margin-bottom:.375rem;text-decoration:none}.cta-subtext{font-size:.6875rem;color:var(--color-text-muted)}.privacy-footer{font-size:.6875rem;color:var(--color-text-light);max-width:240px;margin:0 auto;line-height:1.5}.host-success-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(to bottom,var(--color-primary) 0%,var(--color-primary) 140px,transparent 140px)}.host-success-content{text-align:center;max-width:420px;width:100%;background:#fff;padding:2rem 1.5rem;border-radius:var(--radius-lg);box-shadow:0 4px 20px #2d23191a}.host-success-content .success-brand{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:1rem}.host-success-content .success-icon{margin-bottom:1rem}.host-success-content .success-emoji{font-size:3.5rem}.host-success-content h1{font-size:1.5rem;margin-bottom:.25rem;color:var(--color-text)}.event-title-display{font-size:1.125rem;font-weight:600;color:var(--color-primary);margin-bottom:1.5rem}.share-section{background:var(--color-bg-subtle);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem;text-align:left}.share-section h2{font-size:1rem;margin-bottom:.5rem;color:var(--color-text)}.share-instruction{font-size:.8125rem;color:var(--color-text-muted);line-height:1.5;margin-bottom:1rem}.share-url-box{display:flex;gap:.5rem;margin-bottom:1rem}.share-url-input{flex:1;font-size:.8125rem;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-text);min-width:0}.share-url-input:focus{outline:none;border-color:var(--color-primary)}.copy-btn{padding:.625rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:.8125rem;min-height:auto;white-space:nowrap;transition:all .2s}.copy-btn:hover{background:var(--color-primary-hover)}.copy-btn.copied{background:var(--color-success)}.share-tips{display:flex;flex-direction:column;gap:.25rem}.share-tips .tip{font-size:.75rem;color:var(--color-text-muted);margin:0}.rsvp-cta{border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem;background:var(--color-selection)}.rsvp-cta h3{font-size:.9375rem;margin-bottom:.25rem;color:var(--color-text)}.rsvp-subtext{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:.875rem}.rsvp-btn{width:100%;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;font-weight:600}.host-success-content .privacy-footer{font-size:.6875rem;color:var(--color-text-light);max-width:280px;margin:0 auto;line-height:1.5}
