:root{--color-fg:#1d1d1f;--color-fg-secondary:#6e6e73;--color-fg-tertiary:#86868b;--color-bg:#fff;--color-surface:#f5f5f7;--color-border:#d2d2d7;--color-border-faint:#00000014;--color-accent:#06c;--color-accent-hover:#049;--color-focus-ring:#0066cc73;--color-form-error:#bf4800;--color-form-error-ring:#bf480047;--color-control-fill:#1d1d1f;--color-control-fill-hover:#2d2d2f;--color-control-label:#fff;--font-sans:system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-body:17px;--text-body-lg:19px;--text-lead:21px;--text-caption:12px;--leading-tight:1.05;--leading-snug:1.15;--leading-body:1.47059;--tracking-display:-.022em;--tracking-body:-.022em;--guide-prompt-size:55px;--space-gutter:max(1.25rem, env(safe-area-inset-left,0px));--space-gutter-inline:max(1.25rem, env(safe-area-inset-right,0px));--space-safe-top:env(safe-area-inset-top,0px);--space-safe-bottom:env(safe-area-inset-bottom,0px);--layout-max-width:480px;--radius-sm:8px;--radius-md:12px;--shadow-soft:0 2px 8px #0000000a}@media (prefers-color-scheme:dark){:root{--color-fg:#f5f5f7;--color-fg-secondary:#a1a1a6;--color-fg-tertiary:#86868b;--color-bg:#000;--color-surface:#1d1d1f;--color-border:#424245;--color-border-faint:#ffffff1f;--color-accent:#2997ff;--color-accent-hover:#5eb0ff;--color-focus-ring:#2997ff73;--color-form-error:#ff6961;--color-form-error-ring:#ff696152;--color-control-fill:#f5f5f7;--color-control-fill-hover:#e4e4e9;--color-control-label:#000;--shadow-soft:0 2px 12px #00000073}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100dvh;font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);color:var(--color-fg);background-color:var(--color-bg);margin:0;overflow-x:clip}a{color:var(--color-accent);text-underline-offset:.15em;text-decoration:none}a:hover{color:var(--color-accent-hover);text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}button{font:inherit;-webkit-tap-highlight-color:transparent}::selection{background:#0066cc2e}@media (prefers-color-scheme:dark){::selection{background:#2997ff47}}.shell{width:100%;max-width:min(100%, var(--layout-max-width));padding-inline:var(--space-gutter) var(--space-gutter-inline);padding-top:max(1.5rem, var(--space-safe-top));padding-bottom:max(1.5rem, var(--space-safe-bottom));margin-inline:auto}.shell.shell-landing{box-sizing:border-box;flex-direction:column;justify-content:center;min-height:100dvh;display:flex}.stack{flex-direction:column;gap:1rem;display:flex}.stack-lg{flex-direction:column;gap:1.5rem;display:flex}.guide-prompt{font-family:var(--font-sans);font-weight:600;font-size:var(--guide-prompt-size);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0}.subhead{font-size:var(--text-lead);line-height:var(--leading-snug);letter-spacing:var(--tracking-body);color:var(--color-fg-secondary);max-width:100%;margin:0}.text-body{font-size:var(--text-body);line-height:var(--leading-body);color:var(--color-fg-secondary);max-width:100%;margin:0}.caption{font-size:var(--text-caption);letter-spacing:-.01em;color:var(--color-fg-tertiary);margin:0;line-height:1.3}.inline-code{font-family:var(--font-mono);background:var(--color-surface);border:1px solid var(--color-border-faint);color:var(--color-fg);border-radius:4px;padding:.15em .4em;font-size:.9em}.field-label{letter-spacing:-.01em;color:var(--color-fg-secondary);margin-bottom:.35rem;font-size:12px;font-weight:600;display:block}.field-input,.field-textarea{width:100%;max-width:100%;font:inherit;color:var(--color-fg);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:48px;padding:.875rem 1rem;transition:border-color .15s,box-shadow .15s}.field-textarea{resize:vertical;min-height:7rem}.field-input:hover,.field-textarea:hover{border-color:var(--color-fg-tertiary)}.field-input:focus,.field-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.field-input.field-input--error,.field-textarea.field-textarea--error,.field-input.field-input--error:hover,.field-textarea.field-textarea--error:hover{border-color:var(--color-form-error)}.field-input.field-input--error:focus,.field-textarea.field-textarea--error:focus{border-color:var(--color-form-error);box-shadow:0 0 0 3px var(--color-form-error-ring)}.btn{width:100%;max-width:100%;min-height:48px;font-family:var(--font-sans);letter-spacing:-.022em;color:var(--color-control-label);background:var(--color-control-fill);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:1px solid #0000;border-radius:980px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.35rem;font-size:17px;font-weight:500;display:inline-flex}.btn:hover{background:var(--color-control-fill-hover)}a.btn{text-decoration:none}a.btn:hover{color:var(--color-control-label);text-decoration:none}a.btn.btn-secondary:hover{color:var(--color-fg)}.btn.btn-secondary{color:var(--color-fg);border-color:var(--color-border);background:0 0}.btn.btn-secondary:hover{background:var(--color-surface);border-color:var(--color-fg-tertiary)}#root{width:100%;min-height:100svh}.flip-title{white-space:normal;display:block}.flip-word{white-space:nowrap;vertical-align:baseline;max-width:100%;display:inline-block}.flip-static-suffix{vertical-align:baseline;display:inline}.flip-space{vertical-align:baseline;display:inline-block}.flip-letter{perspective:420px;margin-inline:.015em;display:inline-block}.flip-letter__inner{transform-style:preserve-3d;animation:flipLetter var(--flip-duration,5.8s) ease-in-out var(--flip-delay,1s) infinite;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.flip-letter__face{backface-visibility:hidden;display:inline-block}.flip-letter__face--upper{box-sizing:border-box;letter-spacing:0;justify-content:center;align-items:center;padding-top:.09em;font-size:.88em;line-height:1;display:flex;position:absolute;inset:0;transform:rotateX(180deg)}@keyframes flipLetter{0%{transform:rotateX(0)}10%,24%{transform:rotateX(180deg)}34%,to{transform:rotateX(0)}}.flipping-text .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.flipping-text{position:relative}.flip-letter--static{vertical-align:baseline;margin-inline:.015em;line-height:1;display:inline-block}.flip-letter__inner--once{animation:.9s ease-in-out forwards flipLetterOnce}@keyframes flipLetterOnce{0%{transform:rotateX(0)}32%{transform:rotateX(180deg)}58%{transform:rotateX(180deg)}to{transform:rotateX(0)}}@media (prefers-reduced-motion:reduce){.flip-letter__inner,.flip-letter__inner--once{animation:none;transform:none}.flip-letter__face--upper{display:none}}.field-error{font-size:var(--text-caption);letter-spacing:-.01em;color:var(--color-form-error);pointer-events:none;margin:0;line-height:1.35;position:absolute;top:calc(100% + .2rem);left:0;right:0}.cycling-placeholder-dial{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;display:block}.cycling-placeholder-dial__viewport{perspective:240px;height:1.35em;transform-style:preserve-3d;flex:100%;width:100%;min-width:0;display:block;position:relative;overflow:hidden}.cycling-placeholder-dial__line{white-space:nowrap;color:var(--color-fg-tertiary);display:block}.cycling-placeholder-dial__line:not(.cycling-placeholder-dial__line--out):not(.cycling-placeholder-dial__line--in){text-overflow:ellipsis;overflow:hidden}.cycling-placeholder-dial__line--out,.cycling-placeholder-dial__line--in{text-overflow:clip;backface-visibility:hidden;overflow:visible}.cycling-placeholder-dial__line--out{transform-origin:bottom;will-change:transform, opacity;width:100%;animation:.45s cubic-bezier(.4,0,.2,1) forwards cycling-placeholder-dial-out;position:absolute;inset:0}.cycling-placeholder-dial__line--in{transform-origin:top;will-change:transform, opacity;animation:.45s cubic-bezier(.4,0,.2,1) forwards cycling-placeholder-dial-in}.cycling-placeholder-dial__line:not(.cycling-placeholder-dial__line--in):not(.cycling-placeholder-dial__line--out){opacity:1;transform:none}@keyframes cycling-placeholder-dial-out{0%{opacity:1;transform:translate(0,0)rotateX(0)}to{opacity:0;transform:translateY(-110%)rotateX(75deg)}}@keyframes cycling-placeholder-dial-in{0%{opacity:0;transform:translateY(110%)rotateX(-75deg)}to{opacity:1;transform:translate(0,0)rotateX(0)}}@media (hover:none) and (pointer:coarse){.cycling-placeholder-dial__viewport{perspective:none;transform-style:flat}@keyframes cycling-placeholder-dial-out{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translateY(-110%)}}@keyframes cycling-placeholder-dial-in{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translate(0,0)}}}@media (prefers-reduced-motion:reduce){.cycling-placeholder-dial__line--out,.cycling-placeholder-dial__line--in{animation:none}}.modal-root--reduced-motion .modal-panel,.modal-root--open.modal-root--reduced-motion .modal-panel{transform:none}.modal-title{font-size:var(--text-lead);letter-spacing:var(--tracking-body);color:var(--color-fg);margin:0 0 1rem;padding-right:2.75rem;font-weight:600}.modal-qr-wrap{border-radius:var(--radius-sm);box-sizing:border-box;background:#fff;width:100%;padding:1rem}.modal-qr-wrap .modal-qr-code{max-width:100%;display:block;width:100%!important;height:auto!important}.modal-action-group{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:row;align-items:stretch;min-width:0;margin-top:1rem;display:flex}.modal-copy-btn{width:auto;min-width:0;max-width:none;min-height:48px;box-shadow:inset -1px 0 0 var(--color-border);background:0 0;flex:1 1 0;align-self:stretch;padding-inline:1rem;font-size:15px;position:relative;border-radius:var(--radius-sm) 0 0 var(--radius-sm)!important;border:none!important}.modal-copy-btn:hover{background:var(--color-bg);border:none!important}.modal-copy-btn:focus-visible{outline-offset:-2px;z-index:1}.modal-go-room-btn{width:auto;min-width:0;max-width:none;min-height:48px;box-shadow:none;background:0 0;flex:1 1 0;justify-content:center;align-self:stretch;align-items:center;padding-inline:1rem;font-size:15px;text-decoration:none;display:inline-flex;position:relative;border-radius:0 var(--radius-sm) var(--radius-sm) 0!important;border:none!important}.modal-go-room-btn:hover{background:var(--color-bg);text-decoration:none;border:none!important}.modal-go-room-btn:focus-visible{outline-offset:-2px;z-index:1}.modal-action-group--single .modal-copy-btn{box-shadow:none;border-radius:var(--radius-sm)!important}.create-room-page__back{align-self:flex-start;width:auto;max-width:none}.create-room-page__form{flex-direction:column;gap:1.25rem;display:flex}.create-room-page__field{flex-direction:column;gap:.5rem;min-width:0;display:flex;position:relative}.create-room-page__topic-input{isolation:isolate;min-width:0;position:relative}.create-room-page__topic-input .field-input{z-index:1;position:relative}.create-room-page__topic-input .field-input--empty{background:0 0}.create-room-page__topic-placeholder{z-index:0;box-sizing:border-box;width:100%;font:inherit;letter-spacing:inherit;align-items:center;padding:.875rem 1rem;display:flex;position:absolute;inset:0}.create-room-page__prompt{font-size:var(--text-lead);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0}.create-room-page__stepper{border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:row;justify-content:center;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.create-room-page__stepper--error{border-color:var(--color-form-error)}.create-room-page__stepper-value{font-variant-numeric:tabular-nums;text-align:center;min-width:2.75rem;font-size:var(--text-body-lg);color:var(--color-fg);font-weight:600}.create-room-page__stepper-btn{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:48px;max-width:none;min-height:48px;padding:0;font-size:1.4rem;font-weight:500;line-height:1;display:inline-flex}.create-room-page__stepper-btn:disabled{opacity:.35;cursor:not-allowed}.create-room-page__submit{margin-top:.25rem}.landing-page__credit-link{color:inherit;text-underline-offset:.22em;text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}.landing-page__credit-link:hover{color:inherit;text-decoration-color:currentColor}.loading-screen{text-align:center;opacity:0;align-items:center;transition:opacity .5s}.loading-screen--visible{opacity:1}.loading-screen--reduced-motion{transition-duration:.01ms}.loading-screen__text{width:100%}.options-form{flex-direction:column;gap:1.25rem;display:flex}.options-form__field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.options-form__prompt{font-size:var(--text-lead);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-display);color:var(--color-fg);max-width:100%;margin:0}.options-form__inputs{--options-field-height:48px;flex-direction:column;gap:1.25rem;display:flex}.options-form__input-row{min-width:0;min-height:var(--options-field-height);flex-direction:row;align-items:stretch;gap:.5rem;display:flex;position:relative}.options-form__input-row .field-input{min-width:0;height:var(--options-field-height);min-height:var(--options-field-height);flex:auto;padding-block:0}.options-form__remove-btn{width:var(--options-field-height);height:var(--options-field-height);min-height:var(--options-field-height);border-radius:var(--radius-sm);flex:none;max-width:none;padding:0;font-size:1.4rem;font-weight:500;line-height:1}.options-form__remove-btn:disabled{opacity:.35;cursor:not-allowed}.options-form__add-btn{width:100%;max-width:100%;height:var(--options-field-height);min-height:var(--options-field-height);border-radius:var(--radius-sm);flex-shrink:0;padding:0;font-size:1.4rem;font-weight:500;line-height:1}.options-form__add-btn:disabled{opacity:.35;cursor:not-allowed}.options-form__submit{margin-top:.25rem}.options-form__submit:disabled{opacity:.35;cursor:not-allowed}.modal-root{z-index:1000;padding:var(--space-gutter);padding-inline:var(--space-gutter) var(--space-gutter-inline);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-root--layer-above{z-index:1010}.modal-backdrop{opacity:0;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#000;border:none;margin:0;padding:0;transition:opacity .45s;position:absolute;inset:0}.modal-root--open .modal-backdrop{opacity:1}.modal-panel{z-index:1;width:min(100%, var(--layout-max-width));border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border-faint);max-height:min(90dvh,90svh);box-shadow:var(--shadow-soft);opacity:0;transform-origin:50%;padding:1.25rem;transition:opacity .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1);position:relative;overflow:auto;transform:translateY(12px)scale(.98)}.modal-root--open .modal-panel{opacity:1;transform:translateY(0)scale(1)}.modal-root--reduced-motion .modal-backdrop,.modal-root--reduced-motion .modal-panel{transition-duration:.01ms}.modal-root--reduced-motion .modal-panel,.modal-root--open.modal-root--reduced-motion .modal-panel{transform:none}.modal-panel:focus{outline:none}.btn.modal-close-btn{z-index:2;box-sizing:border-box;border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:0;width:44px;max-width:none;height:44px;min-height:44px;padding:0;display:flex;position:absolute;top:.85rem;right:20px}.modal-close-btn__icon{flex-shrink:0;display:block}.options-modal__panel{padding-top:1.25rem}.options-modal__panel .options-form__prompt{padding-right:2.75rem}.options-modal__panel .options-form__inputs{margin-top:1.25rem}.selection-experience{grid-template:1fr/1fr;align-items:center;display:grid}.selection-experience__layer{opacity:0;width:100%;min-width:0;transition:opacity var(--selection-fade-ms,.5s) ease;pointer-events:none;grid-area:1/1}.selection-experience__layer--visible{opacity:1}.selection-experience__room{pointer-events:auto}.selection-experience__room:not(.selection-experience__layer--visible){pointer-events:none}.selection-experience--reduced-motion .selection-experience__layer{transition-duration:.01ms}.selection-experience__reveal{text-align:center;opacity:1;flex-direction:column;gap:1.5rem;display:flex}.selection-experience__fade-target{opacity:0;transition:opacity var(--selection-fade-ms,.5s) ease}.selection-experience__fade-target--visible{opacity:1}.selection-experience--reduced-motion .selection-experience__fade-target{transition-duration:.01ms}.selection-experience__option.selection-experience__fade-target.selection-experience__fade-target--visible{transition:opacity var(--selection-option-fade-ms,2s) ease}.selection-experience--reduced-motion .selection-experience__option.selection-experience__fade-target.selection-experience__fade-target--visible{transition-duration:.01ms}.room-experience{width:100%}.room-experience__topic{font-size:var(--text-lead);letter-spacing:var(--tracking-display);color:var(--color-fg);text-align:center;text-wrap:balance;max-width:100%;margin:0;font-weight:600;line-height:1}.room-experience__topic .flip-title{line-height:1}.room-experience__options-btn{margin-top:0}.room-experience__section{flex-direction:column;gap:.75rem;min-width:0;display:flex}.room-experience__section-title{font-size:var(--text-body-lg);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-body);color:var(--color-fg);margin:0}.room-experience__section-note{color:var(--color-fg-secondary);font-weight:500}.room-experience__empty{margin:0}.room-experience__guest-list{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.room-experience__guest{flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.75rem 1rem;display:flex}.room-experience__guest:not(:last-child){border-bottom:1px solid var(--color-border-faint)}.room-experience__guest-name{font-size:var(--text-body);color:var(--color-fg);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.room-experience__guest-status{font-size:var(--text-caption);letter-spacing:-.01em;color:var(--color-fg-tertiary);flex-shrink:0;font-weight:600}.room-experience__guest-status--submitted{color:var(--color-fg-secondary)}.room-experience__submitted-message{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);margin:0;padding:.75rem 1rem}.selection-experience__topic{font-size:var(--text-lead);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0;font-weight:600;line-height:1}.selection-experience__topic .flip-title{line-height:1}.selection-experience__option{font-size:36px;font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0}.selection-experience__thanks{text-align:center}.selection-experience__thanks-text{font-size:var(--text-lead);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0}.room-experience__share-bubble{right:max(var(--space-gutter-inline,1.25rem), env(safe-area-inset-right,0px));bottom:max(1.25rem, env(safe-area-inset-bottom,0px));z-index:900;width:3.25rem;height:3.25rem;min-height:3.25rem;box-shadow:var(--shadow-soft);border-radius:999px;justify-content:center;align-items:center;padding:0;display:flex;position:fixed}.room-experience__share-bubble:before{content:"";border-radius:inherit;border:2.5px solid var(--color-border);opacity:0;pointer-events:none;animation:1.8s cubic-bezier(.4,0,.2,1) infinite room-experience-share-bubble-pulse;position:absolute;inset:0}@keyframes room-experience-share-bubble-pulse{0%,to{opacity:0;transform:scale(1)}14%{opacity:.85;transform:scale(1.05)}70%{opacity:0;transform:scale(2)}}.selection-experience--reduced-motion .room-experience__share-bubble:before,.room-experience__share-bubble--pulse-dismissed:before{opacity:0;animation:none}@media (prefers-reduced-motion:reduce){.room-experience__share-bubble:before{opacity:0;animation:none}}.room-experience__share-bubble-icon{z-index:1;flex-shrink:0;display:block;position:relative}.name-entry-form{flex-direction:column;gap:1.25rem;display:flex}.name-entry-form__field{flex-direction:column;gap:.5rem;min-width:0;display:flex;position:relative}.name-entry-form__prompt{font-size:var(--text-lead);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-display);color:var(--color-fg);text-wrap:balance;max-width:100%;margin:0}.name-entry-form__submit{margin-top:.25rem}.name-entry-form__submit:disabled{opacity:.35;cursor:not-allowed}.room-error{text-align:center;align-items:center}
