/* ActivityX Hub design tokens. */
:root{
  --radius:.875rem;
  color-scheme:light;
  --ink:#111827;--background:#F5F7FB;--foreground:#111827;
  --surface:rgba(255,255,255,.92);--surface-elevated:#fff;--card:#fff;--card-foreground:#111827;--navy:#15345b;
  --primary:#1877F2;--primary-foreground:#fff;--primary-glow:#4b9aff;
  --secondary:#e8eef7;--secondary-foreground:#1f2937;--muted:#F0F4FA;--muted-foreground:#64748B;
  --accent:#eaf2ff;--accent-foreground:#1557ae;--destructive:#DC2626;--success:#16A34A;--warning:#F97316;
  --border:#E2E8F0;--input:#fff;--ring:#1877F2;
  --gradient-brand:linear-gradient(135deg,#12345b,#1877F2);--gradient-hero:linear-gradient(160deg,#10263f 0%,#16477d 55%,#2876bb 100%);
  --shadow-soft:0 5px 18px -10px rgba(20,42,75,.22);--shadow-elevated:0 -8px 28px -18px rgba(20,42,75,.24);--shadow-card:0 4px 18px -12px rgba(20,42,75,.2);
  --font-display:"Sora",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-sans:"Manrope",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bg-canvas:var(--background);--bg-surface:var(--card);--bg-elevated:var(--surface-elevated);
  --text-primary:var(--foreground);--text-secondary:var(--muted-foreground);--text-inverse:#fff;
  --action-primary:var(--primary);--action-primary-hover:#1464CC;--focus-ring:var(--ring);
  --status-success:var(--success);--status-warning:var(--warning);--status-error:var(--destructive);--status-info:#0284C7;
  --glass-surface:color-mix(in srgb,var(--surface-elevated) 88%,transparent);--glass-border:var(--border);
}
.dark{
  color-scheme:dark;
  --ink:#F8FAFC;--background:#080B10;--foreground:#F8FAFC;
  --surface:rgba(17,23,32,.94);--surface-elevated:#18212C;--card:#111720;--card-foreground:#F8FAFC;--navy:#080B10;
  --primary:#1877F2;--primary-foreground:#fff;--primary-glow:#4b9aff;
  --secondary:#18212C;--secondary-foreground:#F8FAFC;--muted:#18212C;--muted-foreground:#A7B2C0;
  --accent:#182b43;--accent-foreground:#c9e0ff;--destructive:#EF4444;--success:#22C55E;--warning:#FF8A34;
  --border:#273242;--input:#111720;--ring:#4b9aff;
  --gradient-brand:linear-gradient(135deg,#10233b,#1877F2);--gradient-hero:linear-gradient(160deg,#080B10 0%,#11243a 55%,#1b4b7b 100%);
  --shadow-soft:0 8px 24px -12px rgba(0,0,0,.58);--shadow-elevated:0 -10px 36px -18px rgba(0,0,0,.68);--shadow-card:0 8px 24px -14px rgba(0,0,0,.6);
  --status-info:#38BDF8;--glass-surface:color-mix(in srgb,#111720 90%,transparent);--glass-border:#273242;
}
*,*::before,*::after{box-sizing:border-box;border-color:var(--border)}
html,body{margin:0;padding:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans);
  -webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:0;margin:0}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.axi{flex-shrink:0;display:block}

/* glass materials */
.glass{background-color:color-mix(in oklab,var(--surface) 72%,transparent);backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);border:1px solid color-mix(in oklab,var(--foreground) 10%,transparent);
  box-shadow:inset 0 1px 0 color-mix(in oklab,white 55%,transparent),var(--shadow-card)}
.glass-photo{background:rgba(255,255,255,.14);backdrop-filter:blur(20px) saturate(170%);-webkit-backdrop-filter:blur(20px) saturate(170%);
  border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 24px -12px rgba(0,0,0,.5);color:#fff}
.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}
.safe-top{padding-top:max(env(safe-area-inset-top),.5rem)}
.safe-bottom{padding-bottom:max(env(safe-area-inset-bottom),.5rem)}

@keyframes ax-slide-up{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
@keyframes ax-fade-in{from{opacity:0}to{opacity:1}}
.animate-slide-up{animation:ax-slide-up .45s cubic-bezier(.2,.8,.2,1) both}
.animate-fade-in-ax{animation:ax-fade-in .3s ease-out both}

/* shell */
#axh-root{height:var(--axh-viewport-height,100dvh);min-height:0;display:flex;justify-content:center;background:var(--background)}
#axh-root.axh-chat-viewport{position:fixed;inset-inline:0;top:var(--axh-viewport-top,0px);height:var(--axh-viewport-height,100dvh);overflow:hidden;z-index:100}
body.axh-chat-viewport{overflow:hidden;overscroll-behavior:none}
.axh-frame{position:relative;width:100%;max-width:430px;height:var(--axh-viewport-height,100dvh);min-height:0;background:var(--background);display:flex;flex-direction:column;overflow:hidden}
@media(min-width:520px){#axh-root{background:oklch(0.9 0 0)}.dark #axh-root{background:oklch(0.07 0 0)}
  .axh-frame{box-shadow:0 30px 80px -30px rgba(0,0,0,.5)}}
.axh-screen{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}
.axh-screen.pad{padding:1rem 1rem 6.5rem}
.axh-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.5rem;min-height:60vh}
.axh-placeholder h2{font-size:1.25rem}.axh-placeholder p{color:var(--muted-foreground);font-size:.875rem;margin:0}
.axh-badge{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;border-radius:999px;background:var(--accent);color:var(--accent-foreground);font-size:.75rem;font-weight:600}

/* buttons (black pill, as in reference) */
.ax-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;height:3rem;width:100%;border-radius:999px;font-size:.875rem;font-weight:600;transition:transform .15s}
.ax-btn:active{transform:scale(.98)}
.ax-btn-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-soft)}
.ax-btn-glass{border:1px solid var(--border);background:color-mix(in oklab,var(--surface) 75%,transparent);color:var(--foreground);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-card)}

/* photo hero + bottom sheet (reference screens 1,3,5-8) */
.ax-hero{position:relative;flex:1;min-height:0;overflow:hidden;color:#fff}
.ax-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ax-hero-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.28),transparent 36%,rgba(0,0,0,.82))}
.ax-sheet{position:relative;z-index:20;margin-top:-4px;display:flex;flex-direction:column;gap:.75rem;background:var(--background);
  border-radius:30px 30px 0 0;padding:1.25rem 1.25rem max(1.25rem,env(safe-area-inset-bottom));box-shadow:var(--shadow-elevated)}
.ax-link{font-weight:500;text-decoration:underline;text-underline-offset:2px}
.ax-fine{margin:0;padding-top:.25rem;text-align:center;font-size:11px;line-height:1.6;color:var(--muted-foreground)}

/* ---- auth / forms ---- */
.axh-screen.fit{overflow:hidden}
.ax-col{display:flex;flex-direction:column;flex:1;min-height:0}
.ax-scroll{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:none}
.ax-scroll::-webkit-scrollbar{display:none}
.ax-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;flex-shrink:0;height:56px;padding:0 12px;
  padding-top:env(safe-area-inset-top);box-sizing:content-box;border-bottom:1px solid color-mix(in oklab,var(--border) 50%,transparent);
  background:color-mix(in oklab,var(--background) 70%,transparent);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px)}
.ax-topbar.clear{border-color:transparent;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;color:#fff}
.ax-topbar h1{flex:1;text-align:center;font-family:var(--font-sans);font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ax-topbar .r{display:flex;width:44px;justify-content:flex-end}
.ax-back{display:grid;place-items:center;width:40px;height:40px;border-radius:999px;color:var(--foreground);
  background-color:color-mix(in oklab,var(--surface) 72%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid color-mix(in oklab,var(--foreground) 10%,transparent);box-shadow:var(--shadow-card)}
.ax-topbar.clear .ax-back{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);color:#fff}
.ax-back:active{transform:scale(.95)}
.ax-sh{padding:8px 20px 0}
.ax-sh .eyebrow{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--primary)}
.ax-sh h1{font-size:28px;font-weight:700;line-height:1.2}
.ax-sh p.sub{margin:8px 0 0;font-size:15px;line-height:1.6;color:var(--muted-foreground)}
.ax-form{display:flex;flex-direction:column;gap:16px;padding:0 20px}
.ax-form.tight{gap:12px}
.ax-field label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;opacity:.9}
.ax-input{display:flex;align-items:center;height:56px;padding:0 16px;border-radius:16px;border:1px solid var(--border);
  background:color-mix(in oklab,var(--surface) 80%,transparent);box-shadow:var(--shadow-card);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  transition:border-color .15s}
.ax-input:focus-within{border-color:var(--primary)}
.ax-field.err .ax-input{border-color:var(--destructive)}
.ax-input .ic{margin-right:12px;color:var(--muted-foreground)}
.ax-input input{flex:1;min-width:0;background:transparent;border:0;outline:0;font:inherit;font-size:15px;color:var(--foreground)}
.ax-input input::placeholder{color:color-mix(in oklab,var(--muted-foreground) 70%,transparent)}
.ax-input .eye{margin-left:8px;padding:4px;border-radius:999px;color:var(--muted-foreground)}
.ax-hint{margin:6px 0 0;padding:0 4px;font-size:12px;color:var(--muted-foreground)}
.ax-field.err .ax-hint{color:var(--destructive)}
.ax-hint:empty{display:none}
.ax-btn[disabled]{opacity:.6;pointer-events:none}
.ax-btn .spin{display:none;width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:axspin .7s linear infinite}
.ax-btn.loading .spin{display:inline-block}
@keyframes axspin{to{transform:rotate(360deg)}}
.ax-auth-footer{text-align:center;font-size:14px;color:var(--muted-foreground);margin:0}
.ax-auth-footer a{font-weight:600;color:var(--primary)}
.ax-or{display:flex;align-items:center;gap:12px;margin:24px 20px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-or::before,.ax-or::after{content:"";flex:1;height:1px;background:var(--border)}
.ax-textbtn{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:8px;font-size:14px;font-weight:600;color:var(--primary);width:100%}
.ax-textbtn:active{background:var(--muted)}
.ax-strength{display:flex;align-items:center;gap:8px;margin-top:8px;padding:0 4px}
.ax-strength .bars{display:flex;flex:1;gap:4px}
.ax-strength .bars span{height:4px;flex:1;border-radius:999px;background:var(--muted);transition:background .2s}
.ax-strength .bars span.on1{background:var(--muted-foreground)}
.ax-strength .bars span.on2{background:color-mix(in oklab,var(--foreground) 60%,transparent)}
.ax-strength .bars span.on3{background:var(--foreground)}
.ax-strength em{font-style:normal;font-size:11px;font-weight:500;color:var(--muted-foreground)}

/* login band */
.ax-login-band{position:relative;flex-shrink:0;height:176px;overflow:hidden;color:#fff;background:var(--gradient-brand)}
.ax-login-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ax-login-band .shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.35),rgba(0,0,0,.75))}
.ax-login-band .in{position:relative;z-index:2}
.ax-login-head{padding:28px 20px 0}
.ax-login-head p{margin:0;font-size:14px;color:rgba(255,255,255,.75)}
.ax-login-head h1{margin-top:4px;font-size:30px;font-weight:700}
.ax-login-sheet{position:relative;margin-top:-20px;display:flex;flex-direction:column;align-items:center;padding:28px 20px 8px;
  background:var(--background);border-radius:30px 30px 0 0;box-shadow:var(--shadow-elevated)}
.ax-login-sheet h1{font-size:24px;font-weight:700}
.ax-login-sheet p{margin:8px 0 0;font-size:14px;color:var(--muted-foreground)}
.ax-auth-login{overflow-x:hidden}
.ax-auth-login .ax-login-sheet{padding-bottom:18px}
.ax-auth-form{gap:12px;padding:0 20px 16px}
.ax-auth-forgot{align-self:flex-end;margin-top:-4px;font-size:12px;font-weight:600;color:var(--primary)}
.ax-auth-footer-wrap{margin-top:auto;border-top:1px solid var(--border);padding:18px 20px max(18px,env(safe-area-inset-bottom))}
.ax-auth-register{overflow-x:hidden}
.ax-auth-reghead{display:flex;flex-direction:column;align-items:center;padding:28px 20px 24px;text-align:center}
.ax-auth-reghead h1{margin-top:18px;font-size:25px;line-height:31px}
.ax-auth-reghead p{margin:5px 0 0;font-size:13px;color:var(--muted-foreground)}
.ax-auth-camera{display:grid;place-items:center;width:76px;height:76px;border:4px solid var(--background);border-radius:50%;background:var(--muted);color:var(--primary);box-shadow:var(--shadow-soft)}

/* otp */
.ax-otp{display:flex;justify-content:center;gap:8px;padding:0 20px;margin-top:40px}
.ax-otp input{width:48px;height:56px;border-radius:16px;border:2px solid var(--border);background:transparent;text-align:center;
  font:600 20px var(--font-sans);color:var(--foreground);outline:0;transition:border-color .15s}
.ax-otp input:focus{border-color:var(--primary)}
.ax-otp.err input{border-color:var(--destructive)}
.ax-center-note{text-align:center;font-size:14px;margin:12px 0 0}
.ax-center-note.bad{color:var(--destructive);font-weight:500}

/* success state (forgot) */
.ax-success{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;text-align:center}
.ax-success .badge{position:relative;margin-bottom:24px}
.ax-success .badge .ring{position:absolute;inset:0;border-radius:50%;background:color-mix(in oklab,var(--primary) 20%,transparent);animation:axring 1.8s ease-out infinite}
.ax-success .badge .dot{position:relative;display:grid;place-items:center;width:80px;height:80px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-elevated)}
@keyframes axring{0%{transform:scale(.9);opacity:.8}100%{transform:scale(1.6);opacity:0}}
.ax-success h2{font-size:24px;font-weight:700}
.ax-success p{margin:8px 0 0;max-width:20rem;font-size:15px;color:var(--muted-foreground)}
.ax-success p b{color:var(--foreground)}

/* toast */
#axh-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:999;pointer-events:none;
  display:flex;flex-direction:column;gap:8px;align-items:center;width:min(92vw,380px)}
.ax-toast{pointer-events:auto;padding:12px 18px;border-radius:999px;font-size:13px;font-weight:600;color:var(--foreground);
  background:color-mix(in oklab,var(--surface-elevated) 90%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border:1px solid var(--border);box-shadow:var(--shadow-elevated);animation:ax-slide-up .3s ease-out both}
.ax-toast.error{color:var(--destructive)}

/* ---- onboarding ---- */
.ax-dots{display:flex;align-items:center;gap:6px}
.ax-dots span{height:6px;width:6px;border-radius:999px;background:color-mix(in oklab,currentColor 25%,transparent);transition:all .2s}
.ax-dots span.on{width:20px;background:currentColor}
.ax-bottombar{position:sticky;bottom:0;z-index:20;flex-shrink:0;margin-top:auto;padding:12px 20px max(12px,env(safe-area-inset-bottom));
  border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:color-mix(in oklab,var(--background) 72%,transparent);
  backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px)}
.ax-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:2px solid var(--border);
  background:var(--surface);color:var(--foreground);font-size:14px;font-weight:500;transition:all .15s}
