:root{--color-bg:#fff7f8;--color-bg-soft:#fff0f3;--color-primary:#e85d75;--color-primary-hover:#d94d66;--color-primary-dark:#c9184a;--color-secondary:#ffb3c1;--color-secondary-soft:#ffe5ec;--color-accent:#ff8fab;--color-text:#2b2b2b;--color-muted:#777;--color-muted-light:#9a9a9a;--color-white:#fff;--color-black:#111;--card-bg:#ffffffc7;--card-bg-strong:#ffffffeb;--card-border:#e85d752e;--card-shadow:0 24px 80px #c9184a1f;--button-shadow:0 14px 36px #e85d7547;--radius-xl:clamp(22px, 5vw, 34px);--radius-lg:clamp(18px, 4vw, 28px);--radius-md:clamp(14px, 3vw, 18px);--radius-sm:12px;--radius-pill:999px;--font-heading:"Outfit", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--container-width:min(540px, 100%);--container-padding-x:clamp(18px, 5vw, 36px);--container-padding-y:clamp(24px, 6vw, 36px);--container-padding:var(--container-padding-y) var(--container-padding-x);--page-padding-x:clamp(12px, 4vw, 24px);--page-padding-y:clamp(16px, 4vw, 24px);--navbar-offset:52px;--bottom-bar-offset:64px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--touch-min:44px;--transition-fast:.18s ease;--transition-base:.26s ease;--transition-slow:.42s ease}*{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-width:320px;min-height:100dvh;font-family:var(--font-body);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 0 0,#ffe5ec 0,#0000 34%),radial-gradient(circle at 100% 100%,#ffc2d1 0,#0000 30%),linear-gradient(135deg,#fff7f8 0%,#fff0f3 100%);margin:0;overflow-x:hidden}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.app{min-height:100dvh;position:relative;overflow-x:hidden}.page{z-index:2;min-height:100dvh;padding:calc(var(--navbar-offset) + var(--safe-top) + var(--page-padding-y)) calc(var(--page-padding-x) + var(--safe-right)) calc(var(--page-padding-y) + var(--safe-bottom)) calc(var(--page-padding-x) + var(--safe-left));-webkit-overflow-scrolling:touch;flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden auto}.page-with-corner-controls{padding-bottom:calc(var(--bottom-bar-offset) + var(--safe-bottom) + var(--page-padding-y))}.page-transition{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.page-card{width:min(100%, var(--container-width));padding:var(--container-padding);border:1px solid var(--card-border);border-radius:var(--radius-xl);background:var(--card-bg);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center}.eyebrow{color:var(--color-primary-dark);letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;font-size:.82rem;font-weight:800}h1,h2,h3{font-family:var(--font-heading);color:var(--color-text)}h1{letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.85rem,8vw,4.3rem);line-height:1}h2{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.45rem,6vw,2.7rem);line-height:1.08}p{color:var(--color-muted);line-height:1.7}.page-description{max-width:440px;margin:clamp(12px,3vw,18px) auto 0;font-size:clamp(.92rem,3.5vw,1rem)}.actions{flex-flow:wrap;justify-content:center;align-items:center;gap:clamp(10px,2.5vw,14px);width:100%;margin-top:clamp(20px,5vw,28px);display:flex}.fixed-top-left{top:calc(12px + var(--safe-top));left:calc(12px + var(--safe-left));z-index:30;max-width:calc(50vw - 24px);position:fixed;right:auto}.fixed-top-right{top:calc(12px + var(--safe-top));right:calc(12px + var(--safe-right));z-index:30;max-width:calc(50vw - 24px);position:fixed;left:auto}.page-top-bar{top:calc(12px + var(--safe-top));left:calc(12px + var(--safe-left));right:calc(12px + var(--safe-right));z-index:30;justify-content:space-between;align-items:flex-start;gap:clamp(8px,2.5vw,12px);display:flex;position:fixed}.page-top-bar-start,.page-top-bar-end{align-items:flex-start;min-width:0;display:flex}.page-top-bar-start{flex:0 44%;max-width:44%}.page-top-bar-end{flex:0 56%;justify-content:flex-end;max-width:56%}.start-over-button{width:100%;max-width:100%;min-height:var(--touch-min);white-space:nowrap;padding-inline:clamp(10px,3vw,16px);font-size:clamp(.72rem,2.8vw,.9rem);line-height:1.2}.start-over-label-short{display:none}.page-top-bar-end .language-switcher{max-width:100%}.fixed-bottom-bar{left:calc(12px + var(--safe-left));right:calc(12px + var(--safe-right));bottom:calc(12px + var(--safe-bottom));z-index:30;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed}.sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{border-radius:var(--radius-pill);text-align:center;white-space:normal;word-break:break-word;transition:transform var(--transition-base), background var(--transition-base), box-shadow var(--transition-base), opacity var(--transition-base);border:0;justify-content:center;align-items:center;gap:8px;font-weight:800;line-height:1.15;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-primary{color:var(--color-white);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));box-shadow:var(--button-shadow)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--color-primary-hover), var(--color-primary-dark))}.btn-secondary{color:var(--color-primary-dark);border:1px solid var(--card-border);background:#ffffffb8}.btn-ghost{color:var(--color-text);background:#ffffff85;border:1px solid #e85d7524}.btn-locked{color:var(--color-muted);box-shadow:none;background:#ffffff75;border:1px dashed #e85d7538}.btn-sm{min-height:var(--touch-min);padding:0 clamp(14px,4vw,16px);font-size:clamp(.84rem,3.2vw,.9rem)}.btn-md{min-height:var(--touch-min);padding:0 clamp(18px,5vw,24px);font-size:clamp(.92rem,3.5vw,1rem)}.btn-lg{min-height:clamp(48px,12vw,56px);padding:0 clamp(20px,6vw,32px);font-size:clamp(.95rem,3.8vw,1.05rem)}.btn:disabled{opacity:.56}.btn:focus-visible{box-shadow:var(--button-shadow), 0 0 0 4px #e85d7547;outline:none}.btn-secondary:focus-visible,.btn-ghost:focus-visible,.btn-locked:focus-visible{box-shadow:0 0 0 4px #e85d7547}.language-switcher{border:1px solid var(--card-border);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);max-width:calc(100vw - 32px - var(--safe-left) - var(--safe-right));overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#ffffffad;flex-wrap:nowrap;align-items:center;gap:4px;padding:5px;display:inline-flex;overflow-x:auto;box-shadow:0 10px 34px #c9184a14}.language-switcher::-webkit-scrollbar{display:none}.language-option{border-radius:var(--radius-pill);min-width:36px;height:32px;min-height:32px;color:var(--color-muted);transition:background var(--transition-base), color var(--transition-base), transform var(--transition-base);background:0 0;border:0;flex:none;padding:0 8px;font-size:.78rem;font-weight:800}.language-option:hover{color:var(--color-primary-dark);transform:translateY(-1px)}.language-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.language-option.active{color:var(--color-white);background:var(--color-primary)}@media (width<=520px){.form-stack{gap:16px}}.modal-backdrop{z-index:50;padding:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) calc(12px + var(--safe-bottom)) calc(12px + var(--safe-left));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#2b2b2b38;place-items:center;display:grid;position:fixed;inset:0}.gallery-modal{width:min(100%,720px);max-height:min(720px, calc(100dvh - 24px - var(--safe-top) - var(--safe-bottom)));border:1px solid var(--card-border);border-radius:var(--radius-xl);background:var(--card-bg-strong);box-shadow:var(--card-shadow);-webkit-overflow-scrolling:touch;padding:clamp(18px,5vw,28px);overflow-y:auto}.gallery-modal-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.gallery-modal-header h2{margin:0}.gallery-modal-description{color:var(--color-muted);margin:6px 0 0;font-size:.92rem}.gallery-empty{border-radius:var(--radius-md);text-align:center;background:linear-gradient(135deg,#ffb3c12e,#ffffffb3);border:1px dashed #e85d7547;place-items:center;gap:10px;min-height:220px;padding:26px;display:grid}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:clamp(8px,2.5vw,12px);margin:0;padding:0;list-style:none;display:grid}.gallery-grid-item{border-radius:var(--radius-md);border:1px solid var(--card-border);aspect-ratio:4/5;background:#fff9;position:relative;overflow:hidden;box-shadow:0 10px 28px #c9184a14}.gallery-grid-image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-base);display:block}.gallery-grid-item:hover .gallery-grid-image{transform:scale(1.03)}.gallery-empty-emoji{font-size:2.2rem;line-height:1}.gallery-empty-text{color:var(--color-muted);margin:0;font-weight:700}@media (width<=620px){.gallery-modal-header{flex-direction:column;gap:14px}.gallery-modal-header .btn{align-self:flex-start}.gallery-empty{min-height:160px;padding:clamp(16px,4vw,22px)}}.custom-place-modal{width:min(100%,560px);max-height:calc(100dvh - 24px - var(--safe-top) - var(--safe-bottom));border:1px solid var(--card-border);border-radius:var(--radius-xl);background:var(--card-bg-strong);box-shadow:var(--card-shadow);-webkit-overflow-scrolling:touch;padding:clamp(18px,5vw,28px);overflow-y:auto}.custom-place-form{margin-top:0}.custom-place-actions{margin-top:8px}.icon-picker-field{gap:10px;display:grid}.icon-picker-trigger{min-height:var(--touch-min);border-radius:var(--radius-md);width:100%;color:var(--color-text);transition:border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);background:#ffffffb8;border:1px solid #e85d7538;align-items:center;gap:12px;padding:10px 14px;font-weight:700;display:inline-flex}.icon-picker-trigger:hover{background:#fffffff0;border-color:#e85d755c}.icon-picker-trigger:focus-visible{outline:none;box-shadow:0 0 0 4px #e85d751f}.icon-picker-preview{border-radius:var(--radius-sm);background:#e85d751a;place-items:center;width:42px;height:42px;font-size:1.5rem;line-height:1;display:grid}.icon-picker-trigger-text{font-size:.92rem}.emoji-picker-wrap{border:1px solid var(--card-border);border-radius:var(--radius-md);background:#ffffffeb;overflow:hidden}.emoji-picker-wrap .EmojiPickerReact{--epr-bg-color:#fffffffa;--epr-category-label-bg-color:#fff7f8f5;--epr-highlight-color:var(--color-primary);--epr-search-border-color:#e85d7538;border:0!important}.emoji-picker-loading{min-height:120px;color:var(--color-muted);place-items:center;padding:20px;font-size:.9rem;font-weight:700;display:grid}@media (width<=400px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.form-stack{text-align:left;gap:18px;margin-top:28px;display:grid}.form-group{text-align:left;gap:8px;display:grid}.form-label{color:var(--color-text);font-family:var(--font-body);text-align:left;margin:0;padding-left:4px;font-size:.92rem;font-weight:800;line-height:1.3;display:block}.form-input{width:100%;min-height:var(--touch-min);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);text-align:left;transition:border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);background:#ffffffb8;border:1px solid #e85d7538;outline:none;padding:0 clamp(14px,4vw,18px);font-size:16px}.form-input[type=date],.form-input[type=time],.form-input-date,.form-input-time{width:100%;min-height:var(--touch-min);color:var(--color-text);font-family:var(--font-body);letter-spacing:.01em;text-align:left;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;appearance:none;padding:12px clamp(14px,4vw,18px);font-size:16px;font-weight:600;line-height:1.25;display:block}.form-input-date:not(:focus):invalid,.form-input-time:not(:focus):invalid{color:var(--color-muted-light)}.form-input-date:not(:focus):invalid::-webkit-datetime-edit{color:var(--color-muted-light)}.form-input-time:not(:focus):invalid::-webkit-datetime-edit{color:var(--color-muted-light)}.form-input-date:not(:focus):invalid::-webkit-date-and-time-value{color:var(--color-muted-light)}.form-input-time:not(:focus):invalid::-webkit-date-and-time-value{color:var(--color-muted-light)}.form-input-date:valid,.form-input-time:valid,.form-input-date:focus,.form-input-time:focus{color:var(--color-text)}.form-input-date::-webkit-datetime-edit{font-family:var(--font-body);color:inherit;align-items:center;padding:0;font-size:16px;font-weight:600;line-height:1.25;display:inline-flex}.form-input-time::-webkit-datetime-edit{font-family:var(--font-body);color:inherit;align-items:center;padding:0;font-size:16px;font-weight:600;line-height:1.25;display:inline-flex}.form-input[type=date]::-webkit-datetime-edit{font-family:var(--font-body);color:inherit;align-items:center;padding:0;font-size:16px;font-weight:600;line-height:1.25;display:inline-flex}.form-input[type=time]::-webkit-datetime-edit{font-family:var(--font-body);color:inherit;align-items:center;padding:0;font-size:16px;font-weight:600;line-height:1.25;display:inline-flex}.form-input-date::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input-time::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.form-input-date::-webkit-datetime-edit-text{color:var(--color-muted-light);padding:0 1px}.form-input-time::-webkit-datetime-edit-text{color:var(--color-muted-light);padding:0 1px}.form-input[type=date]::-webkit-datetime-edit-text{color:var(--color-muted-light);padding:0 1px}.form-input[type=time]::-webkit-datetime-edit-text{color:var(--color-muted-light);padding:0 1px}.form-input-date::-webkit-datetime-edit-year-field{color:inherit;padding:0 2px;font-weight:600}.form-input-date::-webkit-datetime-edit-month-field{color:inherit;padding:0 2px;font-weight:600}.form-input-date::-webkit-datetime-edit-day-field{color:inherit;padding:0 2px;font-weight:600}.form-input-time::-webkit-datetime-edit-hour-field{color:inherit;padding:0 2px;font-weight:600}.form-input-time::-webkit-datetime-edit-minute-field{color:inherit;padding:0 2px;font-weight:600}.form-input-time::-webkit-datetime-edit-ampm-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=date]::-webkit-datetime-edit-year-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=date]::-webkit-datetime-edit-month-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=date]::-webkit-datetime-edit-day-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=time]::-webkit-datetime-edit-hour-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=time]::-webkit-datetime-edit-minute-field{color:inherit;padding:0 2px;font-weight:600}.form-input[type=time]::-webkit-datetime-edit-ampm-field{color:inherit;padding:0 2px;font-weight:600}.form-input-date::-webkit-date-and-time-value{text-align:left;min-height:1.25em;font-family:var(--font-body);color:inherit;font-size:16px;font-weight:600;line-height:1.25}.form-input-time::-webkit-date-and-time-value{text-align:left;min-height:1.25em;font-family:var(--font-body);color:inherit;font-size:16px;font-weight:600;line-height:1.25}.form-input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.25em;font-family:var(--font-body);color:inherit;font-size:16px;font-weight:600;line-height:1.25}.form-input[type=time]::-webkit-date-and-time-value{text-align:left;min-height:1.25em;font-family:var(--font-body);color:inherit;font-size:16px;font-weight:600;line-height:1.25}.form-input-date::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72;filter:invert(36%)sepia(56%)saturate(1200%)hue-rotate(310deg)brightness(92%)contrast(92%);width:20px;height:20px;margin:0 0 0 8px;padding:0}.form-input-time::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72;filter:invert(36%)sepia(56%)saturate(1200%)hue-rotate(310deg)brightness(92%)contrast(92%);width:20px;height:20px;margin:0 0 0 8px;padding:0}.form-input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72;filter:invert(36%)sepia(56%)saturate(1200%)hue-rotate(310deg)brightness(92%)contrast(92%);width:20px;height:20px;margin:0 0 0 8px;padding:0}.form-input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72;filter:invert(36%)sepia(56%)saturate(1200%)hue-rotate(310deg)brightness(92%)contrast(92%);width:20px;height:20px;margin:0 0 0 8px;padding:0}.form-input-date:focus::-webkit-calendar-picker-indicator{opacity:1}.form-input-time:focus::-webkit-calendar-picker-indicator{opacity:1}.form-input[type=date]:focus::-webkit-calendar-picker-indicator{opacity:1}.form-input[type=time]:focus::-webkit-calendar-picker-indicator{opacity:1}.form-input::placeholder{color:var(--color-muted-light)}.form-input:focus{border-color:var(--color-primary);background:#fffffff0;box-shadow:0 0 0 4px #e85d751f}.form-input:focus-visible{outline:none}.input-error{border-color:var(--color-primary-dark)}.form-error{color:var(--color-primary-dark);text-align:left;margin:0;padding-left:4px;font-size:.82rem;font-weight:700}.form-error-spaced{margin-top:12px}.form-hint{color:var(--color-muted-light);text-align:left;margin:0;padding-left:4px;font-size:.8rem;font-weight:600;line-height:1.45}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.country-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.country-option{min-height:var(--touch-min);border-radius:var(--radius-md);color:var(--color-text);transition:transform var(--transition-base), background var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);background:#ffffffa3;border:1px solid #e85d752e;justify-content:center;align-items:center;gap:clamp(6px,2vw,10px);padding:10px 12px;font-size:clamp(.88rem,3.5vw,1rem);font-weight:800;display:flex}.country-option:hover:not(.country-option-selected){background:#ffffffe6;border-color:#e85d755c;transform:translateY(-2px)}.country-option:focus-visible{outline:none;box-shadow:0 0 0 4px #e85d7538}.country-option-selected{color:var(--color-white);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));box-shadow:var(--button-shadow);border-color:#0000}.country-option-selected:hover{background:linear-gradient(135deg, var(--color-primary-hover), var(--color-primary-dark));box-shadow:var(--button-shadow), 0 12px 28px #c9184a38;transform:translateY(-2px)}.country-emoji{font-size:1.3rem}.helper-text{color:var(--color-muted-light);text-align:center;margin:14px 0 0;font-size:.9rem}.no-button-wrapper{flex-direction:column;align-items:stretch;display:inline-flex;position:relative}.no-button-message{border-radius:var(--radius-pill);width:max-content;max-width:min(220px,100vw - 48px);color:var(--color-primary-dark);text-align:center;opacity:0;pointer-events:none;transition:opacity var(--transition-base), transform var(--transition-base);background:#ffffffdb;padding:8px 12px;font-size:.78rem;font-weight:800;position:absolute;bottom:-34px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #c9184a1f}.no-button-wrapper.show-message .no-button-message{opacity:1;transform:translate(-50%)translateY(-4px)}.page-card-wide{width:min(100%,720px)}.summary-row{flex-wrap:wrap;justify-content:center;gap:clamp(6px,2vw,8px);margin-top:clamp(16px,4vw,22px);display:flex}.summary-chip{border:1px solid var(--card-border);border-radius:var(--radius-pill);max-width:100%;color:var(--color-text);word-break:break-word;overflow-wrap:anywhere;background:#ffffffb8;align-items:center;gap:6px;padding:6px 12px;font-size:clamp(.76rem,3vw,.82rem);font-weight:700;display:inline-flex}.summary-chip-icon{font-size:1rem}.place-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(min(100%,168px),1fr));gap:clamp(10px,2.5vw,12px);margin-top:clamp(18px,4vw,24px);display:grid}.place-card{min-height:var(--touch-min);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;transition:transform var(--transition-base), border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);background:#ffffffa3;border:1px solid #e85d752e;flex-direction:column;align-items:flex-start;gap:clamp(6px,2vw,8px);padding:clamp(14px,4vw,18px);display:flex;position:relative}.place-card:hover:not(.place-card-selected){background:#ffffffe6;border-color:#e85d755c;transform:translateY(-2px)}.place-card:focus-visible{outline:none;box-shadow:0 0 0 4px #e85d752e}.place-card-selected{color:var(--color-white);box-shadow:var(--button-shadow);background:linear-gradient(135deg,#e85d75f0,#c9184af0);border-color:#0000}.place-card-icon{font-size:1.75rem;line-height:1}.place-card-title{font-family:var(--font-heading);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(.95rem,3.8vw,1.05rem);font-weight:800}.place-card-description{color:var(--color-muted);overflow-wrap:anywhere;font-size:clamp(.8rem,3.2vw,.85rem);line-height:1.45}.place-card-selected .place-card-description{color:#ffffffe0}.place-card-name{color:var(--color-muted-light);font-size:.78rem}.place-card-selected .place-card-name{color:#ffffffc7}.place-card-badge{border-radius:var(--radius-pill);color:var(--color-primary-dark);letter-spacing:.04em;text-transform:uppercase;background:#e85d751a;align-self:flex-start;margin-top:auto;padding:4px 10px;font-size:.72rem;font-weight:800}.place-card-selected .place-card-badge{color:var(--color-white);background:#fff3}.place-card-check{background:var(--color-white);width:26px;height:26px;color:var(--color-primary);border-radius:50%;place-items:center;font-size:.9rem;font-weight:800;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 6px 16px #c9184a2e}@media (width<=520px){.place-grid{grid-template-columns:1fr}}.you-pick-section{text-align:left;margin-top:clamp(14px,3.5vw,18px)}.you-pick-button{width:100%;min-height:var(--touch-min);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;transition:transform var(--transition-base), border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);background:linear-gradient(135deg,#ffe5ec8c,#ffffffc7);border:1px dashed #e85d756b;align-items:center;gap:clamp(12px,3vw,16px);padding:clamp(14px,4vw,18px);display:flex;position:relative}.you-pick-button:hover{background:linear-gradient(135deg,#ffe5ecb8,#ffffffeb);border-color:#e85d759e;transform:translateY(-2px);box-shadow:0 12px 32px #c9184a1a}.you-pick-button:focus-visible{outline:none;box-shadow:0 0 0 4px #e85d752e}.you-pick-button-selected{color:var(--color-white);box-shadow:var(--button-shadow);background:linear-gradient(135deg,#e85d75f0,#c9184af0);border-style:solid;border-color:#0000}.you-pick-button-selected:hover{box-shadow:var(--button-shadow), 0 12px 28px #c9184a38;background:linear-gradient(135deg,#e85d75fa,#c9184afa);transform:translateY(-2px)}.you-pick-button-icon{border-radius:var(--radius-sm);background:#ffffffb8;flex:none;place-items:center;width:46px;height:46px;font-size:1.5rem;line-height:1;display:grid}.you-pick-button-selected .you-pick-button-icon{background:#ffffff38}.you-pick-button-content{flex:1;gap:4px;min-width:0;display:grid}.you-pick-button-title{font-family:var(--font-heading);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(.95rem,3.8vw,1.05rem);font-weight:800}.you-pick-button-description{color:var(--color-muted);overflow-wrap:anywhere;font-size:clamp(.8rem,3.2vw,.85rem);line-height:1.45}.you-pick-button-selected .you-pick-button-description{color:#ffffffe0}.you-pick-button-check{background:var(--color-white);width:28px;height:28px;color:var(--color-primary);border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:800;display:grid;box-shadow:0 6px 16px #c9184a2e}.summary-card{border:1px solid var(--card-border);border-radius:var(--radius-lg);background:var(--card-bg-strong);margin:clamp(16px,4vw,22px) 0 0;padding:8px 4px;list-style:none;box-shadow:0 14px 36px #c9184a14}.summary-card-row{border-bottom:1px solid #e85d751a;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(8px,2.5vw,14px);padding:clamp(10px,3vw,12px) clamp(14px,4vw,18px);display:grid}.summary-card-row:last-child{border-bottom:0}.summary-card-label{color:var(--color-muted);align-items:center;gap:8px;margin:0;font-size:.85rem;font-weight:700;display:inline-flex}.summary-card-icon{font-size:1rem;line-height:1}.summary-card-value{color:var(--color-text);text-align:right;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:clamp(.88rem,3.5vw,.95rem);font-weight:800}.form-textarea{resize:vertical;min-height:clamp(88px,24vw,96px);padding:clamp(12px,3.5vw,14px) clamp(14px,4vw,18px);line-height:1.5}.privacy-note{color:var(--color-muted-light);text-align:center;margin:clamp(12px,3vw,16px) 0 0;font-size:clamp(.72rem,3vw,.78rem);line-height:1.55}.status-message{border-radius:var(--radius-md);text-align:center;margin:16px 0 0;padding:12px 16px;font-size:.9rem;font-weight:700}.status-message-error{color:var(--color-primary-dark);background:#e85d751f;border:1px solid #e85d7547}.success-section{border-radius:var(--radius-lg);text-align:center;background:linear-gradient(135deg,#ffb3c13d,#ffffffd9);margin-top:clamp(18px,4vw,24px);padding:clamp(16px,4vw,22px)}.success-section-emoji{margin:0 0 8px;font-size:clamp(1.6rem,6vw,2rem);line-height:1}.success-section-line{color:var(--color-text);margin:0;font-size:clamp(.92rem,3.5vw,1rem);font-weight:700}@media (width<=640px){:root{--navbar-offset:64px}.page-top-bar{align-items:center;gap:8px}.page-top-bar-start{flex:none;max-width:none}.page-top-bar-end{flex:1 1 0;min-width:0;max-width:none}.page-top-bar-end .language-switcher{gap:2px;width:100%;padding:5px;overflow:hidden}.page-top-bar-end .language-option{white-space:nowrap;flex:1 1 0;justify-content:center;align-items:center;min-width:0;height:32px;min-height:32px;padding:0 2px;font-size:clamp(.64rem,2.6vw,.76rem);display:inline-flex}.start-over-button{width:auto;min-height:34px;padding-inline:10px;font-size:.78rem}.form-row{grid-template-columns:1fr}.summary-card-row{grid-template-columns:1fr;gap:4px}.summary-card-value{text-align:left}}@media (width<=430px){.start-over-label-full{display:none}.start-over-label-short{display:inline}}@media (width<=400px){:root{--navbar-offset:64px}.start-over-button{padding-inline:10px;font-size:.76rem}.no-button-message{max-width:min(220px,100vw - 48px);bottom:calc(100% + 8px)}}@media (width<=360px){.eyebrow{letter-spacing:.08em;font-size:.72rem}.place-card-check{width:24px;height:24px;font-size:.82rem;top:10px;right:10px}}@media (hover:none) and (pointer:coarse){.btn:hover:not(:disabled),.country-option:hover:not(.country-option-selected),.place-card:hover:not(.place-card-selected),.language-option:hover,.start-over-button:hover,.you-pick-button:hover,.you-pick-button-selected:hover,.gallery-grid-item:hover .gallery-grid-image{transform:none}}@keyframes floatHeart{0%{opacity:0;transform:translateY(0)rotate(0)scale(1)}18%{opacity:var(--heart-opacity,.35)}to{opacity:0;transform:translateY(-120vh)rotate(24deg)scale(1.35)}}@keyframes softPulse{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}.heart-background{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floating-heart{color:#e85d7573;will-change:transform, opacity;animation-name:floatHeart;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;bottom:-44px}.background-glow{filter:blur(42px);opacity:.35;border-radius:50%;width:clamp(180px,42vw,280px);height:clamp(180px,42vw,280px);animation:8s ease-in-out infinite softPulse;position:absolute}.background-glow-one{background:#ffb3c1;top:8%;left:4%}.background-glow-two{background:#ffc2d1;animation-delay:2s;bottom:6%;right:4%}@media (width<=480px){.floating-heart{bottom:-32px}}
