@keyframes fadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}:root{--color-bg:#fbf8f0;--color-surface:#ffffff;--color-text:#4d3016;--color-text-secondary:#7a5839;--color-text-tertiary:#9d7d5f;--color-border:#e8dcc9;--color-border-hover:#d4c4ab;--color-accent:#fd7c21;--color-accent-hover:#e66d15;--color-accent-light:#fff4ed;--color-accent-secondary:#d9d963;--color-accent-tertiary:#c19a6b;--color-on-accent:#ffffff;--color-success:#7c9473;--color-error:#d65745;--spacing-xs:0.5rem;--spacing-sm:0.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:2.5rem;--spacing-3xl:3rem;--spacing-4xl:5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--font-sans:"InterVariable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
    sans-serif;--shadow-sm:0 1px 2px rgba(16, 24, 40, 0.05);--shadow-md:0 4px 6px -1px rgba(16, 24, 40, 0.1), 0 2px 4px -1px rgba(16, 24, 40, 0.06);--shadow-lg:0 10px 15px -3px rgba(16, 24, 40, 0.1), 0 4px 6px -2px rgba(16, 24, 40, 0.05)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--color-bg);background-image:radial-gradient(at 40% 20%,rgba(253,124,33,.03)0,transparent 50%),radial-gradient(at 80% 70%,rgba(217,217,99,.02)0,transparent 50%);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}.container{max-width:1150px;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-xl);padding-bottom:120px}header{margin-bottom:var(--spacing-3xl);text-align:center;max-width:760px;margin-left:auto;margin-right:auto}body,h1,h2,label{color:var(--color-text)}h1{font-size:2.25rem;font-weight:700;margin-bottom:var(--spacing-md);letter-spacing:-.03em;line-height:1.15}.subtitle{color:var(--color-text-secondary);font-size:1.125rem;line-height:1.6;letter-spacing:.01em;font-weight:500}h2,label{font-weight:600}.step-number,h2{align-items:center}h2{font-size:1.125rem;letter-spacing:-.01em;display:flex;gap:var(--spacing-sm)}.step-number{display:inline-flex;justify-content:center;width:2rem;height:2rem;background-color:var(--color-accent);color:var(--color-surface);border-radius:50%;font-size:.9375rem;font-weight:700;flex-shrink:0}input[type=text],section{border:2px solid var(--color-border);background-color:var(--color-surface)}section{margin-bottom:var(--spacing-3xl);padding:var(--spacing-2xl);border-radius:var(--radius-lg);box-shadow:0 2px 8px rgba(77,48,22,.08)}label{display:block;margin-bottom:var(--spacing-sm);font-size:.875rem;letter-spacing:.01em}input[type=text]{width:100%;padding:1rem 1.25rem;font-size:1rem;font-family:var(--font-sans);border-radius:var(--radius-md);color:var(--color-text);font-weight:500}input[type=text]:hover{border-color:var(--color-border-hover)}input[type=text]:focus{outline:0;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}input[type=text]::placeholder{color:var(--color-text-tertiary)}input[type=text]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}iframe{position:absolute;top:0;right:0;bottom:0;left:0;border:0}.selected-amenities{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.selected-item{padding:.5rem .875rem;font-size:.875rem;font-weight:600;background-color:var(--color-accent);color:var(--color-on-accent);border:2px solid var(--color-accent);border-radius:20px;cursor:pointer;user-select:none;display:flex;align-items:center;gap:var(--spacing-xs)}.selected-item:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.selected-item-remove{font-size:1.125rem;line-height:1;opacity:.9;font-weight:400}.selected-item:hover .selected-item-remove{opacity:1}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.clear-btn{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:.625rem 1.25rem;letter-spacing:.01em}.clear-btn:hover:not(:disabled){color:var(--color-text);border-color:var(--color-accent);background-color:var(--color-accent-light)}.clear-btn:disabled{opacity:.4;cursor:not-allowed}.search-wrapper{margin-bottom:var(--spacing-lg);position:relative}.search-wrapper::before{content:"";position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:18px;height:18px;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%23667085" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg>');background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:1}#amenitySearch{padding-left:2.75rem}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-sm)}#amenitySearch,.amenity-item{background-color:var(--color-surface)}.amenity-item{padding:1rem 1.25rem;font-size:.9375rem;font-weight:500;text-align:left;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;user-select:none;min-height:3.5rem;color:var(--color-text);position:relative;letter-spacing:.01em}.amenity-item.selected,.amenity-item:hover{border-color:var(--color-accent);background-color:var(--color-accent-light)}.amenity-item.selected{background-color:var(--color-accent);color:var(--color-on-accent);font-weight:600}.amenity-item.selected:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.amenity-item.hidden{display:none}.amenity-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.amenity-icon{display:inline-block;width:1em;height:1em;margin-right:.5rem;vertical-align:middle;flex-shrink:0}.amenity-item{display:flex;align-items:center;gap:.5rem}.selected-item .amenity-icon{width:.875em;height:.875em;margin-right:.375rem}.no-results{text-align:center;color:var(--color-text-tertiary);font-size:.9375rem;padding:var(--spacing-2xl)}.hidden{display:none!important}.output-section,.step-section{background-color:var(--color-surface)}.step-section{border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 2px 8px rgba(77,48,22,.08)}.step-section.disabled button{opacity:.6;cursor:not-allowed;pointer-events:none}.output-section{position:fixed;bottom:0;left:0;right:0;z-index:1000;border-top:2px solid var(--color-border);box-shadow:0-6px 20px rgba(77,48,22,.12);padding:0;margin:0;transform:translateY(0)}.output-section.hidden{transform:translateY(100%);opacity:0;pointer-events:none}.output-section-inner{max-width:1150px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-xl)}.copy-btn,.output-wrapper{display:flex;gap:var(--spacing-sm)}.output-wrapper input{flex:1}.copy-btn{align-items:center;gap:var(--spacing-xs);padding:1rem 2rem;font-size:1rem;font-weight:700;color:var(--color-surface);background-color:var(--color-accent);border:0;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;letter-spacing:.02em}.copy-btn:hover:not(:disabled),.open-btn:hover:not(:disabled){background-color:var(--color-accent-hover)}.copy-btn:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-accent)}.copy-btn:focus-visible{outline:2px solid var(--color-surface);outline-offset:2px}.copy-icon{width:16px;height:16px;flex-shrink:0}.open-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:1rem 2rem;font-size:1rem;font-weight:700;color:var(--color-surface);background-color:var(--color-accent);border:0;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;letter-spacing:.02em}.open-btn:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-accent)}.open-btn:focus-visible{outline:2px solid var(--color-surface);outline-offset:2px}.open-icon{width:16px;height:16px;flex-shrink:0}.copy-feedback{margin-top:var(--spacing-sm);font-size:.875rem;color:var(--color-success);font-weight:500;text-align:right;display:none}.copy-feedback.show{display:block;animation:fadeIn .3s ease}@media (max-width:1024px){.container{max-width:810px;padding:var(--spacing-xl) var(--spacing-lg);padding-bottom:200px}.output-section-inner{padding:var(--spacing-lg) var(--spacing-lg)}h1{font-size:1.875rem}}@media (max-width:768px){.container{padding:var(--spacing-xl) var(--spacing-md);padding-bottom:200px}h1{font-size:1.75rem}.subtitle{font-size:.9375rem}section{padding:var(--spacing-xl)}.amenities-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.output-section-inner{padding:var(--spacing-md) var(--spacing-md)}}@media (max-width:640px){.container{padding:var(--spacing-lg) var(--spacing-md);padding-bottom:220px}h1{font-size:1.5rem}.subtitle{font-size:.875rem}section{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.amenities-grid{grid-template-columns:1fr}.output-section-inner{padding:var(--spacing-md) var(--spacing-md)}.output-wrapper{flex-direction:column;gap:var(--spacing-xs)}.copy-btn,.open-btn{width:100%;justify-content:center}.copy-feedback{text-align:center}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.clear-btn{align-self:stretch}}.popular-amenities-inline{margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--color-surface);border-radius:var(--radius-md);border:2px solid var(--color-border)}.popular-label{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin:0 0 var(--spacing-sm)0;text-transform:uppercase;letter-spacing:.05em}.popular-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.popular-btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem var(--spacing-md);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:20px;color:var(--color-text);font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;letter-spacing:.01em}.popular-btn.selected,.popular-btn:hover{border-color:var(--color-accent);background-color:var(--color-accent-light)}.popular-btn.selected{background-color:var(--color-accent);color:#fff}@media (max-width:768px){.popular-btn{font-size:.8rem;padding:calc(var(--spacing-xs)*.75) var(--spacing-xs)}}.footer{text-align:center}.footer-content{max-width:1150px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-xl)}.feedback-link{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1rem;font-weight:700;color:var(--color-text);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;letter-spacing:.02em}.feedback-link:hover{background-color:var(--color-accent-light);border-color:var(--color-accent)}.feedback-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tally-modal,.tally-modal iframe{top:0;left:0;width:100%;height:100%}.tally-modal{position:fixed;right:0;bottom:0;background:#f5f5f5;z-index:9999;overflow:hidden}.tally-modal iframe{position:absolute;border:0}.tally-close-btn{position:absolute;top:20px;right:20px;width:40px;height:40px;background:rgba(0,0,0,.1);border:0;border-radius:50%;font-size:28px;line-height:1;color:#666;cursor:pointer;z-index:10000;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.tally-close-btn:hover{background:rgba(0,0,0,.2);color:#000;transform:scale(1.1)}.tally-close-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:768px){.footer{margin-top:var(--spacing-3xl)}.footer-content{padding:var(--spacing-md) var(--spacing-md)}}@media (max-width:640px){.footer{margin-top:var(--spacing-2xl)}}.amenity-page-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding:var(--spacing-lg)0}.back-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:.875rem 2rem;margin:0;font-size:1rem;font-weight:700;color:var(--color-text);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;letter-spacing:.02em}.back-icon{width:20px;height:20px;flex-shrink:0}.back-btn:hover{background-color:var(--color-accent-light);border-color:var(--color-accent)}.back-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:640px){.amenity-page-footer{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.amenity-page-footer .back-btn,.amenity-page-footer .feedback-link{width:100%}}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1rem;font-weight:700;color:var(--color-text);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;letter-spacing:.02em}.btn-secondary:hover{background-color:var(--color-accent-light);border-color:var(--color-accent)}.btn-secondary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}