.ax-chip:active{transform:scale(.97)}
.ax-chip.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-chip .axi{opacity:.9}
.ax-search{display:flex;align-items:center;gap:8px;height:48px;padding:0 16px;border-radius:999px;border:2px solid var(--border);background:var(--surface)}
.ax-search input{flex:1;min-width:0;background:transparent;border:0;outline:0;font:inherit;font-size:14px;color:var(--foreground)}
.ax-search .axi{color:var(--muted-foreground)}
.ax-sticky{position:sticky;top:0;z-index:10;margin-top:20px;padding:4px 20px 12px;background:color-mix(in oklab,var(--background) 95%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ax-meta{display:flex;justify-content:space-between;margin-top:8px;padding:0 4px;font-size:12px;color:var(--muted-foreground)}
.ax-meta b{color:var(--foreground);font-weight:600}
.ax-section h2{margin:20px 0 12px;font-family:var(--font-sans);font-size:14px;font-weight:600;color:var(--muted-foreground)}
.ax-wrap{display:flex;flex-wrap:wrap;gap:8px}
.ax-empty{display:flex;flex-direction:column;align-items:center;padding:64px 24px;text-align:center}
.ax-empty .ic{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:var(--muted);color:var(--muted-foreground)}
.ax-empty h3{margin-top:16px;font-family:var(--font-sans);font-size:16px;font-weight:600}
.ax-empty p{margin:4px 0 0;font-size:14px;color:var(--muted-foreground)}
.ax-perk{display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:var(--card);box-shadow:var(--shadow-card);text-align:left}
.ax-perk .ic{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:color-mix(in oklab,var(--primary) 10%,transparent);color:var(--primary)}
.ax-perk p{margin:0}.ax-perk .t{font-size:14px;font-weight:600}.ax-perk .d{font-size:12px;color:var(--muted-foreground)}
.ax-pulse{position:relative;margin-bottom:24px}
.ax-pulse i{position:absolute;inset:0;border-radius:50%;background:color-mix(in oklab,var(--primary) 20%,transparent);animation:axring 1.8s ease-out infinite}
.ax-pulse i+i{animation-delay:.4s;background:color-mix(in oklab,var(--primary) 10%,transparent)}
.ax-pulse .dot{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;background:var(--gradient-brand);color:var(--primary-foreground);box-shadow:var(--shadow-elevated)}
.ax-textarea{display:block;width:100%;min-height:92px;resize:none;padding:12px 16px;border-radius:16px;border:2px solid var(--border);background:var(--surface);
  font:inherit;font-size:15px;color:var(--foreground);outline:0}
.ax-textarea:focus{border-color:var(--primary)}
.ax-avatar{position:relative;display:grid;place-items:center;width:112px;height:112px;overflow:hidden;border-radius:50%;background:var(--primary);color:var(--primary-foreground);
  box-shadow:var(--shadow-elevated);outline:4px solid var(--background)}
.ax-avatar img{width:100%;height:100%;object-fit:cover}
.ax-cam{position:absolute;right:-4px;bottom:-4px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--secondary);color:var(--secondary-foreground);
  box-shadow:var(--shadow-elevated);outline:4px solid var(--background)}
.ax-photo-top{position:relative;flex-shrink:0;height:34%;min-height:208px;overflow:hidden}
.ax-photo-top img{width:100%;height:100%;object-fit:cover}
.ax-photo-top::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 55%)}
.ax-photo-top .ax-topbar{position:absolute;left:0;right:0;top:0;z-index:5}
.ax-sheet-scroll{margin-top:-28px;padding-top:28px;border-radius:30px 30px 0 0;background:var(--background);box-shadow:var(--shadow-elevated);position:relative;z-index:6}
.ax-opt{display:flex;align-items:center;gap:16px;width:100%;padding:16px;border-radius:16px;border:2px solid var(--border);background:var(--card);text-align:left;transition:all .15s}
.ax-opt:active{transform:scale(.99)}
.ax-opt.on{border-color:var(--primary);box-shadow:var(--shadow-soft)}
.ax-opt .ic{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:12px;background:var(--muted)}
.ax-opt.on .ic{background:var(--primary);color:var(--primary-foreground)}
.ax-opt .tx{flex:1;min-width:0}.ax-opt .tx p{margin:0}.ax-opt .l{font-size:15px;font-weight:600}.ax-opt .s{font-size:12px;color:var(--muted-foreground)}
.ax-opt .ck{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--border)}
.ax-opt.on .ck{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-tip{margin-top:16px;padding:16px;border-radius:16px;background:color-mix(in oklab,var(--accent) 40%,transparent);font-size:14px}
.ax-tip p{margin:0}.ax-tip .m{margin-top:4px;color:var(--muted-foreground)}
.ax-finish{flex:1;display:flex;flex-direction:column;background:var(--gradient-hero);color:#fff}
.ax-finish .mid{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;text-align:center}
.ax-finish .ring{position:relative}
.ax-finish .ring i{position:absolute;inset:0;border-radius:50%;background:rgba(255,255,255,.3);animation:axring 1.8s ease-out infinite}
.ax-finish .ring i+i{background:rgba(255,255,255,.2);animation-delay:.4s}
.ax-finish .ring .dot{position:relative;display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:#fff;color:#111;box-shadow:var(--shadow-elevated)}
.ax-finish h1{margin-top:32px;font-size:30px;font-weight:800;line-height:1.15}
.ax-finish p.sub{margin:12px 0 0;max-width:20rem;font-size:15px;line-height:1.6;color:rgba(255,255,255,.85)}
.ax-finish .note{margin-top:32px;display:flex;align-items:center;gap:12px;width:100%;max-width:20rem;padding:16px;border-radius:16px;text-align:left}
.ax-finish .note p{margin:0;font-size:14px}
.ax-finish .go{display:flex;align-items:center;justify-content:center;height:56px;border-radius:16px;background:#fff;color:#111;font-size:15px;font-weight:600;box-shadow:var(--shadow-elevated)}

/* ---- toast desc ---- */
.ax-toast{border-radius:18px;text-align:center}
.ax-toast-d{margin-top:2px;font-size:11px;font-weight:500;color:var(--muted-foreground)}

/* ---- bottom nav (floating frosted pill) ---- */
.ax-nav{position:absolute;left:var(--gutter);right:var(--gutter);bottom:calc(14px + env(safe-area-inset-bottom));z-index:30;display:grid;grid-template-columns:repeat(5,1fr);height:64px;padding:0 8px;border-radius:32px;border:1px solid color-mix(in oklab,var(--foreground) 9%,transparent);background:color-mix(in oklab,var(--background) 76%,transparent);box-shadow:0 14px 34px -14px rgba(0,0,0,.4),inset 0 1px 0 color-mix(in oklab,white 55%,transparent);backdrop-filter:blur(32px) saturate(180%);-webkit-backdrop-filter:blur(32px) saturate(180%)}
.ax-nav-i{position:relative;display:flex;align-items:center;justify-content:center;color:var(--muted-foreground);transition:color .15s}
.ax-nav-i.on{color:var(--primary)}
.ax-nav-i .dot{position:absolute;bottom:6px;width:4px;height:4px;border-radius:50%;background:var(--primary)}
.ax-nav-create{justify-self:center;align-self:center;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-soft)}
.ax-nav-create:active{transform:scale(.95)}

/* ---- bottom sheet ---- */
.ax-bs{position:absolute;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;opacity:0;transition:opacity .3s}
.ax-bs.open{opacity:1;pointer-events:auto}
.ax-bs .bd{position:absolute;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.ax-bs .panel{position:relative;width:100%;padding:20px 20px max(20px,env(safe-area-inset-bottom));border-radius:24px 24px 0 0;border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent);
  background:var(--background);box-shadow:var(--shadow-elevated);transform:translateY(100%);transition:transform .3s}
.ax-bs.open .panel{transform:none}
.ax-bs .grab{width:48px;height:6px;margin:0 auto 12px;border-radius:999px;background:var(--muted)}
.ax-bs h3{margin-bottom:16px;text-align:center;font-size:18px;font-weight:700}
.ax-bs .rows{display:grid;gap:8px}
.ax-bs .row{display:flex;align-items:center;gap:12px;padding:16px;border-radius:16px;border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-card)}
.ax-bs .row .ic{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:16px;background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-soft)}
.ax-bs .row .tx{flex:1;min-width:0}.ax-bs .row p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-bs .row .l{font-size:14px;font-weight:700}.ax-bs .row .s{font-size:12px;color:var(--muted-foreground)}
.ax-bs .soon{padding:2px 8px;border-radius:999px;background:var(--accent);font-size:10px;font-weight:700;color:var(--accent-foreground)}

/* ---- home (v0.4.1: one 20px gutter, 28px rhythm, scrolling header) ---- */
:root{--gutter:10px}
.ax-home,.ax-searchpg{overscroll-behavior:contain}
.ax-stack{display:flex;flex-direction:column;gap:28px}
.ax-end{flex:none;height:calc(150px + env(safe-area-inset-bottom))}
.ax-homebar{display:flex;align-items:center;gap:12px;padding:calc(max(env(safe-area-inset-top),0px) + 16px) var(--gutter) 18px}
.ax-homebar .me{flex-shrink:0;line-height:0}
.ax-av44{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--primary);color:var(--primary-foreground);font-size:15px;font-weight:700;box-shadow:var(--shadow-soft)}
img.ax-av44{box-shadow:0 0 0 2px var(--background),0 0 0 3px color-mix(in oklab,var(--foreground) 14%,transparent)}
.ax-homebar .hi{flex:1;min-width:0}
.ax-homebar .hi p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-homebar .g{font-size:12px;line-height:16px;color:var(--muted-foreground)}
.ax-homebar .n{margin-top:1px;font-size:17px;line-height:22px;font-weight:700;letter-spacing:-.01em;font-family:var(--font-display)}
.ax-iconbtn{position:relative;display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:50%;color:var(--foreground);
  background-color:color-mix(in oklab,var(--surface) 80%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid color-mix(in oklab,var(--foreground) 9%,transparent);box-shadow:var(--shadow-card)}
.ax-iconbtn:active{transform:scale(.95)}
.ax-iconbtn .pip{position:absolute;right:10px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 2px var(--background)}
.ax-sbar{display:flex;align-items:center;gap:10px;height:52px;margin:0 var(--gutter);padding:0 8px 0 16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-sbar>.axi{color:var(--muted-foreground)}
.ax-sbar span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:var(--muted-foreground)}
.ax-sbar .f{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--muted);color:var(--foreground);font-style:normal}
.ax-sech{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:0 var(--gutter)}
.ax-sech .tt{min-width:0}
.ax-sech h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:24px;font-weight:700;letter-spacing:-.012em}
.ax-sech p{margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;line-height:17px;color:var(--muted-foreground)}
.ax-seeall{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;padding:6px 0 6px 8px;font-size:13px;font-weight:600;color:var(--foreground)}
.ax-seeall .axi{opacity:.55}
.ax-hs{display:flex;gap:12px;margin:-6px 0 -18px;padding:6px 0 18px var(--gutter);overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-left:var(--gutter);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ax-hs::-webkit-scrollbar{display:none}
.ax-hs::after{content:"";flex:0 0 0;margin-left:-2px}
.ax-hs>*{scroll-snap-align:start}
.ax-cat{display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 0 88px;padding:12px 8px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-card);transition:background .2s,color .2s,border-color .2s,transform .15s}
.ax-cat:active{transform:scale(.96)}
.ax-cat .ic{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--muted);transition:background .2s}
.ax-cat .l{font-size:11.5px;line-height:14px;font-weight:600}
.ax-cat.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-cat.on .ic{background:color-mix(in oklab,var(--primary-foreground) 16%,transparent)}
.ax-acard{position:relative;display:flex;flex-direction:column;flex:0 0 272px;overflow:hidden;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-acard .im{position:relative;display:block;height:168px;overflow:hidden;background:var(--muted)}
.ax-acard .im img{width:100%;height:100%;object-fit:cover}
.ax-acard .im::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 62%)}
.ax-acard .tag{position:absolute;top:12px;z-index:2;display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ax-acard .tag.t{left:12px;background:var(--secondary);color:var(--secondary-foreground)}
.ax-acard .tag.p{right:12px;background:rgba(255,255,255,.92);color:#111}
.ax-acard .chips{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-wrap:wrap;gap:6px;padding:12px;color:#fff}
.ax-acard .chips span{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:999px;background:rgba(0,0,0,.42);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:11px;font-weight:600;white-space:nowrap}
.ax-acard .bd{display:flex;flex:1;min-width:0;flex-direction:column;gap:14px;padding:16px;cursor:pointer}
.ax-acard h3{margin:0;min-height:40px;font-size:15px;line-height:20px;font-weight:700;letter-spacing:-.005em;font-family:var(--font-sans);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ax-host{display:flex;align-items:center;gap:10px;margin-top:auto}
.ax-host img,.ax-host .ph{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);font-size:12px;font-weight:700;box-shadow:0 0 0 2px var(--card)}
.ax-host p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-host .a{font-size:11px;line-height:14px;color:var(--muted-foreground)}
.ax-host .b{font-size:13px;line-height:17px;font-weight:600}
.ax-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:14px;border-top:1px solid color-mix(in oklab,var(--border) 80%,transparent)}
.ax-foot .j{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--muted-foreground)}
.ax-sm{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:34px;padding:0 18px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:13px;font-weight:600;box-shadow:var(--shadow-soft);transition:transform .15s}
.ax-sm:active{transform:scale(.96)}
.ax-sm.outline{background:transparent;color:var(--foreground);border:1px solid var(--border);box-shadow:none}
.ax-sm.done{background:var(--muted);color:var(--muted-foreground);border-color:transparent;box-shadow:none;pointer-events:none}
.ax-club{display:flex;flex-direction:column;flex:0 0 232px;overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-club .im{position:relative;display:block;height:120px;overflow:hidden;background:var(--muted)}
.ax-club .im img{width:100%;height:100%;object-fit:cover}
.ax-club .im::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent 70%)}
.ax-club .cnt{position:absolute;left:12px;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:11px;font-weight:700}
.ax-club .bd{display:flex;flex:1;flex-direction:column;gap:14px;padding:16px}
.ax-club h3{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:20px;font-weight:700;font-family:var(--font-sans)}
.ax-club p{margin:3px 0 0;min-height:34px;font-size:12.5px;line-height:17px;color:var(--muted-foreground);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ax-club .ax-sm{width:100%;margin-top:auto}
.ax-person{display:flex;flex-direction:column;align-items:center;flex:0 0 168px;padding:18px 14px 14px;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:center;box-shadow:var(--shadow-card)}
.ax-person .pic{position:relative;margin-bottom:10px}
.ax-person .pic img,.ax-person .pic .ph{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:20px;font-weight:700;box-shadow:0 0 0 3px var(--card),0 0 0 4px color-mix(in oklab,var(--foreground) 10%,transparent)}
.ax-person .pic i{position:absolute;right:1px;bottom:1px;width:14px;height:14px;border-radius:50%;border:2.5px solid var(--card);background:var(--success)}
.ax-person .nm{margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px;font-weight:700}
.ax-person .km{display:inline-flex;align-items:center;gap:4px;margin:2px 0 0;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-person .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;min-height:22px;margin-top:10px}
.ax-person .tags span{height:22px;padding:0 9px;border-radius:999px;background:var(--muted);font-size:10.5px;line-height:22px;font-weight:600;color:var(--foreground)}
.ax-connect{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;height:36px;margin-top:auto;border-radius:999px;background:var(--gradient-brand);color:var(--primary-foreground);font-size:12.5px;font-weight:600;box-shadow:var(--shadow-soft)}
.ax-person .tags+.ax-connect{margin-top:14px}
.ax-connect.on{background:var(--muted);color:var(--muted-foreground);box-shadow:none}
.ax-chal{margin:0 var(--gutter);padding:20px;border-radius:28px;background:var(--gradient-hero);color:#fff;box-shadow:var(--shadow-elevated)}
.ax-chal .top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.ax-chal .pill{display:inline-flex;align-items:center;gap:5px;height:24px;margin:0;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.15);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.ax-chal h3{margin:12px 0 0;font-size:21px;line-height:26px;font-weight:700;letter-spacing:-.01em}
.ax-chal .sub{margin:4px 0 0;font-size:12.5px;line-height:18px;color:rgba(255,255,255,.78)}
.ax-chal .tr{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.15)}
.ax-chal .pg{display:flex;justify-content:space-between;margin-top:20px;font-size:11.5px;font-weight:600}
.ax-chal .bar{height:8px;margin-top:6px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.2)}
.ax-chal .bar i{display:block;height:100%;min-width:8px;border-radius:999px;background:#fff}
.ax-chal .ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px}
.ax-chal .ft .b{display:flex;flex-wrap:wrap;gap:8px}
.ax-chal .ft .b span{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:999px;background:rgba(255,255,255,.15);font-size:11.5px;font-weight:700}
.ax-chal .go{flex-shrink:0;height:36px;padding:0 18px;border-radius:999px;background:#fff;color:#111;font-size:13px;font-weight:700;box-shadow:var(--shadow-soft)}
.ax-up{display:flex;align-items:center;gap:14px;flex:0 0 272px;padding:12px;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card);cursor:pointer}
.ax-up img{width:68px;height:68px;flex-shrink:0;border-radius:18px;object-fit:cover;background:var(--muted)}
.ax-up .tx{display:flex;min-width:0;flex:1;flex-direction:column;gap:6px}
.ax-up .t{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:19px;font-weight:700}
.ax-up .m{display:flex;gap:10px;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-up .m span{display:inline-flex;align-items:center;gap:4px}
.ax-up .r{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ax-up .r em{font-style:normal;height:22px;padding:0 9px;border-radius:999px;background:var(--muted);font-size:10.5px;line-height:22px;font-weight:700;color:var(--foreground)}
.ax-up .r button{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--foreground)}
.ax-feed{margin:0 var(--gutter);padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.ax-feed li{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-feed img,.ax-feed .ph{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);font-size:13px;font-weight:700;box-shadow:0 0 0 2px var(--card)}
.ax-feed .tx{min-width:0;flex:1}
.ax-feed .tx p{margin:0}
.ax-feed .l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:19px}
.ax-feed .l b{font-weight:600}.ax-feed .l span{color:var(--muted-foreground)}.ax-feed .l u{text-decoration:none;font-weight:600}
.ax-feed .tm{margin-top:1px;font-size:11.5px;line-height:15px;color:var(--muted-foreground)}
.ax-askai{position:absolute;right:var(--gutter);bottom:calc(92px + env(safe-area-inset-bottom));z-index:40;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:13px;font-weight:700;box-shadow:0 14px 30px -12px rgba(0,0,0,.5)}
.ax-askai:active{transform:scale(.96)}
.ax-shim{background:linear-gradient(90deg,var(--muted) 25%,color-mix(in oklab,var(--muted) 45%,var(--background)) 50%,var(--muted) 75%);background-size:200% 100%;animation:axsh 1.3s linear infinite}
@keyframes axsh{to{background-position:-200% 0}}
.ax-sk-h{height:20px;width:160px;margin:0 var(--gutter) 14px;border-radius:8px}
.ax-sk-row{display:flex;gap:12px;padding-left:var(--gutter);overflow:hidden}
.ax-sk-row i{flex:0 0 272px;height:268px;border-radius:22px}
.ax-stack>section{animation:ax-slide-up .5s cubic-bezier(.2,.8,.2,1) both}
.ax-stack>section:nth-child(2){animation-delay:.04s}.ax-stack>section:nth-child(3){animation-delay:.08s}.ax-stack>section:nth-child(4){animation-delay:.12s}
.ax-stack>section:nth-child(5){animation-delay:.16s}.ax-stack>section:nth-child(6){animation-delay:.2s}.ax-stack>section:nth-child(7){animation-delay:.24s}
.ax-nothing{margin:0 var(--gutter);padding:36px 20px;border-radius:24px;border:1px dashed var(--border);text-align:center}
.ax-nothing h3{margin:0;font-size:16px;font-weight:700;font-family:var(--font-sans)}
.ax-nothing p{margin:6px 0 18px;font-size:13px;line-height:19px;color:var(--muted-foreground)}

/* ---- search (v0.5.0) ---- */
.ax-bs .body{max-height:64vh;overflow-y:auto;scrollbar-width:none}.ax-bs .body::-webkit-scrollbar{display:none}
.ax-spx{position:sticky;top:0;z-index:20;padding:calc(max(env(safe-area-inset-top),0px) + 12px) 0 12px;background:color-mix(in oklab,var(--background) 88%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.ax-usb{display:flex;align-items:center;gap:8px;padding:0 var(--gutter)}
.ax-usb form{display:flex;flex:1;min-width:0;align-items:center;gap:8px;height:48px;padding:0 8px 0 14px;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-usb form:focus-within{border-color:var(--primary)}
.ax-usb input{flex:1;min-width:0;height:100%;background:transparent;border:0;outline:0;font:inherit;font-size:14px;color:var(--foreground)}
.ax-usb input::placeholder{color:var(--muted-foreground)}
.ax-usb form>.axi{color:var(--muted-foreground)}
.ax-mini{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;color:var(--muted-foreground)}
.ax-mini.fill{background:var(--muted)}.ax-mini:active{transform:scale(.94)}
.ax-fbtn{position:relative;display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-card)}
.ax-fbtn:active{transform:scale(.95)}
.ax-fbtn b{position:absolute;right:-4px;top:-4px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10px;font-weight:700}
.ax-tabs{display:flex;gap:8px;margin-top:12px;padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none}.ax-tabs::-webkit-scrollbar{display:none}
.ax-pill{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);font-size:12.5px;font-weight:600;color:var(--foreground);transition:transform .15s}
.ax-pill:active{transform:scale(.96)}.ax-pill.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-pill em{font-style:normal;font-size:10.5px;font-weight:700;opacity:.55}
.ax-sech.sm h2{font-size:16px;line-height:22px}
.ax-aisug{display:flex;align-items:center;gap:12px;flex:0 0 240px;padding:12px 14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}
.ax-aisug:active{transform:scale(.98)}
.ax-aisug .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--muted)}
.ax-aisug span.t{font-size:12.5px;line-height:17px;font-weight:600}
.ax-rec{flex:0 0 250px;padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}
.ax-rec .h{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ax-rec p{margin:6px 0 0;font-size:12.5px;line-height:18px;color:var(--muted-foreground)}
.ax-trend{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;height:36px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);font-size:12.5px;font-weight:600;box-shadow:var(--shadow-soft)}
.ax-trend i{font-style:normal;font-size:10.5px;font-weight:700;color:var(--muted-foreground)}
.ax-cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 var(--gutter)}
.ax-ctile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}
.ax-ctile:active{transform:scale(.97)}
.ax-ctile .ic{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--muted)}
.ax-ctile b{font-size:12.5px;font-weight:700;line-height:16px}.ax-ctile small{font-size:10.5px;line-height:14px;color:var(--muted-foreground)}
.ax-coll{position:relative;flex:0 0 220px;height:148px;overflow:hidden;border-radius:20px;text-align:left;box-shadow:var(--shadow-card);background:var(--muted)}
.ax-coll img{width:100%;height:100%;object-fit:cover}
.ax-coll::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,.15) 65%,transparent)}
.ax-coll .t{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:12px;color:#fff}
.ax-coll .t b{display:block;font-size:14px;line-height:18px}.ax-coll .t span{display:block;font-size:11px;opacity:.8}.ax-coll .t small{display:block;margin-top:4px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;opacity:.9}
.ax-map{position:relative;height:240px;margin:0 var(--gutter);overflow:hidden;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--muted);box-shadow:var(--shadow-card);z-index:0}
.ax-map .leaflet-control-attribution{font-size:9px;background:color-mix(in oklab,var(--background) 70%,transparent)}
.ax-map-note{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;padding:20px;text-align:center;font-size:13px;color:var(--muted-foreground)}
.ax-pin{display:grid;place-items:center;width:34px;height:34px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--primary);color:var(--primary-foreground);border:2px solid #fff;box-shadow:0 6px 14px -4px rgba(0,0,0,.5)}
.ax-pin span{display:grid;place-items:center;transform:rotate(45deg)}
.ax-social-pin{position:relative;display:flex;align-items:center;gap:7px;width:max-content;max-width:186px;min-height:40px;padding:3px 10px 3px 3px;border:1px solid rgba(255,255,255,.94);border-radius:999px;background:rgba(255,255,255,.96);color:#172033;box-shadow:0 8px 24px -8px rgba(14,37,67,.38);transform:translateZ(0);transition:transform .18s ease,box-shadow .18s ease}
.ax-social-pin::before{content:"";position:absolute;left:14px;bottom:-5px;width:9px;height:9px;transform:rotate(45deg);background:#fff;border-right:1px solid rgba(255,255,255,.94);border-bottom:1px solid rgba(255,255,255,.94)}
.ax-social-pin .av{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;overflow:hidden;border:2px solid #fff;border-radius:50%;background:#1877F2;color:#fff;box-shadow:0 0 0 2px rgba(24,119,242,.22)}
.ax-social-pin .av img{width:100%;height:100%;object-fit:cover}
.ax-social-pin .label{display:block;max-width:138px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:15px;font-weight:700;letter-spacing:-.01em}
.ax-social-pin .ax-social-fallback{display:grid;place-items:center;width:100%;height:100%}
.ax-social-pin.business .av{background:#0f8f83;box-shadow:0 0 0 2px rgba(15,143,131,.2)}
.ax-social-pin.club .av{background:#7657d5;box-shadow:0 0 0 2px rgba(118,87,213,.2)}
.ax-social-pin.sel{z-index:2;transform:scale(1.08);box-shadow:0 10px 28px -7px rgba(24,119,242,.52),0 0 0 3px rgba(24,119,242,.2)}
.ax-heat-glow{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle, var(--heat-core) 0%, color-mix(in srgb,var(--heat-core) 72%,#ffd447) 12%, rgba(255,212,71,.44) 25%, rgba(38,194,238,.24) 48%, rgba(38,194,238,.08) 64%, transparent 74%);filter:blur(1px);mix-blend-mode:multiply;pointer-events:none}
.ax-map .leaflet-control-zoom{margin:0 12px 28px 0!important;overflow:hidden;border:1px solid rgba(20,35,54,.12)!important;border-radius:15px!important;box-shadow:0 6px 20px rgba(20,35,54,.2)!important}
.ax-map .leaflet-control-zoom a{display:grid;width:42px;height:42px;place-items:center;border:0!important;background:rgba(255,255,255,.96)!important;color:#1e293b!important;font:500 25px/1 var(--font-sans)!important}
.ax-map .leaflet-control-zoom-in{border-bottom:1px solid #e5e9ef!important;border-radius:0!important}
.ax-map .leaflet-control-zoom a:hover{background:#f1f6ff!important;color:#1877F2!important}
.ax-poi-preview .in{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:center;padding:12px}
.ax-poi-preview .photo,.ax-poi-preview .photo-fallback{width:92px;height:92px;overflow:hidden;border-radius:16px;background:var(--muted);object-fit:cover}
.ax-poi-preview .photo-fallback{display:grid;place-items:center;color:var(--primary)}
.ax-poi-preview .x{top:7px;right:7px}
.ax-poi-preview .poi-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px;padding-right:24px}
.ax-poi-preview .poi-kind{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}
.ax-poi-preview .poi-copy b{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.ax-poi-preview .poi-copy small{color:var(--muted-foreground);font-size:11px;line-height:16px}
.ax-poi-preview .poi-copy .ax-sbtn{height:32px;margin-top:3px;padding:0 13px;border-radius:11px;font-size:11px}
.ax-me{width:16px;height:16px;border-radius:50%;background:#111;border:3px solid #fff;box-shadow:0 0 0 6px rgba(0,0,0,.18)}
.ax-hist{display:flex;align-items:center;gap:12px;padding:10px var(--gutter)}
.ax-hist+.ax-hist{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-hist .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--muted);color:var(--muted-foreground)}
.ax-hist .tx{flex:1;min-width:0;text-align:left}.ax-hist .tx p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-hist .q{font-size:14px;line-height:19px;font-weight:600}.ax-hist .s{font-size:11.5px;line-height:15px;color:var(--muted-foreground)}
.ax-hist .pn{padding:4px;color:var(--muted-foreground)}.ax-hist .pn.on{color:var(--foreground)}
.ax-intent{margin:0 var(--gutter);padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-intent .h{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ax-intent .c{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ax-intent .c span{height:26px;padding:0 10px;border-radius:999px;background:var(--muted);font-size:11.5px;line-height:26px;font-weight:600}
.ax-rbar{display:flex;align-items:center;gap:8px;padding:0 var(--gutter)}
.ax-rbar p{flex:1;min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted-foreground)}
.ax-sortbtn{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--card);font-size:11.5px;font-weight:600}
.ax-roundbtn{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--card)}
.ax-list{display:flex;flex-direction:column;gap:12px;padding:0 var(--gutter)}
.ax-rc{overflow:hidden;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-rc.row{display:flex}
.ax-rc .th{position:relative;flex:0 0 112px;overflow:hidden;background:var(--muted)}.ax-rc .th img{width:100%;height:100%;object-fit:cover;min-height:128px}
.ax-rc .th .hot{position:absolute;left:6px;top:6px;display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px;border-radius:999px;background:var(--secondary);color:var(--secondary-foreground);font-size:9px;font-weight:700;text-transform:uppercase}
.ax-rc .bd{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px;padding:12px}
.ax-rc .cat{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--muted-foreground)}
.ax-rc h3{margin:0;font-family:var(--font-sans);font-size:14px;line-height:19px;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ax-rc .meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}.ax-rc .meta span{display:inline-flex;align-items:center;gap:4px}
.ax-rc .ft{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:4px}.ax-rc .ft b{font-size:14px}
.ax-rc.pad{padding:12px}.ax-rc.user,.ax-rc.org{display:flex;align-items:center;gap:12px}
.ax-rc .av{width:56px;height:56px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-weight:700;box-shadow:0 0 0 2px var(--card)}
.ax-rc .nm{display:flex;align-items:center;gap:4px;margin:0;overflow:hidden;white-space:nowrap;font-size:14px;line-height:19px;font-weight:700}.ax-rc .nm span{overflow:hidden;text-overflow:ellipsis}
.ax-rc .sub{margin:1px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-rc .tg{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.ax-rc .tg span{height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10px;line-height:20px;font-weight:600}
.ax-rc .ban{position:relative;display:block;height:96px;overflow:hidden;background:var(--muted)}.ax-rc .ban img{width:100%;height:100%;object-fit:cover}
.ax-rc .ban::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}
.ax-rc .ban .st{position:absolute;right:8px;top:8px;z-index:2;height:22px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:10px;line-height:22px;font-weight:700}
.ax-rc .ban .st.off{background:rgba(0,0,0,.55);color:#fff}
.ax-rc .lg{display:flex;align-items:center;gap:12px;padding:12px}
.ax-rc .lg img.logo{width:48px;height:48px;flex-shrink:0;margin-top:-30px;border-radius:16px;object-fit:cover;box-shadow:0 0 0 4px var(--card);background:var(--muted)}
.ax-rc .act{padding:8px 12px;border-top:1px solid color-mix(in oklab,var(--border) 70%,transparent);font-size:11.5px;font-weight:600}
.ax-rc .ph{display:flex;align-items:center;gap:8px;padding:12px}.ax-rc .ph img{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--muted)}
.ax-rc .pimg{width:100%;height:192px;object-fit:cover;background:var(--muted)}
.ax-rc .plc{display:grid;place-items:center;flex:0 0 88px;background:var(--muted);color:var(--foreground)}
.ax-sbtn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:34px;padding:0 16px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--primary);color:var(--primary-foreground)}
.ax-sbtn.outline{background:transparent;color:var(--foreground);border:1px solid var(--border)}
.ax-sbtn.done{background:var(--muted);color:var(--muted-foreground);border-color:transparent;pointer-events:none}
.ax-fab{position:absolute;right:var(--gutter);bottom:calc(92px + env(safe-area-inset-bottom));z-index:40;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:0 14px 30px -12px rgba(0,0,0,.5)}
.ax-fab:active{transform:scale(.95)}
.ax-empty2{margin:0 var(--gutter);padding:40px 24px;border-radius:24px;border:1px dashed var(--border);text-align:center}
.ax-empty2 .ic{display:grid;place-items:center;width:64px;height:64px;margin:0 auto;border-radius:20px;background:var(--muted);color:var(--muted-foreground)}
.ax-empty2 h3{margin:12px 0 0;font-family:var(--font-sans);font-size:14px;font-weight:700}.ax-empty2 p{margin:4px auto 0;max-width:28ch;font-size:12.5px;line-height:18px;color:var(--muted-foreground)}
.ax-empty2 button{margin-top:16px}
/* sheets */
.ax-fl{margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-fg{display:flex;flex-direction:column;gap:18px;padding-bottom:6px}
.ax-orow{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -2px;padding:0 2px}.ax-orow::-webkit-scrollbar{display:none}
.ax-orow.wrap{flex-wrap:wrap;overflow:visible}
.ax-range{width:100%;accent-color:var(--primary)}
.ax-rowhead{display:flex;justify-content:space-between;margin-bottom:4px;font-size:12px;font-weight:600}
.ax-sw{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;border-radius:16px;border:1px solid var(--border);background:var(--card);font-size:14px;font-weight:600}
.ax-sw i{position:relative;width:42px;height:24px;border-radius:999px;background:var(--muted);transition:background .2s}
.ax-sw i::after{content:"";position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:var(--background);box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.ax-sw.on i{background:var(--primary)}.ax-sw.on i::after{transform:translateX(18px)}
.ax-btnrow{display:flex;gap:8px;margin-top:16px}.ax-btnrow .ax-btn{flex:1}
.ax-opt2{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:var(--card);text-align:left}
.ax-opt2+.ax-opt2{margin-top:6px}.ax-opt2 b{display:block;font-size:14px;font-weight:600}.ax-opt2 small{display:block;font-size:11.5px;color:var(--muted-foreground)}
.ax-voice{display:flex;flex-direction:column;align-items:center;padding:12px 0}
.ax-mic{position:relative;display:grid;place-items:center;width:96px;height:96px}
.ax-mic i{position:absolute;inset:0;border-radius:50%;background:color-mix(in oklab,var(--primary) 20%,transparent)}.ax-mic.live i{animation:axring 1.4s ease-out infinite}
.ax-mic span{position:relative;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-elevated)}
.ax-voice p{margin:0}.ax-voice .a{margin-top:20px;font-size:14px;font-weight:700}.ax-voice .b{margin-top:4px;min-height:20px;text-align:center;font-size:12.5px;color:var(--muted-foreground)}
.ax-saved{padding:12px;border-radius:16px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:var(--card)}
.ax-saved+.ax-saved{margin-top:6px}
.ax-saved .r{display:flex;align-items:center;gap:8px}.ax-saved .r button.m{flex:1;min-width:0;text-align:left}
.ax-saved .r b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.ax-saved .r small{display:block;font-size:11.5px;color:var(--muted-foreground)}
.ax-saved .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ax-saved .chips span{height:22px;padding:0 9px;border-radius:999px;background:var(--muted);font-size:10.5px;line-height:22px;font-weight:600}
.ax-inp{width:100%;height:48px;padding:0 16px;border-radius:16px;border:1px solid var(--border);background:var(--card);font:inherit;font-size:14px;color:var(--foreground);outline:0}.ax-inp:focus{border-color:var(--primary)}
.ax-sug{display:flex;align-items:center;gap:8px;width:100%;margin-top:6px;padding:10px 14px;border-radius:16px;border:1px solid var(--border);background:var(--card);text-align:left;font-size:12.5px;font-weight:600}
.ax-qr{display:grid;place-items:center;width:100%;max-width:260px;aspect-ratio:1;margin:0 auto;overflow:hidden;border-radius:24px;border:2px dashed var(--border);background:var(--muted)}
.ax-qr video{width:100%;height:100%;object-fit:cover}

/* ---- nearby (v0.6.0) ---- */
.ax-pin.sel{transform:rotate(-45deg) scale(1.28);background:#fff;color:#111;border-color:#111}
.ax-nearbypg{overscroll-behavior:contain}
.ax-nbhead{display:flex;flex-direction:column;gap:12px;padding:calc(max(env(safe-area-inset-top),0px) + 14px) 0 12px}
.ax-nbhead .t{display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter)}
.ax-nbhead .e{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-nbhead h1{margin:2px 0 0;font-size:24px;line-height:28px;font-weight:700;letter-spacing:-.015em}
.ax-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0 var(--gutter);padding:4px;border-radius:16px;background:var(--muted)}
.ax-seg button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;border-radius:12px;font-size:12.5px;font-weight:600;color:var(--muted-foreground);transition:all .15s}
.ax-seg button.on{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-soft)}
.ax-mapwrap{position:relative;height:62vh;min-height:420px;margin:0 var(--gutter);overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--muted);box-shadow:var(--shadow-card);isolation:isolate}
.ax-mapwrap .ax-map{position:absolute;inset:0;margin:0;height:100%;border:0;border-radius:0;box-shadow:none}
.ax-mapctl{position:absolute;z-index:1100;display:flex;gap:8px}
.ax-mapbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:color-mix(in oklab,var(--background) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:12px;font-weight:700;color:var(--foreground);box-shadow:var(--shadow-soft)}
.ax-mapbtn.sq{width:38px;padding:0}.ax-mapbtn.on{background:var(--primary);color:var(--primary-foreground)}
.ax-prev{position:absolute;left:0;right:0;bottom:0;z-index:1200;padding:0 8px 8px;pointer-events:none;animation:ax-slide-up .35s ease-out both}
.ax-prev .in{position:relative;pointer-events:auto;overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--background);box-shadow:var(--shadow-elevated)}
.ax-prev .grab{width:40px;height:6px;margin:10px auto 0;border-radius:999px;background:var(--muted)}
.ax-prev .x{position:absolute;right:10px;top:10px;z-index:3;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--muted);color:var(--foreground)}
.ax-prev .snap{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.ax-prev .snap::-webkit-scrollbar{display:none}
.ax-prev .sl{flex:0 0 100%;scroll-snap-align:center;padding:12px 14px 4px}
.ax-prev .dots{display:flex;justify-content:center;gap:4px;padding:2px 0 12px}.ax-prev .dots i{height:6px;width:6px;border-radius:999px;background:var(--muted);transition:all .2s}.ax-prev .dots i.on{width:20px;background:var(--primary)}
.ax-pc{overflow:hidden;border-radius:18px;background:var(--card)}
.ax-pc .im{position:relative;height:112px;overflow:hidden;background:var(--muted)}.ax-pc .im img{width:100%;height:100%;object-fit:cover}
.ax-pc .im::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}
.ax-pc .im .when{position:absolute;left:12px;bottom:10px;z-index:2;color:#fff;font-size:13px;font-weight:600}
.ax-cattag{position:absolute;left:12px;top:12px;z-index:2;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10px;font-weight:700}
.ax-pc .bd{display:flex;flex-direction:column;gap:10px;padding:14px 4px 4px}
.ax-pc h3{margin:0;font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:700}
.ax-eta{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:12px;background:var(--muted);font-size:11px;font-weight:600}.ax-eta span{display:inline-flex;align-items:center;gap:4px}
.ax-prow{display:flex;align-items:center;gap:8px}
.ax-prow .ax-sbtn{height:40px;border-radius:12px}.ax-prow .ax-sbtn.f{flex:1}
.ax-sqbtn{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--card)}.ax-sqbtn.on{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}
.ax-sqbtn.sm{width:32px;height:32px;border-radius:10px}
.ax-radar{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:62vh;min-height:420px;margin:0 var(--gutter);padding:16px;overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:linear-gradient(to bottom,color-mix(in oklab,var(--foreground) 5%,transparent),var(--background));box-shadow:var(--shadow-card)}
.ax-radar .rd{position:relative;width:100%;max-width:440px;aspect-ratio:1}
.ax-radar svg{position:absolute;inset:0;width:100%;height:100%}
.ax-radar .sweep{transform-origin:250px 250px;animation:axsweep 4s linear infinite}
@keyframes axsweep{to{transform:rotate(360deg)}}
.ax-radar .me{position:absolute;left:50%;top:50%;z-index:2;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--background)}
.ax-radar .me+i{position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;background:color-mix(in oklab,var(--foreground) 22%,transparent);animation:axring 2s ease-out infinite;pointer-events:none}
.ax-radar .bl{position:absolute;z-index:2;transform:translate(-50%,-50%)}
.ax-radar .bl>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:0 0 0 2px #fff,var(--shadow-elevated)}
.ax-radar .pb{position:absolute;transform:translate(-50%,-50%)}.ax-radar .pb img,.ax-radar .pb span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--muted);box-shadow:0 0 0 2px #fff;font-size:11px;font-weight:700}
.ax-radar p{margin:0}.ax-radar .a{margin-top:12px;text-align:center;font-size:14px;font-weight:600}.ax-radar .b{font-size:12px;color:var(--muted-foreground)}
.ax-nlist{display:flex;flex-direction:column;gap:16px;margin-top:12px}
.ax-nlist .ax-tabs{margin-top:0}
.ax-lcard{overflow:hidden;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-lcard .im{position:relative;display:block;height:160px;overflow:hidden;background:var(--muted)}.ax-lcard .im img{width:100%;height:100%;object-fit:cover}
.ax-lcard .im::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 60%)}
.ax-lcard .live{position:absolute;right:12px;top:12px;z-index:2;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:999px;background:var(--secondary);color:var(--secondary-foreground);font-size:10px;font-weight:700}
.ax-lcard .live i{width:6px;height:6px;border-radius:50%;background:#fff;animation:axpulse 1.4s ease-in-out infinite}
@keyframes axpulse{50%{opacity:.35}}
.ax-lcard .ch{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;gap:6px;padding:12px;color:#fff}
.ax-lcard .ch span{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:999px;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:11px;font-weight:600;white-space:nowrap}
.ax-lcard .bd{display:flex;flex-direction:column;gap:12px;padding:16px}
.ax-lcard h3{margin:0;font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ax-lcard .org{display:flex;align-items:center;gap:10px}.ax-lcard .org img{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--muted)}
.ax-lcard .org p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-lcard .org .a{font-size:11px;color:var(--muted-foreground)}.ax-lcard .org .b{font-size:12.5px;font-weight:600}
.ax-lcard .rt{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600}
.ax-lcard .ft{display:flex;align-items:center;justify-content:space-between;gap:8px}.ax-lcard .ft .j{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted-foreground)}
.ax-lcard .ft .r{display:flex;align-items:center;gap:6px}
.ax-prson{display:flex;align-items:center;gap:12px;padding:12px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-prson .pic{position:relative;flex-shrink:0}.ax-prson .pic img,.ax-prson .pic .ph{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700;box-shadow:0 0 0 2px var(--card)}
.ax-prson .pic i{position:absolute;right:0;bottom:0;width:12px;height:12px;border-radius:50%;border:2px solid var(--card);background:var(--success)}
.ax-prson .tx{flex:1;min-width:0}.ax-prson .tx p{margin:0}.ax-prson .nm{display:flex;align-items:center;gap:4px;font-size:14px;line-height:19px;font-weight:700}.ax-prson .nm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-prson .sub{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-prson .tg{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.ax-prson .tg span{height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10px;line-height:20px;font-weight:600}
.ax-prson .ac{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.ax-prson .ac .ax-sbtn{height:32px;padding:0 12px;font-size:11.5px}
.ax-nclub{overflow:hidden;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-nclub .im{position:relative;display:block;height:96px;overflow:hidden;background:var(--muted)}.ax-nclub .im img{width:100%;height:100%;object-fit:cover}
.ax-nclub .im::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),transparent)}
.ax-nclub .ov{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;padding:12px;color:#fff}
.ax-nclub .ov p{margin:0}.ax-nclub .ov b{font-size:14px}.ax-nclub .ov small{font-size:11px;opacity:.9}
.ax-nclub .ov em{font-style:normal;height:22px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:10px;line-height:22px;font-weight:700}
.ax-nclub .ft{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px}.ax-nclub .ft p{margin:0;display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted-foreground)}
.ax-biz{display:flex;align-items:center;gap:12px;padding:12px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-biz>img{width:56px;height:56px;flex-shrink:0;border-radius:14px;object-fit:cover;background:var(--muted)}
.ax-biz .tx{flex:1;min-width:0}.ax-biz .tx p{margin:0}.ax-biz .nm{display:flex;align-items:center;gap:4px;font-size:14px;line-height:19px;font-weight:700}.ax-biz .nm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-biz .sub{font-size:11.5px;line-height:16px;color:var(--muted-foreground)}.ax-biz .rt{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600}
.ax-biz .ac{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.ax-biz .ac .ax-sbtn{height:32px;padding:0 12px;font-size:11.5px}
.ax-wx{display:flex;align-items:center;gap:12px;margin:0 var(--gutter);padding:12px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-wx .ic{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:14px;background:var(--muted)}.ax-wx .tx{flex:1;min-width:0}.ax-wx p{margin:0}.ax-wx .a{font-size:14px;font-weight:700}.ax-wx .b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;color:var(--muted-foreground)}
.ax-cnt{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 var(--gutter)}
.ax-cnt div{padding:10px 6px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:center;box-shadow:var(--shadow-card)}
.ax-cnt .axi{margin:0 auto}.ax-cnt b{display:block;margin-top:4px;font-size:15px;line-height:20px;font-variant-numeric:tabular-nums}.ax-cnt small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--muted-foreground)}
.ax-fbn{display:flex;align-items:center;gap:12px;margin:0 var(--gutter);padding:12px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:color-mix(in oklab,var(--muted) 60%,var(--card))}
.ax-fbn .st{display:flex}.ax-fbn .st img,.ax-fbn .st span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--muted);box-shadow:0 0 0 2px var(--background);font-size:11px;font-weight:700}.ax-fbn .st>*+*{margin-left:-8px}
.ax-fbn .tx{flex:1;min-width:0}.ax-fbn .tx p{margin:0}.ax-fbn .a{font-size:14px;font-weight:700}.ax-fbn .b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;color:var(--muted-foreground)}
.ax-airec{display:flex;align-items:flex-start;gap:10px;flex:0 0 240px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-airec .ic{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:10px;background:var(--muted)}.ax-airec p{margin:0;font-size:12.5px;line-height:18px;font-weight:500}
.ax-area{display:flex;flex-direction:column;gap:8px;flex:0 0 240px;padding:14px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-area .h{display:flex;align-items:center;gap:10px}.ax-area .h .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--muted)}
.ax-area .h p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-area .h .a{font-size:14px;font-weight:700}.ax-area .h .b{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:var(--muted-foreground)}
.ax-area .pp{margin:0;display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted-foreground)}
.ax-area .tg{display:flex;flex-wrap:wrap;gap:4px}.ax-area .tg span{height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10px;line-height:20px;font-weight:600}
.ax-meetnow{position:absolute;right:var(--gutter);bottom:calc(92px + env(safe-area-inset-bottom));z-index:40;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:999px;background:var(--gradient-brand);color:var(--primary-foreground);font-size:13px;font-weight:700;box-shadow:0 14px 30px -12px rgba(0,0,0,.5)}
.ax-meetnow:active{transform:scale(.96)}
.ax-safe{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-safe+.ax-safe{margin-top:8px}.ax-safe .tx{flex:1;min-width:0}.ax-safe p{margin:0}.ax-safe .a{font-size:14px;font-weight:700}.ax-safe .b{font-size:11.5px;color:var(--muted-foreground)}
.ax-sbtn.red{background:var(--destructive);color:#fff}

/* ---- notifications (v0.7.0) ---- */
.ax-nthead{display:flex;align-items:center;gap:6px;padding:calc(max(env(safe-area-inset-top),0px) + 10px) var(--gutter) 10px}
.ax-nthead h1{flex:1;display:flex;align-items:center;gap:8px;margin:0;padding-left:6px;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.012em}
.ax-nbadge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10.5px;font-weight:700;font-family:var(--font-sans)}
.ax-rbtn{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--muted);color:var(--foreground)}
.ax-rbtn:active{transform:scale(.94)}.ax-rbtn.on{background:var(--primary);color:var(--primary-foreground)}
.ax-tabs.n{margin-top:0;padding-bottom:4px}
.ax-tabs.n .ax-pill em{margin-left:2px;height:18px;min-width:18px;padding:0 5px;border-radius:999px;background:color-mix(in oklab,var(--foreground) 10%,transparent);font-size:10px;line-height:18px;opacity:1}
.ax-tabs.n .ax-pill.on em{background:color-mix(in oklab,var(--primary-foreground) 22%,transparent)}
.ax-card2{margin:0 var(--gutter);padding:16px;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-card2.flat{box-shadow:none}
.ax-card2 .hd{display:flex;align-items:center;justify-content:space-between;gap:8px}.ax-card2 .hd p{margin:0;font-size:14px;font-weight:700;font-family:var(--font-display);display:inline-flex;align-items:center;gap:8px}
.ax-card2 .hd small{font-size:11.5px;color:var(--muted-foreground)}
.ax-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.ax-tiles div{padding:12px 4px;border-radius:16px;background:var(--muted);text-align:center}
.ax-tiles .axi{margin:0 auto}.ax-tiles b{display:block;margin-top:4px;font-size:15px;line-height:20px}.ax-tiles small{display:block;font-size:10px;line-height:13px;color:var(--muted-foreground)}
.ax-dash{margin:0 var(--gutter);padding:16px;border-radius:24px;border:1px dashed color-mix(in oklab,var(--foreground) 25%,transparent);background:color-mix(in oklab,var(--muted) 50%,transparent)}
.ax-dash .h{display:flex;align-items:center;gap:6px;margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ax-dash ul{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.ax-dash li{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:18px}.ax-dash li i{margin-top:7px;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--foreground)}
.ax-dash li span{flex:1}.ax-dash li button{flex-shrink:0;font-size:11px;font-weight:600;color:var(--muted-foreground)}
.ax-rem{display:flex;flex-direction:column;justify-content:space-between;flex:0 0 248px;padding:16px;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-rem.primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.ax-rem.primary p.d,.ax-rem.primary .w{color:color-mix(in oklab,var(--primary-foreground) 70%,transparent)}
.ax-rem .ic{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--muted)}.ax-rem.primary .ic{background:rgba(255,255,255,.16)}
.ax-rem p{margin:0}.ax-rem .t{margin-top:10px;font-size:14px;line-height:19px;font-weight:700}.ax-rem .d{font-size:12px;line-height:17px;color:var(--muted-foreground)}
.ax-rem .f{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.ax-rem .w{font-size:11.5px;font-weight:600;color:var(--muted-foreground)}
.ax-rem button{height:32px;padding:0 14px;border-radius:10px;background:var(--foreground);color:var(--background);font-size:12px;font-weight:600}.ax-rem.primary button{background:#fff;color:#111}
.ax-inbox-h{display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter)}
.ax-inbox-h p{margin:0;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-inbox-h button{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}
.ax-bk{margin:0;padding:12px var(--gutter) 6px;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-nrows{display:flex;flex-direction:column}
.ax-nrows>article+article{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-ni{position:relative;padding:14px var(--gutter);transition:background .2s}
.ax-ni.un{background:color-mix(in oklab,var(--foreground) 4%,transparent)}
.ax-ni .dot{position:absolute;left:2px;top:50%;width:6px;height:6px;transform:translateY(-50%);border-radius:50%;background:var(--primary)}
.ax-ni.cel{background:linear-gradient(to right,color-mix(in oklab,var(--foreground) 7%,transparent),transparent)}
.ax-ni .row{display:flex;align-items:flex-start;gap:8px}
.ax-ni .main{display:flex;flex:1;min-width:0;align-items:flex-start;gap:12px;text-align:left}
.ax-ni .pic{position:relative;flex-shrink:0}
.ax-ni .pic img,.ax-ni .pic .ib{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--muted);color:var(--foreground)}
.ax-ni .pic .bd{position:absolute;right:-4px;bottom:-4px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--card);color:var(--foreground);box-shadow:0 0 0 2px var(--background)}
.ax-ni .tx{min-width:0;flex:1}.ax-ni .tx p{margin:0}
.ax-ni .tt{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13.5px;line-height:19px}.ax-ni .tt b{font-weight:700}.ax-ni .tt.rd b{font-weight:500}
.ax-ni .ds{margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:17px;color:var(--muted-foreground)}
.ax-ni .tm{margin-top:4px;font-size:11px;color:var(--muted-foreground)}
.ax-ni .th{width:48px;height:48px;flex-shrink:0;border-radius:14px;object-fit:cover;background:var(--muted)}
.ax-ni .xx{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;color:var(--muted-foreground)}.ax-ni .xx:active{background:var(--muted)}
.ax-ni .ac{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-left:56px}
.ax-ni .ac button{height:32px;padding:0 14px;border-radius:10px;border:1px solid var(--border);font-size:12px;font-weight:600}.ax-ni .ac button.p{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}
.ax-prio{height:18px;padding:0 7px;border-radius:999px;background:color-mix(in oklab,var(--destructive) 12%,transparent);color:var(--destructive);font-size:9px;line-height:18px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.ax-prio.low{background:var(--muted);color:var(--muted-foreground)}
.ax-tl{margin:0 var(--gutter);padding:0 0 0 16px;list-style:none;border-left:1px solid var(--border)}
.ax-tl li{position:relative;padding-bottom:20px}.ax-tl li:last-child{padding-bottom:0}
.ax-tl li i{position:absolute;left:-21px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--background)}
.ax-tl small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ax-tl b{display:block;margin-top:2px;font-size:13.5px}.ax-tl span{display:block;font-size:11.5px;color:var(--muted-foreground)}
.ax-wk{margin:12px 0 0;padding:0;list-style:none}.ax-wk li{display:flex;align-items:center;gap:12px;padding:10px 0}.ax-wk li+li{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-wk span{flex:1;font-size:13px}.ax-wk b{font-size:13px}.ax-wk em{font-style:normal;height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10.5px;line-height:20px;font-weight:700}
.ax-sw2{display:flex;align-items:center;gap:12px;padding:12px 0}.ax-sw2+.ax-sw2{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-sw2 .tx{flex:1;min-width:0}.ax-sw2 .tx p{margin:0}.ax-sw2 .a{font-size:13px;font-weight:600}.ax-sw2 .b{font-size:11px;color:var(--muted-foreground)}
.ax-sw2 .soon{margin-left:8px;height:16px;padding:0 6px;border-radius:999px;background:var(--muted);font-size:9px;line-height:16px;font-weight:700;text-transform:uppercase;color:var(--muted-foreground);display:inline-block}
.ax-tg{position:relative;flex-shrink:0;width:44px;height:24px;border-radius:999px;background:var(--muted);transition:background .2s}
.ax-tg::after{content:"";position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:var(--background);box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.ax-tg.on{background:var(--primary)}.ax-tg.on::after{transform:translateX(20px)}.ax-tg[disabled]{opacity:.45}
.ax-qm{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:16px;border:1px solid var(--border);text-align:left}.ax-qm+.ax-qm{margin-top:8px}
.ax-qm.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}
.ax-qm .ic{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--muted)}.ax-qm .tx{flex:1}.ax-qm .tx b{display:block;font-size:13px}.ax-qm .tx small{display:block;font-size:11px;color:var(--muted-foreground)}
.ax-fgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ax-fgrid button{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:16px;border:1px solid var(--border);font-size:13px;font-weight:600}
.ax-fgrid button.on{background:var(--foreground);color:var(--background);border-color:var(--foreground)}
.ax-nrefresh{display:flex;justify-content:center;padding:0 var(--gutter)}.ax-nrefresh button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:12px;border:1px solid var(--border);font-size:12px;font-weight:600}
.ax-nrefresh button.sp .axi{animation:axspin .8s linear infinite}
.ax-recent{padding:0 var(--gutter)}.ax-recent p{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-foreground)}

/* ---- create activity (v0.8.0) ---- */
.ax-crh{flex-shrink:0;border-bottom:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:var(--background);padding-top:max(env(safe-area-inset-top),0px)}
.ax-crh .r{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 var(--gutter)}
.ax-crh .r p{margin:0;font-size:15px;font-weight:700;font-family:var(--font-display)}
.ax-stp{display:flex;gap:4px;padding:0 var(--gutter) 12px}.ax-stp i{flex:1;height:4px;border-radius:999px;background:var(--muted);transition:background .25s}.ax-stp i.on{background:var(--primary)}
.ax-crs{padding:16px var(--gutter) 24px;display:flex;flex-direction:column;gap:20px}
.ax-crs h2{margin:0;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.012em}.ax-crs .sub{margin:4px 0 0;font-size:13.5px;line-height:19px;color:var(--muted-foreground)}
.ax-crs .lb{display:block;margin-bottom:8px;font-size:13.5px;font-weight:600}.ax-crs .ky{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-sbox{position:relative}.ax-sbox .axi{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted-foreground);pointer-events:none}
.ax-fi{width:100%;height:48px;padding:0 16px;border-radius:14px;border:1px solid var(--border);background:var(--muted);font:inherit;font-size:14px;color:var(--foreground);outline:0}
.ax-fi:focus{border-color:var(--primary);background:var(--card)}.ax-sbox .ax-fi{padding-left:42px}
.ax-ta{display:block;width:100%;padding:14px 16px;border-radius:16px;border:1px solid var(--border);background:var(--muted);font:inherit;font-size:14px;line-height:20px;color:var(--foreground);outline:0;resize:none}.ax-ta:focus{border-color:var(--primary);background:var(--card)}
.ax-ig{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ax-cc{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 6px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card);transition:all .15s}
.ax-cc:active{transform:scale(.96)}.ax-cc .ic{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--muted)}.ax-cc b{font-size:11.5px;font-weight:600}
.ax-cc.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.ax-cc.on .ic{background:color-mix(in oklab,var(--primary-foreground) 16%,transparent)}
.ax-up2{position:relative;display:block;height:176px;overflow:hidden;border-radius:20px;border:2px dashed var(--border);background:var(--muted);cursor:pointer}
.ax-up2 img{width:100%;height:100%;object-fit:cover}.ax-up2 .ph{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted-foreground);font-size:13px;font-weight:600}.ax-up2 .ph small{font-size:11px;font-weight:400}
.ax-ai{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px;border-radius:14px;border:1px dashed var(--border);background:var(--muted);font-size:13.5px;font-weight:600}
.ax-tagrow{display:flex;gap:8px}.ax-tagrow .ax-sbtn{height:48px;border-radius:14px;padding:0 18px}
.ax-tg2{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;border-radius:999px;background:var(--muted);font-size:12px}
.ax-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ax-lmap{position:relative;height:160px;overflow:hidden;border-radius:20px;border:1px solid var(--border);background:var(--muted)}.ax-lmap .ax-map{position:absolute;inset:0;margin:0;height:100%;border:0;border-radius:0;box-shadow:none}
.ax-ubtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border-radius:14px;border:1px solid var(--border);background:var(--card);font-size:13.5px;font-weight:600}.ax-ubtn:active{transform:scale(.98)}
.ax-swrow{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:18px;border:1px solid var(--border);background:var(--card)}.ax-swrow b{display:block;font-size:14px}.ax-swrow small{font-size:11.5px;color:var(--muted-foreground)}
.ax-num{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 10px;border-radius:16px;border:1px solid var(--border);background:var(--card)}.ax-num button{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--muted);font-size:18px}.ax-num b{font-size:17px}
.ax-live{padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--foreground) 14%,transparent);background:color-mix(in oklab,var(--foreground) 4%,transparent)}.ax-live p{margin:0}.ax-live .t{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ax-live .a{margin-top:8px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.ax-live .b{margin-top:4px;font-size:13.5px}.ax-live .c{margin-top:4px;font-size:12px;color:var(--muted-foreground)}
.ax-rule{display:flex;align-items:center;gap:6px;padding:10px 10px;border-radius:16px;border:1px solid var(--border);background:var(--card)}.ax-rule p{flex:1;margin:0;font-size:13.5px}
.ax-rule button{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--muted-foreground)}.ax-rule button[disabled]{opacity:.3}.ax-rule button.del{color:var(--destructive)}
.ax-sugg{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--card);font-size:12px;font-weight:600}
.ax-nonebox{padding:28px 16px;border-radius:18px;border:1px dashed var(--border);background:var(--muted);text-align:center;font-size:13.5px;color:var(--muted-foreground)}
.ax-pg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ax-pg .c{position:relative;aspect-ratio:1;overflow:hidden;border-radius:14px;background:var(--muted)}.ax-pg img{width:100%;height:100%;object-fit:cover}
.ax-pg .o{position:absolute;inset:auto 0 0 0;display:flex;justify-content:space-between;padding:4px;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}.ax-pg .o button{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.92);color:#111}
.ax-pbar{height:6px;border-radius:999px;background:var(--muted);overflow:hidden}.ax-pbar i{display:block;height:100%;background:var(--primary);transition:width .15s}
.ax-opt3{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:18px;border:1px solid var(--border);background:var(--card);text-align:left;transition:all .15s}.ax-opt3+.ax-opt3{margin-top:8px}
.ax-opt3 .ic{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:var(--muted)}.ax-opt3 b{display:block;font-size:14px}.ax-opt3 small{display:block;font-size:12px;color:var(--muted-foreground)}
.ax-opt3.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}.ax-opt3.on .ic{background:var(--primary);color:var(--primary-foreground)}
.ax-two2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ax-two2 button{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border-radius:18px;border:1px solid var(--border);background:var(--card);font-size:13.5px;font-weight:600}.ax-two2 button.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}
.ax-prv{position:relative;height:224px;margin:0 calc(var(--gutter) * -1);overflow:hidden;background:var(--muted)}.ax-prv img{width:100%;height:100%;object-fit:cover}
.ax-prv .o{position:absolute;inset:auto 0 0 0;padding:16px var(--gutter);background:linear-gradient(to top,rgba(0,0,0,.72),transparent);color:#fff}.ax-prv .o p{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.85}.ax-prv .o h3{margin:2px 0 0;font-size:20px;font-weight:700}
.ax-prv .big{display:grid;place-items:center;height:100%;color:var(--muted-foreground)}
.ax-it{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:18px;border:1px solid var(--border);background:var(--card)}.ax-it .ic{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:10px;background:var(--muted)}.ax-it p{margin:0}.ax-it .k{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ax-it .v{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600}
.ax-okw{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:24px var(--gutter) 40px;scrollbar-width:none}
.ax-okw .big{display:grid;place-items:center;width:80px;height:80px;margin:0 auto;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-elevated);animation:ax-slide-up .4s ease-out both}
.ax-okw h1{margin:20px 0 0;text-align:center;font-size:24px;font-weight:700}.ax-okw .s{margin:4px 0 0;text-align:center;font-size:13.5px;color:var(--muted-foreground)}
.ax-shc{margin-top:24px;overflow:hidden;border-radius:24px;border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-card)}
.ax-shc .im{position:relative;height:160px;background:var(--muted)}.ax-shc .im img{width:100%;height:100%;object-fit:cover}.ax-shc .im .o{position:absolute;inset:auto 0 0 0;padding:12px;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);color:#fff}.ax-shc .im .o p{margin:0}
.ax-shc .g{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;font-size:12px}.ax-shc .g p{margin:0;display:flex;align-items:center;gap:6px}.ax-shc .g .w{grid-column:span 2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-shr{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}.ax-shr button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 2px;font-size:10px;font-weight:600}.ax-shr .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:16px;background:var(--muted)}
.ax-oka{display:grid;gap:8px;margin-top:24px}

