@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/93232c3b4a112c3a-s.ea0913cc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/62d571048def60fc-s.ddbeb43b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5a54cb9402415d65-s.p.b6447fdb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_cb33f011-module__kdJlRa__className{font-family:Fraunces,Fraunces Fallback;font-style:normal;font-weight:600}.fraunces_cb33f011-module__kdJlRa__variable{--font-heading:"Fraunces","Fraunces Fallback"}
@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3dbe685087e51055-s.7d71229e.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.cf80dd39.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(../media/3dbe685087e51055-s.7d71229e.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.cf80dd39.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Fallback;src:local(Arial);ascent-override:85.29%;descent-override:25.5%;line-gap-override:0.0%;size-adjust:113.73%}.sora_6e36c679-module__KosMea__className{font-family:Sora,Sora Fallback;font-style:normal}.sora_6e36c679-module__KosMea__variable{--font-body:"Sora","Sora Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--radius-card:12px;--radius-sheet:16px;--radius-pill:999px;--color-primary:#2c7a7b;--color-secondary:#f3e9d2;--color-text:#1b1b1b;--color-border:#c3beb5;--color-surface:#fff;--color-bg:#fff;--color-accent:#d97706;--shadow-soft:0 20px 60px #2c7a7b26;--font-heading:"Fraunces",serif;--font-body:"Sora",system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-text:#f5f5f5;--color-border:#242424;--color-surface:#1c1c1c;--color-bg:#121212;--shadow-soft:0 20px 60px #00000073}}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-text:#1b1b1b;--color-border:#c3beb5;--color-surface:#fff;--color-bg:#fff;--shadow-soft:0 20px 60px #2c7a7b26}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-text:#f5f5f5;--color-border:#242424;--color-surface:#1c1c1c;--color-bg:#121212;--shadow-soft:0 20px 60px #00000073}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:radial-gradient(circle at 15% 15%,color-mix(in srgb,var(--color-primary)20%,transparent),transparent 50%),radial-gradient(circle at 85% 20%,color-mix(in srgb,var(--color-accent)18%,transparent),transparent 45%),var(--color-bg);color:var(--color-text);min-height:100vh;line-height:1.5}.landing-main{justify-content:center;align-items:center;min-height:100vh;padding:48px 20px;display:flex}.auth-shell{padding:72px 20px}.app-shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.app-rail{background:linear-gradient(160deg,color-mix(in srgb,var(--color-surface)92%,var(--color-bg)),color-mix(in srgb,var(--color-surface)80%,var(--color-bg))),color-mix(in srgb,var(--color-surface)85%,var(--color-bg));flex-direction:column;align-items:flex-start;gap:24px;height:100vh;padding:16px;display:flex;position:sticky;top:0;box-shadow:0 12px 28px #2c7a7b14}.app-rail__brand{font-family:var(--font-heading);text-align:center;letter-spacing:-.02em;border-bottom:1px solid color-mix(in srgb,var(--color-border,#dfe5e4)70%,transparent);justify-content:center;align-items:center;gap:10px;width:100%;padding-bottom:14px;font-size:18px;display:flex}.app-rail__logo{flex:none;width:26px;height:26px}@media (prefers-color-scheme:dark){.app-rail__logo{filter:brightness(0)invert()}}html[data-theme=dark] .app-rail__logo{filter:brightness(0)invert()}.app-rail__brand-name{padding-right:12px}.app-rail__nav{gap:12px;width:100%;display:grid}.app-rail__link{color:inherit;transform-origin:50%;border-radius:16px;justify-content:flex-start;align-items:center;gap:8px;padding:10px;font-weight:600;text-decoration:none;transition:background .16s,transform .14s;display:flex;position:relative}.app-rail__link svg{width:22px;height:22px}.app-rail__label{font-size:14px}.app-rail__badge{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 8px 16px #ef444459}.app-rail__link--active,.app-rail__link:hover{background:color-mix(in srgb,var(--color-primary)18%,transparent);color:var(--color-primary)}.app-rail__link--pressed{transform:scale(.97)}.app-rail__link--bounce{animation:.28s cubic-bezier(.2,.7,.2,1) navLinkRelease}.app-body{background:linear-gradient(120deg,color-mix(in srgb,var(--color-primary)10%,transparent),transparent 45%),radial-gradient(circle at 80% 10%,color-mix(in srgb,var(--color-accent)14%,transparent),transparent 55%);flex-direction:column;min-width:0;display:flex}.app-topbar{border-bottom:1px solid var(--color-border);background:linear-gradient(160deg,color-mix(in srgb,var(--color-surface)92%,var(--color-bg)),color-mix(in srgb,var(--color-surface)78%,var(--color-bg))),color-mix(in srgb,var(--color-surface)90%,var(--color-bg));justify-content:space-between;align-items:center;gap:16px;padding:6px 16px;display:flex}.app-search{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)80%,var(--color-bg));max-width:560px;color:inherit;border-radius:999px;flex:1;align-items:center;gap:10px;padding:4px 10px;font-weight:500;display:flex}.app-search input{width:100%;color:inherit;background:0 0;border:none;outline:none;font-size:14px}.app-topbar__actions{align-items:center;gap:12px;display:flex}.popover{position:relative}.popover-trigger{align-items:center;gap:8px;display:inline-flex;position:relative}.count-badge{background:var(--color-accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-4px}.popover-panel{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)95%,var(--color-bg));width:320px;box-shadow:var(--shadow-soft);z-index:40;opacity:0;transform-origin:100% 0;pointer-events:none;border-radius:16px;gap:12px;padding:14px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.98)}.popover--left .popover-panel{transform-origin:0 0;left:0;right:auto}.popover-panel--open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.popover-header{justify-content:space-between;align-items:center;display:flex}.popover-link{color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none}.popover-list{gap:10px;display:grid}.popover-item{border:1px solid #0000;border-radius:12px;gap:4px;padding:8px 10px;display:grid}.popover-item:hover{border-color:color-mix(in srgb,var(--color-primary)30%,transparent);background:color-mix(in srgb,var(--color-primary)8%,transparent)}.app-content{padding:22px}.app-container{flex-direction:column;gap:20px;max-width:1200px;margin:0 auto;display:flex}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-backdrop{z-index:50;background:#0006;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;width:min(420px,100%);padding:20px}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalSlideOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes navLinkRelease{0%{transform:scale(.97)}55%{transform:scale(1.01)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.app-rail__link--bounce{animation:none}}.modal-backdrop--animated{animation:.18s modalFadeIn}.modal-backdrop--animated.is-closing{animation:.16s forwards modalFadeOut}.modal-card--animated{animation:.2s modalSlideIn}.modal-card--animated.is-closing{animation:.16s forwards modalSlideOut}.theme-toggle{gap:8px;margin-top:12px;display:inline-flex}.theme-toggle__button{border:1px solid var(--color-border);color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-weight:600}.theme-toggle__button--active{background:var(--color-primary);color:#fff;border-color:#0000}.invite-row{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-radius:12px;flex-direction:column;align-items:stretch;gap:16px;padding:12px;display:flex}.invite-meta{flex:1;gap:8px;display:grid}.invite-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.invite-actions--stacked{flex-direction:row;align-items:center}.invite-hint{font-size:13px}.friend-row{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:12px;display:flex}.friend-meta{gap:4px;display:grid}.friend-menu{position:relative}.friend-menu__trigger{width:36px;height:36px}.friend-menu__panel{width:200px;padding:8px}.friend-menu__item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 12px;font-weight:600}.friend-menu__item:hover{background:color-mix(in srgb,var(--color-primary)8%,transparent);color:var(--color-primary)}.friend-menu__item:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary)50%,transparent);outline-offset:2px}.host-place-menu{position:relative}.host-place-menu__trigger{width:36px;height:36px}.host-place-menu__panel{width:200px;padding:8px}.host-place-menu__item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 12px;font-weight:600}.host-place-menu__item:hover{background:color-mix(in srgb,var(--color-primary)8%,transparent);color:var(--color-primary)}.host-place-menu__item:disabled{cursor:not-allowed;opacity:.5}.host-place-menu__item:disabled:hover{color:inherit;background:0 0}.host-place-menu__item:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary)50%,transparent);outline-offset:2px}.friend-remove{border:1px solid var(--color-border);width:36px;height:36px;color:inherit;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:inline-flex}.invite-input{border:1px solid var(--color-border);width:100%;color:inherit;background:0 0;border-radius:10px;padding:8px 10px;font-size:13px}.invite-copy{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:inline-flex}.invite-actions .secondary-button{align-items:center;gap:8px;display:inline-flex}.invite-actions svg{width:18px;height:18px}.invite-icon-only{justify-content:center}.card{background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-radius:var(--radius-card);padding:16px;box-shadow:0 14px 30px #2c7a7b14}.page-title{margin-bottom:16px;font-size:40px;font-weight:600}.screen-layout{gap:16px;display:grid}.screen-layout__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.screen-layout__heading{gap:4px;display:grid}.screen-layout__title{margin:0}.screen-layout__actions{align-items:center;gap:8px;display:inline-flex}.section-title{margin-bottom:12px;font-size:22px;font-weight:600}.section-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.section-card__heading{gap:4px;display:grid}.section-card__actions{align-items:center;gap:8px;display:inline-flex}.section-card__header .section-title{margin-bottom:0}.section-title:not(:first-child){margin-top:20px}.empty-state{background:var(--color-surface);border-color:var(--color-border);gap:16px;padding:24px;display:grid}.empty-state__content{grid-template-columns:auto 1fr;align-items:center;gap:12px;display:grid}.empty-state__icon{background:color-mix(in srgb,var(--color-primary)18%,transparent);width:56px;height:56px;color:var(--color-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary)28%,transparent);border-radius:18px;place-items:center;display:grid}.empty-state__icon svg{width:24px;height:24px}.empty-state__title{font-size:20px;font-weight:600}.empty-state__description{color:color-mix(in srgb,var(--color-text)65%,transparent);margin-top:4px}.empty-state__actions{flex-wrap:wrap;gap:12px;display:flex}@media (max-width:720px){.empty-state__content{grid-template-columns:1fr;align-items:start}.auth-actions{flex-direction:column;align-items:stretch}.auth-actions .cta{justify-content:center;width:100%}.trip-place-header-link{flex-direction:column;align-items:stretch;gap:10px}.trip-place-header-link .place-card__media{justify-content:flex-start;align-self:flex-start;width:100%}.trip-place-header-link .place-card__body{text-align:left}.trip-availability-box{width:100%;min-width:0}}.muted{color:color-mix(in srgb,var(--color-text)60%,transparent)}.hero{background:linear-gradient(135deg,color-mix(in srgb,var(--color-surface)92%,var(--color-bg)),color-mix(in srgb,var(--color-surface)75%,var(--color-bg)));border:1px solid var(--color-border);border-radius:var(--radius-sheet);width:min(960px,100%);box-shadow:var(--shadow-soft);padding:48px;position:relative;overflow:hidden}.auth-card{width:min(720px,100%)}.hero-content{gap:24px;display:grid;position:relative}.auth-stack{gap:20px}.auth-heading{gap:12px;display:grid}.auth-error{border-radius:var(--radius-card);border:1px solid color-mix(in srgb,#dc2626 35%,var(--color-border));background:#dc26261f;gap:6px;padding:12px 16px;display:grid}.auth-error__code{color:color-mix(in srgb,var(--color-text)70%,transparent);font-size:12px}.auth-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.badge{border-radius:var(--radius-pill);color:var(--color-primary);letter-spacing:.02em;background:#2c7a7b1f;align-items:center;gap:8px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}h1{font-family:var(--font-heading);letter-spacing:-.02em;font-size:clamp(32px,5vw,56px);line-height:1.05}.subtitle{max-width:520px;color:color-mix(in srgb,var(--color-text)75%,transparent);font-size:clamp(16px,2vw,20px)}.cta-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.cta{background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 20px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 20px #2c7a7b40}.cta:hover{transform:translateY(-2px)}.cta-discord{background:#5865f2;box-shadow:0 12px 24px #5865f259}.cta-google{color:#111;background:#fff;border:1px solid #0f0f0f1f;box-shadow:0 10px 20px #0f0f0f1f}.cta-ios{color:#111;background:linear-gradient(#fff,#e8e8ea);border:1px solid #0f0f0f1f;box-shadow:0 10px 20px #0f0f0f29,inset 0 1px #ffffffb3}.cta-ios--green{background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary)20%,white),color-mix(in srgb,var(--color-primary)65%,#1f6f6f));color:#fff;border-color:color-mix(in srgb,var(--color-primary)45%,#0f0f0f1f);box-shadow:0 10px 20px #2c7a7b47,inset 0 1px #ffffff59}.cta-ios:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0f0f0f33,inset 0 1px #ffffffb3}.cta-ios:active{transform:translateY(0);box-shadow:0 6px 14px #0f0f0f29,inset 0 2px 6px #0000001f}.cta-ios:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent)50%,transparent);outline-offset:2px}@media (prefers-color-scheme:dark){.cta-google{color:#f5f5f5;background:#1f1f21;border-color:#ffffff29;box-shadow:0 10px 20px #0006}.cta-ios{color:#f5f5f5;background:linear-gradient(#2c2c2e,#1f1f21);border-color:#ffffff29;box-shadow:0 10px 20px #0006,inset 0 1px #ffffff14}.cta-ios--green{background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary)25%,#203131),color-mix(in srgb,var(--color-primary)70%,#113838));color:#f5f5f5;border-color:color-mix(in srgb,var(--color-primary)45%,#ffffff29);box-shadow:0 10px 20px #2c7a7b59,inset 0 1px #ffffff1f}}html[data-theme=dark] .cta-ios{color:#f5f5f5;background:linear-gradient(#2c2c2e,#1f1f21);border-color:#ffffff29;box-shadow:0 10px 20px #0006,inset 0 1px #ffffff14}html[data-theme=dark] .cta-google{color:#f5f5f5;background:#1f1f21;border-color:#ffffff29;box-shadow:0 10px 20px #0006}.secondary{border:1px solid var(--color-border);color:inherit;border-radius:var(--radius-pill);background:0 0;align-items:center;gap:8px;padding:12px 20px;font-weight:600;text-decoration:none;display:inline-flex}.cta-icon{flex-shrink:0}.footer-note{color:color-mix(in srgb,var(--color-text)60%,transparent);font-size:14px}button,input,textarea{font-family:inherit}button{background:color-mix(in srgb,var(--color-primary)90%,transparent);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:10px 16px;font-weight:600;line-height:1;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 20px #2c7a7b2e}button:hover{transform:translateY(-1px)}.button-content{align-items:center;gap:8px;display:inline-flex}.button-icon{align-items:center;display:inline-flex}.button-label{align-items:center;line-height:1;display:inline-flex}.button--loading{cursor:progress}.button--loading:hover{transform:none}button.cta{background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 20px;font-size:16px;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 20px #2c7a7b40}button.cta:hover{transform:translateY(-2px)}button.cta.cta-discord{background:#5865f2;box-shadow:0 12px 24px #5865f259}button.cta.cta-ios{color:#111;background:linear-gradient(#fff,#e8e8ea);border:1px solid #0f0f0f1f;box-shadow:0 10px 20px #0f0f0f29,inset 0 1px #ffffffb3}button.cta.cta-ios--green{background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary)20%,white),color-mix(in srgb,var(--color-primary)65%,#1f6f6f));color:#fff;border-color:color-mix(in srgb,var(--color-primary)45%,#0f0f0f1f);box-shadow:0 10px 20px #2c7a7b47,inset 0 1px #ffffff59}button.cta.cta-ios:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0f0f0f33,inset 0 1px #ffffffb3}button.cta.cta-ios:active{transform:translateY(0);box-shadow:0 6px 14px #0f0f0f29,inset 0 2px 6px #0000001f}button.cta.cta-ios:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent)50%,transparent);outline-offset:2px}.secondary-button,button.secondary-button{color:inherit;border:1px solid var(--color-border);box-shadow:none;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}button.secondary-button svg{display:block}.icon-button{color:inherit;border:1px solid var(--color-border);box-shadow:none;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:8px;display:inline-flex}.icon-button:hover{transform:none}.icon-button svg{width:18px;height:18px}.icon{width:20px;height:20px}input,textarea{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)85%,var(--color-bg));color:inherit;border-radius:12px;padding:10px 12px}.panel-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:20px;display:grid}.place-details-stack{flex-direction:column;gap:16px;display:flex}.place-details-row{flex-wrap:wrap;gap:16px;display:flex}.place-details-row>.card{flex:320px;min-width:0}.places-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.place-card{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));cursor:pointer;color:inherit;border-radius:16px;gap:8px;padding:16px;text-decoration:none;transition:transform .16s,box-shadow .16s,border .16s;display:grid}.place-headline-frame{aspect-ratio:1;border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));border-radius:18px;place-items:center;width:min(100%,400px);margin:0 auto;display:grid;overflow:hidden}.place-headline-frame--empty{background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-style:dashed}.place-headline{object-fit:cover;background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));width:100%;height:100%;display:block}.place-headline__empty{width:100%;height:100%;color:var(--color-muted);text-align:center;place-items:center;padding:16px;display:grid}.place-header{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;display:flex}.place-header .page-title{margin-bottom:0}.place-thumbnail-button{cursor:pointer;box-shadow:none;color:inherit;background:0 0;border:none;border-radius:14px;flex-shrink:0;padding:0}.place-thumbnail-button:hover{transform:none}.place-thumbnail{aspect-ratio:1;border:1px solid var(--color-border);object-fit:cover;background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));width:88px;color:var(--color-muted);border-radius:14px;font-size:12px;display:block}.place-thumbnail__empty{border-style:dashed;place-items:center;display:grid}.place-card__media{align-items:center;gap:12px;display:flex}.place-card__thumb{aspect-ratio:1;border:1px solid var(--color-border);object-fit:cover;background:color-mix(in srgb,var(--color-surface)90%,var(--color-bg));width:56px;color:var(--color-muted);border-radius:12px;font-size:11px;display:block}.place-card__thumb--empty{text-align:center;border-style:dashed;place-items:center;padding:4px;line-height:1.2;display:grid}.place-card__body{gap:4px;min-width:0;display:grid}.modal-card--sm{width:min(360px,100%)}.modal-card--md{width:min(480px,100%)}.modal-card--lg{width:min(720px,100%)}.modal-card--xl{width:min(1200px,100%)}.modal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-header .icon-button{margin-top:-14px}.modal-content{gap:12px;display:grid}.upload-status{color:var(--color-text);align-items:center;gap:8px;font-weight:600;display:inline-flex}.upload-spinner{border:2px solid color-mix(in srgb,var(--color-text)20%,transparent);border-top-color:var(--color-primary);border-radius:999px;width:16px;height:16px;animation:.8s linear infinite spin}.button-spinner{border:2px solid color-mix(in srgb,currentColor 35%,transparent);border-top-color:currentColor;border-radius:999px;width:14px;height:14px;animation:.8s linear infinite spin}.place-card__title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.place-card--active,.place-card:hover{border-color:color-mix(in srgb,var(--color-primary)40%,var(--color-border));transform:translateY(-2px);box-shadow:0 16px 32px #2c7a7b2e}.kanban{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.kanban-column{background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));border:1px solid var(--color-border);border-radius:18px;gap:12px;min-height:320px;padding:16px;display:grid}.booking-card{--booking-accent:var(--color-primary);border:1px solid var(--color-border);border-left-width:3px;border-left-color:color-mix(in srgb,var(--booking-accent)70%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--color-surface)92%,var(--color-bg)),color-mix(in srgb,var(--color-surface)82%,var(--color-bg)));border-radius:16px;grid-template-columns:52px 1fr;align-items:start;gap:8px;padding:8px 10px 6px;transition:transform .16s,box-shadow .16s,border .16s;display:grid;position:relative;box-shadow:0 12px 28px #2c7a7b1a}.booking-card:hover{border-color:color-mix(in srgb,var(--booking-accent)35%,var(--color-border));transform:translateY(-1px);box-shadow:0 18px 36px #2c7a7b29}.booking-card[data-status=requested]{--booking-accent:var(--color-accent)}.booking-card[data-status=approved]{--booking-accent:var(--color-primary)}.booking-card[data-status=declined]{--booking-accent:#b42318}.booking-card[data-status=canceled]{--booking-accent:color-mix(in srgb,var(--color-text)55%,transparent)}.booking-card[data-status=completed]{--booking-accent:color-mix(in srgb,var(--color-primary)70%,transparent)}.host-place-grid{column-count:2;column-gap:18px}.host-place-panel{break-inside:avoid;gap:16px;width:100%;margin-bottom:18px;display:grid}.host-place-panel .place-card__body{gap:2px}.host-place-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.host-place-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.trip-place-header-link{color:inherit;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;width:100%;margin:-2px;padding:2px;text-decoration:none;transition:background .16s,box-shadow .16s;display:flex}.trip-place-header-link:hover{background:color-mix(in srgb,var(--color-primary)12%,transparent);box-shadow:0 10px 24px #2c7a7b1f}.trip-availability-box{background:color-mix(in srgb,var(--color-primary)16%,#eaffea);border:1px solid color-mix(in srgb,var(--color-primary)30%,var(--color-border));border-radius:14px;gap:4px;min-width:180px;padding:10px 14px;display:grid}.trip-availability-box--empty{background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-color:var(--color-border)}.trip-availability-box__label{text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb,var(--color-text)55%,transparent);font-size:11px;font-weight:600}.trip-availability-box__value{color:var(--color-text);font-weight:600}@media (prefers-color-scheme:dark){.trip-availability-box:not(.trip-availability-box--empty){background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary)42%,#17302f),color-mix(in srgb,var(--color-primary)34%,#112726));border-color:color-mix(in srgb,var(--color-primary)55%,#fff3)}.trip-availability-box__label{color:color-mix(in srgb,var(--color-text)78%,transparent)}}html[data-theme=dark] .trip-availability-box:not(.trip-availability-box--empty){background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary)42%,#17302f),color-mix(in srgb,var(--color-primary)34%,#112726));border-color:color-mix(in srgb,var(--color-primary)55%,#fff3)}html[data-theme=dark] .trip-availability-box__label{color:color-mix(in srgb,var(--color-text)78%,transparent)}.host-place-action{padding:6px 10px;font-size:12px}.host-place-meta{flex-wrap:wrap;gap:8px;display:flex}.pill--warning{background:color-mix(in srgb,var(--color-accent)18%,transparent);color:var(--color-accent)}.pill--muted{background:color-mix(in srgb,var(--color-text)12%,transparent);color:color-mix(in srgb,var(--color-text)65%,transparent)}.host-place-section{gap:12px;display:grid}.host-booking-list{gap:10px;display:grid}.host-booking-row{--booking-accent:var(--color-primary);border:1px solid var(--color-border);border-left-style:solid;border-left-width:3px;border-left-color:color-mix(in srgb,var(--booking-accent)70%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent)6%,var(--color-surface)92%),color-mix(in srgb,var(--color-surface)82%,var(--color-bg)));border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.host-booking-row--clickable{cursor:pointer;border-color:color-mix(in srgb,var(--color-accent)35%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent)18%,transparent),color-mix(in srgb,var(--color-surface)92%,var(--color-bg)));transition:transform .16s,box-shadow .16s,border-color .16s,background .16s}.host-booking-row--clickable:hover{border-color:color-mix(in srgb,var(--color-accent)55%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent)26%,transparent),color-mix(in srgb,var(--color-surface)90%,var(--color-bg)));transform:translateY(-1px);box-shadow:0 14px 26px #d977062e}.host-booking-row--clickable:focus-visible{outline:2px solid color-mix(in srgb,var(--color-accent)65%,transparent);outline-offset:2px}.host-booking-row--upcoming{border-color:color-mix(in srgb,var(--color-primary)35%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary)16%,transparent),color-mix(in srgb,var(--color-surface)92%,var(--color-bg)))}.host-booking-row__info{gap:4px;display:grid}.host-booking-row__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.host-booking-guest{font-weight:600}.host-booking-row--clickable{cursor:pointer;transition:transform .16s,box-shadow .16s,border .16s}.host-booking-row--clickable:hover{transform:translateY(-1px);box-shadow:0 10px 24px #2c7a7b1f}.host-booking-row[data-status=requested]{--booking-accent:var(--color-accent)}.host-booking-row[data-status=approved]{--booking-accent:var(--color-primary)}.notification-list{gap:8px;display:grid}.notification-row{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)94%,var(--color-bg));border-radius:14px;align-items:center;gap:12px;padding:12px;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:flex}.notification-row--read{opacity:.7}.notification-row--clickable{cursor:pointer}.notification-row--clickable:hover{border-color:color-mix(in srgb,var(--color-accent)40%,var(--color-border));background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent)12%,transparent),color-mix(in srgb,var(--color-surface)90%,var(--color-bg)));transform:translateY(-1px);box-shadow:0 12px 24px #2c7a7b1f}.notification-row--clickable:focus-visible{outline:2px solid color-mix(in srgb,var(--color-accent)60%,transparent);outline-offset:2px}.notification-row__icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;position:relative}.notification-row__icon--unread{background:color-mix(in srgb,var(--color-primary)18%,transparent);color:var(--color-primary)}.notification-row__icon--read{background:color-mix(in srgb,var(--color-surface)80%,var(--color-bg));color:color-mix(in srgb,var(--color-text)60%,transparent)}.notification-row__dot{background:var(--color-accent);border:1px solid var(--color-surface);border-radius:999px;width:8px;height:8px;position:absolute;top:3px;right:3px}.notification-row__content{flex:1;gap:4px;min-width:0;display:grid}.notification-row__header{align-items:baseline;gap:8px;display:flex}.notification-row__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.notification-row__timestamp{color:color-mix(in srgb,var(--color-text)60%,transparent);white-space:nowrap;font-size:12px}.notification-row__subtitle{color:color-mix(in srgb,var(--color-text)60%,transparent);font-size:12px}@media (max-width:980px){.host-place-grid{column-count:1}}.booking-card__header{justify-content:space-between;align-items:center;gap:10px;display:flex}.booking-card__content{gap:4px;min-width:0;display:grid}.booking-card__media{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)88%,var(--color-bg));border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;display:flex;overflow:hidden}.booking-card__media img{object-fit:cover;width:100%;height:100%;display:block}.booking-card__media-placeholder{color:color-mix(in srgb,var(--color-text)60%,transparent);text-align:center;padding:4px;font-size:10px}.booking-card__header-main{gap:4px;display:grid}.booking-card__dates{color:var(--color-text);font-size:14px;font-weight:600}.booking-source{background:color-mix(in srgb,var(--color-text)8%,transparent);color:color-mix(in srgb,var(--color-text)70%,transparent);border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.booking-status{--status-color:var(--booking-accent);text-transform:uppercase;background:color-mix(in srgb,var(--status-color)16%,transparent);color:var(--status-color);border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.booking-card__meta{flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12px;display:flex}.booking-card__meta-item{align-items:center;gap:6px;display:inline-flex}.booking-card__meta-label{letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text)55%,transparent);font-size:10px;font-weight:600}.booking-card__meta-value{color:var(--color-text)}.pill{background:color-mix(in srgb,var(--color-primary)18%,transparent);color:var(--color-primary);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.action-bar{flex-wrap:wrap;gap:12px;display:flex}.profile-form{gap:12px;max-width:360px;display:grid}.profile-gate{background:radial-gradient(circle at 15% 15%,color-mix(in srgb,var(--color-primary)18%,transparent),transparent 50%),radial-gradient(circle at 85% 20%,color-mix(in srgb,var(--color-accent)16%,transparent),transparent 45%),var(--color-bg);z-index:70;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.profile-gate__card{width:min(760px,100%)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width:640px){.landing-main{padding:40px 16px}.auth-shell{padding:52px 16px}.hero{padding:32px 24px}.cta-row{flex-direction:column;align-items:flex-start}.cta,.secondary{text-align:center;width:100%}}@media (max-width:980px){.app-shell{grid-template-columns:1fr}.app-rail{border-right:none;border-top:1px solid var(--color-border);z-index:20;flex-direction:row;justify-content:space-around;width:100%;height:auto;position:fixed;inset:auto 0 0}.app-rail__nav{justify-content:space-around;align-items:center;width:100%;display:flex}.app-rail__brand,.app-rail__label{display:none}.app-rail__badge{min-width:18px;height:18px;margin-left:0;padding:0 5px;font-size:10px;position:absolute;top:4px;right:6px}.popover-panel{width:min(320px,100vw - 32px);right:8px}.app-content{padding:18px 16px 96px}.panel-grid,.kanban{grid-template-columns:1fr}}.availability-calendar{gap:16px;display:grid}.availability-calendar__legend{color:color-mix(in srgb,var(--color-text)70%,transparent);flex-wrap:wrap;gap:6px 10px;font-size:11px;display:flex}.availability-calendar__nav-button{border:1px solid var(--color-border);background:var(--color-surface);color:inherit;cursor:pointer;border-radius:999px;padding:4px 10px;font-size:12px}.availability-calendar__year-label{font-size:14px;font-weight:600}.availability-calendar__nav{justify-content:center;align-items:center;gap:12px;margin-bottom:8px;display:flex}.availability-calendar__legend-item{align-items:center;gap:6px;display:inline-flex}.availability-calendar__swatch{border:1px solid color-mix(in srgb,var(--color-border)70%,transparent);border-radius:4px;width:12px;height:12px}.availability-calendar__swatch--available{background:#5ea766}.availability-calendar__swatch--pending-mine{background:#5ea5c9}.availability-calendar__swatch--pending-other{background:#c8a14a}.availability-calendar__swatch--booked-mine{background:#8b7bbd}.availability-calendar__swatch--booked-other{background:#c97979}.availability-calendar__swatch--range{background:#4fb1a3}.availability-calendar__months{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.availability-calendar__months--year{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.availability-calendar__month{background:0 0;border:none;border-radius:0;justify-items:center;gap:4px;padding:0;display:grid}.availability-calendar__header{justify-content:space-between;align-items:center;gap:4px;display:flex}.availability-calendar__month-label{text-transform:capitalize;text-align:center;flex:1;font-size:12px;font-weight:600}.availability-calendar__weekdays{color:color-mix(in srgb,var(--color-text)65%,transparent);text-align:center;grid-template-columns:repeat(7,1fr);font-size:11px;display:none}.availability-calendar__grid{grid-template-columns:repeat(7,1fr);justify-items:center;gap:3px;display:grid}.availability-calendar__day{text-align:center;width:22px;height:22px;color:inherit;cursor:pointer;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:999px;padding:0;font-size:10px;transition:transform .14s,background .14s,border-color .14s}.availability-calendar__day:hover:not(.availability-calendar__day--disabled){border-color:color-mix(in srgb,var(--color-primary)40%,transparent);transform:translateY(-1px)}.availability-calendar__day--available{color:#fff;background:#5ea766}.availability-calendar__day--range{color:#fff;background:#4fb1a3}.availability-calendar__day--pending-mine{color:#fff;background:#5ea5c9}.availability-calendar__day--pending-other{color:#fff;background:#c8a14a}.availability-calendar__day--booked-mine{color:#fff;background:#8b7bbd}.availability-calendar__day--booked-other{color:#fff;background:#c97979}.availability-calendar__day--selected{color:#fff;background:#111;border-color:#111}.availability-calendar__day--disabled{color:color-mix(in srgb,var(--color-text)45%,transparent);cursor:not-allowed;opacity:.5}.availability-calendar__day--today{border-color:color-mix(in srgb,var(--color-accent)70%,transparent)}.availability-calendar__empty{height:30px}.availability-calendar__footer{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.availability-calendar--month .availability-calendar__months{grid-template-columns:1fr}.availability-calendar--month .availability-calendar__month{border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface)92%,var(--color-bg));border-radius:16px;justify-items:stretch;gap:8px;padding:12px}.availability-calendar--month .availability-calendar__header{gap:8px;width:100%}.availability-calendar--month .availability-calendar__month-label{font-size:14px}.availability-calendar--month .availability-calendar__nav-button{justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.availability-calendar--month .availability-calendar__weekdays{width:100%;display:grid}.availability-calendar--month .availability-calendar__grid{justify-items:stretch;gap:6px 0;width:100%}.availability-calendar--month .availability-calendar__day{border-radius:12px;width:100%;height:32px;font-size:13px}.availability-calendar--month .availability-calendar__empty{height:32px}.availability-selection{flex-wrap:wrap;gap:16px;display:flex}.availability-selection__item{gap:2px;font-size:13px;display:grid}.availability-selection__label{color:color-mix(in srgb,var(--color-text)60%,transparent);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.availability-selection__value{font-weight:600}.calendar-divider{background:var(--color-border);opacity:.6;height:1px;margin:12px 0}.availability-panel{grid-template-columns:minmax(0,1fr) 1px minmax(0,.5fr);align-items:start;gap:16px;display:grid}.availability-panel__divider{background:var(--color-border);opacity:.6;width:1px;margin:8px 0}.availability-panel__list{gap:8px;display:grid}@media (max-width:960px){.availability-panel{grid-template-columns:1fr}.availability-panel__divider{width:100%;height:1px;margin:12px 0}}
