
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-display:swap;src:url('../webfonts/bricolage.woff2') format('woff2')}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 500;font-display:swap;src:url('../webfonts/dmsans.woff2') format('woff2')}
:root{
  --c-blush-100:#ffedf7;
  --c-blush-200:#fae4f3;
  --c-blush-300:#f3d4e6;
  --c-blush-deep:#eebbda;
  --c-lilac:#f1f0f8;
  --c-lilac-x:#e7e4f5;

  --c-surface:#fdffff;
  --c-surface-50:#ffedf7;
  --c-surface-x:#fae4f3;

  --c-accent:#d10684;
  --c-accent-600:#ae0170;
  --c-red:#d10684;
  --c-red-x:#ae0170;
  --c-orange:#d10684;
  --c-orange-x:#ae0170;
  --c-like:#d10684;
  --c-blueviolet:#c5cbf1;
  --c-promo-600:linear-gradient(95deg,#ae0170,#ae0170 55%,#ae0170);

  --c-copy:#2b2731;
  --c-copy-50:#6b6272;
  --c-dim:#9995a2;
  --c-divider:#f0d7e8;

  --c-inverse:#fdffff;
  --c-light:#fdffff;
  --c-success:#8dc8a7;
  --c-divider-50:rgba(253,255,255,.91);
  --c-surface-back:rgba(253,255,255,.94);
  --c-backdrop:rgba(43,39,49,.51);
  --c-ft-back:#2b2731;
  --c-ft:#d6d1dc;
  --c-ft-x:#fdffff;
  --c-ft-50:#aa9fb2;
  --c-ft-border:rgba(253,255,255,.1);

  --c-r-sm:14px;
  --c-r-md:20px;
  --c-r-lg:28px;
  --c-r-xl:36px;
  --c-r-pill:999px;
  --c-r-btn:10px;

  --c-elev-sm:0 6px 16px -8px rgba(209,6,132,.32);
  --c-elev-md:0 18px 38px -18px rgba(209,6,132,.34);
  --c-elev-lg:0 30px 60px -24px rgba(209,6,132,.4);

  --c-font-display:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;
  --c-ff:"DM Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;

  --c-container:1200px;
  --c-edge-x:24px;
  --c-section-y:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  line-height:1.6;background:linear-gradient(180deg, #ffeff7 0%, #fdffff 30%, #fdffff 100%);color:var(--c-copy);margin:0;
  background-attachment:fixed;
  font-family:var(--c-ff);-webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}
.em{color:transparent;background:linear-gradient(92deg,var(--c-accent),var(--c-red) 60%,var(--c-orange));-webkit-background-clip:text;background-clip:text;font-style:italic}
button{font-family:inherit}
p{margin:0}
.menu-screen{transition:opacity .3s ease;z-index:1090;opacity:0;background:var(--c-backdrop);position:fixed;inset:0;visibility:hidden}
.menu-screen.current{visibility:visible;opacity:1}
.band{padding-block:var(--c-section-y)}
.band-other{background:var(--c-surface-x)}

.inner{padding-inline:var(--c-edge-x);margin-inline:auto;max-width:var(--c-container)}
.logo,.menu-entry,.aside-phone a,.btn,.crumbs a,.app-foot a,.nearby-menu a{text-decoration:none}
figure{margin:0}
.title-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.logo{color:var(--c-copy);font-family:var(--c-font-display);display:flex;gap:11px;letter-spacing:-.02em;font-weight:800;align-items:center;font-size:1.28rem}
.logo:hover{color:var(--c-copy)}
.logo-mark{box-shadow:0 8px 18px -8px rgba(235,76,150,.82);color:var(--c-inverse);flex-shrink:0;width:42px;background:linear-gradient(135deg,var(--c-accent),var(--c-red) 55%,var(--c-orange));align-items:center;border-radius:14px;height:42px;justify-content:center;display:inline-flex}
.logo-mark svg{height:22px;width:22px}
.aside-phone{overflow-y:auto;top:0;height:100vh;z-index:1100;max-width:320px;padding:84px 22px 22px;right:-100%;box-shadow:-6px 0 30px rgba(43,39,49,.2);position:fixed;height:100dvh;transition:right .3s ease;background:var(--c-surface);width:80%}
.aside-phone.current{right:0}
.aside-phone nav{display:flex;flex-direction:column}
.aside-phone a:not(.btn){font-weight:600;font-size:15px;border-bottom:1px solid var(--c-divider);padding:14px 2px;color:var(--c-copy)}
.aside-phone a:not(.btn):hover{color:var(--c-accent-600)}
.aside-phone a.btn{margin-top:22px}
h1,h2,h3,h4{margin:0;letter-spacing:-.01em;font-family:var(--c-font-display);line-height:1.12;color:var(--c-copy)}
.main-menu{display:flex;align-items:center;margin-left:auto;gap:8px}
ul{padding:0;margin:0;list-style:none}

.app-top{top:0;border-bottom:1px solid var(--c-divider);position:sticky;background:var(--c-surface);z-index:60}
.app-top-inner{align-items:center;padding-block:12px;gap:20px;display:flex;justify-content:space-between}
.user-panel{overflow:hidden;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;background:var(--c-surface);position:relative;cursor:pointer;border-radius:var(--c-r-lg);border:1px solid var(--c-divider-50)}
.user-panel:hover{z-index:3;transform:translateY(-8px) scale(1.02);box-shadow:var(--c-elev-lg)}
.user-face{background:linear-gradient(160deg,var(--c-blush-200),var(--c-lilac-x));overflow:hidden;aspect-ratio:3/4;display:block;position:relative}
.user-face img{object-fit:cover;transition:transform .5s ease,filter .3s ease;width:100%;display:block;height:100%}
.user-panel:hover .user-face img{filter:brightness(.7);transform:scale(1.1)}
.user-dot{box-shadow:0 2px 8px rgba(1,1,1,.16);gap:6px;font-weight:800;z-index:3;display:inline-flex;background:linear-gradient(135deg,#112b49,#091f33);font-size:.68rem;letter-spacing:.05em;top:10px;border:1px solid #5c9cd6;align-items:center;right:10px;padding:5px 9px;border-radius:var(--c-r-pill);position:absolute;color:#eaf3fd}
.user-dot .bullet{box-shadow:0 0 6px rgba(141,200,167,.71);font-size:0;position:relative;background:var(--c-success);border-radius:50%;color:transparent;height:8px;width:8px}
.user-dot .bullet::after{inset:0;animation:quiver 1.8s ease-out infinite;content:"";border-radius:50%;background:var(--c-success);position:absolute}
.user-inner{position:absolute;left:0;right:0;transition:opacity .3s ease;z-index:2;text-align:left;padding:20px 15px 15px;background:linear-gradient(to top,rgba(1,1,1,.96),rgba(1,1,1,.71) 55%,rgba(1,1,1,0));bottom:0}
.user-panel:hover .user-inner{opacity:0}
.user-subtitle{gap:5px;align-items:center;display:inline-flex;font-size:.68rem;margin-bottom:8px;background:rgba(25,46,44,.94);border-radius:var(--c-r-pill);border:1px solid rgba(73,116,105,.91);box-shadow:0 2px 8px rgba(1,1,1,.16);padding:4px 9px;letter-spacing:.02em;font-weight:700;color:#effcf5}
.user-subtitle svg{height:14px;width:14px;color:#a7e3d0}
.user-name{font-family:var(--c-font-display);font-weight:800;line-height:1.2;font-size:1.32rem;color:#fdffff}
.user-name span{font-weight:600;font-size:.86rem;color:rgba(253,255,255,.8)}
.user-loc{align-items:center;color:rgba(253,255,255,.91);font-size:.82rem;display:flex;margin-top:3px;gap:6px}
.user-loc .needle svg{width:14px;color:#fdffff;height:14px}

.user-loc{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-loc .needle{vertical-align:middle;margin-right:6px;display:inline-flex}
.user-sparkle{border-radius:50%;display:grid;top:10px;box-shadow:0 2px 8px rgba(1,1,1,.3);position:absolute;place-items:center;left:10px;color:#fdffff;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease;z-index:6;width:34px;height:34px;background:rgba(1,1,1,.44);border:none}
.user-sparkle svg{width:18px;height:18px}
.user-sparkle:hover{transform:scale(1.1);background:rgba(1,1,1,.61)}
.user-sparkle.done{color:var(--c-inverse);background:var(--c-red)}
.user-sparkle.done svg{fill:currentColor}
.ic-done svg{stroke:none;fill:currentColor}
.teaser-rail{align-items:center;display:inline-flex;flex:none}
.teaser-rail img{height:38px;object-fit:cover;margin-left:-13px;border-radius:50%;width:38px;box-shadow:var(--c-elev-sm);border:2px solid var(--c-inverse)}
.teaser-rail img:first-child{margin-left:0}
.teaser-name{text-align:center;white-space:normal;overflow-wrap:break-word;flex:1 1 auto}
.teaser-right{align-items:center;flex:none;display:inline-flex}
.teaser-right svg{height:20px;width:20px}
svg{display:block}
:focus-visible{outline:3px solid var(--c-accent);border-radius:6px;outline-offset:2px}




.users-layout{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.lead{color:var(--c-copy-50);font-size:1.06rem;margin-top:14px}
.menu-entry{border-radius:var(--c-r-pill);padding:9px 14px;color:var(--c-copy);transition:background .18s,color .18s;font-weight:600;font-size:.96rem}
.menu-entry:hover{background:var(--c-surface-x);color:var(--c-accent-600)}
.menu-sparkle{color:var(--c-copy);cursor:pointer;padding:9px 12px;position:relative;gap:7px;text-decoration:none;border:none;display:inline-flex;transition:background .18s ease,color .18s ease;border-radius:var(--c-r-pill);align-items:center;font-weight:600;background:none;font-size:.96rem}
.menu-sparkle:hover{color:var(--c-accent-600);background:var(--c-surface-x)}
.menu-sparkle svg{width:20px;color:var(--c-accent);height:20px}
.menu-sparkle:hover svg{color:var(--c-accent-600)}
.menu-sparkle-txt{white-space:nowrap}
.menu-sparkle .thread-dot{top:auto;right:auto;position:static}
.menu-sparkle-phone{padding:14px 2px;border:none;border-bottom:1px solid var(--c-divider);width:100%;font-weight:600;background:none;color:var(--c-copy);align-items:center;cursor:pointer;display:flex;font-size:15px;text-align:left;gap:9px;text-decoration:none}
.menu-sparkle-phone:hover{color:var(--c-accent-600)}
.menu-sparkle-phone svg{color:var(--c-accent);height:18px;width:18px}

.menu-btn{z-index:1105;padding:6px;cursor:pointer;background:none;border:none;display:none;gap:5px;flex-direction:column}
.menu-btn span{height:3px;background:var(--c-copy);display:block;border-radius:2px;transition:transform .3s ease,opacity .3s ease;width:26px}
.menu-btn.current span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.menu-btn.current span:nth-child(2){opacity:0}
.menu-btn.current span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.crumbs a:hover{color:var(--c-accent-600)}
.intro-head{margin:0 auto 30px;text-align:center;max-width:640px}

.btn{
  font-weight:700;display:inline-flex;padding:14px 26px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
  border:1.5px solid transparent;white-space:nowrap;text-align:center;justify-content:center;
  border-radius:var(--c-r-btn);gap:9px;font-size:1rem;cursor:pointer;
  align-items:center;
}
.btn svg{height:18px;width:18px}
.btn-mini{padding:10px 18px;font-size:.9rem}
.btn-full{width:100%}
.btn-main{box-shadow:0 14px 26px -12px rgba(249,73,98,.75);color:var(--c-inverse);background:linear-gradient(95deg,var(--c-orange),var(--c-red) 55%,var(--c-accent))}
.btn-main:hover{color:var(--c-inverse);background:var(--c-promo-600);transform:translateY(-2px);box-shadow:0 20px 34px -12px rgba(249,73,98,.84)}
.btn-secondary{color:var(--c-accent);border-color:var(--c-divider);background:var(--c-surface)}
.btn-secondary:hover{color:var(--c-accent-600);background:var(--c-surface-x);transform:translateY(-2px)}
.btn-plain{color:var(--c-accent-600);background:var(--c-light)}
.btn-plain:hover{box-shadow:var(--c-elev-md);transform:translateY(-2px);color:var(--c-accent-600)}
.btn.teaser{display:flex;padding-inline:16px;margin:0 auto 26px;gap:12px;max-width:540px;justify-content:space-between}
::selection{background:rgba(235,76,150,.23)}
@media(max-width:768px){.user-sparkle{top:8px;left:8px;width:30px;height:30px}.user-sparkle svg{width:16px;height:16px}.user-dot{top:8px;right:8px;gap:4px;padding:3px 7px;font-size:9.5px;letter-spacing:.03em}.user-dot .bullet{width:6px;height:6px}.user-panel .user-inner{padding:10px 9px 9px}.user-subtitle{gap:3px;margin-bottom:5px;padding:3px 6px;font-size:9.5px}.user-subtitle svg{width:12px;height:12px}.user-name{font-size:.92rem;line-height:1.2;padding-right:40px}.user-name span{font-size:.72rem;white-space:nowrap}.user-loc{font-size:.72rem;gap:4px;margin-top:2px;padding-right:40px}.user-loc .needle svg{width:12px;height:12px}}
@keyframes quiver{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(2.4)}}

.user-entry{background:linear-gradient(135deg,var(--c-accent),var(--c-red));color:var(--c-inverse);padding:5px 14px;margin-top:11px;justify-content:center;gap:6px;font-weight:700;display:inline-flex;align-items:center;box-shadow:var(--c-elev-sm);border-radius:var(--c-r-pill);width:100%;font-size:.82rem}
.user-entry svg{height:15px;width:15px}
.user-other:hover .user-inner{opacity:1}
.planning{padding:14px;border:1px solid var(--c-divider);border-radius:var(--c-r-md);background:var(--c-surface-x);margin-top:16px}
.planning-name{text-transform:uppercase;gap:7px;font-weight:800;color:var(--c-accent-600);display:flex;align-items:center;letter-spacing:.05em;margin:0 0 12px;font-size:.82rem}
.planning-name svg{width:16px;color:var(--c-accent);flex:none;height:16px}
.planning-rail{display:flex;list-style:none;margin:0 0 14px;padding:0;gap:5px}
.planning-cell{min-width:0;border-radius:11px;flex:1 1 0;flex-direction:column;border:1px solid var(--c-divider);background:#fdffff;align-items:center;display:flex;gap:6px;padding:7px 1px}
.planning-subtitle{color:var(--c-dim);letter-spacing:.02em;font-weight:800;font-size:.6rem;text-transform:uppercase}
.planning-bullet{border-radius:50%;height:7px;width:7px;background:#d0d5e3}
.planning-cell.done{border-color:var(--c-accent);background:var(--c-blush-200)}
.planning-cell.done .planning-subtitle{color:var(--c-accent-600)}
.planning-cell.done .planning-bullet{box-shadow:0 0 0 3px rgba(141,200,167,.3);background:var(--c-success)}
.planning-list{display:flex;flex-direction:column;margin:0;gap:12px;padding:0;list-style:none}
.planning-list li{display:flex;align-items:center;gap:11px}
.planning-ic{width:34px;flex:none;color:#fdffff;place-items:center;height:34px;display:grid;border-radius:50%;background:linear-gradient(135deg,var(--c-accent),var(--c-red))}
.planning-ic svg{height:16px;width:16px}
.planning-txt{flex-direction:column;display:flex;line-height:1.2;min-width:0}
.planning-txt strong{font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--c-dim)}
.planning-txt span{font-size:.92rem;font-weight:700;color:var(--c-copy)}

.about{margin-top:18px}
.about-name{margin:0 0 8px;font-family:var(--c-font-display);align-items:center;font-weight:800;display:flex;color:var(--c-copy);font-size:1rem;gap:7px}
.about .lead{padding:13px 16px;border-left:3px solid var(--c-accent);background:var(--c-surface-x);margin:0;border-radius:0 var(--c-r-md) var(--c-r-md) 0;font-style:italic;color:var(--c-copy-50)}

.taste{margin-top:18px}
.taste-name{font-family:var(--c-font-display);margin:0 0 12px;text-transform:uppercase;font-weight:800;letter-spacing:.07em;font-size:.95rem;color:var(--c-accent-600)}
.taste-layout{grid-template-columns:1fr 1fr;display:grid;gap:12px;align-items:stretch}
.taste-side{padding:14px;border-radius:var(--c-r-md);border:1px solid}
.taste-side-done{border-color:var(--c-divider);background:var(--c-surface-x)}
.taste-side-off{border-color:#e3e6f1;background:#f5f7fa}
.taste-header{align-items:center;letter-spacing:.04em;font-weight:800;text-transform:uppercase;margin:0 0 12px;display:flex;font-size:.82rem;gap:7px}
.taste-header svg{flex:none;height:16px;width:16px}
.taste-side-done .taste-header{color:var(--c-accent-600)}
.taste-side-off .taste-header{color:var(--c-dim)}
.taste-side ul{list-style:none;padding:0;gap:11px;flex-direction:column;margin:0;display:flex}
.taste-side li{line-height:1.25;gap:10px;display:flex;align-items:center;font-size:.88rem}
.taste-side-done li{color:var(--c-copy)}
.taste-side-off li{color:var(--c-dim)}
.taste-ic{flex:none;display:grid;border-radius:50%;place-items:center;height:30px;width:30px}
.taste-ic svg{width:15px;height:15px}
.taste-side-done .taste-ic{color:#fdffff;background:linear-gradient(135deg,var(--c-accent),var(--c-red))}
.taste-side-off .taste-ic{border:1.5px solid #d7dbe7;background:#fdffff;color:#a8acc1}
.user-view-sparkle{width:46px;height:46px;top:14px;right:14px;left:auto}
.user-view-sparkle svg{width:21px;height:21px}
.user-layout{margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,52px)}
.user-side{min-width:0}
.user-view{border-radius:var(--c-r-sm);overflow:hidden;box-shadow:var(--c-elev-md);position:relative;margin:0;background:linear-gradient(160deg,var(--c-blush-200),var(--c-lilac-x))}
.user-view img{aspect-ratio:4/5;height:auto;width:100%;display:block;object-fit:cover}
.members{margin-top:10px}
.members-layout{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}
.members-cell{overflow:hidden;aspect-ratio:3/4;border-radius:var(--c-r-sm);position:relative;box-shadow:var(--c-elev-sm);display:block;cursor:pointer}
.members-cell img{height:100%;object-fit:cover;width:100%;display:block}

.members-cell:nth-child(1) img{object-position:50% 12%;filter:blur(9px) brightness(.9) contrast(1.03);transform:scale(1.6) rotate(2deg)}
.members-cell:nth-child(2) img{transform:scale(-2,2) rotate(5deg);object-position:88% 42%;filter:blur(11px) brightness(.82) contrast(1.06) grayscale(.3)}
.members-cell:nth-child(3) img{transform:scale(-1.4,1.4) rotate(8deg);object-position:12% 80%;filter:blur(9px) brightness(.92) sepia(.38)}
.members-cell::after{position:absolute;content:"";z-index:1;background:linear-gradient(180deg,rgba(1,1,1,.01),rgba(1,1,1,.16));inset:0}
.members-dot{inset:0;place-items:center;display:grid;z-index:2;position:absolute;color:#fdffff}
.members-dot svg{width:26px;height:26px;filter:drop-shadow(0 2px 6px rgba(1,1,1,.61))}
.members-cell:hover::after{background:linear-gradient(180deg,rgba(1,1,1,.01),rgba(1,1,1,.23))}

.bullet{font-size:.6rem;line-height:1;color:var(--c-success)}
.user-aside{top:96px;position:sticky}
@media(max-width:480px){.taste-layout{gap:8px}.taste-side{padding:11px 9px}.taste-side li{font-size:.78rem;gap:7px}.taste-header{font-size:.74rem;gap:5px}.taste-ic{width:26px;height:26px}.taste-ic svg{width:13px;height:13px}.taste-name{font-size:.88rem}}
.user-side .btn-full{margin-top:14px}


.dock-modal{z-index:84;position:fixed;transform-origin:center bottom;width:58px;opacity:0;animation:waft 2.8s ease-in-out infinite;right:16px;height:58px;pointer-events:none;transition:opacity .3s ease;bottom:86px;border-radius:50%}
.dock-modal::after{inset:0;border-radius:50%;animation:glow 2.2s ease-out infinite;position:absolute;content:"";pointer-events:none}

.shot{padding:16px 18px;text-align:center;border:1px solid var(--c-divider-50);border-radius:var(--c-r-sm);margin-bottom:14px;box-shadow:var(--c-elev-sm);background:var(--c-surface-x)}
.shot-name{color:var(--c-copy);font-family:var(--c-font-display);font-weight:800;margin:0;line-height:1.1;font-size:1.6rem}
.shot-subtitle{color:var(--c-copy-50);display:flex;margin:6px 0 0;justify-content:center;font-size:.98rem;align-items:center;gap:4px 10px;flex-wrap:wrap}
.shot-subtitle span,.shot-subtitle a{gap:4px;align-items:center;display:inline-flex}
.shot-subtitle a{color:var(--c-accent-600);text-decoration:none}
.shot-subtitle a:hover{text-decoration:underline}
.shot-subtitle svg{color:var(--c-accent);width:14px;height:14px}
@keyframes waft{0%,78%,100%{transform:rotate(0) translate3d(0,0,0)}80%{transform:rotate(-9deg) translate3d(-4px,0,0)}83%{transform:rotate(8deg) translate3d(4px,0,0)}86%{transform:rotate(-6deg) translate3d(-3px,0,0)}89%{transform:rotate(4deg) translate3d(2px,0,0)}92%{transform:rotate(-2deg) translate3d(-1px,0,0)}95%{transform:rotate(1deg) translate3d(0,0,0)}}
@keyframes glow{0%{box-shadow:0 0 0 0 rgba(235,76,150,.51)}70%,100%{box-shadow:0 0 0 16px rgba(235,76,150,0)}}

.nearby{display:flex;gap:32px;flex-direction:column}
.nearby-set h2{font-size:1.15rem;color:var(--c-copy);font-weight:800;margin-bottom:16px}
.nearby-menu{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}
.nearby-menu a{transition:transform .14s,box-shadow .14s,color .14s;box-shadow:var(--c-elev-sm);display:flex;font-size:.92rem;align-items:center;border:1px solid var(--c-divider);font-weight:600;background:var(--c-surface);justify-content:space-between;border-radius:var(--c-r-md);gap:10px;color:var(--c-copy);padding:13px 16px}
.nearby-menu a:hover{transform:translateY(-3px);color:var(--c-accent-600);box-shadow:var(--c-elev-md)}
.nearby-menu a .needle{white-space:nowrap;font-size:.82rem;gap:4px;flex:none;display:inline-flex;color:var(--c-accent);font-weight:700;align-items:center}
.nearby-menu a .needle svg{height:14px;width:14px}

.guide{align-items:center;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}

.app-foot{background:var(--c-ft-back);color:var(--c-ft)}
.app-foot .inner{padding-block:56px 22px}
.app-foot a{color:var(--c-ft)}
.app-foot a:hover{color:var(--c-ft-x)}


.hub{z-index:80;left:0;position:fixed;padding:0 12px;right:0;bottom:14px;justify-content:center;pointer-events:none;display:flex}
.hub-inner{border-radius:22px;background:rgba(21,17,27,.88);pointer-events:auto;align-items:center;padding:6px 12px;box-shadow:0 14px 40px -10px rgba(1,1,1,.51);border:1px solid rgba(253,255,255,.1);gap:7px;display:flex;backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);max-width:calc(100vw - 24px)}
.hub-cell{gap:3px;padding:5px 7px;display:flex;justify-content:center;min-width:50px;font-size:.6rem;color:rgba(253,255,255,.79);transition:color .15s ease,background .15s ease;border-radius:13px;font-weight:700;position:relative;align-items:center;text-decoration:none;flex-direction:column}
.hub-cell:hover{background:rgba(253,255,255,.09);color:#fdffff}
.hub-cell svg{width:21px;height:21px}
.hub-sum{margin-left:2px;height:15px;font-size:.56rem;border-radius:var(--c-r-pill);top:-2px;color:#fdffff;background:var(--c-like);border:2px solid rgba(21,17,27,.96);min-width:15px;padding:0 4px;font-weight:800;text-align:center;line-height:15px;position:absolute;left:50%}
.hub-cell-off{pointer-events:none;opacity:.38}
.hub-cell span{white-space:nowrap}
.hub-promo{font-size:.6rem;text-decoration:none;color:#fdffff;margin:0 2px;font-weight:800;flex-direction:column;gap:3px;align-items:center;display:flex}
.hub-promo-inner{width:54px;margin-top:-22px;border-radius:50%;place-items:center;height:54px;display:grid;overflow:hidden;background:linear-gradient(135deg,var(--c-orange),var(--c-red) 55%,var(--c-accent));box-shadow:0 8px 20px -5px rgba(249,73,98,.84);border:3px solid rgba(21,17,27,.96)}
.hub-promo-inner img{height:100%;width:100%;object-fit:cover}
.hub-promo-inner svg{width:24px;color:#fdffff;height:24px}
.foot-layout{display:grid;gap:40px;grid-template-columns:1.6fr 1fr 1fr}
.foot-logo{align-items:center;gap:10px;margin-bottom:12px;color:var(--c-ft-x);font-family:var(--c-font-display);display:flex;font-weight:800;font-size:1.2rem}
.foot-side>p:not(.foot-name){color:var(--c-ft-50);font-size:.94rem;max-width:34ch}
.foot-name{margin-bottom:14px;color:var(--c-ft-x);font-size:1rem;font-weight:800}
.foot-menu{gap:10px;font-size:.94rem;display:grid}


.specs-figures{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.crumbs{font-size:.86rem;gap:6px;justify-content:flex-start;display:flex;flex-wrap:wrap;color:var(--c-dim);margin-bottom:14px}
.crumbs li:not(:last-child)::after{color:var(--c-dim);content:"\00203a";margin-left:6px}
.crumbs a{color:var(--c-copy-50)}
.crumbs:has(+ .intro-head){justify-content:center}

.form-frame{max-width:640px}
.form-holder{width:1px;height:1px;position:absolute;overflow:hidden;left:-9999px}
.legal{border-top:1px solid var(--c-ft-border);font-size:.86rem;color:var(--c-ft-50);padding-top:22px;margin-top:34px}
.spot-panel{border-radius:var(--c-r-lg);border:1px solid var(--c-divider-50);aspect-ratio:4/3;position:relative;overflow:hidden;box-shadow:var(--c-elev-md);background:var(--c-lilac)}
.spot-panel.spot-defer{cursor:pointer}
.spot-holder{padding:20px;gap:10px;display:grid;background:linear-gradient(160deg,var(--c-lilac-x),var(--c-surface-x));text-align:center;position:absolute;inset:0;place-items:center}
.spot-holder p{color:var(--c-copy);font-weight:700}
.spot-needle{color:var(--c-red);filter:drop-shadow(0 10px 12px rgba(249,73,98,.51))}
.spot-needle svg{height:40px;fill:currentColor;width:40px;stroke:none}
.spot-panel iframe{height:100%;inset:0;border:0;position:absolute;width:100%}
.spot-panel.is-live .spot-holder{display:none}

.form{background:var(--c-surface);box-shadow:var(--c-elev-md);border-radius:var(--c-r-lg);border:1px solid var(--c-divider-50);padding:clamp(24px,3vw,40px)}
.form-cell{gap:7px;display:grid;margin-bottom:18px}
.form-cell label{font-weight:700;font-size:.92rem}
.dock-modal-face{border-radius:50%;display:block;object-fit:cover;border:3px solid var(--c-surface);width:100%;height:100%;box-shadow:0 12px 26px -8px rgba(1,1,1,.46)}
.dock-modal-bullet{border-radius:50%;color:var(--c-inverse);display:grid;height:23px;box-shadow:var(--c-elev-sm);top:-3px;width:23px;place-items:center;right:-3px;position:absolute;background:linear-gradient(135deg,var(--c-accent),var(--c-red));border:2px solid var(--c-surface)}
.dock-modal-bullet svg{height:12px;width:12px}
.figure{box-shadow:var(--c-elev-sm);border-radius:var(--c-r-md);align-items:center;padding:14px 16px;border:1px solid var(--c-divider-50);display:flex;gap:12px;background:var(--c-surface)}
.figure-ic{height:40px;flex:none;display:grid;color:var(--c-accent);place-items:center;background:var(--c-surface-x);width:40px;border-radius:12px}
.figure-ic svg{height:18px;width:18px}
.figure-txt dt{color:var(--c-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem}
.figure-txt dd{margin:2px 0 0;font-family:var(--c-font-display);font-weight:800;font-size:.98rem}

.user-view .user-view-dot{top:12px;left:12px;right:auto}
.user-aside .lead{margin-top:18px}
.form-note{font-weight:700}
.form-note-done{color:var(--c-success)}
.form-note-off{color:var(--c-accent-600)}

.lookup-form{box-shadow:var(--c-elev-md);gap:12px;border-radius:var(--c-r-pill);background:var(--c-surface);display:flex;margin:0 auto;padding:12px;border:1px solid var(--c-divider-50)}
.lookup-form .input{background:transparent;font-size:1.06rem;border:none;box-shadow:none}
.lookup-form .input:focus{box-shadow:none}
.lookup-form+.nearby{margin-top:40px}
.input-row{gap:18px;grid-template-columns:1fr 1fr;display:grid}
.input{font-family:inherit;transition:border-color .16s,box-shadow .16s;background:var(--c-surface-50);border-radius:var(--c-r-sm);width:100%;color:var(--c-copy);border:1.5px solid var(--c-divider);font-size:1rem;padding:13px 16px}
.input:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px rgba(235,76,150,.15)}
textarea.input{resize:vertical;min-height:140px}

.thread-dot{color:var(--c-inverse);height:22px;place-items:center;font-size:.72rem;padding:0 6px;box-shadow:var(--c-elev-sm);border-radius:var(--c-r-pill);top:-3px;min-width:22px;font-weight:800;right:-3px;border:2px solid var(--c-surface);position:absolute;background:var(--c-like);display:grid;line-height:1}
.thread-dot[hidden]{display:none}

.page-feature{padding-block:clamp(40px,6vw,80px) 20px}
.page-feature h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.page-feature p{margin:16px auto 0;color:var(--c-copy-50);font-size:1.08rem}

.holder{text-align:center;padding-block:clamp(60px,10vw,140px)}
.holder-no{line-height:.9;font-family:var(--c-font-display);font-weight:800;font-size:clamp(6rem,20vw,13rem)}
.holder-set{flex-wrap:wrap;margin-top:30px;display:flex;gap:14px;justify-content:center}

@media (max-width:980px){
  
  .inner{max-width:720px}
  .users-layout{grid-template-columns:repeat(3,1fr)}
  .user-layout{grid-template-columns:1fr}
  .user-view{width:100%;justify-self:start}
  .user-aside{position:static}
  .guide{grid-template-columns:1fr}
  .foot-layout{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .main-menu{display:none}
  .menu-btn{display:flex;position:fixed;top:18px;right:18px}
}
@media (min-width:861px){
  .aside-phone,.menu-screen{display:none}
}
@media (max-width:600px){
  :root{--c-section-y:clamp(30px,7vw,48px);--c-edge-x:8px}
  
  .intro-head{margin-bottom:10px}
  .band{padding-top:16px}
  .foot-layout,.input-row{grid-template-columns:1fr}
  .users-layout{grid-template-columns:repeat(2,1fr);gap:5px}
  .user-panel{border-radius:var(--c-r-sm)}
  .spot-panel{border-radius:var(--c-r-sm)}
  .user-inner{padding:16px 10px}
  
  .band-lead{padding-top:8px}
  .band-lead .crumbs{margin-bottom:8px;font-size:.78rem}
  .lookup-form{flex-direction:column;border-radius:var(--c-r-lg)}
  .lookup-form .btn{width:100%}
  .band-user{padding-top:0}
  .band-user .crumbs{margin-bottom:8px;font-size:.78rem}
  .user-view img{aspect-ratio:1/1;max-height:40vh}
  .members{margin-top:8px}
  .members-layout{gap:6px}
  .members-cell{aspect-ratio:1/1}
  .shot{padding:8px 12px;margin-bottom:8px}
  .shot-name{font-size:1.2rem}
  .shot-subtitle{font-size:.85rem;margin-top:3px}
  .user-side .btn-full{margin-top:8px}
  .user-layout{margin-top:0}
  .user-aside{display:flex;flex-direction:column;margin-top:8px}
  .user-aside>:first-child{margin-top:4px}
  .hub{bottom:10px;padding:0 8px}
  .hub-inner{max-width:calc(100vw - 16px);gap:10px;padding:5px 14px}
  .hub-cell{min-width:44px;padding:3px 4px;gap:2px;font-size:.54rem}
  .hub-cell svg{width:20px;height:20px}
  .hub-sparkle span{max-width:88px;overflow:hidden;text-overflow:ellipsis}
  .hub-promo-inner{width:46px;height:46px;margin-top:-16px}
  .hub-promo-inner svg{width:22px;height:22px}
  .specs-figures{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .figure{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .figure-ic{width:34px;height:34px}
  .figure-txt{min-width:0}
  .figure-txt dd{font-size:.92rem;overflow-wrap:anywhere}
}



.bye-modal{align-items:center;background:var(--c-backdrop);justify-content:center;position:fixed;padding:20px;backdrop-filter:blur(3px);display:none;-webkit-backdrop-filter:blur(3px);inset:0;z-index:1200}
.bye-modal.is-live{display:flex}
.bye-modal-panel{width:100%;max-width:400px;animation:drift .34s cubic-bezier(.175,.885,.32,1.275);color:var(--c-copy);box-shadow:var(--c-elev-lg);position:relative;border-radius:var(--c-r-xl);background:var(--c-surface);overflow:hidden}
@keyframes drift{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
.bye-modal-header{position:relative;height:92px;overflow:hidden;background:linear-gradient(135deg,var(--c-orange),var(--c-red) 52%,var(--c-accent))}
.bye-modal-header::after{content:"";position:absolute;border-radius:50%;width:62%;right:-18%;height:220%;border:18px solid rgba(253,255,255,.13);top:-70%}
.bye-modal-inner{padding:0 clamp(24px,5vw,34px) clamp(24px,5vw,30px);text-align:center}
.bye-modal-face{width:88px;height:88px;margin:-44px auto 0;position:relative}
.bye-modal-face img{display:block;height:100%;box-shadow:var(--c-elev-md);border-radius:50%;object-fit:cover;width:100%;border:4px solid var(--c-surface)}
.bye-modal-face::before{inset:-5px;position:absolute;pointer-events:none;content:"";border-radius:50%;animation:throb 2.2s ease-out infinite}
@keyframes throb{0%{box-shadow:0 0 0 0 rgba(235,76,150,.51)}70%,100%{box-shadow:0 0 0 13px rgba(235,76,150,0)}}
.bye-modal-bullet{right:5px;background:var(--c-success);border-radius:50%;position:absolute;bottom:5px;height:17px;border:3px solid var(--c-surface);width:17px}
.bye-modal-pretitle{text-transform:uppercase;font-weight:800;font-size:.73rem;margin:14px 0 0;color:var(--c-accent-600);letter-spacing:.1em}
.bye-modal-name{line-height:1.16;margin:7px 0 0;font-size:clamp(1.3rem,3.6vw,1.62rem)}
.bye-modal-loc{font-weight:700;font-size:.9rem;margin:9px 0 0;color:var(--c-dim)}
.bye-modal-txt{color:var(--c-copy-50);font-size:.95rem;margin:11px 0 0}
.bye-modal-promo{color:var(--c-inverse);background:linear-gradient(135deg,var(--c-orange),var(--c-red) 55%,var(--c-accent));margin-top:20px;width:100%;padding:14px 22px;border-radius:var(--c-r-btn);display:inline-flex;box-shadow:var(--c-elev-md);font-family:var(--c-font-display);gap:8px;align-items:center;font-weight:800;justify-content:center;transition:transform .16s ease,box-shadow .16s ease}
.bye-modal-promo:hover{box-shadow:var(--c-elev-lg);transform:translateY(-2px)}
.bye-modal-promo svg{width:18px;height:18px}
.bye-modal-close{border-radius:50%;display:grid;position:absolute;top:12px;cursor:pointer;width:34px;color:var(--c-copy);place-items:center;background:rgba(253,255,255,.88);border:0;height:34px;right:12px;z-index:3;box-shadow:var(--c-elev-sm)}
.bye-modal-close svg{height:15px;width:15px}
.bye-modal-skip{color:var(--c-dim);border:0;font-size:.83rem;text-decoration:underline;background:none;cursor:pointer;margin:11px auto 0}
@media(max-width:640px){.bye-modal{display:none!important}}