/* ---- activity detail (v0.9.0) ---- */
.ax-col.rel{position:relative}
.ax-adtop{position:absolute;left:0;right:0;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;padding:calc(max(env(safe-area-inset-top),0px) + 10px) var(--gutter) 0;pointer-events:none}
.ax-adtop>div{display:flex;gap:8px;pointer-events:auto}.ax-adtop>button{pointer-events:auto}
.ax-fb{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.42);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ax-fb:active{transform:scale(.94)}.ax-fb .axi.fill{fill:#fff}
.ax-adh{position:relative;height:288px;overflow:hidden;background:var(--muted)}.ax-adh>img{width:100%;height:100%;object-fit:cover}
.ax-adh .nop{display:grid;place-items:center;height:100%;background:var(--gradient-hero);color:rgba(255,255,255,.55)}
.ax-adh::after{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.25),transparent)}
.ax-adh .ov{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px var(--gutter);color:#fff}
.ax-adh .tg{display:flex;align-items:center;gap:8px}
.ax-adh .ct{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:7px;background:rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.ax-adh h1{margin:8px 0 0;font-size:26px;line-height:31px;font-weight:700;letter-spacing:-.015em}
.ax-adh .by{display:inline-flex;align-items:center;gap:8px;margin-top:12px;text-align:left}
.ax-adh .by img,.ax-adh .by .ph{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;object-fit:cover;background:rgba(255,255,255,.25);box-shadow:0 0 0 2px rgba(255,255,255,.4);font-size:12px;font-weight:700}
.ax-adh .by span{font-size:13px}.ax-adh .by span i{font-style:normal;opacity:.8}.ax-adh .by span b{font-weight:600}
.ax-vtick{display:inline-grid;place-items:center;width:16px;height:16px;margin-left:4px;border-radius:50%;background:#fff;color:#111;vertical-align:middle}
.ax-stb{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:7px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;background:rgba(255,255,255,.92);color:#111}
.ax-stb.live{background:#fff;animation:axpulse 1.4s ease-in-out infinite}.ax-stb.cancelled{background:rgba(0,0,0,.55);color:#fff;text-decoration:line-through}.ax-stb.completed{background:rgba(255,255,255,.2);color:#fff}
.ax-adg{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px var(--gutter) 0}
.ax-adg>div{display:flex;align-items:center;gap:10px;min-width:0;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-adg .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--muted)}.ax-adg p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-adg .k{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}.ax-adg .v{font-size:13px;line-height:18px;font-weight:600}
.ax-adsec{padding:24px var(--gutter) 0}.ax-adsec .ax-sech{padding:0;margin-bottom:10px}.ax-adsec .ax-sech a,.ax-adsec .ax-sech button{font-size:12px;font-weight:600}
.ax-desc{margin:0;white-space:pre-line;font-size:14px;line-height:22px;color:color-mix(in oklab,var(--foreground) 88%,transparent)}.ax-desc.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ax-more{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:12px;font-weight:600}
.ax-rl{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.ax-rl li{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:19px}.ax-rl li i{margin-top:7px;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--foreground)}
.ax-pag{display:flex;align-items:center}.ax-pag img,.ax-pag .ph{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:13px;font-weight:700;box-shadow:0 0 0 3px var(--background)}.ax-pag>*+*{margin-left:-10px}
.ax-pag .more{display:grid;place-items:center;height:40px;min-width:40px;padding:0 8px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:12px;font-weight:700;box-shadow:0 0 0 3px var(--background)}
.ax-linkrow{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:12px;padding:14px 16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);font-size:14px;font-weight:600}
.ax-gal{display:flex;gap:8px;padding:0 var(--gutter);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.ax-gal::-webkit-scrollbar{display:none}
.ax-gal button{position:relative;flex:0 0 70%;aspect-ratio:4/3;scroll-snap-align:center;overflow:hidden;border-radius:18px;background:var(--muted)}.ax-gal img{width:100%;height:100%;object-fit:cover}
.ax-lbx{position:absolute;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.95);backdrop-filter:blur(8px)}
.ax-lbx img{max-width:92%;max-height:80%;border-radius:14px;object-fit:contain}
.ax-lbx button{position:absolute;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff}
.ax-lbx .n{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:4px 12px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:600}
.ax-rsum{display:flex;align-items:center;gap:14px;padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-rsum .n{text-align:center}.ax-rsum .n b{display:block;font-size:30px;line-height:32px;font-weight:800;font-family:var(--font-display)}
.ax-stars{display:inline-flex;gap:1px}.ax-stars .axi{color:var(--foreground)}.ax-stars .axi.off{color:var(--muted-foreground);opacity:.35}
.ax-rsum p{margin:0}.ax-rsum .a{font-size:14px;font-weight:600}.ax-rsum .b{font-size:12px;color:var(--muted-foreground)}
.ax-rv{padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-rv+.ax-rv{margin-top:10px}
.ax-rv .h{display:flex;align-items:center;gap:10px}.ax-rv .h img,.ax-rv .h .ph{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700;font-size:12px}
.ax-rv .h div{flex:1;min-width:0}.ax-rv .h p{margin:0}.ax-rv .nm{font-size:13px;font-weight:600}.ax-rv .dt{font-size:11px;color:var(--muted-foreground)}
.ax-rv .c{margin:8px 0 0;font-size:13px;line-height:19px;color:color-mix(in oklab,var(--foreground) 88%,transparent)}
.ax-cmp{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-radius:999px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-cmp img,.ax-cmp .ph{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:11px;font-weight:700}
.ax-cmp input{flex:1;min-width:0;background:transparent;border:0;outline:0;font:inherit;font-size:14px;color:var(--foreground)}
.ax-cmp button{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--primary);color:var(--primary-foreground)}.ax-cmp button[disabled]{opacity:.45}
.ax-rep{display:flex;align-items:center;justify-content:space-between;margin:0 0 6px;padding:0 12px;font-size:12px;color:var(--muted-foreground)}.ax-rep button{font-weight:600;color:var(--foreground)}
.ax-cl{margin-top:16px;display:flex;flex-direction:column;gap:16px}
.ax-cm{display:flex;gap:10px}.ax-cm>img,.ax-cm>.ph{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);font-size:12px;font-weight:700}
.ax-cm .bb{padding:8px 12px;border-radius:6px 18px 18px 18px;background:var(--muted)}.ax-cm .bb p{margin:0}.ax-cm .nm{font-size:13px;font-weight:600}.ax-cm .tx{margin-top:2px;font-size:13px;line-height:19px;word-break:break-word}
.ax-cm .ac{display:flex;align-items:center;gap:16px;margin-top:4px;padding-left:4px;font-size:11px;color:var(--muted-foreground)}
.ax-cm .ac button{display:inline-flex;align-items:center;gap:4px;font-weight:600}.ax-cm .ac button.on{color:var(--foreground)}.ax-cm .ac button.on .axi{fill:currentColor}
.ax-cm .rp{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.ax-actbar{position:relative;z-index:20;flex-shrink:0;display:flex;align-items:center;gap:12px;padding:12px var(--gutter) max(12px,env(safe-area-inset-bottom));border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:color-mix(in oklab,var(--background) 94%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.ax-actbar .sv{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:16px;border:2px solid var(--border)}.ax-actbar .sv.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-actbar .ax-btn{height:48px;border-radius:16px;flex:1}.ax-actbar .ax-btn[disabled]{opacity:.55}
.ax-joinok{position:absolute;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.45);backdrop-filter:blur(6px);pointer-events:none}
.ax-joinok div{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 32px;border-radius:28px;background:var(--background);box-shadow:var(--shadow-elevated);animation:ax-slide-up .35s ease-out both}
.ax-joinok i{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--gradient-brand);color:var(--primary-foreground)}.ax-joinok b{font-size:18px;font-family:var(--font-display)}.ax-joinok span{font-size:12px;color:var(--muted-foreground)}
.ax-dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 0;margin:8px 0 0;font-size:12px}.ax-dl dt{color:var(--muted-foreground)}.ax-dl dd{margin:0;text-align:right;font-weight:600}
.ax-box{padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:var(--muted)}.ax-box b{font-size:14px}
.ax-opts{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:var(--card);text-align:left;font-size:14px;font-weight:600}.ax-opts+.ax-opts{margin-top:8px}.ax-opts.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}.ax-opts.red{color:var(--destructive)}
.ax-warn{display:flex;align-items:flex-start;gap:10px;padding:16px;border-radius:18px;background:color-mix(in oklab,var(--destructive) 10%,transparent);font-size:13px;line-height:19px}
.ax-sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ax-sgrid button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 2px;font-size:11px;font-weight:600}.ax-sgrid .ic{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--muted)}
.ax-rstars{display:flex;justify-content:center;gap:6px}.ax-rstars button{padding:4px;color:var(--muted-foreground)}.ax-rstars button.on{color:var(--foreground)}.ax-rstars button.on .axi{fill:currentColor}
.ax-two3{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.ax-two3 .ax-btn{height:48px;border-radius:16px}
.ax-orgs{display:flex;flex-direction:column;align-items:center;text-align:center}.ax-orgs img,.ax-orgs .ph{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:26px;font-weight:700;box-shadow:0 0 0 4px color-mix(in oklab,var(--foreground) 10%,transparent)}
.ax-orgs .nm{display:flex;align-items:center;gap:6px;margin:12px 0 0;font-size:16px;font-weight:700}.ax-orgs .st{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px;color:var(--muted-foreground)}
.ax-orgs p.bio{max-width:280px;margin:12px 0 0;font-size:13px;line-height:19px;color:var(--muted-foreground)}
.ax-pli{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-pli>img,.ax-pli>.ph{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700}
.ax-pli .tx{flex:1;min-width:0}.ax-pli .tx p{margin:0}.ax-pli .nm{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}.ax-pli .nm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-pli .bio{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted-foreground)}.ax-pli .tg{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.ax-pli .tg span{height:18px;padding:0 6px;border-radius:6px;background:var(--muted);font-size:10px;line-height:18px;font-weight:600;color:var(--muted-foreground)}
.ax-pli .cn{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--muted)}.ax-pli .cn.on{background:var(--primary);color:var(--primary-foreground)}

/* ---- clubs (v0.10.0) ---- */
.ax-clh{display:flex;align-items:center;gap:8px;padding:calc(max(env(safe-area-inset-top),0px) + 12px) var(--gutter) 10px}
.ax-clh h1{flex:1;margin:0;font-size:24px;line-height:28px;font-weight:700;letter-spacing:-.015em}
.ax-clp{display:flex;gap:8px;padding:0 var(--gutter) 4px;overflow-x:auto;scrollbar-width:none}.ax-clp::-webkit-scrollbar{display:none}
.ax-ccard{display:flex;flex-direction:column;flex:0 0 250px;overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card);color:inherit}
.ax-ccard.grid{flex:1 1 auto;width:100%}
.ax-ccard .bn{position:relative;display:block;height:96px;overflow:hidden;background:var(--gradient-hero)}.ax-ccard .bn img{width:100%;height:100%;object-fit:cover}
.ax-ccard .bn::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),rgba(0,0,0,.1),transparent)}
.ax-ccard .chp{position:absolute;bottom:8px;z-index:2;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:10px;font-weight:700}
.ax-ccard .chp.l{left:12px}.ax-ccard .chp.r{right:12px}
.ax-ccard .bd{display:flex;flex:1;flex-direction:column;gap:10px;padding:16px}
.ax-ccard .hd{display:flex;align-items:flex-start;gap:12px}
.ax-ccard .lg{width:48px;height:48px;flex-shrink:0;margin-top:-32px;border-radius:16px;border:2px solid var(--background);object-fit:cover;background:var(--muted);box-shadow:var(--shadow-soft)}
.ax-ccard .lg.ph{display:grid;place-items:center;color:var(--muted-foreground)}
.ax-ccard .nm{display:flex;align-items:center;gap:4px;margin:0;font-size:15px;line-height:20px;font-weight:700}.ax-ccard .nm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ax-ccard .mt{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:2px 0 0;font-size:11px;color:var(--muted-foreground)}.ax-ccard .mt span{display:inline-flex;align-items:center;gap:4px}
.ax-ccard .tl{margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;line-height:18px;color:var(--muted-foreground);min-height:36px}
.ax-ccard .nx{display:flex;align-items:center;gap:6px;margin:0;padding:6px 10px;border-radius:12px;background:var(--muted);font-size:11px;font-weight:500}.ax-ccard .nx span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-ccard .nx em{flex-shrink:0;font-style:normal;color:var(--muted-foreground)}
.ax-ccard .ft{display:flex;align-items:center;gap:8px;margin-top:auto}.ax-ccard .ft .av{display:flex}.ax-ccard .ft .av img{width:24px;height:24px;border-radius:50%;border:2px solid var(--card);object-fit:cover}.ax-ccard .ft .av img+img{margin-left:-8px}
.ax-ccard .ft .jb{margin-left:auto}
.ax-lvl{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10px;font-weight:700;color:var(--foreground)}
.ax-lvl.Gold,.ax-lvl.Platinum{background:var(--primary);color:var(--primary-foreground)}.ax-lvl.Silver{background:color-mix(in oklab,var(--foreground) 14%,transparent)}
.ax-feat{position:relative;display:block;margin:0 var(--gutter);overflow:hidden;border-radius:24px;box-shadow:var(--shadow-elevated);color:#fff}
.ax-feat>img{width:100%;height:176px;object-fit:cover;background:var(--gradient-hero)}.ax-feat .fg{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,.4),rgba(0,0,0,.08))}
.ax-feat .tp{position:absolute;left:0;top:0;padding:14px}.ax-feat .tp span{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.ax-feat .bt{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;gap:12px;padding:14px}.ax-feat .bt img{width:56px;height:56px;flex-shrink:0;border-radius:18px;border:2px solid rgba(255,255,255,.8);object-fit:cover}
.ax-feat .bt .t{min-width:0;flex:1}.ax-feat .bt p{margin:0}.ax-feat .bt .a{display:flex;align-items:center;gap:4px;font-size:16px;line-height:20px;font-weight:700}.ax-feat .bt .a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-feat .bt .b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;opacity:.85}
.ax-chtr{margin:0 var(--gutter);padding:16px;border-radius:22px;border:1px solid color-mix(in oklab,var(--foreground) 14%,transparent);background:color-mix(in oklab,var(--foreground) 4%,transparent)}
.ax-chtr .h{display:flex;align-items:center;justify-content:space-between}.ax-chtr .h p{margin:0;font-size:13px;font-weight:700}.ax-chtr .h span{height:22px;padding:0 9px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10px;line-height:22px;font-weight:700}
.ax-chtr .g{margin-top:12px}.ax-chtr .g p{display:flex;justify-content:space-between;margin:0 0 4px;font-size:12px;font-weight:500}.ax-chtr .g p b{font-weight:400;color:var(--muted-foreground)}.ax-chtr .g+.g{margin-top:12px}
.ax-chtr .bar{height:6px;border-radius:999px;background:var(--muted);overflow:hidden}.ax-chtr .bar i{display:block;height:100%;border-radius:999px;background:var(--primary);transition:width .7s}
.ax-tip2{flex:0 0 230px;padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-tip2 b{display:flex;align-items:center;gap:6px;font-size:12.5px;line-height:17px}.ax-tip2 p{margin:6px 0 0;font-size:11.5px;line-height:17px;color:var(--muted-foreground)}
.ax-browse{display:flex;align-items:center;gap:8px;padding:0 var(--gutter)}.ax-browse p{flex:1;margin:0;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-browse .ax-pill{height:28px;padding:0 12px;font-size:11.5px;text-transform:capitalize}
.ax-clgrid{display:flex;flex-direction:column;gap:12px;padding:0 var(--gutter)}
.ax-start{display:flex;align-items:center;gap:12px;margin:0 var(--gutter);padding:16px;border-radius:24px;border:1px dashed var(--border);background:color-mix(in oklab,var(--card) 60%,transparent)}
.ax-start .ic{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:16px;background:var(--muted)}.ax-start .tx{flex:1;min-width:0}.ax-start p{margin:0}.ax-start .a{font-size:13.5px;font-weight:700}.ax-start .b{font-size:11.5px;color:var(--muted-foreground)}
.ax-priv{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:18px;border:1px solid var(--border);background:var(--card);text-align:left}.ax-priv+.ax-priv{margin-top:8px}
.ax-priv.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}.ax-priv .tx{flex:1;min-width:0}.ax-priv .tx b{display:block;font-size:13.5px}.ax-priv .tx small{display:block;font-size:11.5px;color:var(--muted-foreground)}
.ax-two4{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ax-two4 .ax-up2{height:112px}
.ax-abt{padding:16px;border-radius:18px;border:1px solid var(--border);background:var(--card);font-size:12.5px}.ax-abt b{display:block;font-size:13.5px}.ax-abt p{margin:6px 0 0;line-height:19px;color:var(--muted-foreground)}.ax-abt ol{margin:6px 0 0;padding-left:18px;line-height:19px;color:var(--muted-foreground)}
.ax-oks{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:0 32px;text-align:center}.ax-oks .big{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--gradient-brand);color:var(--primary-foreground);box-shadow:var(--shadow-elevated)}
.ax-oks h1{margin:0;font-size:24px;font-weight:700}.ax-oks p{margin:0;font-size:13px;line-height:19px;color:var(--muted-foreground)}.ax-oks .bt{width:100%;max-width:280px;display:grid;gap:8px;margin-top:8px}

/* ---- club home (v0.10.1) ---- */
.ax-cdh{display:flex;align-items:center;gap:8px;padding:calc(max(env(safe-area-inset-top),0px) + 8px) var(--gutter) 8px}
.ax-cdh h1{flex:1;min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-sans);font-size:15px;font-weight:700}
.ax-cdb{display:block;width:100%;height:144px;object-fit:cover;background:var(--gradient-hero)}
.ax-cdp{margin-top:-40px;padding:0 var(--gutter)}
.ax-cdp .lg{width:68px;height:68px;border-radius:20px;border:3px solid var(--background);object-fit:cover;background:var(--muted);box-shadow:var(--shadow-soft);display:grid;place-items:center;color:var(--muted-foreground)}
.ax-cdp h2{margin:8px 0 0;display:flex;align-items:center;gap:6px;font-size:20px;line-height:25px;font-weight:700;letter-spacing:-.012em}
.ax-cdp .mt{margin:2px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px;color:var(--muted-foreground)}.ax-cdp .mt span{display:inline-flex;align-items:center;gap:4px}
.ax-cdp .tl{margin:8px 0 0;font-size:13.5px;line-height:20px}
.ax-cdp .bt{display:flex;gap:8px;margin-top:14px}.ax-cdp .bt .ax-btn{flex:1;height:44px;border-radius:14px}
.ax-cdc{margin:0 var(--gutter);padding:16px;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);font-size:13.5px}
.ax-cdc.nop{padding:0;border:0;background:transparent}
.ax-cmpost{display:flex;gap:10px;padding:12px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-cmpost img.av,.ax-cmpost .ph{width:36px;height:36px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:700}
.ax-cmpost .in{flex:1;min-width:0}.ax-cmpost textarea{width:100%;min-height:56px;resize:none;border:0;outline:0;background:transparent;font:inherit;font-size:14px;line-height:20px;color:var(--foreground)}
.ax-cmpost .row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ax-cmpost .row .ax-sbtn{height:34px}
.ax-cmpost .prev{position:relative;margin:6px 0}.ax-cmpost .prev img{width:100%;max-height:180px;border-radius:14px;object-fit:cover}.ax-cmpost .prev button{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff}
.ax-pst{padding:14px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-pst+.ax-pst,.ax-cmpost+.ax-pst{margin-top:12px}
.ax-pst .h{display:flex;align-items:center;gap:10px}.ax-pst .h img,.ax-pst .h .ph{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:12px;font-weight:700}
.ax-pst .h div{flex:1;min-width:0}.ax-pst .h p{margin:0}.ax-pst .nm{font-size:13.5px;font-weight:600}.ax-pst .tm{font-size:11px;color:var(--muted-foreground)}
.ax-pst .pin{display:inline-flex;align-items:center;gap:4px;margin-bottom:8px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-pst .tx{margin:10px 0 0;white-space:pre-line;word-break:break-word;font-size:14px;line-height:21px}.ax-pst .im{width:100%;max-height:300px;margin-top:10px;border-radius:14px;object-fit:cover}
.ax-pst .ac{display:flex;align-items:center;gap:16px;margin-top:10px;font-size:12px;color:var(--muted-foreground)}.ax-pst .ac button{display:inline-flex;align-items:center;gap:5px;font-weight:600}.ax-pst .ac button.on{color:var(--foreground)}.ax-pst .ac button.on .axi{fill:currentColor}
.ax-mem{display:flex;align-items:center;gap:12px;padding:10px 0}.ax-mem+.ax-mem{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-mem img,.ax-mem .ph{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700}
.ax-mem .tx{flex:1;min-width:0}.ax-mem .tx p{margin:0}.ax-mem .nm{display:flex;align-items:center;gap:5px;font-size:14px;font-weight:600}.ax-mem .nm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-mem .rl{font-size:11.5px;color:var(--muted-foreground)}
.ax-mem .rb{height:22px;padding:0 9px;border-radius:999px;background:var(--muted);font-size:10px;line-height:22px;font-weight:700}.ax-mem .rb.Owner,.ax-mem .rb.Admin{background:var(--primary);color:var(--primary-foreground)}
.ax-ab dt{margin-top:14px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ax-ab dt:first-child{margin-top:0}.ax-ab dd{margin:4px 0 0;font-size:13.5px;line-height:21px}
.ax-ab ol{margin:4px 0 0;padding-left:18px;line-height:21px}
.ax-lockc{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 20px;text-align:center}.ax-lockc .ic{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:var(--muted);color:var(--muted-foreground)}.ax-lockc b{font-size:14px}.ax-lockc p{margin:0;max-width:26ch;font-size:12.5px;line-height:18px;color:var(--muted-foreground)}

/* ---- chat (v0.11.0) ---- */
.ax-cth{display:flex;align-items:center;gap:8px;padding:calc(max(env(safe-area-inset-top),0px) + 12px) var(--gutter) 8px}
.ax-cth h1{flex:1;display:flex;align-items:center;gap:8px;margin:0;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.012em}
.ax-tabs.c{margin-top:0;padding-bottom:10px}
.ax-tabs.c .ax-pill{height:32px;font-size:12px}
.ax-archrow{display:flex;align-items:center;gap:12px;width:calc(100% - var(--gutter) * 2);margin:0 var(--gutter) 8px;padding:12px 14px;border-radius:18px;border:1px solid var(--border);background:var(--card);text-align:left}
.ax-archrow span{flex:1;font-size:13px;font-weight:600}.ax-archrow small{font-size:11px;color:var(--muted-foreground)}
.ax-cli{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:12px var(--gutter);text-align:left}
.ax-cli+.ax-cli{border-top:1px solid color-mix(in oklab,var(--border) 50%,transparent)}
.ax-cli:active{background:var(--muted)}
.ax-cli .pic{position:relative;flex-shrink:0}.ax-cli .pic img,.ax-cli .pic .ph{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700}
.ax-cli .pic .pd{position:absolute;right:0;bottom:0;width:13px;height:13px;border-radius:50%;border:2.5px solid var(--background);background:var(--success)}
.ax-cli .pic .gi{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--primary);color:var(--primary-foreground);box-shadow:0 0 0 2px var(--background)}
.ax-cli .tx{flex:1;min-width:0}.ax-cli .tx p{margin:0}
.ax-cli .r1{display:flex;align-items:center;gap:6px}.ax-cli .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;line-height:20px;font-weight:700}
.ax-cli .tm{flex-shrink:0;font-size:11px;color:var(--muted-foreground)}.ax-cli .tm.u{color:var(--foreground);font-weight:600}
.ax-cli .r2{display:flex;align-items:center;gap:6px;margin-top:2px}.ax-cli .lm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;line-height:18px;color:var(--muted-foreground)}
.ax-cli .lm.t{color:var(--foreground);font-style:italic}.ax-cli .lm b{font-weight:600;color:var(--foreground)}
.ax-cli .bd{flex-shrink:0;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10.5px;line-height:20px;font-weight:700;text-align:center}.ax-cli .bd.m{background:var(--muted-foreground)}
.ax-cli .ic{flex-shrink:0;color:var(--muted-foreground)}
.ax-cinsights{margin:0 var(--gutter);padding:16px;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}
.ax-cinsights .h{display:flex;align-items:center;gap:6px;margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ax-cinsights ul{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.ax-cinsights li{display:flex;gap:8px;font-size:12.5px;line-height:18px}.ax-cinsights li i{margin-top:7px;width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--foreground)}
.ax-chrow{display:flex;align-items:center;gap:12px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-chrow+.ax-chrow{margin-top:8px}
.ax-chrow .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--muted)}.ax-chrow .tx{flex:1;min-width:0}.ax-chrow p{margin:0}.ax-chrow .a{font-size:13px;font-weight:600}.ax-chrow .bar{height:5px;margin-top:6px;border-radius:999px;background:var(--muted);overflow:hidden}.ax-chrow .bar i{display:block;height:100%;background:var(--primary)}
/* conversation */
.ax-crh2{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:calc(max(env(safe-area-inset-top),0px) + 8px) 8px 8px;border-bottom:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:color-mix(in oklab,var(--background) 95%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ax-crh2 .pic{position:relative;flex-shrink:0}.ax-crh2 .pic img,.ax-crh2 .pic .ph{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--muted);font-weight:700}.ax-crh2 .pic .pd{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;border:2px solid var(--background);background:var(--success)}
.ax-crh2 .tx{flex:1;min-width:0}.ax-crh2 .tx p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-crh2 .nm{font-size:15px;font-weight:700}.ax-crh2 .st{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted-foreground)}
.ax-ib{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%}.ax-ib:active{background:var(--muted)}
.ax-pinb{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:8px 14px;border-bottom:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:var(--muted);font-size:12px}.ax-pinb span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-pinb button{display:grid;place-items:center;width:24px;height:24px}
.ax-msgs{flex:1;min-height:0;overflow-y:auto;padding:12px 0 8px;scrollbar-width:none}.ax-msgs::-webkit-scrollbar{display:none}
.ax-day{display:flex;justify-content:center;margin:12px 0 6px}.ax-day span{padding:3px 12px;border-radius:999px;background:var(--muted);font-size:10.5px;font-weight:600;color:var(--muted-foreground)}
.ax-sysn{display:flex;justify-content:center;padding:6px 20px}.ax-sysn span{padding:4px 12px;border-radius:999px;background:var(--muted);font-size:11px;color:var(--muted-foreground);text-align:center}
.ax-mg{display:flex;gap:8px;padding:2px 12px}.ax-mg.mine{justify-content:flex-end}
.ax-mg .sl{width:28px;flex-shrink:0;align-self:flex-end}.ax-mg .sl img,.ax-mg .sl .ph{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--muted);font-size:10px;font-weight:700}
.ax-mg .col{display:flex;max-width:80%;flex-direction:column;align-items:flex-start}.ax-mg.mine .col{align-items:flex-end}
.ax-mg .au{margin:0 0 2px;padding:0 4px;font-size:11px;font-weight:600;color:var(--muted-foreground)}
.ax-ann{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:999px;background:var(--primary);color:var(--primary-foreground);font-size:10px;font-weight:700}
.ax-bub{position:relative;max-width:100%;padding:9px 13px;border-radius:18px 18px 18px 6px;background:var(--muted);color:var(--foreground);font-size:14px;line-height:20px;text-align:left;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.ax-mg.mine .ax-bub{border-radius:18px 18px 6px 18px;background:var(--primary);color:var(--primary-foreground)}
.ax-bub .tt{white-space:pre-wrap;word-break:break-word;user-select:text;-webkit-user-select:text}
.ax-bub.emo{padding:0 4px;background:transparent;font-size:46px;line-height:56px}.ax-bub.rich{padding:0;background:transparent}
.ax-rp{display:block;margin-bottom:6px;padding:5px 9px;border-left:3px solid currentColor;border-radius:8px;background:rgba(0,0,0,.07);font-size:11.5px;opacity:.85}.ax-rp b{display:block;font-weight:700}.ax-rp span{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.ax-mg.mine .ax-rp{background:rgba(255,255,255,.14)}
.ax-pic{overflow:hidden;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 70%,transparent);background:var(--card)}.ax-pic img{display:block;width:240px;max-width:100%;height:auto;object-fit:cover}.ax-pic .cp{padding:8px 12px;font-size:12px;color:var(--foreground)}
.ax-rx{display:flex;gap:4px;margin:-6px 6px 0}.ax-rx button{display:inline-flex;align-items:center;gap:3px;height:22px;padding:0 7px;border-radius:999px;border:1px solid var(--border);background:var(--background);font-size:10.5px;font-weight:600;color:var(--muted-foreground);box-shadow:var(--shadow-card)}.ax-rx button.on{border-color:var(--primary);color:var(--foreground)}
.ax-meta2{display:flex;align-items:center;gap:4px;margin-top:2px;padding:0 4px;font-size:10px;color:var(--muted-foreground)}.ax-meta2 .axi{color:var(--muted-foreground)}.ax-meta2 .axi.rd{color:var(--foreground)}.ax-meta2 button{display:inline-flex;align-items:center;gap:3px;font-weight:700;color:var(--destructive)}
.ax-vp{display:flex;align-items:center;gap:10px;min-width:190px}.ax-vp button{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.1)}.ax-mg.mine .ax-vp button{background:rgba(255,255,255,.2)}
.ax-vp .wv{display:flex;align-items:center;gap:2px;flex:1;height:28px}.ax-vp .wv i{flex:1;min-width:2px;border-radius:2px;background:currentColor;opacity:.35}.ax-vp .wv i.on{opacity:1}.ax-vp small{flex-shrink:0;font-size:11px;font-variant-numeric:tabular-nums}
.ax-shc2{display:flex;overflow:hidden;width:250px;max-width:100%;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:var(--card);color:var(--foreground);text-align:left;box-shadow:var(--shadow-card)}
.ax-shc2 img,.ax-shc2 .ph{flex:0 0 76px;object-fit:cover;background:var(--muted);display:grid;place-items:center}.ax-shc2 .tx{flex:1;min-width:0;padding:10px 12px}.ax-shc2 .tx p{margin:0}.ax-shc2 .k{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-shc2 .a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700}.ax-shc2 .b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;color:var(--muted-foreground)}
.ax-pollc{width:260px;max-width:100%;padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:var(--card);color:var(--foreground);text-align:left;box-shadow:var(--shadow-card)}
.ax-pollc .q{display:flex;align-items:center;gap:6px;margin:0;font-size:13.5px;font-weight:700}.ax-pollc .o{position:relative;display:block;width:100%;margin-top:8px;overflow:hidden;border-radius:12px;border:1px solid var(--border);text-align:left}
.ax-pollc .o i{position:absolute;inset:0 auto 0 0;background:color-mix(in oklab,var(--foreground) 10%,transparent);transition:width .4s}.ax-pollc .o.on{border-color:var(--primary)}.ax-pollc .o.on i{background:color-mix(in oklab,var(--foreground) 18%,transparent)}
.ax-pollc .o span{position:relative;display:flex;justify-content:space-between;gap:8px;padding:9px 12px;font-size:12.5px;font-weight:600}.ax-pollc .f{margin:8px 0 0;font-size:10.5px;color:var(--muted-foreground)}
.ax-att{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.ax-att button{padding:8px 4px;border-radius:12px;border:1px solid var(--border);text-align:center;font-size:11px;font-weight:600}.ax-att button b{display:block;font-size:15px}.ax-att button.on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}
.ax-evc{display:flex;gap:12px;width:250px;max-width:100%;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 80%,transparent);background:var(--card);color:var(--foreground);text-align:left}.ax-evc .ic{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:14px;background:var(--muted)}.ax-evc p{margin:0}.ax-evc .a{font-size:13px;font-weight:700}.ax-evc .b{font-size:11.5px;color:var(--muted-foreground)}
.ax-comp{flex-shrink:0;padding:8px 12px max(8px,env(safe-area-inset-bottom));border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:color-mix(in oklab,var(--background) 95%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ax-comp .row{display:flex;align-items:flex-end;gap:6px}.ax-comp .box{display:flex;flex:1;min-width:0;align-items:flex-end;gap:2px;padding:4px 6px 4px 14px;border-radius:20px;border:1px solid var(--border);background:var(--muted)}
.ax-comp textarea{flex:1;min-width:0;max-height:96px;min-height:32px;resize:none;border:0;outline:0;background:transparent;padding:6px 0;font:inherit;font-size:14px;line-height:20px;color:var(--foreground)}
.ax-comp .btn{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%}.ax-comp .btn.sm{width:32px;height:32px}.ax-comp .btn:active{background:var(--muted)}.ax-comp .btn.go{background:var(--primary);color:var(--primary-foreground)}.ax-comp .btn.mc{background:var(--muted)}
.ax-rpl{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;border-left:3px solid var(--primary);border-radius:12px;background:var(--muted)}.ax-rpl div{flex:1;min-width:0}.ax-rpl p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-rpl .a{font-size:11px;font-weight:700}.ax-rpl .b{font-size:12px;color:var(--muted-foreground)}
.ax-rec{display:flex;align-items:center;gap:12px;padding:6px 4px}.ax-rec .dot{width:10px;height:10px;border-radius:50%;background:var(--destructive);animation:axpulse 1s ease-in-out infinite}.ax-rec b{flex:1;font-size:14px;font-variant-numeric:tabular-nums}
.ax-typing{display:flex;align-items:center;gap:8px;padding:2px 12px 2px 48px}.ax-typing i{display:inline-block;width:6px;height:6px;margin-right:3px;border-radius:50%;background:var(--muted-foreground);animation:axpulse 1s ease-in-out infinite}.ax-typing i:nth-child(2){animation-delay:.15s}.ax-typing i:nth-child(3){animation-delay:.3s}.ax-typing span{font-size:11px;color:var(--muted-foreground)}
.ax-ctx{position:absolute;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.4);padding:12px}.ax-ctx .p{width:100%;padding:16px;border-radius:24px;background:var(--background);box-shadow:var(--shadow-elevated);animation:ax-slide-up .25s ease-out both}
.ax-ctx .rx{display:flex;justify-content:space-between;gap:4px;margin-bottom:10px}.ax-ctx .rx button{font-size:26px;line-height:1;padding:4px}.ax-ctx .ac{display:grid;gap:2px}.ax-ctx .ac button{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;text-align:left;font-size:14px;font-weight:600}.ax-ctx .ac button:active{background:var(--muted)}.ax-ctx .ac button.red{color:var(--destructive)}
.ax-egrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.ax-egrid button{display:grid;place-items:center;height:40px;border-radius:12px;font-size:24px}.ax-egrid button:active{background:var(--muted)}
.ax-agrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ax-agrid button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;border-radius:18px;border:1px solid var(--border);background:var(--card);font-size:11px;font-weight:600}.ax-agrid .ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--muted)}
.ax-prow2{display:flex;align-items:center;gap:12px;width:100%;padding:10px 4px;text-align:left}.ax-prow2+.ax-prow2{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}.ax-prow2 img,.ax-prow2 .ph{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:14px;object-fit:cover;background:var(--muted);font-weight:700}.ax-prow2 p{margin:0}.ax-prow2 .a{font-size:13.5px;font-weight:600}.ax-prow2 .b{font-size:11.5px;color:var(--muted-foreground)}
.ax-lbx2{position:absolute;inset:0;z-index:90;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.92)}.ax-lbx2 img{max-width:100%;max-height:100%;border-radius:16px;object-fit:contain}

/* ---- AI (v0.12.0) ---- */
.ax-aih{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:calc(max(env(safe-area-inset-top),0px) + 8px) 8px 8px;border-bottom:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
.ax-aih .tt{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.ax-aih .tt p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-aih .n{font-size:14px;font-weight:700;font-family:var(--font-display)}.ax-aih .s{font-size:10px;color:var(--muted-foreground)}
.ax-aav{position:relative;display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--gradient-brand);color:var(--primary-foreground)}
.ax-aav.lg{width:64px;height:64px;box-shadow:var(--shadow-elevated)}.ax-aav.live::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid color-mix(in oklab,var(--foreground) 30%,transparent);animation:axring 1.4s ease-out infinite}
.ax-aihb{display:flex;flex-direction:column;align-items:center;gap:10px;padding:8px var(--gutter) 0;text-align:center}.ax-aihb h1{margin:0;font-size:24px;line-height:30px;font-weight:700;letter-spacing:-.015em}.ax-aihb p{margin:0;max-width:30ch;font-size:14px;line-height:20px;color:var(--muted-foreground)}
.ax-qa{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 var(--gutter)}
.ax-qa button{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}
.ax-qa button:active{transform:scale(.97)}.ax-qa .ic{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:var(--muted)}.ax-qa b{display:block;font-size:13px;line-height:17px}.ax-qa small{display:block;font-size:11px;color:var(--muted-foreground)}
.ax-sp{flex:0 0 auto;max-width:240px;padding:10px 14px;border-radius:16px;border:1px solid var(--border);background:var(--card);font-size:12.5px;line-height:17px;font-weight:600;text-align:left;box-shadow:var(--shadow-soft)}
.ax-rmd{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}.ax-rmd+.ax-rmd{margin-top:10px}
.ax-rmd .ic{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:var(--muted)}.ax-rmd .tx{flex:1;min-width:0}.ax-rmd p{margin:0}.ax-rmd .a{font-size:13px;font-weight:700}.ax-rmd .b{font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-rmd a{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:700}
.ax-hc{position:relative;flex:0 0 220px;padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}
.ax-hc b{display:block;padding-right:22px;font-size:13px}.ax-hc small{display:block;margin-top:4px;font-size:11.5px;line-height:16px;color:var(--muted-foreground);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ax-hc em{display:block;margin-top:6px;font-style:normal;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-hc .x{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--muted-foreground)}
.ax-faq{display:block;width:100%;padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-soft)}.ax-faq+.ax-faq{margin-top:8px}.ax-faq b{display:block;font-size:13.5px}.ax-faq span{display:block;margin-top:2px;font-size:12px;line-height:17px;color:var(--muted-foreground)}
.ax-ac{display:flex;flex-direction:column;gap:16px;padding:0 var(--gutter)}
.ax-umsg{align-self:flex-end;max-width:84%;padding:10px 14px;border-radius:18px 18px 6px 18px;background:var(--primary);color:var(--primary-foreground);font-size:14px;line-height:20px;white-space:pre-wrap;word-break:break-word}
.ax-amsg{display:flex;gap:10px;align-items:flex-start}.ax-amsg .col{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.ax-abub{align-self:flex-start;max-width:100%;padding:10px 14px;border-radius:6px 18px 18px 18px;background:var(--muted);font-size:14px;line-height:21px;white-space:pre-wrap;word-break:break-word}
.ax-abub.lim{border:1px dashed var(--border);background:transparent}
.ax-achips{display:flex;flex-wrap:wrap;gap:6px}.ax-achips span{height:24px;padding:0 10px;border-radius:999px;background:var(--muted);font-size:11px;line-height:24px;font-weight:600}
.ax-acts{display:flex;flex-wrap:wrap;gap:8px}.ax-acts a{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:12px;background:var(--primary);color:var(--primary-foreground);font-size:12px;font-weight:700}
.ax-sugs{display:flex;flex-wrap:wrap;gap:6px}.ax-sugs button{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--card);font-size:12px;font-weight:600}
.ax-atools{display:flex;gap:4px}.ax-atools button{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border-radius:8px;font-size:11px;font-weight:600;color:var(--muted-foreground)}.ax-atools button:active{background:var(--muted)}
.ax-think{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted-foreground)}.ax-think i{display:inline-block;width:6px;height:6px;margin-right:3px;border-radius:50%;background:var(--muted-foreground);animation:axpulse 1s ease-in-out infinite}.ax-think i:nth-child(2){animation-delay:.15s}.ax-think i:nth-child(3){animation-delay:.3s}
.ax-aerr{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid color-mix(in oklab,var(--destructive) 40%,transparent);background:color-mix(in oklab,var(--destructive) 6%,transparent);font-size:13px}.ax-aerr span{flex:1}.ax-aerr button{height:32px;padding:0 12px;border-radius:10px;background:var(--primary);color:var(--primary-foreground);font-size:12px;font-weight:700}
.ax-acomp{flex-shrink:0;padding:8px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent);background:color-mix(in oklab,var(--background) 95%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ax-acomp form{display:flex;align-items:flex-end;gap:6px;padding:6px 8px;border-radius:20px;border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-card)}.ax-acomp form:focus-within{border-color:var(--primary)}
.ax-acomp textarea{flex:1;min-width:0;max-height:96px;min-height:36px;resize:none;border:0;outline:0;background:transparent;padding:8px 0;font:inherit;font-size:14px;line-height:20px;color:var(--foreground)}
.ax-acomp .b{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;color:var(--muted-foreground)}.ax-acomp .b.go{background:var(--primary);color:var(--primary-foreground)}.ax-acomp .b[disabled]{opacity:.4}
.ax-plan{overflow:hidden;border-radius:24px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-plan .hd{padding:14px 16px;border-bottom:1px solid color-mix(in oklab,var(--border) 60%,transparent)}.ax-plan .hd .k{display:flex;align-items:center;gap:5px;margin:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ax-plan .hd h3{margin:2px 0 0;font-size:15px;font-weight:700;font-family:var(--font-display)}.ax-plan .hd .d{margin:2px 0 0;font-size:11px;color:var(--muted-foreground)}
.ax-plan .st{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ax-plan .st span{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:999px;background:var(--muted);font-size:10px;font-weight:600}
.ax-plan ol{margin:0;padding:12px 16px;list-style:none}.ax-plan li{position:relative;display:flex;gap:12px;padding-bottom:16px}.ax-plan li:last-child{padding-bottom:0}.ax-plan li:not(:last-child)::after{content:"";position:absolute;left:13px;top:28px;bottom:0;width:1px;background:var(--border)}
.ax-plan li .ic{z-index:1;display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--muted)}.ax-plan li .tm{margin:0;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ax-plan li .tl{margin:1px 0 0;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-plan li .mt{margin:2px 0 0;display:flex;flex-wrap:wrap;gap:2px 8px;font-size:11px;color:var(--muted-foreground)}
.ax-plan .mp{padding:0 16px 14px}.ax-plan .mp svg{display:block;width:100%;height:160px;border-radius:16px;border:1px solid var(--border);background:var(--muted);color:var(--border)}
.ax-plan .ft{display:flex;gap:8px;padding:12px;border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}.ax-plan .ft button{display:flex;flex:1;align-items:center;justify-content:center;gap:6px;height:42px;border-radius:12px;font-size:12px;font-weight:700}.ax-plan .ft button:first-child{background:var(--primary);color:var(--primary-foreground)}.ax-plan .ft button:last-child{border:1px solid var(--border)}
.ax-seg2{display:flex;margin:0 var(--gutter);padding:4px;border-radius:16px;border:1px solid var(--border);background:var(--card)}.ax-seg2 button{flex:1;height:34px;border-radius:12px;font-size:12px;font-weight:700;color:var(--muted-foreground)}.ax-seg2 button.on{background:var(--primary);color:var(--primary-foreground)}
.ax-tiles3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 var(--gutter)}.ax-tiles3 div{padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:center;box-shadow:var(--shadow-soft)}.ax-tiles3 b{display:block;font-size:22px;font-weight:700;font-family:var(--font-display)}.ax-tiles3 small{display:block;margin-top:2px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-bars{display:flex;align-items:flex-end;gap:8px;height:144px;margin:0 var(--gutter);padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-soft)}.ax-bars div{display:flex;flex:1;height:100%;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.ax-bars i{display:block;width:100%;min-height:3px;border-radius:6px 6px 0 0;background:var(--primary)}.ax-bars span{font-size:10px;color:var(--muted-foreground)}
.ax-aff{margin:0 var(--gutter);padding:16px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-soft)}.ax-aff>div+div{margin-top:12px}.ax-aff .r{display:flex;justify-content:space-between;margin-bottom:4px;font-size:12px;font-weight:600}.ax-aff .r span+span{color:var(--muted-foreground)}.ax-aff .bar{height:8px;border-radius:999px;background:var(--muted);overflow:hidden}.ax-aff .bar i{display:block;height:100%;background:var(--primary)}
.ax-ins{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-ins+.ax-ins{margin-top:10px}.ax-ins .ic{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:12px;background:var(--muted)}.ax-ins p{margin:0;font-size:13px;line-height:19px}
.ax-optg{display:flex;gap:8px;padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none}.ax-optg::-webkit-scrollbar{display:none}
.ax-pg2{margin-bottom:6px}

/* ---- profile (v0.13.0) ---- */
.ax-pbn{position:relative;height:168px;overflow:hidden;background:var(--gradient-hero)}
.ax-pbn .ac{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:calc(max(env(safe-area-inset-top),0px) + 10px) var(--gutter) 0}.ax-pbn .ac>div{display:flex;gap:8px}
.ax-pbn::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 0%,rgba(255,255,255,.14),transparent 60%)}
.ax-ph{position:relative;margin-top:-44px;padding:0 var(--gutter);display:flex;flex-direction:column;gap:6px;z-index:2}
.ax-ph .av{display:grid;place-items:center;width:88px;height:88px;overflow:hidden;border-radius:50%;border:4px solid var(--background);background:var(--muted);box-shadow:var(--shadow-elevated);font-size:30px;font-weight:700}.ax-ph .av img{width:100%;height:100%;object-fit:cover}
.ax-ph h1{display:flex;align-items:center;gap:6px;margin:6px 0 0;font-size:22px;line-height:27px;font-weight:700;letter-spacing:-.015em}
.ax-ph .u{margin:0;font-size:13px;color:var(--muted-foreground)}.ax-ph .bio{margin:2px 0 0;font-size:13.5px;line-height:20px}
.ax-ph .row{display:flex;gap:8px;margin-top:10px}.ax-ph .row .ax-btn{height:42px;border-radius:14px;flex:1}.ax-ph .row .sq{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:14px;border:1px solid var(--border);background:var(--card)}
.ax-pst4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 var(--gutter)}.ax-pst4 div{padding:12px 4px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:center;box-shadow:var(--shadow-soft)}.ax-pst4 b{display:block;font-size:18px;line-height:22px;font-family:var(--font-display)}.ax-pst4 small{display:block;font-size:10px;color:var(--muted-foreground)}
.ax-xp{margin:0 var(--gutter);padding:16px;border-radius:22px;background:var(--gradient-hero);color:#fff;box-shadow:var(--shadow-elevated)}.ax-xp .t{display:flex;align-items:center;justify-content:space-between}.ax-xp .l{display:flex;align-items:center;gap:10px}.ax-xp .lv{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.16);font-size:18px;font-weight:800;font-family:var(--font-display)}
.ax-xp p{margin:0}.ax-xp .a{font-size:14px;font-weight:700}.ax-xp .b{font-size:11.5px;color:rgba(255,255,255,.75)}.ax-xp .rk{height:26px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.16);font-size:11px;line-height:26px;font-weight:700}
.ax-xp .bar{height:8px;margin-top:14px;border-radius:999px;background:rgba(255,255,255,.2);overflow:hidden}.ax-xp .bar i{display:block;height:100%;border-radius:999px;background:#fff}
.ax-pcrow{display:flex;align-items:center;gap:12px;width:calc(100% - var(--gutter) * 2);margin:0 var(--gutter);padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:left;box-shadow:var(--shadow-card)}.ax-pcrow .tx{flex:1;min-width:0}.ax-pcrow p{margin:0}.ax-pcrow .a{font-size:13.5px;font-weight:700}.ax-pcrow .b{font-size:11px;color:var(--muted-foreground)}
.ax-int{display:flex;flex-wrap:wrap;gap:8px;padding:0 var(--gutter)}
.ax-ptabs{display:flex;gap:4px;overflow-x:auto;padding:0 8px;border-bottom:1px solid color-mix(in oklab,var(--border) 70%,transparent);scrollbar-width:none}.ax-ptabs::-webkit-scrollbar{display:none}
.ax-ptabs button{position:relative;flex-shrink:0;padding:12px 12px;font-size:13px;font-weight:600;color:var(--muted-foreground)}.ax-ptabs button.on{color:var(--foreground)}.ax-ptabs button.on::after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:2px;border-radius:999px;background:var(--foreground)}
.ax-pact{display:flex;gap:12px;padding:10px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-soft);color:inherit}.ax-pact+.ax-pact{margin-top:10px}
.ax-pact img,.ax-pact .ph{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border-radius:14px;object-fit:cover;background:var(--muted)}.ax-pact .tx{flex:1;min-width:0}.ax-pact p{margin:0}.ax-pact .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.ax-pact .s{font-size:11.5px;line-height:17px;color:var(--muted-foreground)}
.ax-pact .tg{display:flex;gap:6px;margin-top:4px}.ax-pact .tg span{height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:10px;line-height:20px;font-weight:700}.ax-pact .tg span.on{background:var(--primary);color:var(--primary-foreground)}
.ax-heat{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:column;grid-template-rows:repeat(7,1fr);gap:3px;margin:0 var(--gutter);padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-heat i{aspect-ratio:1;border-radius:4px;background:var(--muted)}.ax-heat i.l1{background:color-mix(in oklab,var(--foreground) 30%,var(--muted))}.ax-heat i.l2{background:color-mix(in oklab,var(--foreground) 60%,var(--muted))}.ax-heat i.l3{background:var(--foreground)}
.ax-bdg{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);text-align:center}.ax-bdg .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--muted);color:var(--muted-foreground)}
.ax-bdg.on{border-color:var(--primary);background:color-mix(in oklab,var(--foreground) 5%,transparent)}.ax-bdg.on .ic{background:var(--primary);color:var(--primary-foreground)}.ax-bdg b{font-size:11.5px;line-height:15px}.ax-bdg small{font-size:10px;line-height:13px;color:var(--muted-foreground)}.ax-bdg .bar{width:100%;height:4px;border-radius:999px;background:var(--muted);overflow:hidden}.ax-bdg .bar i{display:block;height:100%;background:var(--primary)}
.ax-mgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0 var(--gutter)}.ax-mgrid button{aspect-ratio:1;overflow:hidden;border-radius:10px;background:var(--muted)}.ax-mgrid img{width:100%;height:100%;object-fit:cover}
.ax-alb{flex:0 0 150px;overflow:hidden;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card)}.ax-alb img{width:100%;height:96px;object-fit:cover}.ax-alb div{padding:10px}.ax-alb p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-alb .a{font-size:12px;font-weight:700}.ax-alb .b{font-size:10px;color:var(--muted-foreground)}
.ax-abk{padding:14px;border-radius:18px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-soft)}.ax-abk+.ax-abk{margin-top:10px}.ax-abk .k{margin:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ax-abk .v{margin:4px 0 0;font-size:14px;line-height:21px}
.ax-edf{display:flex;flex-direction:column;gap:12px;max-height:62vh;overflow-y:auto;scrollbar-width:none;padding-bottom:4px}.ax-edf label{display:block;margin-bottom:5px;font-size:12px;font-weight:600}
.ax-seg3{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:14px;background:var(--muted)}.ax-seg3 button{height:34px;border-radius:10px;font-size:12px;font-weight:700;color:var(--muted-foreground)}.ax-seg3 button.on{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-soft)}
.ax-qrb{display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 0}.ax-qrb img{width:220px;height:220px;border-radius:18px;background:#fff;padding:10px}
.ax-ytile{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ax-ytile div{padding:14px;border-radius:16px;background:var(--muted);text-align:center}.ax-ytile b{display:block;font-size:24px;font-family:var(--font-display)}.ax-ytile small{font-size:11px;color:var(--muted-foreground)}

/* ---- settings (v0.14.0) ---- */
html.compact .ax-stack{gap:20px}html.compact .ax-list,html.compact .ax-clgrid{gap:8px}
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
.ax-sg{padding:0 var(--gutter)}.ax-sg+.ax-sg{margin-top:20px}
.ax-sgt{margin:0 0 8px 4px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-foreground)}
.ax-sgc{overflow:hidden;border-radius:20px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-soft)}
.ax-sr{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;text-align:left;color:inherit}.ax-sr+.ax-sr{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}
a.ax-sr:active,button.ax-sr:active{background:var(--muted)}
.ax-sr .ic{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:11px;background:var(--muted)}
.ax-sr .tx{flex:1;min-width:0}.ax-sr .tx p{margin:0}.ax-sr .a{font-size:14px;font-weight:600;line-height:19px}.ax-sr .b{margin-top:1px!important;font-size:11.5px;line-height:16px;color:var(--muted-foreground)}
.ax-sr .v{flex-shrink:0;max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--muted-foreground)}
.ax-sr .soonb{flex-shrink:0;height:20px;padding:0 8px;border-radius:999px;background:var(--muted);font-size:9.5px;line-height:20px;font-weight:700;text-transform:uppercase;color:var(--muted-foreground)}
.ax-sr.red .a{color:var(--destructive)}.ax-sr .ck{flex-shrink:0;color:var(--foreground)}
.ax-sprof{display:flex;align-items:center;gap:14px;margin:0 var(--gutter);padding:14px;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 90%,transparent);background:var(--card);box-shadow:var(--shadow-card);color:inherit}
.ax-sprof .av{display:grid;place-items:center;width:56px;height:56px;overflow:hidden;border-radius:50%;background:var(--muted);font-weight:700}.ax-sprof .av img{width:100%;height:100%;object-fit:cover}.ax-sprof p{margin:0}.ax-sprof .a{font-size:16px;font-weight:700;font-family:var(--font-display)}.ax-sprof .b{font-size:12px;color:var(--muted-foreground)}
.ax-ssug{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:18px;border:1px dashed color-mix(in oklab,var(--foreground) 25%,transparent);background:color-mix(in oklab,var(--muted) 50%,transparent)}.ax-ssug+.ax-ssug{margin-top:8px}
.ax-ssug p{flex:1;margin:0;font-size:12.5px;line-height:18px}.ax-ssug a{font-weight:700}.ax-ssug button{color:var(--muted-foreground);padding:2px}
.ax-faqi{border-top:1px solid color-mix(in oklab,var(--border) 60%,transparent)}.ax-faqi:first-child{border-top:0}
.ax-faqi button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:14px;text-align:left;font-size:13.5px;font-weight:600}.ax-faqi p{margin:0;padding:0 14px 14px;font-size:12.5px;line-height:19px;color:var(--muted-foreground)}
.ax-legal h2{margin:18px 0 6px;font-size:15px;font-weight:700}.ax-legal p{margin:0 0 10px;font-size:13.5px;line-height:21px;color:color-mix(in oklab,var(--foreground) 88%,transparent)}
.ax-sform{display:flex;flex-direction:column;gap:12px;padding:0 var(--gutter)}.ax-sform label{display:block;margin-bottom:5px;font-size:12px;font-weight:600}
.ax-sform .ax-ta{min-height:120px}.ax-scn{margin:0 var(--gutter);padding:12px 14px;border-radius:16px;background:var(--muted);font-size:12px;line-height:18px;color:var(--muted-foreground)}

/* Shared interaction and contrast polish across all existing screens. */
html,body,#axh-root,.axh-frame{background:var(--background);color:var(--foreground)}
::selection{background:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--foreground)}
:focus-visible{outline:3px solid color-mix(in srgb,var(--ring) 75%,transparent);outline-offset:2px}
.axh-screen{scrollbar-color:var(--border) transparent}
.axh-screen.pad{padding-bottom:calc(6.5rem + env(safe-area-inset-bottom))}
.ax-btn-primary,.ax-nav-create,.ax-nav-i.on .dot,.ax-chip.on,.ax-cc.on,.ax-tg.on,
.ax-plan .ft button:first-child,.ax-seg2 button.on,.ax-stb.live{background-color:var(--primary);color:#fff}
.ax-btn-primary{border:1px solid #1464CC;box-shadow:0 5px 14px -8px color-mix(in srgb,var(--primary) 75%,transparent)}
.ax-btn-primary:hover{background:#1464CC}
.ax-btn-glass,.ax-sbtn.outline,.ax-roundbtn,.ax-sortbtn,.ax-fbtn,.ax-mini,.ax-qm,.ax-two2 button,
.ax-opt3,.ax-linkrow,.ax-sr,.ax-nav-i,.ax-nav-create{transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}
.ax-chip.on,.ax-cc.on{border-color:var(--primary)}
.ax-nav{background:color-mix(in srgb,var(--surface-elevated) 88%,transparent);border-color:var(--border);box-shadow:var(--shadow-card);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%)}
.ax-nav-i{color:var(--muted-foreground)}.ax-nav-i.on{color:var(--primary)}
.ax-nav-create{box-shadow:0 5px 14px -5px color-mix(in srgb,var(--primary) 70%,transparent)}
.ax-topbar{background:color-mix(in srgb,var(--background) 88%,transparent);border-bottom-color:var(--border)}
.ax-input,.ax-search,.ax-textarea,.ax-fi,.ax-ta,.ax-otp input{color:var(--foreground);border-color:var(--border)}
.ax-input input::placeholder,.ax-search input::placeholder,.ax-fi::placeholder,.ax-ta::placeholder{color:var(--muted-foreground);opacity:1}
input,textarea,select{accent-color:var(--primary)}
button:disabled,[aria-disabled="true"]{opacity:.56;cursor:not-allowed}
.ax-fgrid button.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.ax-map{background:#e8eef4}
.ax-pin{background:#1877F2!important;color:#fff!important;border-color:#fff!important;box-shadow:0 2px 9px rgba(10,42,82,.35)!important}
.ax-pin.sel{background:#F97316!important}
.dark .ax-map{border-color:var(--border)}
/* Mobile discovery surfaces and touch targets. */
:root{--gutter:16px}
.ax-stack{gap:24px}
.ax-acard,.ax-club,.ax-person,.ax-up,.ax-feed li,.ax-pc,.ax-nclub,.ax-biz,.ax-prson,.ax-sgc{border-radius:18px}
.ax-acard{flex-basis:min(78vw,320px)}
.ax-acard .im{height:184px}
.ax-acard .bd{gap:12px;padding:16px}
.ax-acard h3{font-size:16px;line-height:22px}
.ax-cat{border-radius:16px;flex-basis:84px}
.ax-cat .ic{border-radius:14px}
.ax-btn,.ax-sm,.ax-sbtn,.ax-connect,.ax-mapbtn{min-height:40px}
.ax-sbtn{padding-inline:16px}
.ax-btn-glass{background:var(--surface-elevated);color:var(--foreground);border:1px solid var(--border)}
.ax-sbtn.outline,.ax-sm.outline{background:var(--surface-elevated);color:var(--foreground);border-color:var(--border)}
.ax-sbtn.done,.ax-sm.done,.ax-connect.on{background:color-mix(in srgb,var(--success) 14%,var(--card));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 35%,var(--border))}
.ax-mapbtn.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.ax-map .leaflet-control-attribution{color:var(--foreground);border:1px solid var(--border);border-radius:6px}
.ax-map .leaflet-control-attribution a{color:var(--primary)}
.ax-fgrid button.on,.ax-pill.on,.ax-seg button.on{background:var(--primary);color:#fff;border-color:var(--primary)}
.ax-acard .tag.t{background:#FFF1E8;color:#B94C0B}
.dark .ax-acard .tag.t{background:#3A2418;color:#FFB27F}
.ax-acard .tag.p{background:#EAF2FF;color:#1557AE}
.dark .ax-acard .tag.p{background:#142B46;color:#B9D8FF}
.ax-me{background:#1877F2;border-color:#fff;box-shadow:0 0 0 5px rgba(24,119,242,.24)}
.ax-fbtn:focus-visible,.ax-pill:focus-visible,.ax-mapbtn:focus-visible{outline-offset:3px}
@media(min-width:520px){:root{--gutter:24px}.ax-acard{flex-basis:320px}}
@media(max-width:360px){:root{--gutter:12px}.ax-stack{gap:20px}.ax-acard{flex-basis:82vw}.ax-acard .im{height:164px}.ax-homebar{gap:9px}}
/* Screenshot reference polish: bright, photo-led light UI with a matching dark theme. */
.axh-frame{background:var(--bg-canvas)}
.ax-login-band{height:clamp(224px,32vh,286px)}
.ax-login-band .shade{background:linear-gradient(180deg,rgba(6,18,38,.08) 8%,rgba(6,18,38,.72) 100%)}
.ax-login-head{padding:72px 22px 22px}
.ax-login-head h1{font-size:30px;line-height:1.12;letter-spacing:-.025em}
.ax-login-head p{font-size:14px;color:rgba(255,255,255,.9)}
.ax-login-sheet{border-radius:26px 26px 0 0;padding-top:24px}
.ax-input{height:52px;border-radius:15px;background:var(--bg-surface);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.ax-input input::placeholder{color:var(--text-secondary);opacity:.9}
.ax-btn{height:52px;border-radius:18px;font-size:15px}
.ax-btn-primary{background:var(--action-primary);color:var(--text-inverse)}
.ax-btn-primary:hover{background:var(--action-primary-hover)}
.ax-textbtn{height:48px;border:1px solid var(--border);border-radius:15px;background:var(--bg-surface);color:var(--foreground)}
.ax-textbtn:active{background:var(--accent)}
.ax-or{margin-top:20px;margin-bottom:14px}
.ax-bottombar{background:color-mix(in srgb,var(--bg-canvas) 92%,transparent);border-top-color:var(--border);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.ax-chip{min-height:40px;border:1px solid var(--border);background:var(--bg-surface);box-shadow:0 1px 2px rgba(16,35,60,.04)}
.ax-chip.on{background:var(--action-primary);border-color:var(--action-primary);color:var(--text-inverse)}
.ax-topbar{background:color-mix(in srgb,var(--bg-canvas) 92%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.ax-homebar{padding-bottom:14px}
.ax-sbar,.ax-usb form,.ax-search{background:var(--bg-surface);box-shadow:0 3px 14px -10px rgba(17,40,76,.3)}
.ax-acard,.ax-person,.ax-club,.ax-up,.ax-nothing,.ax-feed li{box-shadow:0 8px 24px -18px rgba(17,40,76,.38);border-color:color-mix(in srgb,var(--border) 88%,transparent)}
.ax-acard .im{height:216px}
.ax-acard .im::after{background:linear-gradient(180deg,rgba(8,20,38,.02) 38%,rgba(8,20,38,.62) 100%)}
.ax-acard .chips span{background:rgba(8,20,38,.55);border:1px solid rgba(255,255,255,.16)}
.ax-nav{height:66px;border-radius:24px;background:var(--glass-surface);border-color:var(--glass-border);box-shadow:0 10px 30px -18px rgba(10,25,48,.4),inset 0 1px 0 rgba(255,255,255,.35)}
.ax-nav-i.on{color:var(--action-primary)}
.ax-nav-create{width:48px;height:48px;border-radius:17px;background:var(--action-primary);color:var(--text-inverse)}
.ax-sr .ck{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--action-primary);color:#fff}
.ax-sgc{background:var(--bg-surface);border-color:var(--border);box-shadow:var(--shadow-soft)}
.ax-sr{color:var(--text-primary)}
.ax-sr:active{background:var(--muted)}
.ax-finish{background:var(--gradient-hero)}
.ax-meetnow,.ax-askai{background:var(--action-primary);color:var(--text-inverse)}
.ax-pbn .ac{z-index:3}
.ax-pbn .ac .ax-fb{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.32);color:#fff;box-shadow:0 4px 16px rgba(8,20,38,.16)}
.ax-ph .row{align-items:center;gap:8px}
.ax-ph .row .ax-btn{height:44px;min-height:44px;border-radius:14px}
.ax-ph .row .sq{width:44px;height:44px;display:grid;place-items:center;color:var(--foreground);box-shadow:var(--shadow-soft)}
.ax-pst4{gap:8px}
.ax-pst4 div{padding:14px 6px;border-radius:16px;background:var(--bg-surface);box-shadow:none}
.ax-pst4 b{font-size:20px;line-height:24px}
.ax-pst4 small{font-size:11px;line-height:15px;color:var(--text-secondary)}
.ax-int{align-items:center}
.ax-interest-more{background:var(--accent);color:var(--accent-foreground);border-color:transparent}
.ax-interest-empty{font-size:13px;color:var(--text-secondary)}
.ax-profile-details{margin:0 var(--gutter);overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--bg-surface);box-shadow:var(--shadow-soft)}
.ax-profile-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 16px;cursor:pointer;list-style:none}
.ax-profile-details>summary::-webkit-details-marker{display:none}
.ax-profile-details>summary span{display:flex;flex-direction:column;gap:2px}
.ax-profile-details>summary b{font-size:14px;font-weight:700}
.ax-profile-details>summary small{font-size:12px;color:var(--muted-foreground)}
.ax-profile-details>summary>.axi{color:var(--primary);transition:transform .18s ease}
.ax-profile-details[open]>summary{border-bottom:1px solid var(--border)}
.ax-profile-details[open]>summary>.axi{transform:rotate(180deg)}
.ax-profile-details-body{padding:16px 0 20px}
.ax-profile-details-body .ax-sech{margin-top:4px}
.ax-ph .row .sq:active{transform:scale(.95)}
.ax-pbn{height:184px}
.ax-ph{margin-top:-26px;overflow:visible}
.ax-ph .av{position:relative;z-index:2;flex:0 0 88px}
svg.axi{stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
.ax-iconbtn .axi,.ax-fb .axi,.ax-nav .axi{stroke-width:1.9}
.dark .ax-social-pin{background:rgba(20,28,40,.96);border-color:rgba(255,255,255,.24);color:#F8FAFC}
.dark .ax-social-pin::before{background:#141c28;border-color:rgba(255,255,255,.24)}
.dark .ax-social-pin .av{border-color:#141c28}
.dark .ax-heat-glow{mix-blend-mode:screen;opacity:.82}
.ax-me{position:relative;background:#1877F2;box-shadow:0 0 0 3px #fff,0 2px 9px rgba(10,42,82,.4)}
.ax-me::before{content:"";position:absolute;inset:-8px;border:2px solid rgba(24,119,242,.45);border-radius:50%;animation:axring 1.8s ease-out infinite}
@media(min-width:520px){#axh-root{background:#EAF2FC}.dark #axh-root{background:#03060A}}
@media(max-width:360px){.ax-login-head{padding-left:18px;padding-right:18px}.ax-login-sheet{padding-left:16px;padding-right:16px}.ax-acard .im{height:196px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Home surfaces, balanced feed rhythm, and an inset iOS-style glass tab bar. */
.ax-home{background:var(--bg-canvas);color:var(--text-primary)}
.ax-homebar .g{color:var(--text-secondary)}
.ax-homebar .n{color:var(--text-primary)}
.ax-homebar .ax-iconbtn{color:var(--text-primary);background:var(--glass-surface);border-color:var(--glass-border);box-shadow:var(--shadow-card)}
.ax-home .ax-sech h2,.ax-home .ax-seeall{color:var(--text-primary)}
.ax-home .ax-sech p,.ax-home .ax-nothing p{color:var(--text-secondary)}
.ax-home .ax-nothing{border-color:var(--border)}
.ax-home .ax-nothing h3{color:var(--text-primary)}
.ax-home>.ax-homebar{padding-bottom:12px}
.ax-home>.ax-stack{gap:18px}
.ax-home #dyn.ax-stack{gap:20px}
.ax-home .ax-acard .im{height:196px}
.ax-home .ax-acard .bd{gap:10px;padding:14px}
.ax-home .ax-sech{margin-bottom:12px}
.ax-home .ax-end{height:calc(96px + env(safe-area-inset-bottom))}
.ax-nav{position:absolute;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;height:72px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--glass-border) 88%,transparent);border-radius:26px;background:color-mix(in srgb,var(--bg-canvas) 76%,transparent);box-shadow:0 10px 30px -16px rgba(10,25,48,.42),inset 0 1px 0 color-mix(in srgb,#fff 52%,transparent);backdrop-filter:blur(30px) saturate(185%);-webkit-backdrop-filter:blur(30px) saturate(185%)}
.ax-nav-i,.ax-nav-create{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-secondary);text-align:center;transition:color .16s ease,transform .16s ease}
.ax-nav-i{border-radius:14px}
.ax-nav-i.on{color:var(--action-primary)}
.ax-nav-i .lbl,.ax-nav-create .lbl{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:13px;font-weight:600;letter-spacing:.01em}
.ax-nav-i.on .lbl{font-weight:750}
.ax-nav-i .dot{display:none}
.ax-nav-create{justify-self:stretch;align-self:stretch;width:auto;height:auto;border-radius:14px;background:transparent;color:var(--text-secondary);box-shadow:none}
.ax-nav-create-icon{display:grid;place-items:center;width:34px;height:30px;border-radius:12px;background:var(--action-primary);color:var(--text-inverse);box-shadow:0 4px 12px -5px color-mix(in srgb,var(--action-primary) 75%,transparent)}
.ax-nav-create:active,.ax-nav-i:active{transform:scale(.94)}
.ax-pbn{height:214px}
.ax-ph{margin-top:-10px;overflow:visible}
.ax-ph .av{width:96px;height:96px;flex:0 0 96px}
.ax-ph .av img{object-position:50% 30%}
@media(max-width:360px){.ax-nav{left:9px;right:9px;padding-left:7px;padding-right:7px}.ax-nav-i .lbl,.ax-nav-create .lbl{font-size:9px}.ax-home>.ax-stack{gap:16px}.ax-home #dyn.ax-stack{gap:18px}}

/* Carry the Settings page's calm, softly tinted card treatment across the app. */
:root{--card-tint:color-mix(in srgb,var(--bg-surface) 97%,var(--accent));--card-outline:color-mix(in srgb,var(--border) 90%,var(--action-primary) 10%)}
.ax-acard,.ax-club,.ax-person,.ax-up,.ax-feed li,.ax-pc,.ax-nclub,.ax-biz,.ax-prson,.ax-sgc,.ax-lcard,.ax-cli,.ax-card2,.ax-ni,.ax-pact{border-color:var(--card-outline)}
.ax-acard,.ax-club,.ax-person,.ax-up,.ax-feed li,.ax-pc,.ax-nclub,.ax-biz,.ax-prson,.ax-sgc,.ax-lcard,.ax-cli,.ax-card2,.ax-pact{background-color:var(--card-tint)}
.ax-rem:not(.primary){background-color:var(--card-tint);border-color:var(--card-outline)}
.ax-social-pin.person .av{background:#6178d8;box-shadow:0 0 0 2px rgba(97,120,216,.22)}
.ax-poi-preview.person .photo{border-radius:50%;}
#nsp{overflow-x:hidden}
#nsp>.ax-nthead{min-width:0;gap:5px}
#nsp .ax-nthead h1{min-width:0;font-size:clamp(18px,5.5vw,22px)}
#nsp #nb2{min-width:0;min-height:max-content;overflow:visible;flex:0 0 auto}
#nsp #nb2>section{min-width:0;max-width:100%}
#nsp .ax-card2,#nsp .ax-dash,#nsp .ax-nrows,#nsp .ax-inbox-h{max-width:100%;min-width:0}
#nsp .ax-tabs.n{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}

/* v0.15.6: full vertical feeds and post composer */
.ax-pbn{height:264px}
.ax-pbn.ax-pbn-safe{height:270px;padding-top:env(safe-area-inset-top);box-sizing:border-box}
.ax-pbn.ax-pbn-safe .ac{top:env(safe-area-inset-top)}
.ax-pbn-safe+.ax-ph{margin-top:0;padding-top:50px}
.ax-pbn-safe+.ax-ph .av{width:96px;height:96px;flex-basis:96px;margin-top:0}
.ax-pbn-safe+.ax-ph .av img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.ax-create-post-form{min-height:0}
.ax-post-upload{width:100%;height:112px;min-height:112px}
.ax-post-upload .ph{gap:5px}
.ax-post-upload small{display:block;font-size:11px;font-weight:500;color:var(--muted-foreground)}
.ax-create-post .ax-social-compose-preview{margin:0}
.ax-social-compose-preview[hidden]{display:none}
.ax-social-compose-preview img{max-height:300px;object-fit:contain}
#cr{width:100%;height:100%;overflow:hidden}
#cr #hd{order:1;flex-shrink:0}
#cr #pb{order:2;flex-shrink:0}
#cr #ms{order:3;display:flex;flex-direction:column;overscroll-behavior:contain}
#cr #cp{order:4;flex-shrink:0}
.ax-receipt{display:inline-flex;align-items:center;gap:3px;line-height:1}
.ax-receipt .axi{stroke-width:2.6}
.ax-receipt.sent,.ax-receipt.delivered{color:#fff}
.ax-receipt.read{color:#9bcaff}
#nsp .ax-rem-list .ax-rem{height:164px;min-height:164px;flex:0 0 164px;padding:14px 16px;border-radius:18px}
#nsp .ax-rem-list .ax-rem .t{margin-top:7px;font-size:14px;line-height:18px}
#nsp .ax-rem-list .ax-rem .d{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#nsp .ax-rem-list .ax-rem .f{margin-top:8px}
#nsp .ax-tabs.n{display:flex;flex-wrap:wrap;overflow:visible;gap:7px;padding:0 var(--gutter) 4px}
#nsp .ax-tabs.n .ax-pill{flex:0 0 auto}
#nsp #nb2{overflow:visible;flex:0 0 auto;min-height:max-content}
.ax-member-posts{padding:8px var(--gutter) calc(24px + env(safe-area-inset-bottom))}
.ax-member-post-composer{width:100%;max-width:600px;margin:0 auto 14px}
.ax-member-post-composer>img,.ax-member-post-composer>.ph{width:36px;height:36px;flex:0 0 36px;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:700}
.ax-member-post-composer .in{min-width:0}
.ax-member-post-composer textarea{display:block;min-height:58px;max-height:180px;padding:7px 0;overflow:auto}
.ax-member-post-composer .row{flex-wrap:wrap;justify-content:flex-start;gap:8px}
.ax-member-post-composer .row .ax-sbtn{margin-left:auto;padding:0 14px}
.ax-post-photo{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 9px;border-radius:10px;color:var(--action-primary);font-size:12px;font-weight:650;cursor:pointer}
.ax-post-photo:active{background:var(--muted)}
.ax-post-compose-hint{align-self:center;min-width:0;color:var(--muted-foreground);font-size:10.5px}
.ax-social-list{display:flex;flex-direction:column;gap:12px;width:100%;max-width:600px;margin:0 auto}
.ax-social-list>.ax-pst{width:100%;margin:0}
.ax-pst .h .ax-post-author{display:flex;align-items:center;gap:10px;flex:1;min-width:0;color:var(--foreground);text-decoration:none}
.ax-pst .h .ax-post-author>img,.ax-pst .h .ax-post-author>.ph{width:36px;height:36px;flex:0 0 36px;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:700}
.ax-pst .h .ax-post-author>span{display:flex;flex-direction:column;min-width:0;gap:2px}
.ax-pst .h .ax-post-author b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:650}
.ax-pst .h .ax-post-author small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-foreground);font-size:11px}
.ax-social-comments{padding-top:4px}
#nsp .ax-ni{min-width:0;max-width:100%;overflow:hidden}
#nsp .ax-ni .row{min-width:0;width:100%;gap:6px}
#nsp .ax-ni .main{width:0;min-width:0;flex:1;padding:0;color:inherit}
#nsp .ax-ni .xx{width:32px;height:32px}
#nsp .ax-ni .ac{padding-left:56px;max-width:100%}
#nsp .ax-rem-list,#nsp .ax-nrows,#nsp .ax-tl{min-width:0;max-width:100%}
#nsp{overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
#nsp #nb2{padding-bottom:calc(108px + env(safe-area-inset-bottom))}
.ax-safe{align-items:center;min-width:0}
.ax-safe .tx{overflow-wrap:anywhere}
.ax-safe .ax-sbtn{flex:0 0 auto;min-width:64px}
@media(max-width:380px){.ax-auth-form{padding-left:16px;padding-right:16px}.ax-auth-reghead{padding-top:20px}.ax-auth-footer-wrap{padding-left:16px;padding-right:16px}#nsp .ax-ni{padding-left:12px;padding-right:10px}#nsp .ax-ni .pic img,#nsp .ax-ni .pic .ib{width:38px;height:38px}#nsp .ax-ni .main{gap:9px}}
.ax-create-post{padding:0 var(--gutter) calc(30px + env(safe-area-inset-bottom))}.ax-create-post .ax-vfeed-head{padding-left:0;padding-right:0}.ax-post-create-panel{width:100%;max-width:720px;margin:14px auto 0;padding:clamp(16px,3vw,24px);border:1px solid color-mix(in oklab,var(--border) 82%,transparent);border-radius:24px;background:var(--card);box-shadow:var(--shadow-card)}.ax-post-create-title{display:flex;align-items:center;gap:12px;margin:0 0 18px}.ax-post-create-title .ic{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:var(--primary);background:color-mix(in oklab,var(--primary) 11%,var(--card))}.ax-post-create-title h2{margin:0;font-size:17px;line-height:22px;font-weight:750}.ax-post-create-title p{margin:3px 0 0;font-size:12px;color:var(--muted-foreground)}.ax-create-post .ax-social-composer{max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}.ax-create-post .ax-social-compose-row textarea{min-height:148px;background:var(--bg-surface)}.ax-create-post .ax-social-compose-tools{margin-top:16px;padding-top:15px;border-top:1px solid var(--border)}
.ax-searchpg #qx{display:flex;align-items:center;gap:2px;flex-shrink:0}
.ax-searchpg #qx .ax-mini{width:34px;height:34px}
.ax-searchpg .ax-usb form{gap:6px;padding-right:6px}
.ax-vfeed-head{display:flex;align-items:center;gap:12px;padding:calc(max(env(safe-area-inset-top),0px) + 10px) var(--gutter) 14px}
.ax-vfeed-head>div{min-width:0}.ax-vfeed-head h1{margin:0;font-size:20px;line-height:26px;font-weight:700}.ax-vfeed-head p{margin:2px 0 0;font-size:12px;color:var(--muted-foreground)}
.ax-vfeed{display:flex;flex-direction:column;gap:18px;padding:4px var(--gutter) 8px}
.ax-vfeed-card{flex:initial;width:100%;min-width:0;max-width:600px;margin:0 auto;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-vfeed-card .im{height:clamp(210px,62vw,360px)}.ax-vfeed-card .bd{padding:14px}.ax-vfeed-title{color:var(--foreground);text-decoration:none}.ax-vfeed-title h2{margin:0 0 10px;font-size:19px;line-height:25px;font-family:var(--font-display)}
.ax-vfeed-desc{margin:10px 0 12px;color:var(--muted-foreground);font-size:13px;line-height:19px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ax-vfeed-skeleton{height:260px;border-radius:22px}
.ax-home-post{flex:initial;width:min(82vw,340px);padding:14px}
.ax-post-open{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--muted);color:var(--muted-foreground)}
.ax-full-post{width:100%;max-width:600px;margin:0 auto;padding:16px;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);background:var(--card);box-shadow:var(--shadow-card)}
.ax-full-post .im{max-height:440px;object-fit:cover}.ax-full-post .ac a{display:inline-flex;align-items:center;gap:5px;color:var(--muted-foreground);font-weight:600}
.ax-post-compose{display:flex;flex-direction:column;gap:10px;padding:8px var(--gutter) 24px;max-width:640px;margin:0 auto}.ax-post-compose .lb{margin:4px 0 0}.ax-post-compose textarea{resize:vertical;min-height:140px;padding:12px;border-radius:16px}.ax-post-compose select{height:48px;padding:0 12px;border-radius:14px}.ax-post-photo{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:flex-start;min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:12px;color:var(--foreground);font-size:13px;font-weight:600;cursor:pointer}.ax-post-preview{position:relative}.ax-post-preview img{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:16px}.ax-post-preview button{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.64);color:white}.ax-post-compose #publish-post{margin-top:8px}.ax-post-note{margin:0;text-align:center;font-size:11.5px;color:var(--muted-foreground)}
#nsp #nb2 #inbox{order:0}
.ax-more-notifs{display:flex;justify-content:center;padding:12px var(--gutter) 4px}
.ax-more-notifs button{min-height:40px;padding:0 16px;border:1px solid var(--card-outline);border-radius:13px;background:var(--card-tint);color:var(--action-primary);font-size:12px;font-weight:700}
.ax-more-notifs button:active{transform:scale(.98)}

/* v0.15.9: member-wide social feed and photo composer */
.ax-post-headtitle{flex:1;min-width:0}.ax-post-new{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border-radius:999px;background:var(--primary);color:#fff;text-decoration:none;font-size:13px;font-weight:700}
.ax-social-feed{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.ax-social-composer{width:100%;max-width:600px;margin:4px auto 18px;padding:14px;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);border-radius:20px;background:var(--card);box-shadow:var(--shadow-card)}
.ax-social-compose-row{display:flex;align-items:flex-start;gap:11px}.ax-social-compose-row>.ph,.ax-social-compose-row>img{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-weight:700}.ax-social-compose-row textarea{flex:1;min-width:0;min-height:58px;padding:9px 12px;resize:vertical;border:1px solid var(--border);border-radius:15px;background:var(--bg-surface);color:var(--foreground);font:inherit;font-size:14px;line-height:20px;outline:none}.ax-social-compose-row textarea:focus{border-color:var(--primary)}.ax-social-composer:not(.compact) .ax-social-compose-row textarea{min-height:130px}
.ax-social-compose-tools{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.ax-social-photo{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:12px;color:var(--foreground);font-size:12px;font-weight:650;cursor:pointer}.ax-social-photo:hover{background:var(--muted)}.ax-social-hint{flex:1;min-width:0;color:var(--muted-foreground);font-size:11px}.ax-social-compose-tools .ax-btn{min-height:38px;padding:0 14px;font-size:12px}
.ax-social-compose-preview{position:relative;margin:12px 0 0 50px}.ax-social-compose-preview img{display:block;width:100%;max-height:360px;border-radius:15px;object-fit:contain;background:#0c0c0c}.ax-social-compose-preview button{position:absolute;top:8px;right:8px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(0,0,0,.7);color:#fff}
.ax-social-list{display:flex;flex-direction:column;gap:14px;max-width:600px;margin:0 auto}.ax-social-post{overflow:hidden;width:100%;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);border-radius:20px;background:var(--card);box-shadow:var(--shadow-card)}.ax-social-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px}.ax-social-author{display:flex;align-items:center;gap:10px;min-width:0;color:var(--foreground);text-decoration:none}.ax-social-author>img,.ax-social-author>.ph{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover;background:var(--muted);display:grid;place-items:center;font-weight:700}.ax-social-author span{display:flex;flex-direction:column;min-width:0;gap:2px}.ax-social-author b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.ax-social-author small{color:var(--muted-foreground);font-size:11px}.ax-social-more{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--muted-foreground)}.ax-social-more:hover{background:var(--muted);color:var(--foreground)}.ax-social-media{display:grid;place-items:center;width:100%;max-height:560px;overflow:hidden;background:color-mix(in oklab,var(--muted) 40%,#111)}.ax-social-media img{display:block;width:100%;max-height:560px;aspect-ratio:auto;object-fit:contain}.ax-social-caption{padding:10px 14px 0;font-size:13px;line-height:20px;white-space:pre-line;overflow-wrap:anywhere}.ax-social-caption b{margin-right:4px;font-weight:700}.ax-social-actions{display:flex;align-items:center;gap:18px;padding:10px 14px 12px}.ax-social-action{display:inline-flex;align-items:center;gap:6px;min-height:30px;color:var(--muted-foreground);font-size:12px;font-weight:650;text-decoration:none}.ax-social-action .axi{transition:transform .16s ease}.ax-social-action:active .axi{transform:scale(.9)}.ax-social-action.on{color:#e33b63}.ax-social-action.on .axi{fill:currentColor}.ax-social-clublink{margin-left:auto}.ax-social-comments{padding:0 14px 13px}.ax-social-comments[hidden]{display:none}.ax-social-commentlist{max-height:180px;overflow:auto}.ax-social-commentlist p{margin:7px 0;font-size:12px;line-height:18px;overflow-wrap:anywhere}.ax-social-commentlist b{margin-right:5px}.ax-social-commentform{display:flex;align-items:center;gap:8px;margin-top:9px}.ax-social-commentform input{flex:1;min-width:0;height:38px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--bg-surface);color:var(--foreground);font:inherit;font-size:12px}.ax-social-commentform button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--primary);color:#fff}.ax-social-load{display:block;margin:18px auto 0;padding:10px 18px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--foreground);font-size:13px;font-weight:650}
@media(max-width:480px){.ax-social-composer{padding:12px;border-radius:17px}.ax-social-hint{display:none}.ax-social-post{border-radius:17px}.ax-social-media img{max-height:500px}}

/* Post flow: themed, image-first compose, review, share and confirmation screens. */
.ax-post-flow{min-height:0;background:var(--background);color:var(--foreground)}
.ax-post-step-count{margin-left:auto;min-width:42px;text-align:right;color:var(--muted-foreground);font-size:12px;font-weight:650}
.ax-post-flow-main{width:100%;max-width:640px;margin:0 auto;padding:10px var(--gutter) 28px}
.ax-post-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 22px}
.ax-post-progress span{height:4px;border-radius:999px;background:var(--muted);transition:background .2s ease}
.ax-post-progress span.active{background:var(--primary)}
.ax-post-stage[hidden]{display:none}
.ax-post-stage-heading{display:flex;align-items:center;gap:12px;margin:0 0 20px}
.ax-post-stage-heading>.ic{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:15px;background:color-mix(in oklab,var(--primary) 11%,var(--card));color:var(--primary)}
.ax-post-stage-heading h2{margin:0;font-family:var(--font-display);font-size:19px;line-height:24px;font-weight:750;letter-spacing:-.02em}
.ax-post-stage-heading p{margin:4px 0 0;color:var(--muted-foreground);font-size:12px;line-height:18px}
.ax-post-write-card{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid color-mix(in oklab,var(--border) 85%,transparent);border-radius:21px;background:var(--card);box-shadow:var(--shadow-soft)}
.ax-post-write-card>.ph,.ax-post-write-card>img,.ax-post-share-author>.ph,.ax-post-share-author>img{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover;background:var(--muted);color:var(--foreground);font-weight:700}
.ax-post-write-card .content{min-width:0;flex:1}.ax-post-write-card .lb{display:block;margin:0 0 8px;color:var(--muted-foreground);font-size:11px;font-weight:650}
.ax-post-write-card .ax-ta{width:100%;min-height:138px;padding:0;border:0;resize:vertical;background:transparent;color:var(--foreground);font:inherit;font-size:15px;line-height:23px;outline:none;box-shadow:none}
.ax-post-write-card .ax-ta::placeholder{color:var(--muted-foreground)}.ax-post-charcount{margin-top:6px;text-align:right;color:var(--muted-foreground);font-size:10px}
.ax-post-addphoto{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;margin-top:14px;padding:12px;border:1px solid color-mix(in oklab,var(--border) 85%,transparent);border-radius:18px;background:var(--card);color:var(--foreground);text-align:left;cursor:pointer;box-shadow:var(--shadow-soft)}
.ax-post-addphoto>.ic{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:14px;background:color-mix(in oklab,var(--primary) 10%,var(--card));color:var(--primary)}.ax-post-addphoto>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px}.ax-post-addphoto b{font-size:13px}.ax-post-addphoto small{color:var(--muted-foreground);font-size:11px}.ax-post-addphoto>.axi{color:var(--muted-foreground)}
.ax-post-writing-tip{display:flex;align-items:center;gap:8px;margin:15px 3px;color:var(--muted-foreground);font-size:11px}.ax-post-writing-tip .axi{color:var(--primary)}
.ax-post-photo-quick{position:relative;margin-top:14px;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--card)}.ax-post-photo-quick[hidden]{display:none}.ax-post-photo-quick img{display:block;width:100%;max-height:260px;aspect-ratio:4/3;object-fit:cover}.ax-post-photo-quick button{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(15,23,42,.75);color:white;backdrop-filter:blur(10px)}
.ax-post-photo-frame{position:relative;display:grid;place-items:center;width:100%;min-height:260px;max-height:min(56vh,520px);overflow:hidden;border:1px solid var(--border);border-radius:22px;background:color-mix(in oklab,var(--muted) 56%,var(--background));box-shadow:var(--shadow-card)}.ax-post-photo-frame img{display:block;width:100%;height:100%;max-height:min(56vh,520px);object-fit:contain}.ax-post-frame-brand{position:absolute;right:14px;bottom:14px;padding:7px 10px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(15,23,42,.48);color:#fff;font-size:11px;font-weight:750;backdrop-filter:blur(10px)}.ax-post-frame-brand span{color:#54a7ff}
.ax-post-photo-actions{display:flex;gap:9px;margin:12px 0}.ax-post-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--foreground);font:inherit;font-size:12px;font-weight:650}.ax-post-secondary .axi{color:var(--primary)}.ax-post-secondary.danger{color:var(--muted-foreground)}
.ax-post-caption-preview{min-height:20px;padding:12px 14px;border:1px solid var(--border);border-radius:15px;background:var(--card);font-size:13px;line-height:20px;white-space:pre-line;overflow-wrap:anywhere}.ax-post-caption-preview:empty{display:none}
.ax-post-share-preview,.ax-post-success-card{overflow:hidden;border:1px solid color-mix(in oklab,var(--border) 82%,transparent);border-radius:21px;background:var(--card);box-shadow:var(--shadow-card)}.ax-post-share-author{display:flex;align-items:center;gap:10px;padding:13px 14px}.ax-post-share-author>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.ax-post-share-author b{font-size:13px}.ax-post-share-author small{color:var(--muted-foreground);font-size:11px}.ax-post-public-pill{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border-radius:999px;background:color-mix(in oklab,var(--primary) 10%,var(--card));color:var(--primary);font-size:10px;font-weight:700}.ax-post-share-copy{padding:0 14px 12px;font-size:13px;line-height:20px;white-space:pre-line;overflow-wrap:anywhere}.ax-post-share-copy:empty{display:none}.ax-post-share-preview>img,.ax-post-success-card>img{display:block;width:100%;max-height:440px;object-fit:cover}.ax-post-share-preview>img[hidden],.ax-post-success-card>img[hidden]{display:none}
.ax-post-audience-note{display:flex;align-items:center;gap:11px;margin-top:14px;padding:14px;border:1px solid color-mix(in oklab,var(--primary) 18%,var(--border));border-radius:17px;background:color-mix(in oklab,var(--primary) 6%,var(--card));color:var(--primary)}.ax-post-audience-note>span{display:flex;flex:1;flex-direction:column;gap:3px;color:var(--foreground)}.ax-post-audience-note b{font-size:12px}.ax-post-audience-note small{color:var(--muted-foreground);font-size:11px}
.ax-post-flow-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.ax-post-flow-footer .ax-btn{width:100%;max-width:640px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:9px}.ax-post-flow-footer[hidden]{display:none}
.ax-post-flow-footer .ax-btn[hidden]{display:none}
.ax-meta2 .ax-receipt.sent .axi,.ax-meta2 .ax-receipt.delivered .axi{color:#fff}
.ax-meta2 .ax-receipt.read .axi{color:#9bcaff}
#axh-root.axh-keyboard-open .ax-comp{padding-bottom:18px}
#cr #ms{scroll-padding-bottom:18px;-webkit-overflow-scrolling:touch}
.ax-post-success{padding:34px 0;text-align:center}.ax-post-success-mark{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 15px;border-radius:50%;background:color-mix(in oklab,var(--primary) 12%,var(--card));color:var(--primary)}.ax-post-success .eyebrow{margin:0;color:var(--primary);font-size:10px;font-weight:750;letter-spacing:.12em}.ax-post-success h2{margin:8px 0 5px;font-family:var(--font-display);font-size:24px}.ax-post-success .sub{margin:0 0 20px;color:var(--muted-foreground);font-size:13px}.ax-post-success-card{text-align:left;margin-bottom:18px}.ax-post-success>.ax-btn{width:100%;justify-content:center}.ax-post-text-button{display:block;margin:13px auto 0;padding:8px 12px;color:var(--primary);font-size:13px;font-weight:700}
@media(max-width:380px){.ax-post-flow-main{padding-left:14px;padding-right:14px}.ax-post-stage-heading h2{font-size:17px}.ax-post-write-card{gap:9px;padding:12px}.ax-post-write-card>.ph,.ax-post-write-card>img{width:36px;height:36px;flex-basis:36px}}

/* v0.15.10: full-page activity lists match Nearby's List cards */
.ax-seeall-page{overscroll-behavior:contain}.ax-seeall-head{display:flex;flex-direction:column;gap:4px;padding:calc(max(env(safe-area-inset-top),0px) + 14px) var(--gutter) 14px}
.ax-seeall-headrow{display:flex;align-items:center;gap:10px;min-height:40px}.ax-seeall-eyebrow{flex:1;font-size:10px;font-weight:750;letter-spacing:.12em;color:var(--muted-foreground)}.ax-seeall-head h1{margin:8px 0 0;font-size:24px;line-height:29px;font-weight:750;letter-spacing:-.02em}.ax-seeall-head>p{margin:0;font-size:12.5px;line-height:18px;color:var(--muted-foreground)}
.ax-seeall-create{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:0 12px;border:1px solid color-mix(in oklab,var(--primary) 24%,var(--border));border-radius:999px;background:color-mix(in oklab,var(--primary) 9%,var(--card));color:var(--primary);text-decoration:none;font-size:12px;font-weight:700}.ax-activity-feed-list{width:100%;max-width:680px;margin:0 auto;padding:0 var(--gutter) 8px}.ax-activity-feed-list .ax-vfeed-skeleton{height:280px;border:1px solid var(--border);background:var(--muted)}
.ax-seeall-card .im{height:clamp(150px,43vw,210px)}.ax-seeall-title{color:var(--foreground);text-decoration:none}.ax-seeall-card .ax-seeall-title h3{font-size:16px;line-height:21px}.ax-seeall-location{display:flex;align-items:center;gap:5px;margin:-5px 0 0;color:var(--muted-foreground);font-size:11.5px;line-height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-seeall-card .ax-feed-badge{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(15,23,42,.76);color:#fff;font-size:10px;font-weight:700;backdrop-filter:blur(8px)}.ax-seeall-card .ax-feed-badge.popular{top:42px;background:rgba(15,23,42,.76)}
.ax-seeall-card .ft .r .ax-sbtn{height:34px;min-width:68px;padding:0 14px;border-radius:11px}.ax-seeall-card .ft .r .ax-sqbtn{width:34px;height:34px}
.ax-rem-list{display:flex;flex-direction:column;gap:10px;padding:0 var(--gutter)}.ax-rem-list .ax-rem{width:100%;min-width:0;min-height:140px;flex:none;border-radius:18px}
.ax-nav-unread{position:absolute;top:8px;right:calc(50% - 17px);width:9px;height:9px;border:2px solid var(--glass-surface);border-radius:50%;background:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 25%,transparent)}
.ax-nav-unread[hidden]{display:none}

/* Keep Edit profile inside the visible screen and scroll its fields independently. */
.ax-bs.ax-profile-edit-panel{align-items:flex-end}
.ax-bs.ax-profile-edit-panel .panel{display:flex;flex-direction:column;width:100%;max-height:calc(var(--axh-viewport-height,100dvh) - max(env(safe-area-inset-top),12px) - 12px);min-height:0;overflow:hidden;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.ax-bs.ax-profile-edit-panel h3{flex-shrink:0;margin-bottom:12px}
.ax-bs.ax-profile-edit-panel .body{display:flex;flex:1;flex-direction:column;min-height:0;max-height:none;overflow:hidden}
.ax-profile-edit-panel .ax-edf{flex:1;min-height:0;max-height:none;padding:2px 2px 20px;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:16px 180px;-webkit-overflow-scrolling:touch}
.ax-profile-edit-panel .ax-profile-edit-actions{position:relative;flex-shrink:0;margin:10px -2px 0;padding:10px 2px 2px;background:var(--background)}

/* iOS-inspired usability polish: consistent surfaces, safe-area spacing and clear touch states. */
:root{--background:#F4F6FA;--card:#fff;--surface-elevated:#fff;--border:#E5EAF1;--card-outline:#E7EBF2;--shadow-card:0 5px 18px -12px rgba(17,35,62,.24);--shadow-soft:0 7px 20px -12px rgba(24,119,242,.32)}
.dark{--background:#090D13;--card:#121923;--surface-elevated:#18212c;--border:#273343;--card-outline:#293747;--shadow-card:0 8px 22px -14px rgba(0,0,0,.68);--shadow-soft:0 7px 20px -12px rgba(24,119,242,.4)}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{font-family:var(--font-sans);font-size:14px;line-height:1.45;letter-spacing:-.008em}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 42%,transparent);outline-offset:2px}
.ax-col,.ax-scroll,.axh-frame{min-width:0}
.ax-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.ax-topbar,.ax-crh2{background:color-mix(in srgb,var(--bg-canvas) 88%,transparent);border-color:var(--border);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%)}
.ax-card2,.ax-acard,.ax-club,.ax-person,.ax-up,.ax-feed li,.ax-pc,.ax-nclub,.ax-biz,.ax-prson,.ax-sgc,.ax-lcard,.ax-cli,.ax-ni,.ax-pact,.ax-vfeed-card,.ax-full-post,.ax-social-post,.ax-post-create-panel{border-color:var(--card-outline);box-shadow:var(--shadow-card)}
.ax-card2{border-radius:22px}.ax-vfeed-card,.ax-full-post,.ax-social-post{border-radius:22px;overflow:hidden}
.ax-vfeed{gap:14px}.ax-social-list{gap:14px}
.ax-ib,.ax-rbtn,.ax-iconbtn,.ax-back{transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease}
.ax-ib:active,.ax-rbtn:active,.ax-iconbtn:active,.ax-back:active{transform:scale(.94)}
.ax-nav{bottom:calc(13px + env(safe-area-inset-bottom));border-radius:26px;background:color-mix(in srgb,var(--bg-canvas) 80%,transparent);border-color:color-mix(in srgb,var(--glass-border) 90%,transparent);box-shadow:0 12px 32px -18px rgba(10,25,48,.42),inset 0 1px 0 color-mix(in srgb,#fff 46%,transparent);backdrop-filter:blur(30px) saturate(185%);-webkit-backdrop-filter:blur(30px) saturate(185%)}
.ax-nav-i,.ax-nav-create{min-height:48px}.ax-nav-i.on{background:color-mix(in srgb,var(--primary) 7%,transparent)}
.ax-btn,.ax-sbtn,.ax-sm,.ax-post-new{transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}
.ax-btn:active,.ax-sbtn:active,.ax-sm:active,.ax-post-new:active{transform:scale(.98);filter:brightness(.97)}
.ax-bs .panel{border-radius:26px 26px 0 0;padding-bottom:max(22px,env(safe-area-inset-bottom));box-shadow:0 -16px 48px -26px rgba(10,20,40,.36)}
.ax-bs .grab{width:38px;height:5px;margin-bottom:15px}
.ax-empty2{padding-top:28px;padding-bottom:28px}
@media(max-width:380px){.ax-vfeed{gap:12px}.ax-card2{border-radius:20px}.ax-nav{left:10px;right:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
