.app-shell{min-height:100dvh;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr}[data-theme=midnight] .app-shell{background:radial-gradient(1200px 900px at 108% -8%,rgba(155,124,240,.06),transparent 60%),radial-gradient(1000px 1000px at -8% 112%,rgba(140,110,230,.045),transparent 58%),var(--surface);background-attachment:fixed}main{display:block;width:100%;max-width:var(--container-max);margin:0 auto;padding:calc(var(--topbar-h) + var(--space-md)) var(--space-md) calc(var(--bottombar-h) + var(--space-xl))}@media (min-width:1024px){main{max-width:720px;padding:calc(var(--topbar-h) + var(--space-xl)) var(--space-lg) var(--space-xl)}}.bare-root{min-height:100dvh;display:grid;place-items:center;padding:var(--space-lg) var(--space-md);background:radial-gradient(680px 420px at 50% 16%,var(--accent-tint) 0,transparent 70%),radial-gradient(900px 900px at 110% 110%,var(--accent-tint-strong) 0,transparent 55%),linear-gradient(165deg,var(--surface-tint) 0,var(--surface) 48%,var(--accent-tint-strong) 140%)}.bare-root>main{max-width:520px;padding:0;width:100%}form{margin:0 0 var(--space-md)}form,label{display:block}label{margin:0 0 var(--space-row-md);font-size:var(--text-caption-size);font-weight:600;color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase}input,select,textarea{font:inherit;color:var(--text-primary);background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-md);padding:11px 14px;width:100%;max-width:480px;display:block;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:36px;color:var(--text-primary)}textarea{min-height:96px;resize:vertical;max-width:100%;line-height:1.5}input[type=checkbox],input[type=radio]{width:auto;display:inline-block;margin-right:6px;vertical-align:middle;accent-color:var(--accent)}input[type=file]{padding:var(--space-sm) 0;border:0;background:transparent;font-size:14px;color:var(--text-secondary)}input[type=file]::-webkit-file-upload-button{margin-right:10px;padding:8px 14px;border-radius:var(--radius-md);background:var(--surface-tint);color:var(--text-primary);border:1px solid var(--border);font:inherit;font-weight:600;font-size:13px;cursor:pointer;-webkit-transition:background var(--dur-fast) var(--ease-standard);transition:background var(--dur-fast) var(--ease-standard)}input[type=file]::file-selector-button{margin-right:10px;padding:8px 14px;border-radius:var(--radius-md);background:var(--surface-tint);color:var(--text-primary);border:1px solid var(--border);font:inherit;font-weight:600;font-size:13px;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){input[type=file]::-webkit-file-upload-button:hover{background:var(--accent-tint);color:var(--accent);border-color:var(--accent-tint-strong)}input[type=file]::file-selector-button:hover{background:var(--accent-tint);color:var(--accent);border-color:var(--accent-tint-strong)}}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--surface-tint);color:var(--text-secondary);cursor:not-allowed;opacity:.7}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger-text);box-shadow:0 0 0 3px var(--danger-ring)}::placeholder{color:var(--text-tertiary);opacity:.8}.select{position:relative;width:100%}.select-trigger{width:100%;min-height:44px;padding:11px 14px;background:var(--surface-elev);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-weight:500;letter-spacing:0;text-align:left;box-shadow:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-row-md);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.select .select-trigger:hover:not(:disabled){background:var(--surface-elev);border-color:var(--border-strong);transform:none}}.select .select-trigger:active:not(:disabled){transform:none}.select-trigger:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.select[data-open] .select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.select-trigger:disabled{background:var(--surface-tint);color:var(--text-secondary);cursor:not-allowed;opacity:.7}.select-trigger[data-placeholder] .select-value{color:var(--text-tertiary)}.select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-caret{flex:0 0 auto;display:inline-flex;color:var(--text-tertiary);transition:transform var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.select[data-open] .select-caret{transform:rotate(180deg);color:var(--accent)}.select .select-menu{position:absolute;z-index:60;top:calc(100% + 6px);left:0;right:0;margin:0;padding:4px;list-style:none;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);max-height:280px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:1px;transform-origin:top center;animation:select-menu-in var(--dur-fast) var(--ease-emphasized)}.select .select-menu[data-drop=up]{top:auto;bottom:calc(100% + 6px);transform-origin:bottom center}@keyframes select-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.select .select-menu .select-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-row-md);margin:0;padding:10px 12px;border:0;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);font-size:15px;font-weight:500;line-height:1.2}.select .select-menu .select-option[data-placeholder]{color:var(--text-tertiary)}.select .select-menu .select-option:hover,.select .select-menu .select-option[data-active]{background:var(--accent-tint);color:var(--accent)}.select .select-menu .select-option[aria-selected=true]{font-weight:600}.select .select-menu .select-option[aria-selected=true]:not([data-active]){color:var(--accent)}.select-option-check{flex:0 0 auto;display:inline-flex;color:var(--accent)}button{font:inherit;font-family:var(--font-body-stack);font-size:var(--text-button-size);font-weight:var(--text-button-weight);letter-spacing:.01em;background:var(--accent);color:var(--text-on-accent);border:1px solid var(--accent);border-radius:var(--radius-md);padding:10px 18px;cursor:pointer;line-height:1.2;min-height:40px;box-shadow:0 4px 12px -6px var(--accent);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-row-md);transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){button:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px)}}button:active:not(:disabled):not([aria-disabled=true]){transform:scale(.97)}button:focus-visible{outline:0;box-shadow:0 0 0 3px var(--focus-ring)}button:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed}button[type=button]{background:var(--surface-elev);color:var(--text-primary);border-color:var(--border-strong);box-shadow:none}@media (hover:hover) and (pointer:fine){button[type=button]:hover:not(:disabled):not([aria-disabled=true]){background:var(--surface-tint);border-color:var(--border-strong)}}button[data-variant=danger]{background:transparent;color:var(--danger-text);border-color:var(--danger-text);box-shadow:none}@media (hover:hover) and (pointer:fine){button[data-variant=danger]:hover:not(:disabled){background:var(--danger-tint-surface)}}button[type=button][data-variant=primary]{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);box-shadow:0 4px 12px -6px var(--accent)}@media (hover:hover) and (pointer:fine){button[type=button][data-variant=primary]:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px)}}[data-theme=midnight] button:not([type=button]):not([data-variant]),[data-theme=midnight] button[type=button][data-variant=primary]{background:var(--grad-accent);border-color:transparent;box-shadow:0 8px 22px -10px var(--accent)}@media (hover:hover) and (pointer:fine){[data-theme=midnight] button:not([type=button]):not([data-variant]):hover:not(:disabled):not([aria-disabled=true]),[data-theme=midnight] button[type=button][data-variant=primary]:hover:not(:disabled):not([aria-disabled=true]){background:linear-gradient(135deg,var(--accent-strong) 0,var(--accent-2) 100%);border-color:transparent;transform:translateY(-1px)}}[data-theme=midnight] .card,[data-theme=midnight] section[data-card]{background:linear-gradient(180deg,#1b1829 0,var(--surface-elev) 62%);box-shadow:inset 0 1px 0 0 rgba(255,255,255,.045)}[data-theme=midnight] [role=dialog]>*{background:linear-gradient(180deg,#221d33 0,var(--surface-elev) 55%);box-shadow:var(--shadow-modal),inset 0 1px 0 0 rgba(255,255,255,.06)}button[aria-label=Close],button[aria-label=Dismiss],button[aria-label^=Remove],button[data-variant=ghost]{background:transparent;color:var(--text-secondary);border:0;padding:6px 10px;min-height:32px;font-size:16px}@media (hover:hover) and (pointer:fine){button[aria-label=Close]:hover:not(:disabled),button[aria-label=Dismiss]:hover:not(:disabled),button[aria-label^=Remove]:hover:not(:disabled),button[data-variant=ghost]:hover:not(:disabled){background:var(--surface-tint);color:var(--text-primary)}}button+button{margin-left:var(--space-row-md)}button[data-size=lg]{min-height:48px;padding:12px 24px;font-size:15px;border-radius:var(--radius-md);width:auto}button[data-block=true]{width:100%}main ol,main ul{padding-left:20px;margin:0 0 var(--space-md)}main ol li,main ul li{margin:var(--space-row-sm) 0}ul[data-list],ul[role=listbox]{list-style:none;padding:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elev);overflow:hidden;margin:0 0 var(--space-md)}ul[data-list]>li,ul[role=listbox]>li[role=option]{padding:var(--space-row-lg) var(--space-md);border-bottom:1px solid var(--border);cursor:pointer;display:flex;align-items:center;gap:var(--space-row-lg);transition:background var(--dur-fast) var(--ease-standard)}ul[data-list]>li:last-child,ul[role=listbox]>li[role=option]:last-child{border-bottom:0}@media (hover:hover) and (pointer:fine){ul[data-list]>li:hover,ul[role=listbox]>li[role=option]:hover{background:var(--surface-tint)}}ul[role=listbox]>li[role=option][aria-selected=true]{background:var(--accent-tint);color:var(--text-primary)}table{border-collapse:collapse;width:100%;margin:var(--space-md) 0;background:var(--surface-elev);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border)}td,th{text-align:left;padding:var(--space-row-lg) var(--space-md);border-bottom:1px solid var(--border);vertical-align:top}tr:last-child>td{border-bottom:0}th{background:var(--surface-tint);font-weight:600;font-size:var(--text-caption-size);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}[role=alert]{color:var(--danger-text);background:var(--danger-tint-surface);border:1px solid var(--danger-ring);border-radius:var(--radius-md);padding:var(--space-row-lg) var(--space-md);margin:var(--space-sm) 0;font-size:14px;line-height:1.4}.toaster{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:var(--space-sm);z-index:100;pointer-events:none;max-width:min(380px,calc(100vw - 32px))}@media (max-width:767px){.toaster{right:16px;left:16px;bottom:calc(var(--bottombar-h) + 16px);max-width:none}}.toaster [role=status]{pointer-events:auto;background:var(--surface-inverse);color:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-toast);padding:var(--space-row-lg) var(--space-md);display:flex;align-items:center;gap:var(--space-row-md);font-size:14px;animation:toast-enter var(--dur-default) var(--ease-standard)}@keyframes toast-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.toaster [role=status] button{background:transparent;color:inherit;border:0;opacity:.75;min-height:28px;padding:4px 8px}.toaster [role=status] button:hover:not(:disabled){opacity:1;background:rgba(255,255,255,.1)}img{max-width:100%;height:auto;border-radius:var(--radius-md);display:inline-block;vertical-align:middle}img[alt*=avatar i]{width:40px;height:40px;object-fit:cover;border-radius:50%;border:1px solid var(--border);background:var(--skeleton)}[aria-label=online]{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--presence);margin-left:6px;vertical-align:middle;box-shadow:0 0 0 2px var(--surface)}.presence-badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-caption-size);line-height:1.2;color:var(--text-tertiary)}.presence-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--presence);flex-shrink:0}.presence-badge[data-status=online]{color:var(--presence)}.presence-badge[data-status=away]{color:var(--presence-away)}.presence-badge[data-status=away] .presence-badge-dot{background:var(--presence-away)}.nav-indicator{position:absolute;top:0;left:0;z-index:0;width:0;height:0;opacity:0;pointer-events:none;border-radius:var(--radius-pill);transition:transform var(--dur-default) var(--ease-emphasized),width var(--dur-default) var(--ease-emphasized),height var(--dur-default) var(--ease-emphasized),opacity var(--dur-fast) var(--ease-standard)}@media (prefers-reduced-motion:reduce){.nav-indicator{transition:opacity var(--dur-fast) var(--ease-standard)}}.topnav{display:none}@media (min-width:1024px){.topnav{position:relative;display:flex;align-items:center;gap:2px;justify-self:center;padding:4px;background:var(--surface-tint);border:1px solid var(--border);border-radius:var(--radius-pill)}.topnav .nav-indicator{background:var(--surface-elev);box-shadow:var(--shadow-sm)}.topnav a{display:inline-flex;align-items:center;gap:9px;padding:9px 18px;border-radius:var(--radius-pill);color:var(--text-secondary);font-family:var(--font-body-stack);font-size:16px;font-weight:500;white-space:nowrap;position:relative;z-index:1;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.topnav a:hover{color:var(--text-primary);text-decoration:none}.topnav a:hover:not([aria-current=page]){background:var(--surface-elev)}.topnav a:active{transform:scale(.98)}.topnav a:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--accent)}.topnav a[aria-current=page]{font-weight:700;color:var(--accent)}.topnav .nav-icon{flex:0 0 22px;display:inline-flex;align-items:center;justify-content:center;color:currentColor}.topnav .nav-icon,.topnav .nav-icon svg{width:22px;height:22px}.topnav a[aria-current=page] .nav-icon{color:var(--accent)}.topnav .nav-label{line-height:1.2;color:currentColor}.topnav .nav-badge{position:absolute;top:2px;right:6px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;line-height:1;padding:2px 5px;border-radius:var(--radius-pill);min-width:14px;text-align:center;animation:badge-in var(--dur-fast) var(--ease-standard)}}@keyframes badge-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.topbar{position:fixed;top:0;left:0;right:0;z-index:40;height:var(--topbar-h);background:var(--surface-elev);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-md)}@media (min-width:1024px){.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:var(--space-md);gap:var(--space-md);padding:0 var(--space-lg)}.topbar-brand{justify-self:start}.topbar-actions{justify-self:end;margin-left:0}}.topbar a,.topbar button{-webkit-tap-highlight-color:transparent}.topbar-brand{display:flex;align-items:center;gap:8px;color:var(--accent);line-height:1}.topbar-brand,.topbar-brand:hover{text-decoration:none}.topbar-brand .brand-logo{height:30px}@media (min-width:1024px){.topbar-brand .brand-logo{height:36px}}.topbar-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.topbar-icon{position:relative;width:36px;height:36px;min-height:0;padding:0;background:transparent;border:0;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;color:var(--text-primary);border-radius:var(--radius-md)}.topbar-icon:active:not(:disabled){transform:none}.topbar-icon:hover,button.topbar-icon:hover:not(:disabled):not([aria-disabled=true]){background:var(--surface-tint);border-color:transparent;color:var(--text-primary);transform:none;text-decoration:none}.topbar-icon .nav-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.topbar-icon .nav-icon svg{width:24px;height:24px}.topbar-icon .nav-badge{position:absolute;top:0;right:0;background:var(--accent);color:#fff;font-size:9px;font-weight:700;line-height:1;padding:2px 5px;border-radius:var(--radius-pill);min-width:14px;text-align:center;box-shadow:0 0 0 2px var(--surface-elev)}.notif-bell{position:relative;display:inline-flex}.notif-popover{position:fixed;top:calc(var(--topbar-h) + 8px);right:var(--space-md);width:min(320px,calc(100vw - 2 * var(--space-md)));max-height:min(70vh,420px);overflow-y:auto;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);z-index:210;padding:4px;transform-origin:top right;animation:notif-popover-in var(--dur-default) var(--ease-emphasized)}.notif-popover[data-state=closing]{animation:notif-popover-out var(--dur-fast) var(--ease-standard) forwards}@keyframes notif-popover-in{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes notif-popover-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.97)}}.notif-popover-empty{margin:0;padding:28px 12px;text-align:center;color:var(--text-secondary)}.notif-popover-list{list-style:none;margin:0;padding:0}.notif-popover-list li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--radius-md);cursor:pointer}.notif-popover-list li:hover{background:var(--surface-tint)}.notif-popover-list li[data-read=false]{font-weight:600}.notif-popover-list li time{font-size:12px;color:var(--text-secondary);font-weight:400}.notif-popover-all{display:block;text-align:center;padding:10px 12px;border-top:1px solid var(--border);margin-top:4px;color:var(--accent);font-weight:600}.topbar-me{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:transparent}.topbar-me,.topbar-me:hover{text-decoration:none}.topbar-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--text-on-accent);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display-stack);font-size:16px;font-weight:700;line-height:1;object-fit:cover;overflow:hidden}img.topbar-avatar{background:var(--surface-tint)}.topbar-signin{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 18px;border-radius:999px;background:var(--accent);color:var(--text-on-accent);font-family:var(--font-body-stack);font-weight:var(--text-button-weight);font-size:14px;line-height:1;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard)}.topbar-signin:hover{background:var(--accent-strong);text-decoration:none}.mobile-tabbar{position:fixed;bottom:0;left:0;right:0;height:var(--bottombar-h);background:var(--tabbar-bg);border-top:1px solid var(--rail-divider);display:flex;align-items:center;justify-content:space-between;z-index:50;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}@media (min-width:1024px){.mobile-tabbar{display:none}}.mobile-tabbar .nav-indicator{background:var(--accent-tint-strong);border-radius:var(--radius-pill)}.mobile-tabbar a{flex:1 1;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-secondary);font-family:var(--font-body-stack);font-size:10px;font-weight:600;padding:4px 0;position:relative;z-index:1;-webkit-tap-highlight-color:transparent;transition:color var(--dur-fast) var(--ease-standard)}.mobile-tabbar a:hover{text-decoration:none}.mobile-tabbar a[aria-current=page]{color:var(--accent)}.mobile-tabbar .nav-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:currentColor}.mobile-tabbar .nav-icon svg{width:28px;height:28px}.mobile-tabbar .nav-badge{position:absolute;top:0;right:calc(50% - 20px);background:var(--accent);color:#fff;font-size:9px;font-weight:700;line-height:1;padding:2px 5px;border-radius:var(--radius-pill);min-width:14px;text-align:center;box-shadow:0 0 0 2px var(--tabbar-bg)}[role=dialog]{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:var(--space-md)}[role=dialog]:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:dialog-overlay-in var(--dur-default) var(--ease-standard)}[role=dialog]>*{position:relative;background:var(--surface-elev);border-radius:var(--radius-lg);padding:var(--space-lg);width:100%;max-width:440px;box-shadow:var(--shadow-modal);animation:dialog-panel-in var(--dur-slow) var(--ease-emphasized)}@keyframes dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-panel-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:767px){[role=dialog][data-sheet=true]{align-items:end}[role=dialog][data-sheet=true]>*{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:none;animation:sheet-panel-in var(--dur-slow) var(--ease-emphasized)}@keyframes sheet-panel-in{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}}.card,section[data-card]{background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);margin:0 0 var(--space-md)}@keyframes arrival-subtle{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.skeleton,[data-skeleton]{background:var(--skeleton);border-radius:var(--radius-md);position:relative;overflow:hidden;color:transparent}.skeleton:after,[data-skeleton]:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,var(--surface-elev) 50%,transparent 60%);background-size:200% 100%;animation:shimmer var(--dur-shimmer) var(--ease-linear) infinite}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:200% 0}}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--text-secondary);font-size:var(--text-micro-size);font-weight:600;letter-spacing:.02em;line-height:1.4;white-space:nowrap}.pill[data-tone=accent]{background:var(--accent-tint);color:var(--accent)}.pill[data-tone=success]{background:rgba(34,197,94,.15);color:#15803d}.pill[data-tone=warn]{background:rgba(217,119,6,.15);color:#b45309}.pill[data-tone=danger]{background:var(--danger-tint-surface);color:var(--danger-text)}.pill[data-tone=neutral]{background:var(--surface-tint);color:var(--text-secondary)}.pill[data-tone=success]{background:rgba(34,197,94,.18);color:#4ade80}.pill[data-tone=warn]{background:rgba(245,158,11,.18);color:#fbbf24}.auth-shell{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);width:100%}.auth-pagebrand{display:inline-flex;align-items:center;text-decoration:none;transition:opacity var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.auth-pagebrand:hover{opacity:.78}}.auth-card{background:color-mix(in srgb,var(--surface-elev-2) 55%,transparent);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);border:1px solid color-mix(in srgb,var(--surface-elev-2) 45%,transparent);border-radius:24px;padding:44px 30px 36px;box-shadow:0 1px 0 0 var(--auth-card-edge) inset,0 24px 56px -20px var(--shadow-modal-color),0 8px 20px -12px var(--shadow-card-color);width:100%;max-width:400px;margin:0 auto}.auth-card form label{display:flex;flex-direction:column;gap:var(--space-row-sm);margin:0}.auth-card form input{max-width:none;height:54px;padding:0 16px;font-size:16px;border-radius:var(--radius-lg);border-color:var(--border-strong);background:var(--surface-elev)}.auth-card form input::placeholder{font-size:15px}.auth-tagline{text-align:center;color:var(--text-secondary);margin:0 auto var(--space-lg);font-size:14px;line-height:1.5;max-width:32ch}.auth-card h1+.auth-tagline{margin-top:calc(-1 * var(--space-sm))}.auth-card h1{font-size:28px;font-weight:700;letter-spacing:-.01em;text-align:center;margin-bottom:var(--space-lg)}.auth-card form button{width:100%;min-height:54px;border-radius:var(--radius-lg);font-size:16px;margin-top:var(--space-md)}.auth-card form button[type=button]{min-height:46px;font-size:14.5px;margin-top:var(--space-sm)}.auth-card form button+button{margin-left:0}.auth-footer{text-align:center;margin-top:var(--space-md);color:var(--text-secondary);font-size:14px}.free-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:var(--accent-tint);color:var(--accent);border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-xl) var(--space-md);gap:var(--space-md);color:var(--text-secondary)}.empty-state h2,.empty-state h3{color:var(--text-primary);margin:0}.empty-state p{margin:0;max-width:36ch}.value-prop{background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl) var(--space-md);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.value-prop h2{margin:0;font-size:24px}.value-prop p{color:var(--text-secondary);max-width:36ch;margin:0}.inline-upsell{margin-top:var(--space-row-md);font-size:13px;color:var(--text-secondary)}.inline-upsell a{font-weight:600}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.page-header h1{margin:0}.page-header button{white-space:nowrap;flex:0 0 auto}.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--skeleton);border:1px solid var(--border);display:inline-block;flex:0 0 auto}.avatar[data-size=lg]{width:96px;height:96px}.avatar[data-size=xl]{width:128px;height:128px}.avatar[data-size=sm]{width:28px;height:28px}button[aria-busy=true]{position:relative;color:transparent!important}button[aria-busy=true]:after{content:"";position:absolute;inset:0;margin:auto;width:16px;height:16px;color:var(--text-on-accent);border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:spinner var(--dur-spinner) var(--ease-linear) infinite}button[type=button][aria-busy=true]:after{color:var(--text-primary)}@keyframes spinner{to{transform:rotate(1turn)}}.auth-gate-loading{position:fixed;inset:0;pointer-events:none}.auth-gate-spinner{position:fixed;top:50%;left:50%;width:28px;height:28px;margin:-14px 0 0 -14px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spinner var(--dur-spinner) var(--ease-linear) infinite}@media (prefers-reduced-motion:reduce){.auth-gate-spinner{animation-duration:1.6s}}.me-page{display:flex;flex-direction:column;gap:var(--space-lg)}.me-page>nav+section,.me-page>section+nav,.me-page>section+section{border-top:1px solid var(--border);padding-top:var(--space-lg)}.identity-hero{display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;text-align:center}.identity-hero-avatar,.identity-hero-avatar-uploader{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:8px}.identity-hero-avatar .avatar-placeholder,.identity-hero-avatar img{width:104px;height:104px;border-radius:50%;object-fit:cover;border:2px solid var(--surface-elev);box-shadow:0 0 0 1px var(--border);background:var(--surface-tint);display:inline-flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-family:var(--font-display-stack);font-size:38px;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-uploader{display:flex;flex-direction:column;align-items:center;gap:12px;margin:0}.avatar-uploader-frame{width:104px;height:104px;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.avatar-uploader .avatar-uploader-img{display:block}.avatar-uploader .avatar-uploader-img,.avatar-uploader-initial{width:104px;height:104px;border-radius:50%;object-fit:cover;border:2px solid var(--surface-elev);box-shadow:0 0 0 1px var(--border),var(--shadow-card);background:var(--surface-tint)}.avatar-uploader-initial{display:flex;font-family:var(--font-display-stack);font-size:38px;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-uploader-empty,.avatar-uploader-initial{align-items:center;justify-content:center;color:var(--text-tertiary)}.avatar-uploader-empty{width:104px;height:104px;border-radius:50%;border:2px dashed var(--border-strong);background:var(--surface-tint);display:inline-flex;text-align:center;font-size:12px;font-weight:600;letter-spacing:.02em;padding:8px}.avatar-uploader-file{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.avatar-uploader-actions{display:inline-flex;align-items:center;gap:var(--space-row-md);flex-wrap:wrap;justify-content:center}.avatar-uploader-actions button{min-height:36px;padding:7px 16px;margin:0}.avatar-uploader-actions button+button{margin-left:0}.avatar-uploader-frame-button{position:relative;margin:0;padding:0;text-transform:none;letter-spacing:0;cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.avatar-uploader-frame-button:hover{transform:scale(1.02)}}.avatar-uploader-frame-button:active{transform:scale(.98)}.avatar-uploader-overlay{position:absolute;inset:0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:rgba(0,0,0,.52);color:#fff;font-size:11px;font-weight:600;letter-spacing:.02em;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.avatar-uploader-frame-button:hover .avatar-uploader-overlay{opacity:1}}.avatar-uploader:has(.avatar-uploader-file:focus-visible) .avatar-uploader-overlay{opacity:1}@media (hover:none){.avatar-uploader-overlay{opacity:0}}.avatar-uploader-remove{min-height:32px;padding:6px 16px;font-size:13px;margin:0}.avatar-uploader button[data-variant=ghost-danger]{background:transparent;color:var(--text-secondary);border:1px solid var(--border-strong);box-shadow:none}@media (hover:hover) and (pointer:fine){.avatar-uploader button[data-variant=ghost-danger]:hover:not(:disabled){background:var(--danger-tint-surface);color:var(--danger-text);border-color:var(--danger-ring)}}.avatar-uploader-confirm{display:flex;flex-direction:column;align-items:center;gap:var(--space-row-md)}.avatar-uploader-confirm-q{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.avatar-uploader-error{color:var(--danger-text);font-size:13px;margin:0;text-align:center}.identity-hero-body{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px}.identity-hero-name{font-family:var(--font-display-stack);font-size:22px;line-height:1.2;font-weight:700;letter-spacing:-.02em;margin:0;color:var(--text-primary);overflow-wrap:anywhere}@media (min-width:768px){.identity-hero-name{font-size:26px}}.identity-hero-username{font-size:14px;color:var(--text-secondary);font-weight:500}.username-edit-button{margin-left:6px;padding:0;width:24px;height:24px;min-height:0;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;color:var(--text-tertiary);background:transparent;border:0;border-radius:var(--radius-sm);cursor:pointer;box-shadow:none;transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.username-edit-button svg{width:15px;height:15px}@media (hover:hover) and (pointer:fine){.username-edit-button:hover:not(:disabled){color:var(--accent);background:var(--accent-tint)}}.identity-hero-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:4px}.identity-hero-claim{font-size:13px;color:var(--text-secondary);margin-top:4px}.identity-hero-claim a{font-weight:600}.photo-gallery-button{display:grid;grid-template-columns:24px 1fr auto;grid-gap:12px;gap:12px;align-items:center;width:100%;padding:14px var(--space-md);border-radius:var(--radius-lg);background:var(--accent-tint);color:var(--accent);border:1px solid var(--accent-tint-strong);font-family:var(--font-body-stack);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.photo-gallery-button:hover{text-decoration:none;background:var(--accent-tint-strong);border-color:var(--accent-tint-strong)}.photo-gallery-button .nav-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.photo-gallery-button .nav-icon svg{width:20px;height:20px}.photo-gallery-arrow{justify-self:end;flex:0 0 auto;font-size:18px;line-height:1;color:var(--accent);transition:transform var(--dur-fast) var(--ease-standard)}.photo-gallery-button:hover .photo-gallery-arrow{transform:translateX(2px)}.section-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;display:flex;flex-direction:column;gap:var(--space-md)}.section-card>h2{margin:0;font-family:var(--font-display-stack);font-size:var(--text-h3-size);line-height:var(--text-h3-line);font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.section-card>h3{margin:0;font-size:15px;font-weight:700;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em}.section-card .section-sub{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.section-card .section-divider{height:1px;background:var(--border);margin:0;border:0}.field-grid{display:grid;grid-template-columns:1fr;grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:768px){.field-grid{grid-template-columns:1fr 1fr}.field-grid>.field-full{grid-column:1/-1}}.field{display:flex;flex-direction:column;gap:6px}.field,.field>label{margin:0}.field>input,.field>select,.field>textarea{max-width:none;width:100%}.field-help{font-size:12.5px;color:var(--text-tertiary);line-height:1.4;margin:0}.field-help[data-tone=warn]{color:var(--text-secondary)}.field-error{font-size:13px;color:var(--danger-text);margin:0;line-height:1.4}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-sm)}.form-actions .form-actions-status{margin-right:auto;color:var(--danger-text);font-size:13px;line-height:1.4}.form-actions button{min-width:132px}@media (max-width:767px){.form-actions{justify-content:stretch}.form-actions button{flex:1 1 100%;width:100%}}.onboarding-shell{align-items:center}.onboarding-card,.onboarding-shell{display:flex;flex-direction:column;gap:var(--space-lg);width:100%}.onboarding-card{background:color-mix(in srgb,var(--surface-elev-2) 55%,transparent);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);border:1px solid color-mix(in srgb,var(--surface-elev-2) 45%,transparent);border-radius:24px;padding:40px 30px 32px;box-shadow:0 1px 0 0 var(--auth-card-edge) inset,0 24px 56px -20px var(--shadow-modal-color),0 8px 20px -12px var(--shadow-card-color);max-width:460px;margin:0 auto}.onboarding-head{display:flex;flex-direction:column;gap:var(--space-sm);text-align:center}.onboarding-head h1{margin:0;font-size:26px;font-weight:700;letter-spacing:-.01em}.onboarding-tagline{margin:0 auto;color:var(--text-secondary);font-size:14px;line-height:1.5;max-width:38ch}.onboarding-card form{display:flex;flex-direction:column;gap:var(--space-md)}.onboarding-avatar{display:flex;justify-content:center}.onboarding-submit{width:100%;min-height:52px;border-radius:var(--radius-lg);font-size:16px;margin-top:var(--space-sm)}.onboarding-skip{align-self:center;background:transparent;border:0;color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;padding:8px 16px;min-height:0;border-radius:var(--radius-md);box-shadow:none;text-decoration:none;transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.onboarding-skip:hover:not(:disabled){color:var(--text-primary);background:var(--surface-tint);transform:none}}.onboarding-skip:active:not(:disabled){transform:none}.avatar-block{display:grid;grid-template-columns:auto 1fr;grid-gap:var(--space-md);gap:var(--space-md);align-items:center}.avatar-block>p:first-child{margin:0}.avatar-block>p:first-child img{width:88px;height:88px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--border-strong)}.avatar-block .avatar-side{display:flex;flex-direction:column;gap:8px}.action-rows{display:flex;flex-direction:column;gap:var(--space-sm)}.action-row{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:var(--space-md);gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-elev)}.action-row[data-tone=danger]{border-color:var(--danger-ring);background:var(--danger-tint-surface)}.action-row[data-tone=danger] .action-row-title{color:var(--danger-text)}.action-row>button[type=button]:not([data-variant=primary]){background:var(--surface-tint)}@media (hover:hover) and (pointer:fine){.action-row>button[type=button]:not([data-variant=primary]):hover:not(:disabled){background:var(--accent-tint);color:var(--accent);border-color:var(--accent-tint-strong)}}@media (max-width:420px){.action-row{grid-template-columns:1fr}.action-row>a[role=button],.action-row>button{width:100%;justify-self:stretch}}.action-row-body{min-width:0}.action-row-title{font-weight:600;color:var(--text-primary);font-size:15px;margin:0;line-height:1.3}.action-row-detail{color:var(--text-secondary);font-size:13.5px;line-height:1.45;margin:4px 0 0}.action-row>a[role=button],.action-row>button{flex:0 0 auto}.settings-page{display:flex;flex-direction:column;gap:var(--space-lg)}.settings-page>section+section{border-top:1px solid var(--border);padding-top:var(--space-lg)}.settings-header{display:flex;align-items:center;justify-content:center;text-align:center}.settings-header>h1{margin:0;font-size:calc(var(--text-h1-size) + 8px);letter-spacing:-.03em}.settings-header-sub{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.settings-back{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:600;transition:color var(--dur-fast) var(--ease-standard)}.settings-back:hover{color:var(--text-primary)}.settings-back:focus-visible{outline:0;border-radius:var(--radius-sm);box-shadow:0 0 0 3px var(--focus-ring)}.settings-back-icon{width:18px;height:18px}.theme-switcher-head{display:flex;flex-direction:column;gap:4px}.theme-switcher-head>h2{margin:0}.theme-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));grid-gap:var(--space-md);gap:var(--space-md)}.theme-option{display:flex;align-items:center;gap:var(--space-md);width:100%;margin:0;padding:var(--space-md);text-align:left;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.theme-option:hover{border-color:var(--border-strong);background:var(--surface-elev-2)}.theme-option:active{transform:scale(.99)}.theme-option:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.theme-option[data-selected]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 6px 22px -20px var(--accent);background:linear-gradient(135deg,var(--accent-tint) 0,transparent 60%),var(--surface-elev)}.theme-swatch{position:relative;flex:none;width:52px;height:40px;border-radius:var(--radius-md);background:var(--sw-bg);border:1px solid rgba(255,255,255,.1);overflow:hidden}.theme-swatch-panel{position:absolute;top:7px;left:7px;right:7px;height:11px;border-radius:4px;background:var(--sw-elev)}.theme-swatch-accent{position:absolute;bottom:7px;left:7px;width:22px;height:8px;border-radius:var(--radius-pill);background:var(--sw-accent)}.theme-option-text{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-width:0}.theme-option-name{font-size:var(--text-body-size);font-weight:600;color:var(--text-primary)}.theme-option-check{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:var(--radius-pill);color:var(--text-on-accent);background:var(--accent);opacity:0;transform:scale(.6);transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-emphasized)}.theme-option[data-selected] .theme-option-check{opacity:1;transform:scale(1)}.segmented{display:inline-flex;gap:2px;padding:4px;background:var(--surface-tint);border:1px solid var(--border);border-radius:var(--radius-lg);align-self:flex-start;box-shadow:none}.segmented>button{background:transparent;border:1px solid transparent;color:var(--text-secondary);padding:6px 16px;min-height:34px;border-radius:var(--radius-md);margin:0;font-size:13px;font-weight:600;box-shadow:none;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.segmented>button+button{margin-left:0}.segmented>button[aria-checked=true]{background:var(--surface-elev);color:var(--accent);border-color:var(--border);box-shadow:var(--shadow-sm)}.segmented>button:active:not([aria-checked=true]){transform:none}@media (hover:hover) and (pointer:fine){.segmented>button:hover:not([aria-checked=true]){color:var(--text-primary);background:var(--hover-tint);border-color:transparent;transform:none}}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elev);color:var(--text-primary);text-decoration:none;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.settings-row:hover{text-decoration:none;background:var(--surface-tint);border-color:var(--border-strong)}.settings-row:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.settings-row-label{font-weight:600;font-size:15px}.settings-row-chevron{flex:0 0 auto;width:20px;height:20px;color:var(--text-tertiary)}.settings-minor{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.settings-text-action{background:transparent;border:0;box-shadow:none;color:var(--text-secondary);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;min-height:0;padding:4px 8px}.settings-text-action:hover:not(:disabled){background:transparent;border-color:transparent;color:var(--accent);transform:none}.settings-text-action:active:not(:disabled){transform:none}.settings-minor-hint{font-size:12px;color:var(--text-tertiary);line-height:1.4;max-width:40ch}.cropper-sheet{display:flex;flex-direction:column;gap:var(--space-md);width:100%;max-width:440px}.cropper-title{margin:0;font-size:var(--text-h3-size)}.cropper-stage{position:relative;width:100%;aspect-ratio:1/1;background:var(--warm-1000);border-radius:var(--radius-md);overflow:hidden}.cropper-zoom{margin:0;text-transform:none}.cropper-zoom input[type=range]{width:100%;max-width:none;padding:0;border:0;background:transparent;accent-color:var(--accent)}.cropper-actions{display:flex;gap:var(--space-sm)}.cropper-actions>button{flex:1 1 auto;margin:0}.cropper-actions>button+button{margin-left:0}.back-button{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:7px 14px 7px 10px;background:var(--surface-elev);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-primary);font-size:13px;font-weight:600;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.back-button:hover{text-decoration:none;background:var(--surface-tint);border-color:var(--border-strong)}.back-button:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.back-button-icon{width:17px;height:17px;flex:0 0 auto}.photos-page{display:flex;flex-direction:column;gap:var(--space-md)}.photos-page>h1{margin:0}.photos-gallery{gap:var(--space-md)}.photos-add,.photos-gallery{display:flex;flex-direction:column}.photos-add{gap:var(--space-sm);padding:var(--space-md);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-tint)}.photos-add>label{margin:0}.photos-add-hint{margin:0;font-size:12.5px;color:var(--text-tertiary)}.photos-note{margin:0;font-size:13px;color:var(--text-secondary)}.photo-grid{list-style:none;margin:0;padding:0;border:0;background:transparent;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-md);gap:var(--space-md)}@media (min-width:768px){.photo-grid{grid-template-columns:repeat(3,1fr)}}.photo-grid>.photo-card{margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elev);overflow:hidden;display:flex;flex-direction:column}.photo-card-frame{position:relative;width:100%;aspect-ratio:1/1;background:var(--skeleton)}.photo-card-frame img{width:100%;height:100%;object-fit:cover;border-radius:0;display:block}.photo-card-controls{display:flex;align-items:center;gap:var(--space-row-sm);padding:var(--space-row-md)}.photo-card-controls>button{min-height:34px;padding:6px 10px;margin:0}.photo-card-controls>button[aria-label]{flex:0 0 auto;width:34px;height:34px;min-height:34px;padding:0;font-size:15px}.photo-card-controls>.photo-card-delete{margin-left:auto;padding:6px 10px;font-size:12.5px;white-space:nowrap}.photo-card-controls>button+button{margin-left:0}.photo-card-confirm{display:flex;flex-wrap:wrap;gap:var(--space-row-md);padding:0 var(--space-row-md) var(--space-row-md)}.photo-card-confirm>button{flex:1 1 auto;margin:0;min-height:34px}.photo-card-confirm>button+button{margin-left:0}.button-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;background:var(--accent);color:var(--text-on-accent);border-radius:var(--radius-md);font-family:var(--font-body-stack);font-weight:var(--text-button-weight);font-size:var(--text-button-size);line-height:1.2;min-height:40px;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard)}.button-link:hover{background:var(--accent-strong);text-decoration:none}.photo-gallery-row{margin:0}.photo-gallery-link{display:flex;align-items:center;justify-content:space-between;padding:14px 0;color:var(--text-primary);font-size:15px;font-weight:500;text-decoration:none;border-bottom:1px solid var(--border)}.photo-gallery-link:hover{text-decoration:none;color:var(--accent)}.photo-gallery-link>span:last-child{color:var(--text-tertiary);font-size:18px;line-height:1}.me-drawer{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;display:flex;flex-direction:column;gap:0}.me-drawer-head{font-family:var(--font-display-stack);font-size:var(--text-h3-size);line-height:var(--text-h3-line);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-row-md);letter-spacing:-.01em}@media (min-width:1024px){.me-drawer{display:none}}.me-drawer-list{display:flex;flex-direction:column}.me-drawer a{display:grid;grid-template-columns:24px 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:14px 0;border-radius:0;color:var(--text-primary);font-size:15px;font-weight:500;text-decoration:none;border-bottom:1px solid var(--border);transition:background var(--dur-fast) var(--ease-standard)}.me-drawer-list a:last-child{border-bottom:0}.me-drawer a:active{background:var(--press-tint)}.me-drawer .nav-icon{color:var(--text-secondary);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.me-drawer .nav-icon svg{width:20px;height:20px}.me-drawer .nav-trail{color:var(--text-tertiary);font-size:16px;line-height:1}.me-drawer .nav-badge{background:var(--accent);color:#fff;font-size:11px;font-weight:700;line-height:1;padding:3px 7px;border-radius:var(--radius-pill);min-width:18px;text-align:center}.interests-body{display:flex;flex-direction:column;gap:var(--space-md)}.interests-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;border:0;background:transparent;overflow:visible}.interests-chips>li{margin:0;cursor:default;display:inline-flex;align-items:center;gap:7px;background:var(--surface-tint);border:1px solid var(--border-strong);color:var(--text-primary);padding:5px 5px 5px 13px;border-radius:var(--radius-pill);font-size:13.5px;font-weight:500;line-height:1.2;animation:arrival-subtle var(--dur-default) var(--ease-standard)}.interests-chips>li[data-status=pending]{border-style:dashed}.interests-chips>li[data-removing=true]{opacity:.45;transition:opacity var(--dur-default) var(--ease-standard)}.interests-chips>li[data-status=rejected]{background:var(--danger-tint-surface);border-color:var(--danger-ring);color:var(--danger-text)}.interest-chip-status{font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-tertiary);padding-left:7px;border-left:1px solid var(--border-strong)}.interests-chips>li[data-status=rejected] .interest-chip-status{color:var(--danger-text);border-left-color:var(--danger-ring)}.interests-chips>li button[aria-label^=Remove]{background:transparent;border:0;box-shadow:none;color:var(--text-tertiary);width:22px;height:22px;min-height:22px;padding:0;margin:0;border-radius:50%;font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.interests-chips>li button[aria-label^=Remove]:hover:not(:disabled){background:var(--surface-elev);color:var(--danger-text);transform:none}}.interests-chips>li button[aria-label^=Remove]:active:not(:disabled){transform:scale(.9)}.interests-note{margin:0;font-size:13px;line-height:1.45;color:var(--text-secondary)}.interests-form{margin:0;display:flex;flex-direction:column;gap:8px}.interests-form-row{display:flex;align-items:stretch;gap:var(--space-row-md)}.interests-form-row>input{flex:1 1 auto;max-width:none}.interests-form-row>button[type=submit]{flex:0 0 auto;min-width:84px;margin:0}.interests-form .interests-suggestions{margin:4px 0 0;list-style:none;padding:4px;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);max-height:220px;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:1px}.interests-suggestions>li{margin:0;padding:0;background:transparent;border:0}.interests-suggestions>li>button[role=option]{width:100%;justify-content:flex-start;background:transparent;color:var(--text-primary);border:0;box-shadow:none;border-radius:var(--radius-sm);padding:9px 10px;font-weight:500;min-height:38px;margin:0}@media (hover:hover) and (pointer:fine){.interests-suggestions>li>button[role=option]:hover:not(:disabled){background:var(--accent-tint);color:var(--accent);transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}button:active:not(:disabled){transform:none}.skeleton:after,[data-skeleton]:after{display:none}}.chat-thread{margin:auto 0 0}.chat-row,.chat-thread{list-style:none;padding:0;display:flex;flex-direction:column;gap:2px;border:0;background:transparent}.chat-row{position:relative;margin:0;color:inherit;max-width:min(82%,540px);align-items:flex-start;animation:arrival-subtle var(--dur-default) var(--ease-standard)}.chat-swipe-hint{position:absolute;top:50%;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:var(--text-secondary);background:var(--surface-elev-2);border:1px solid var(--border);pointer-events:none;transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.chat-swipe-hint[data-side=start]{left:-6px}.chat-swipe-hint[data-side=end]{right:-6px}.chat-row--start{margin-top:var(--space-row-lg)}.chat-thread>.chat-row:first-child{margin-top:0}.chat-row--mine{margin-left:auto;align-items:flex-end}.chat-row-name{margin:0 0 1px 12px;font-size:var(--text-micro-size);font-weight:700;line-height:1.2;letter-spacing:.01em;color:var(--accent-strong)}.chat-bubble{display:inline-block;max-width:100%;padding:8px 13px;border-radius:var(--radius-bubble);background:var(--surface-elev);color:var(--text-primary);border:1px solid var(--border);line-height:1.4;font-size:15px;word-break:break-word;overflow-wrap:anywhere;box-shadow:0 1px 2px color-mix(in srgb,var(--text-primary) 5%,transparent)}.msg-emoji{font-size:1.3em;line-height:1;vertical-align:-.18em}.msg-emoji-jumbo{font-size:2.4em;vertical-align:-.15em}.chat-row:not(.chat-row--mine) .chat-bubble{border-bottom-left-radius:6px}.chat-row--mine .chat-bubble{background:var(--grad-accent);color:var(--text-on-accent);border-color:transparent;border-bottom-right-radius:6px;box-shadow:0 2px 8px -3px color-mix(in srgb,var(--accent) 34%,transparent)}.chat-row--mine:not(.chat-row--start) .chat-bubble{border-top-right-radius:9px}.chat-row:not(.chat-row--mine):not(.chat-row--start) .chat-bubble{border-top-left-radius:9px}.chat-row[data-status=sending] .chat-bubble{opacity:.62}.chat-row[data-status=failed] .chat-bubble{opacity:.9;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-strong) 40%,transparent)}.chat-meta{display:flex;align-items:center;gap:6px;margin:1px 6px 0;font-size:var(--text-micro-size);line-height:1.2;color:var(--text-tertiary)}.chat-row--mine .chat-meta{flex-direction:row-reverse}.chat-time{color:var(--text-tertiary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-receipt{color:var(--accent-strong);font-weight:600}.chat-report{color:var(--text-tertiary);font-size:var(--text-micro-size);opacity:.75}.chat-report:hover{color:var(--accent);opacity:1}.chat-retry{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;margin:0;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.chat-error,.chat-retry{font-size:var(--text-micro-size)}.chat-error{margin:1px 6px 0;color:var(--accent-strong)}.chat-attachments{list-style:none;padding:0;margin:4px 0 0;border:0;display:flex;flex-wrap:wrap;gap:6px}.chat-attachments>li{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:3px}.chat-attachments img{display:block;width:100%;max-width:220px;aspect-ratio:4/3;height:auto;border-radius:var(--radius-md);object-fit:cover;background:var(--skeleton);border:1px solid color-mix(in srgb,var(--border) 60%,transparent);transition:opacity var(--dur-default) var(--ease-standard)}.chat-attachments img[data-loaded=false]{opacity:0}.chat-attachments[data-pending] img{max-width:84px;aspect-ratio:1/1}.chat-attachment-status{font-size:var(--text-micro-size);color:var(--text-tertiary)}.chat-bubble-stack{flex-direction:column;gap:3px;align-items:inherit;transition:transform var(--dur-default) var(--ease-emphasized)}.chat-bubble-line,.chat-bubble-stack{display:flex;max-width:100%;min-width:0}.chat-bubble-line{position:relative;align-items:center;gap:4px}.chat-row--mine .chat-bubble-line{flex-direction:row-reverse}.chat-bubble-content{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:100%;align-items:flex-start}.chat-row--mine .chat-bubble-content{align-items:flex-end}.chat-bubble-content .chat-attachments{margin-top:0}.chat-reply-quote{display:flex;align-items:stretch;gap:7px;max-width:min(100%,280px);min-width:0;margin-bottom:1px;padding:4px 11px 4px 6px;border-radius:11px;background:color-mix(in srgb,var(--text-primary) 6%,transparent);font-size:12.5px;line-height:1.3;text-align:left}.chat-reply-quote-bar{flex:none;align-self:stretch;width:3px;border-radius:999px;background:color-mix(in srgb,var(--accent) 75%,transparent)}.chat-reply-quote-text{min-width:0;display:flex;flex-direction:column;gap:1px}.chat-row--mine .chat-reply-quote{flex-direction:row-reverse;padding:4px 6px 4px 11px;background:color-mix(in srgb,var(--accent) 14%,transparent);text-align:right}.chat-row--mine .chat-reply-quote-text{align-items:flex-end}.chat-reply-quote-author{font-size:11.5px;font-weight:700;color:var(--accent-strong)}.chat-reply-quote-body{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.chat-actions{position:relative;flex:none;align-self:center}button.chat-actions-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:4px;border-radius:999px;background:transparent;color:var(--text-tertiary);cursor:pointer;display:grid;place-items:center;opacity:.6;transition:opacity var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.chat-actions-trigger:focus-visible,.chat-actions-trigger[aria-expanded=true],button.chat-actions-trigger:hover:not(:disabled):not([aria-disabled=true]){opacity:1;color:var(--text-secondary);background:transparent;transform:none;box-shadow:none}.chat-actions-menu{position:absolute;bottom:calc(100% + 8px);left:50%;z-index:20;width:max-content;max-width:min(360px,calc(100vw - 16px));transform:translateX(calc(-50% + var(--menu-shift, 0px)))}.chat-actions-card{display:flex;flex-direction:row;align-items:center;gap:3px;padding:5px;border-radius:16px;background:var(--surface-elev);border:1px solid var(--border);box-shadow:0 6px 18px -10px color-mix(in srgb,var(--text-primary) 30%,transparent);transform-origin:bottom center;animation:chat-actions-pop var(--dur-fast) var(--ease-emphasized)}.chat-reaction-sep{flex:none;align-self:stretch;width:1px;margin:3px 0;background:color-mix(in srgb,var(--border) 70%,transparent)}button.chat-reaction-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:0;box-shadow:none;min-height:0;padding:0;width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}button.chat-reaction-close:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent);color:var(--text-primary)}@keyframes chat-actions-pop{0%{opacity:0;transform:translateY(6px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-reaction-picker{display:flex;flex-wrap:nowrap;gap:2px;overflow-x:auto;scrollbar-width:none}.chat-reaction-picker::-webkit-scrollbar{display:none}.chat-reaction-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:0;background:transparent;width:30px;height:30px;padding:0;min-height:0;box-shadow:none;display:grid;place-items:center;border-radius:999px;font-size:18px;line-height:1;cursor:pointer;transition:transform var(--dur-fast) var(--ease-emphasized),background var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.chat-reaction-option:hover{transform:scale(1.24) translateY(-1px);background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.chat-reaction-option:active{transform:scale(.9)}.chat-reaction-option--active{background:color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--accent) 62%,transparent)}.chat-reply-menu{position:absolute;bottom:calc(100% + 6px);left:50%;z-index:20;transform:translateX(-50%)}.chat-reply-menu-card{padding:4px;border-radius:12px;background:var(--surface-elev);border:1px solid var(--border);box-shadow:0 6px 18px -10px color-mix(in srgb,var(--text-primary) 30%,transparent);transform-origin:bottom center;animation:chat-actions-pop var(--dur-fast) var(--ease-standard)}button.chat-reply-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;box-shadow:none;background:transparent;display:flex;align-items:center;gap:7px;min-height:0;padding:7px 12px 7px 10px;border-radius:9px;font:inherit;font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;white-space:nowrap}button.chat-reply-menu-item:hover:not(:disabled):not([aria-disabled=true]){background:transparent;transform:none;box-shadow:none;color:var(--text-secondary)}.chat-reactions{position:relative;z-index:2;list-style:none;margin:-10px 0 0;padding:0 6px;border:0;display:flex;flex-wrap:wrap;gap:4px}.chat-reactions>li{margin:0;padding:0;border:0}.chat-row--mine .chat-reactions{justify-content:flex-end}.chat-reaction-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:2px;min-width:22px;min-height:0;padding:3px;border-radius:999px;border:1px solid var(--border);background:var(--surface-elev-2);color:var(--text-secondary);font:inherit;font-size:10.5px;font-weight:600;line-height:1.4;cursor:pointer;box-shadow:0 1px 4px -3px color-mix(in srgb,var(--text-primary) 45%,transparent);transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-emphasized)}.chat-reaction-chip:has(.chat-reaction-count){padding:2px 7px 2px 5px}.chat-reaction-chip:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent);transform:translateY(-1px)}.chat-reaction-chip:active{transform:scale(.94)}.chat-reaction-chip--mine{border-color:transparent;background:var(--grad-accent);color:var(--text-on-accent)}.chat-reaction-glyphs{display:inline-flex;align-items:center;gap:1px}.chat-reaction-glyph{font-size:12px;line-height:1}.chat-reaction-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-who-reacted{font-size:11px;color:var(--text-tertiary);padding:0 6px;margin-top:2px}.chat-row--mine .chat-who-reacted{text-align:right}.chat-system{list-style:none;align-self:center;max-width:84%;margin:var(--space-row-md) auto;padding:3px 12px;border-radius:var(--radius-pill);background:var(--surface-tint);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);color:var(--text-tertiary);font-size:var(--text-micro-size);font-weight:500;text-align:center}.chat-removed{font-style:italic;opacity:.75}.chat-typing{min-height:1.15em;padding:3px var(--space-md) 0;font-size:var(--text-caption-size);color:var(--text-tertiary);background:var(--surface-elev)}.chat-typing:empty{background:transparent}.chat-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:inline-flex;background:var(--accent-tint);color:var(--accent-strong);font-family:var(--font-display-stack);font-weight:700;font-size:16px;line-height:1}.chat-avatar,.chat-empty{align-items:center;justify-content:center}.chat-empty{display:flex;flex-direction:column;text-align:center;gap:var(--space-row-sm);padding:var(--space-xl) var(--space-md);color:var(--text-secondary)}.chat-empty-emoji{font-size:44px;line-height:1;margin-bottom:var(--space-row-md)}.chat-empty-title{margin:0;font-family:var(--font-display-stack);font-size:var(--text-h3-size);font-weight:700;color:var(--text-primary)}.chat-empty p{margin:0}.chat-disconnect{position:relative;display:flex;flex-direction:column;border-top:1px solid var(--border);background:var(--surface-elev);animation:chat-disconnect-in var(--dur-default) var(--ease-emphasized)}@media (min-width:1024px){.chat-disconnect{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);overflow:hidden}}@keyframes chat-disconnect-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.chat-disconnect{animation:none}}.chat-disconnect-row{display:flex;align-items:center;gap:var(--space-row-md);padding:var(--space-row-md) var(--space-md) var(--space-md)}.chat-disconnect-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong)}.chat-disconnect-copy{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.chat-disconnect-text{margin:0;font-family:var(--font-display-stack);font-size:15px;line-height:1.3;font-weight:700;color:var(--text-primary)}.chat-disconnect-countdown,.chat-disconnect-sub{margin:0;font-size:var(--text-caption-size);line-height:var(--text-caption-line);color:var(--text-secondary)}.chat-disconnect-countdown{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-disconnect-progress{position:absolute;top:0;left:0;right:0;height:2px;background:transparent;overflow:hidden}.chat-disconnect-progress-fill{display:block;height:100%;width:100%;border-radius:999px;background:var(--accent);transform-origin:left center;animation:chat-disconnect-deplete 5s linear forwards}@keyframes chat-disconnect-deplete{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.chat-disconnect-btn{margin:0;flex-shrink:0;min-height:38px;padding:0 var(--space-lg);border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:var(--text-caption-size);font-weight:600;box-shadow:none;white-space:nowrap}.chat-disconnect-btn:not([data-variant=primary]):hover:not(:disabled){border-color:var(--accent-tint-strong);background:var(--accent-tint);color:var(--accent-strong)}@media (prefers-reduced-motion:reduce){.chat-disconnect-progress-fill{animation:none;transform:scaleX(1)}}.chat-jump-anchor{position:-webkit-sticky;position:sticky;bottom:0;height:0;z-index:5;pointer-events:none}.chat-jump{position:absolute;bottom:var(--space-md);left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:var(--space-row-sm);margin:0;padding:var(--space-row-sm) var(--space-row-lg) var(--space-row-sm) var(--space-row-sm);min-height:0;border:1px solid var(--accent-strong);border-radius:var(--radius-pill);background:var(--grad-accent);color:var(--text-on-accent);font-size:var(--text-caption-size);font-weight:700;white-space:nowrap;cursor:pointer;pointer-events:auto;box-shadow:var(--shadow-card),0 10px 26px -10px var(--accent);animation:chat-jump-in var(--dur-default) var(--ease-emphasized)}@media (hover:hover) and (pointer:fine){.chat-jump:hover:not(:disabled){background:var(--accent-strong);transform:translateX(-50%) translateY(-1px)}}.chat-jump-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:rgba(255,255,255,.28);font-size:var(--text-micro-size);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-jump svg{margin-left:1px}@keyframes chat-jump-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (prefers-reduced-motion:reduce){.chat-jump{animation:none}}.reveal-root:has(>.chat),.reveal-root:has(>.random-config),.reveal-root:has(>.random-hero),.reveal-root:has(>.random-status){display:contents}main:has(.chat){display:flex;flex-direction:column;height:calc(100dvh - var(--keyboard-inset, 0px));max-height:calc(100dvh - var(--keyboard-inset, 0px));overflow:hidden;max-width:none;width:100%;padding:var(--topbar-h) 0 max(0px,calc(var(--bottombar-h) - var(--keyboard-inset, 0px)))}@media (min-width:1024px){main:has(.chat){max-width:860px;padding:var(--topbar-h) 0 0}}.chat{position:relative;flex:1 1;display:flex;flex-direction:column;min-height:0}.chat-head{display:flex;align-items:center;gap:var(--space-row-md);padding:var(--space-row-md) var(--space-md);min-height:56px;border-bottom:1px solid var(--border);background:var(--surface-elev)}@media (min-width:1024px){.chat-head{border-bottom-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}}.chat-head-back{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-left:-4px;border-radius:50%;color:var(--text-secondary);flex-shrink:0;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.chat-head-back:hover{background:var(--accent-tint);color:var(--accent);text-decoration:none}.chat-head-profile{display:flex;align-items:center;gap:12px;min-width:0;margin:0 auto 0 0;padding:4px 10px 4px 4px;border:0;border-radius:var(--radius-pill);background:transparent;box-shadow:none;min-height:0;text-align:left;text-decoration:none;color:inherit}@media (hover:hover) and (pointer:fine){.chat-head-profile:hover:not(:disabled){background:var(--accent-tint);transform:none;text-decoration:none}}.chat-head-profile:active:not(:disabled){transform:none}.chat-head-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.chat-head .chat-avatar{width:36px;height:36px;font-size:14px}.chat-head-id{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:0}.chat-head-name{font-size:var(--text-h3-size);line-height:1.25;font-weight:700;display:flex;align-items:center;gap:7px}.chat-head-name,.chat-head-sub{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-head-sub{font-size:var(--text-caption-size);line-height:1.2;color:var(--text-tertiary)}.chat-head-sub[data-live=true]{color:var(--accent)}.chat-head-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.chat-head .chat-head-btn,.chat-head-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:none;gap:5px;box-sizing:border-box;height:34px;min-height:34px;max-height:34px;margin:0;line-height:1;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elev);box-shadow:none;color:var(--text-secondary);font:inherit;font-size:var(--text-caption-size);font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.chat-head-btn:hover{color:var(--accent)}.chat-head-btn--danger:hover,.chat-head-btn:hover{border-color:var(--accent-tint-strong);background:var(--accent-tint)}.chat-head-btn--danger:hover{color:var(--accent-strong)}.chat-head .chat-head-btn--primary,.chat-head-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);box-shadow:0 4px 12px -6px var(--accent);padding:0 16px}@media (hover:hover) and (pointer:fine){.chat-head .chat-head-btn--primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--text-on-accent);transform:translateY(-1px)}}.chat-head .chat-head-btn--icon,.chat-head-btn--icon{width:34px;padding:0;color:var(--text-secondary)}.chat-head-btn--icon:hover{color:var(--accent-strong);border-color:var(--accent-tint-strong);background:var(--accent-tint)}.peer-profile-modal{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center;max-width:380px}.peer-profile-modal-close{position:absolute;top:4px;right:4px;min-height:0;line-height:1}.peer-profile-modal-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-row-md);width:100%}.peer-profile-modal-avatar,.peer-profile-modal-initial{width:84px;height:84px;border-radius:50%;flex-shrink:0}.peer-profile-modal-avatar{object-fit:cover;box-shadow:0 0 0 3px var(--surface-elev),0 0 0 4px var(--accent-tint-strong)}.peer-profile-modal-initial{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-tint);color:var(--accent-strong);font-size:34px;line-height:1;box-shadow:0 0 0 3px var(--surface-elev),0 0 0 4px var(--accent-tint-strong)}.peer-profile-modal-initial,.peer-profile-modal-name{font-family:var(--font-display-stack);font-weight:700}.peer-profile-modal-name{margin:0;font-size:var(--text-h2-size);line-height:1.2;color:var(--text-primary)}.peer-profile-modal-username{margin:2px 0 0;font-size:var(--text-caption-size);color:var(--text-tertiary)}.peer-profile-modal-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-row-sm)}.peer-profile-modal-bio{margin:0;font-size:var(--text-body-size);line-height:1.5;color:var(--text-secondary)}.peer-profile-modal-interests{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-row-sm);margin:0;padding:0;list-style:none}.peer-profile-modal-interests li{padding:5px 12px;border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent-strong);font-size:var(--text-caption-size);font-weight:600;line-height:1.2}.peer-profile-modal-actions{display:flex;justify-content:center;width:100%;margin-top:var(--space-row-sm)}.peer-profile-report-btn{min-height:0;padding:6px 12px;background:transparent;border:none;color:var(--text-tertiary);font-size:var(--text-caption-size);font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.peer-profile-report-btn:hover{color:var(--danger,var(--text-secondary))}.report-modal{align-items:stretch;text-align:left}.report-modal-title{margin:0;font-family:var(--font-display-stack);font-size:var(--text-h2-size);font-weight:700;line-height:1.2;color:var(--text-primary)}.report-done,.report-form,.report-upsell{display:flex;flex-direction:column;gap:var(--space-md);width:100%}.report-done p,.report-upsell p{margin:0;font-size:var(--text-body-size);line-height:1.5;color:var(--text-secondary)}.report-reasons{display:flex;flex-direction:column;gap:var(--space-row-sm);margin:0;padding:0;border:none}.report-reasons legend{padding:0;margin-bottom:var(--space-row-sm);font-size:var(--text-body-size);font-weight:600;color:var(--text-primary)}.report-reason{align-items:center;font-size:var(--text-body-size);color:var(--text-secondary);cursor:pointer}.report-description,.report-reason{display:flex;gap:var(--space-row-sm)}.report-description{flex-direction:column;font-size:var(--text-caption-size);color:var(--text-tertiary)}.report-description textarea{min-height:76px;resize:vertical}.report-charcount{margin:0;font-size:var(--text-caption-size);color:var(--text-tertiary);text-align:right}.peer-profile-modal-avatar{cursor:zoom-in;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.peer-profile-avatar-zoom{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:var(--space-lg);background:rgba(0,0,0,.82);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:dialog-overlay-in var(--dur-fast) var(--ease-standard);pointer-events:none}.peer-profile-avatar-zoom-img{max-width:min(88vw,480px);max-height:80vh;border-radius:var(--radius-xl);object-fit:contain;box-shadow:var(--shadow-modal);animation:avatar-peek-in var(--dur-default) var(--ease-emphasized)}@keyframes avatar-peek-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.leave-confirm{display:flex;flex-direction:column;gap:var(--space-md);max-width:380px;text-align:center}.leave-confirm-title{margin:0;font-family:var(--font-display-stack);font-size:var(--text-h3-size);line-height:var(--text-h3-line);font-weight:700}.leave-confirm-body{margin:0;color:var(--text-secondary)}.leave-confirm-body strong{color:var(--text-primary);font-weight:700}.leave-confirm-actions{display:flex;gap:var(--space-row-md);margin-top:var(--space-sm)}.leave-confirm-actions>button{flex:1 1;margin:0;min-height:40px}.leave-confirm-stay{background:var(--surface-elev);box-shadow:none;border:1px solid var(--border);color:var(--text-secondary)}.leave-confirm-stay:hover{color:var(--accent);border-color:var(--accent-tint-strong);background:var(--accent-tint)}.leave-confirm-leave{background:var(--accent-tint);box-shadow:none;border:1px solid var(--accent-tint-strong);color:var(--accent-strong)}.leave-confirm-leave:hover{background:var(--accent-tint-strong)}.chat-body{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;padding:var(--space-md) var(--space-md) var(--space-row-md);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.chat-body::-webkit-scrollbar{width:8px}.chat-body::-webkit-scrollbar-track{background:transparent}.chat-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.chat-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary);background-clip:padding-box}.chat-body>.chat-empty{margin:auto 0}.chat-banner{margin:0 auto var(--space-row-md);max-width:460px;width:100%;padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elev);box-shadow:var(--shadow-sm);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.chat-banner p{margin:0;color:var(--text-secondary);line-height:1.5}.chat-banner-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm)}.chat-dock{display:flex;align-items:flex-end;gap:10px;padding:var(--space-row-md) var(--space-md) var(--space-md);border-top:1px solid var(--border);background:var(--surface-elev)}@media (min-width:1024px){.chat-dock{padding-bottom:var(--space-md);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}}.chat-skip{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 18px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 10%,var(--surface-elev));color:var(--accent);font:inherit;font-size:var(--text-button-size);font-weight:700;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.chat-skip:hover{background:color-mix(in srgb,var(--accent) 16%,var(--surface-elev));border-color:color-mix(in srgb,var(--accent) 34%,var(--border))}.chat-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-md);min-height:50dvh;padding:var(--space-xl) var(--space-md);color:var(--text-secondary)}.chat-state p{margin:0}.room-members-bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:100%;display:flex;align-items:center;gap:7px;padding:9px var(--space-md);border:0;border-bottom:1px solid var(--border);background:var(--surface-elev);color:var(--text-secondary);font:inherit;font-size:var(--text-caption-size);font-weight:600;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-standard)}.room-members-bar:hover{background:var(--surface-elev-2)}.room-members-bar>svg{color:var(--accent);flex-shrink:0}.room-members-bar-chevron{color:var(--text-tertiary);flex-shrink:0}.room-members-count{margin-left:auto;padding:1px 9px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.room-members-modal{display:flex;flex-direction:column;max-height:min(78vh,560px);padding:0;overflow:hidden}.room-members-modal-head{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-sm);border-bottom:1px solid var(--border)}.room-members-modal-head>h2{margin:0;font-size:var(--text-h3-size);font-weight:700}.room-members-modal-head>.room-members-count{margin-left:0}.room-members-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.room-members-close:hover{background:var(--surface-tint);color:var(--text-primary)}.room-members-panel{padding:var(--space-sm) var(--space-md) var(--space-md);overflow-y:auto}.room-members-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.room-member-row{margin:0;padding:6px 4px;display:flex;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md)}.room-member-row:hover{background:var(--surface-tint)}.room-member-identity{display:flex;align-items:center;gap:9px;min-width:0;flex:1 1;color:var(--text-primary)}.room-member-identity:hover{text-decoration:none}.room-member-identity:hover .room-member-name{color:var(--accent)}.room-member-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex-shrink:0}.room-member-avatar--initial{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-tint);color:var(--accent-strong);font-family:var(--font-display-stack);font-weight:700;font-size:14px;line-height:1}.room-member-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;transition:color var(--dur-fast) var(--ease-standard)}.room-member-you{flex-shrink:0;padding:1px 8px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--text-tertiary);font-size:var(--text-micro-size);font-weight:600}.room-member-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.room-member-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;height:30px;min-height:30px;box-shadow:none;padding:0 11px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elev);color:var(--text-secondary);font:inherit;font-size:var(--text-caption-size);font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.room-member-action:hover{color:var(--accent);border-color:var(--accent-tint-strong);background:var(--accent-tint);text-decoration:none}.room-member-action:disabled{opacity:.55;cursor:default;color:var(--text-tertiary);background:var(--surface-elev);border-color:var(--border)}.room-members-error{margin:var(--space-sm) 0 0;font-size:var(--text-caption-size);color:var(--accent-strong)}.room-members-panel>button{margin-top:var(--space-sm)}.composer-bar{position:relative;flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px;margin:0}.composer-reply{display:flex;align-items:center;gap:9px;padding:7px 10px 7px 11px;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-md)}.composer-reply-bar{flex:none;align-self:stretch;width:3px;border-radius:999px;background:var(--accent)}.composer-reply-text{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px;line-height:1.3}.composer-reply-name{font-size:12px;font-weight:700;color:var(--accent-strong)}.composer-reply-body{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer-reply-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;width:26px;height:26px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-tertiary);font-size:19px;line-height:1;cursor:pointer;min-height:0;box-shadow:none;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.composer-reply-cancel:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent);color:var(--text-primary)}.composer-emoji{display:inline-flex;align-items:center;justify-content:center;width:24px;height:34px;padding:0;margin-left:0;border:0;background:transparent;border-radius:8px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;min-height:0;line-height:1;box-shadow:none;transition:none}.composer-emoji-panel{position:absolute;bottom:calc(100% + 8px);left:0;z-index:30;width:min(352px,calc(100vw - 24px));display:flex;flex-direction:column;background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);animation:chat-actions-pop var(--dur-fast) var(--ease-standard);overflow:hidden}.composer-emoji-scroll{max-height:288px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:6px 8px 10px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.composer-emoji-scroll::-webkit-scrollbar{width:8px}.composer-emoji-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.composer-emoji-scroll::-webkit-scrollbar-track{background:transparent}.composer-emoji-section{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-gap:2px;gap:2px}button.composer-emoji-choice{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:38px;min-width:0;min-height:0;border:0;background:transparent;box-shadow:none;padding:0;margin:0;border-radius:10px;font-size:22px;line-height:1;cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}button.composer-emoji-choice:hover:not(:disabled){transform:scale(1.12);background:color-mix(in srgb,var(--text-primary) 9%,transparent)}button.composer-emoji-choice:active:not(:disabled){transform:scale(.94);background:color-mix(in srgb,var(--accent) 16%,transparent)}.composer-emoji-tabs{display:flex;gap:2px;flex-shrink:0;padding:6px;border-top:1px solid var(--border);background:var(--surface-elev)}button.composer-emoji-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1 1;min-width:0;min-height:0;display:inline-flex;align-items:center;justify-content:center;padding:6px 0;margin:0;border:0;border-radius:8px;background:transparent;box-shadow:none;font-size:18px;line-height:1;cursor:pointer;opacity:.55;filter:grayscale(.35);transition:background var(--dur-fast) var(--ease-standard),opacity var(--dur-fast) var(--ease-standard),filter var(--dur-fast) var(--ease-standard)}button.composer-emoji-tab:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 8%,transparent);opacity:.85;filter:none;transform:none}button.composer-emoji-tab--active{background:color-mix(in srgb,var(--accent) 14%,transparent);opacity:1;filter:none}.composer-row{gap:8px;min-height:52px;padding:5px 12px;background:var(--surface-elev);border:1px solid var(--border);border-radius:999px;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-on-accent) 14%,transparent)}.composer-row,.composer-tools{display:flex;align-items:center}.composer-tools{gap:4px;flex-shrink:0}.composer-attach{display:inline-flex;align-items:center;justify-content:center;width:24px;height:34px;padding:0;margin:0;border:0;background:transparent;border-radius:8px;color:var(--text-primary);cursor:pointer;flex-shrink:0;min-height:0;line-height:1;box-shadow:none;transition:none}.composer-attach svg,.composer-emoji svg{transform:translateY(0)}button.composer-attach:active:not(:disabled):not([aria-disabled=true]),button.composer-attach:hover:not(:disabled):not([aria-disabled=true]),button.composer-emoji:active:not(:disabled):not([aria-disabled=true]),button.composer-emoji:hover:not(:disabled):not([aria-disabled=true]){background:transparent;border-color:transparent;transform:none}.composer-input{flex:1 1;min-width:0;margin:0;border:0;background:transparent;color:var(--text-primary);font:inherit;line-height:1.4;padding:8px 0;min-height:0;max-height:120px;max-width:none;resize:none;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--border-strong,rgba(128,128,128,.4)) transparent}.composer-input::-webkit-scrollbar{width:6px}.composer-input::-webkit-scrollbar-thumb{background:var(--border-strong,rgba(128,128,128,.4));border-radius:3px}.composer-input::-webkit-scrollbar-track{background:transparent}.composer-input:focus,.composer-input:focus-visible{outline:none;border-color:transparent;box-shadow:none}.composer-input::placeholder{color:var(--text-tertiary)}.composer-send{display:inline-flex;align-items:center;justify-content:center;margin-left:0;width:42px;height:42px;border:0;border-radius:50%;background:var(--grad-accent);color:var(--text-on-accent);font-size:22px;font-weight:800;line-height:1;cursor:pointer;flex-shrink:0;box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 24%,transparent);transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.composer-send:not(:disabled):hover{transform:translateY(-1px)}.composer-send:disabled{opacity:.45;cursor:default;box-shadow:none}.attach-upsell{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-sm);max-width:360px}.attach-upsell form{width:100%;display:flex;flex-direction:column;gap:var(--space-md)}.attach-upsell .form-actions{flex-direction:column;align-items:stretch}.attach-upsell .form-actions button{width:100%;min-width:0;margin-left:0}.attach-upsell-close{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-tertiary);font-size:22px;line-height:1;cursor:pointer}.attach-upsell-close:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent);color:var(--text-primary)}.attach-upsell-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-top:var(--space-sm);border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.attach-upsell-title{margin:0;font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line);color:var(--text-primary)}.attach-upsell-body{margin:0;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-secondary)}.attach-upsell-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:var(--space-sm);padding:0 var(--space-md);border-radius:999px;background:var(--grad-accent);color:var(--text-on-accent);font-weight:700;text-decoration:none;box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 24%,transparent);transition:transform var(--dur-fast) var(--ease-standard)}.attach-upsell-cta:hover{transform:translateY(-1px)}button.attach-upsell-dismiss{min-height:0;padding:var(--space-sm);border:0;background:transparent;box-shadow:none;color:var(--text-tertiary);font-size:var(--text-caption-size);font-weight:600;cursor:pointer}button.attach-upsell-dismiss:hover:not(:disabled):not([aria-disabled=true]){background:transparent;transform:none;color:var(--text-secondary)}.composer-bar>[role=alert]{margin:0;font-size:var(--text-caption-size);color:var(--accent-strong)}.composer-bar>ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-row-sm)}.composer-bar>ul img{border-radius:var(--radius-md);object-fit:cover}.composer-thumb{position:relative;margin:0;padding:0;border:0;line-height:0}.composer-thumb img{width:64px;height:64px;border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--border)}.composer-thumb>button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;min-height:0;padding:0;border-radius:50%;border:2px solid var(--surface-elev-2);background:var(--text-primary);color:var(--surface-elev);font-size:14px;line-height:1;box-shadow:none}.composer-thumb>button:hover:not(:disabled){background:var(--accent);border-color:var(--surface-elev-2);transform:none}.random-config,.random-hero,.random-status{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-md);padding:var(--space-xl) var(--space-lg);max-width:460px;margin:var(--space-lg) auto 0;background:radial-gradient(140% 90% at 50% -10%,var(--accent-tint) 0,transparent 55%),var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.random-config>p,.random-hero p,.random-status p{margin:0;max-width:34ch;color:var(--text-secondary);line-height:1.6}.random-config h2,.random-hero h2,.random-status h2{margin:0;background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent}.random-seo{max-width:680px;margin:var(--space-lg) auto 0;padding:var(--space-lg) 0 0;color:var(--text-secondary);line-height:1.65;border-top:1px solid var(--border)}.random-seo h1{margin:0 0 var(--space-md);font-size:1.6rem;line-height:1.25;color:var(--text-primary)}.random-seo h2{margin:var(--space-xl) 0 var(--space-sm);font-size:1.2rem;color:var(--text-primary)}.random-seo h3{margin:var(--space-md) 0 var(--space-sm);font-size:1rem;color:var(--text-primary)}.random-seo p{margin:0 0 var(--space-md)}.random-seo-points,.random-seo-steps{margin:0 0 var(--space-md);padding-left:1.25rem;display:flex;flex-direction:column;gap:var(--space-sm)}.random-seo strong{color:var(--text-primary)}.random-hero-emoji{width:92px;height:92px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:46px;line-height:1;background:radial-gradient(125% 125% at 32% 22%,var(--accent-tint-strong) 0,transparent 72%),var(--surface-elev-2);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm),inset 0 1px 0 0 var(--surface-elev-2)}.random-hero button,.random-status button{margin-top:var(--space-sm)}.random-config{gap:var(--space-sm);padding:var(--space-lg) var(--space-lg) var(--space-lg);border-color:var(--border-strong);box-shadow:var(--shadow-modal),inset 0 1px 0 0 color-mix(in srgb,#fff 7%,transparent)}.random-config-field{margin-top:var(--space-row-sm);padding-top:var(--space-md);border-top:1px solid var(--border)}.random-config h2{font-size:var(--text-h2-size);letter-spacing:-.01em}.random-config-avatar{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;font-family:var(--font-display-stack);font-size:23px;font-weight:700;color:var(--text-on-accent);background:var(--grad-accent);box-shadow:var(--shadow-sm),0 3px 12px -8px var(--accent);border:1px solid var(--accent-strong);-webkit-user-select:none;-moz-user-select:none;user-select:none}.random-notice button[data-variant=ghost]{margin-top:0}.random-config-field{margin-top:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-row-lg);width:100%;text-align:left}.random-config-field>span{font-size:var(--text-micro-size);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.random-config-field input,.random-config-field-skeleton{width:100%;padding:var(--space-row-lg) var(--space-md);font:inherit;font-size:var(--text-body-size);font-weight:500;color:var(--text-primary);background:var(--surface-elev-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.random-config-field-skeleton{height:calc(var(--text-body-size) * var(--text-body-line) + var(--space-row-lg) * 2 + 2px)}.random-config-field input::placeholder{color:var(--text-tertiary);font-weight:400}.random-config-field input:hover{border-color:var(--accent)}.random-config-field input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint-strong)}.chat-with{width:100%;margin:0;padding:0;border:0;text-align:left}.chat-with legend{font-size:var(--text-micro-size);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--space-row-lg);padding:0}.match-pref{position:relative;display:flex;align-items:center;gap:var(--space-row-lg);width:100%;margin:0;text-transform:none;letter-spacing:normal;padding:var(--space-row-md) var(--space-md);background:var(--surface-elev-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.match-pref input,.match-soon-chip input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.match-pref[data-selected=true]{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:linear-gradient(120deg,var(--accent-tint) 0,var(--surface-elev-2) 80%)}.match-pref:focus-within{outline:2px solid var(--accent);outline-offset:2px}.match-pref-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:none;border-radius:50%;color:var(--text-on-accent);background:var(--grad-accent)}.match-pref-text{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.match-pref-title{font-size:var(--text-body-size);font-weight:700;color:var(--text-primary)}.match-pref-sub{font-size:var(--text-caption-size);color:var(--text-secondary)}.match-pref-check{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border-radius:50%;color:var(--text-on-accent);background:var(--accent);opacity:0;transform:scale(.7);transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-default) var(--ease-emphasized)}.match-pref[data-selected=true] .match-pref-check{opacity:1;transform:scale(1)}.match-soon{margin-top:var(--space-md);display:flex;flex-direction:column;gap:var(--space-row-md)}.match-soon-head{font-size:var(--text-micro-size);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.match-soon-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-row-md);gap:var(--space-row-md)}.match-soon-chip{position:relative;display:flex;align-items:center;gap:var(--space-row-md);margin:0;text-transform:none;letter-spacing:normal;padding:var(--space-row-md) var(--space-row-lg);border:1px dashed var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-elev-2) 45%,transparent);color:var(--text-tertiary);cursor:not-allowed}.match-soon-icon{display:inline-flex;opacity:.7}.match-soon-name{flex:1 1;font-size:var(--text-caption-size);font-weight:600}.match-soon-lock{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;flex:none;border-radius:50%;background:var(--surface-elev);border:1px solid var(--border);color:var(--text-tertiary)}.random-config button[data-variant=primary]{margin-top:var(--space-md)}.random-config button[data-variant=ghost]{margin-top:var(--space-row-sm)}.searching{display:inline-flex;align-items:center;gap:8px;height:40px}.searching span{width:12px;height:12px;border-radius:50%;background:var(--grad-accent);box-shadow:0 4px 10px -4px var(--accent);animation:searching-bounce 1.1s var(--ease-emphasized) infinite}.searching span:nth-child(2){animation-delay:.16s;opacity:.8}.searching span:nth-child(3){animation-delay:.32s;opacity:.6}@keyframes searching-bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-9px)}}.random-opener{margin-top:var(--space-sm);display:flex;flex-direction:column;align-items:center;gap:10px}.random-opener-cap{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--text-secondary)}.random-opener-cap-ic{font-size:14px;line-height:1}.random-opener-bubble{min-height:39px;max-width:30ch;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:var(--radius-bubble);background:var(--surface-elev);border:1px solid var(--border)}.random-opener-dots{display:inline-flex;align-items:center;gap:5px;padding:3px 0}.random-opener-dots span{width:7px;height:7px;border-radius:50%;background:var(--text-secondary);animation:opener-typing 1.2s var(--ease-emphasized) infinite}.random-opener-dots span:nth-child(2){animation-delay:.15s}.random-opener-dots span:nth-child(3){animation-delay:.3s}@keyframes opener-typing{0%,70%,to{transform:translateY(0);opacity:.5}35%{transform:translateY(-4px);opacity:1}}.random-opener-text{font-size:15px;line-height:1.4;text-align:center;color:var(--text-secondary);animation:opener-reveal .4s var(--ease-emphasized) both}@keyframes opener-reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.random-opener-dots span,.random-opener-text{animation:none}}@media (max-width:1023px){main:has(.random-config),main:has(.random-hero),main:has(.random-status){display:flex;flex-direction:column;justify-content:center;min-height:100dvh}.random-config,.random-hero,.random-status{margin-top:0;margin-bottom:auto}main:has(.random-config) .random-config,main:has(.random-hero) .random-hero,main:has(.random-status) .random-status{margin-top:auto}}.random-stage{display:flex;flex-direction:column;align-items:center;padding-top:clamp(1rem,3vh,2rem);padding-bottom:clamp(1.25rem,4vh,2.5rem)}.random-stage .random-config,.random-stage .random-hero,.random-stage .random-status{margin:0}.random-screen-enter{animation:random-screen-in var(--dur-entrance) var(--ease-emphasized) both}@keyframes random-screen-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.random-screen-enter{animation:none}}.random-hero{position:relative;overflow:hidden;isolation:isolate}.random-hero>:not(.random-hero-floaties){position:relative;z-index:1}.random-hero-floaties{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.random-hero-floaties span{position:absolute;bottom:-48px;line-height:1;opacity:0;will-change:transform,opacity;animation:heart-fall 10s linear infinite}.random-hero-floaties span:first-child{left:4%;font-size:14px;animation-duration:9s;animation-delay:0s;--drift:48px;--spin:38deg}.random-hero-floaties span:nth-child(2){left:71%;font-size:26px;animation-duration:14s;animation-delay:2.4s;--drift:-62px;--spin:-25deg}.random-hero-floaties span:nth-child(3){left:23%;font-size:12px;animation-duration:7.5s;animation-delay:5.1s;--drift:30px;--spin:52deg}.random-hero-floaties span:nth-child(4){left:88%;font-size:19px;animation-duration:16s;animation-delay:.7s;--drift:-40px;--spin:14deg}.random-hero-floaties span:nth-child(5){left:47%;font-size:30px;animation-duration:11s;animation-delay:3.9s;--drift:70px;--spin:-44deg}.random-hero-floaties span:nth-child(6){left:13%;font-size:17px;animation-duration:8.5s;animation-delay:6.6s;--drift:-28px;--spin:30deg}.random-hero-floaties span:nth-child(7){left:62%;font-size:13px;animation-duration:13s;animation-delay:1.3s;--drift:55px;--spin:-18deg}.random-hero-floaties span:nth-child(8){left:94%;font-size:23px;animation-duration:10s;animation-delay:4.8s;--drift:-75px;--spin:60deg}.random-hero-floaties span:nth-child(9){left:35%;font-size:15px;animation-duration:15s;animation-delay:7.2s;--drift:22px;--spin:-36deg}.random-hero-floaties span:nth-child(10){left:79%;font-size:28px;animation-duration:9.5s;animation-delay:2s;--drift:-50px;--spin:46deg}.random-hero-floaties span:nth-child(11){left:8%;font-size:21px;animation-duration:12.5s;animation-delay:5.7s;--drift:64px;--spin:-28deg}.random-hero-floaties span:nth-child(12){left:54%;font-size:12px;animation-duration:7s;animation-delay:8.4s;--drift:-34px;--spin:50deg}.random-hero-floaties span:nth-child(13){left:29%;font-size:25px;animation-duration:14.5s;animation-delay:1s;--drift:42px;--spin:-55deg}.random-hero-floaties span:nth-child(14){left:97%;font-size:16px;animation-duration:8s;animation-delay:3.3s;--drift:-58px;--spin:24deg}.random-hero-floaties span:nth-child(15){left:41%;font-size:18px;animation-duration:11.5s;animation-delay:6.1s;--drift:38px;--spin:-42deg}.random-hero-floaties span:nth-child(16){left:67%;font-size:32px;animation-duration:16.5s;animation-delay:9.1s;--drift:-68px;--spin:34deg}.random-hero-floaties span:nth-child(17){left:18%;font-size:14px;animation-duration:9.8s;animation-delay:4.2s;--drift:50px;--spin:-20deg}.random-hero-floaties span:nth-child(18){left:85%;font-size:22px;animation-duration:13.5s;animation-delay:7.9s;--drift:-45px;--spin:58deg}.random-hero-floaties span:nth-child(n){font-size:20px}@keyframes heart-fall{0%{transform:translate(0) rotate(0deg);opacity:0}8%{opacity:.38}25%{transform:translate(var(--drift,30px),-25vh) rotate(calc(var(--spin, 20deg) * .4))}50%{transform:translate(calc(var(--drift, 30px) * -1),-50vh) rotate(calc(var(--spin, 20deg) * .7))}75%{transform:translate(var(--drift,30px),-75vh) rotate(var(--spin,20deg))}92%{opacity:.32}to{transform:translateY(-110vh) rotate(calc(var(--spin, 20deg) * 1.3));opacity:0}}.random-hero-emoji{animation:emoji-pop var(--dur-slow) var(--ease-emphasized) both}.random-hero-emoji:before{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--accent-tint-strong);opacity:0;animation:halo-pulse 2.8s var(--ease-standard) infinite}@keyframes emoji-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes halo-pulse{0%{transform:scale(1);opacity:.45}70%,to{transform:scale(1.6);opacity:0}}.random-hero-emoji .wave{display:inline-block;transform-origin:72% 78%;animation:hand-wave 2.6s var(--ease-standard) infinite}@keyframes hand-wave{0%,62%,to{transform:rotate(0deg)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}42%{transform:rotate(-4deg)}52%{transform:rotate(10deg)}}.random-hero button[data-variant=primary]{position:relative;overflow:hidden;animation:cta-glow 2.8s var(--ease-standard) infinite}.random-hero button[data-variant=primary]:not([aria-busy=true]):after{content:"";position:absolute;top:0;left:-60%;width:38%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45) 50%,transparent);transform:skewX(-18deg);pointer-events:none;animation:cta-sheen 3.6s var(--ease-standard) infinite}@keyframes cta-glow{0%,to{box-shadow:0 6px 18px -6px var(--accent),0 0 0 0 transparent}50%{box-shadow:0 9px 26px -6px var(--accent),0 0 0 6px var(--focus-ring)}}@keyframes cta-sheen{0%{left:-60%}55%,to{left:135%}}@media (prefers-reduced-motion:reduce){.random-hero-floaties{display:none}.random-hero button[data-variant=primary],.random-hero button[data-variant=primary]:after,.random-hero-emoji,.random-hero-emoji .wave,.random-hero-emoji:before{animation:none}}body{background:var(--surface)}@media (prefers-reduced-motion:reduce){.searching span{animation:none}}ul[data-list]{box-shadow:var(--shadow-card);border-radius:var(--radius-lg)}ul[data-list]>li{transition:background var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){ul[data-list]>li:hover{background:var(--accent-tint)}}.chat-avatar,img[alt*=avatar i],main>div>header img{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent-tint-strong)}main>div:not(.chat)>header{display:flex;align-items:center;gap:var(--space-row-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border);margin-bottom:var(--space-md)}main>div:not(.chat)>header h1{margin:0;font-size:20px;flex:1 1}main>div:not(.chat)>header img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--border)}.rooms-header{text-align:center;margin-bottom:var(--space-lg)}.rooms-header>h1{margin:0 0 var(--space-sm)}.rooms-header>p{margin:0;color:var(--text-secondary);font-size:15px}.rooms-search{position:relative;margin-bottom:var(--space-lg)}.rooms-search>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none;transition:color var(--dur-fast) var(--ease-standard)}.rooms-search input[type=search]{max-width:none;width:100%;padding:12px 16px 12px 44px;border-radius:var(--radius-pill);box-shadow:none}.rooms-search:focus-within>svg{color:var(--accent)}.rooms-page ul[data-list]{display:flex;flex-direction:column;gap:var(--space-md);border:0;background:none;border-radius:0;box-shadow:none;overflow:visible}.rooms-page ul[data-list]>li.room-row{--room-fill:color-mix(in srgb,hsl(var(--room-hue,340) 55% 52%) 10%,var(--surface-elev));--room-border:hsl(var(--room-hue,340) 50% 55%/0.35);--room-border-hover:hsl(var(--room-hue,340) 60% 58%/0.6);flex-direction:row;justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-md);cursor:pointer;position:relative;border:1px solid var(--room-border);border-radius:var(--radius-lg);background:var(--room-fill);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}@media (hover:hover) and (pointer:fine){.rooms-page ul[data-list]>li.room-row:hover{transform:translateY(-2px);border-color:var(--room-border-hover);box-shadow:var(--shadow-card)}}.room-row-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.room-row-main a{font-weight:600;font-size:15px;color:var(--text-primary)}.room-row-main a:after{content:"";position:absolute;inset:0;border-radius:inherit}.room-row-main a:hover{color:var(--accent);text-decoration:none}.room-row-desc{color:var(--text-secondary);font-size:14px;line-height:1.4;margin:0}.room-row-main .pill{align-self:flex-start;position:relative;z-index:1;margin-top:5px}.room-row-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:13px;color:var(--text-secondary);flex:0 0 auto}.room-row-meta>p{margin:0}.room-row-count{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 13px;border-radius:var(--radius-pill);background:hsl(var(--room-hue,340) 55% 55%/.14);border:1px solid hsl(var(--room-hue,340) 55% 55%/.22);color:var(--text-secondary)}.room-row-count>svg{flex:0 0 auto;color:hsl(var(--room-hue,340) 60% 62%)}.room-row-count-num{font-size:20px;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-primary)}.room-detail>header.room-detail-header{display:block;padding:0 0 var(--space-lg);margin:0 0 var(--space-lg);border-bottom:1px solid var(--border)}.room-detail-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-lg)}.room-detail-back{display:inline-flex;align-items:center;gap:5px;padding:7px 14px 7px 10px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-elev);font-size:13px;font-weight:600;color:var(--text-secondary);transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.room-detail-back>svg{flex:0 0 auto;transition:transform var(--dur-fast) var(--ease-standard)}.room-detail-back:hover{color:var(--accent);border-color:var(--accent-tint-strong);background:var(--accent-tint);text-decoration:none}.room-detail-back:hover>svg{transform:translateX(-2px)}.room-detail-report{font-size:13px;color:var(--text-tertiary)}.room-detail-report:hover{color:var(--accent)}.room-detail-title-block{display:flex;flex-direction:column;align-items:center;text-align:center}.room-detail .room-detail-title-block>h1{margin:0 0 var(--space-sm);font-size:clamp(40px,11vw,68px);line-height:1.05;letter-spacing:-.03em}.room-detail-desc{margin:0 0 var(--space-md);max-width:48ch;color:var(--text-secondary);line-height:1.5}.room-detail-meta{flex-wrap:wrap;justify-content:center;gap:var(--space-sm);font-size:14px}.room-detail-meta,.room-join{display:flex;align-items:center}.room-join{flex-direction:column;text-align:center;gap:var(--space-md);padding:var(--space-xl) var(--space-lg);max-width:460px;margin:var(--space-lg) auto 0;background:radial-gradient(140% 90% at 50% -10%,var(--accent-tint) 0,transparent 55%),var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.room-join-title{margin:0;font-size:22px}.room-join-cta{margin-top:var(--space-sm);min-width:200px}.room-join p{margin:0;max-width:36ch;color:var(--text-secondary);line-height:1.6}[data-testid=room-evicted],[data-testid=room-leave]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}[data-testid=room-evicted]{flex-direction:column;align-items:flex-start}[data-testid=room-participants]{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border)}[data-testid=room-participants]>h2{font-size:15px;color:var(--text-secondary);margin:0 0 var(--space-sm)}[data-testid=room-participants]>ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-sm)}[data-testid=room-participant]{padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface-tint);border:1px solid var(--border);font-size:13px}.filter-row{display:inline-flex;align-items:center;gap:6px;margin:0 0 var(--space-md);font-weight:500;color:var(--text-secondary);cursor:pointer}.page-title-center{text-align:center}.row-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elev);overflow:hidden}.row-list>li{margin:0;border-bottom:1px solid var(--border)}.row-list>li:last-child{border-bottom:0}.row-link{display:flex;align-items:center;gap:var(--space-row-lg);padding:var(--space-row-lg) var(--space-md);color:var(--text-primary);text-decoration:none;transition:background var(--dur-fast) var(--ease-standard)}.row-link:hover{background:var(--surface-tint);text-decoration:none}.row-link:active{background:var(--press-tint)}.row-avatar{flex:0 0 auto;width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--skeleton);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-family:var(--font-display-stack);font-size:18px;font-weight:700;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.row-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.row-title{font-weight:600;font-size:15px;color:var(--text-primary);line-height:1.3;display:flex;align-items:center;gap:6px}.row-sub,.row-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{font-size:13px;color:var(--text-secondary);line-height:1.35;margin:0}.row-handle{font-size:13px;color:var(--text-tertiary)}.row-meta{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.row-time{font-size:12px;color:var(--text-tertiary);white-space:nowrap}.row-unread{justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--accent);color:var(--text-on-accent);font-size:11px;font-weight:700;line-height:1}.row-action,.row-unread{display:inline-flex;align-items:center;border-radius:var(--radius-pill)}.row-action{flex:0 0 auto;gap:6px;padding:8px 16px;background:var(--accent-tint);color:var(--accent);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.row-action:hover{background:var(--accent);color:var(--text-on-accent);text-decoration:none}.match-row{display:flex;align-items:center;gap:var(--space-row-lg);padding:var(--space-row-lg) var(--space-md)}.match-row .row-body a{color:var(--text-primary);text-decoration:none;font-weight:600;font-size:15px}.match-row .row-body a:hover{color:var(--accent)}.notif-item{display:flex;align-items:flex-start;gap:var(--space-row-lg);padding:var(--space-row-lg) var(--space-md);cursor:pointer;position:relative;transition:background var(--dur-fast) var(--ease-standard)}.notif-item:hover{background:var(--surface-tint)}.notif-item:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--accent)}.notif-item[data-read=false]{background:var(--accent-tint)}.notif-item[data-read=false]:hover{background:var(--accent-tint-strong)}.notif-dot{flex:0 0 auto;width:8px;height:8px;margin-top:7px;border-radius:50%;background:var(--accent)}.notif-item[data-read=true] .notif-dot{background:transparent}.notif-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}.notif-copy{font-size:14px;line-height:1.4;color:var(--text-primary)}.notif-item[data-read=false] .notif-copy{font-weight:600}.notif-preview{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.4}.notif-time{font-size:12px;color:var(--text-tertiary)}.notif-mark{flex:0 0 auto;align-self:center;background:transparent;border:0;box-shadow:none;color:var(--accent);font-size:12px;font-weight:600;min-height:0;padding:6px 8px}.notif-mark:hover:not(:disabled){background:var(--accent-tint);border-color:transparent;transform:none}.dating-controls{margin-bottom:var(--space-md)}.deck-card{background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.deck-media{position:relative;aspect-ratio:3/4}.deck-media,.deck-photo{width:100%;background:var(--skeleton)}.deck-photo{height:100%;object-fit:cover;border-radius:0;display:block}.deck-photo-empty{width:100%;height:100%;background:linear-gradient(160deg,var(--surface-tint),var(--surface-elev-2));display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-family:var(--font-display-stack);font-size:96px;font-weight:700;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.deck-overlay{position:absolute;inset:auto 0 0 0;padding:var(--space-xl) var(--space-md) var(--space-md);gap:4px;background:linear-gradient(0deg,rgba(0,0,0,.78) 0,rgba(0,0,0,.45) 45%,transparent);color:#fff}.deck-info,.deck-overlay{display:flex;flex-direction:column}.deck-info{padding:var(--space-md);gap:var(--space-sm)}.deck-name-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.deck-overlay .deck-name-row h2{margin:0;font-size:28px;line-height:1.1;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}.deck-age{font-family:var(--font-display-stack);font-size:24px;font-weight:500;color:rgba(255,255,255,.92);text-shadow:0 1px 8px rgba(0,0,0,.4)}.deck-overlay .deck-username{margin:0;color:rgba(255,255,255,.82);font-size:14px;font-weight:600}.deck-overlay .deck-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;margin:0;color:rgba(255,255,255,.85);font-size:14px;text-shadow:0 1px 6px rgba(0,0,0,.4)}.deck-overlay .deck-meta p{margin:0}.deck-overlay .deck-meta p:not(:last-child):after{content:"·";margin:0 8px;color:rgba(255,255,255,.55)}.deck-bio{margin:0;color:var(--text-primary);line-height:1.5;font-size:15px}.deck-interests{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.deck-interests li{margin:0;padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--text-secondary);font-size:13px;font-weight:500}.deck-note{margin:0;font-size:13px;color:var(--text-tertiary)}.deck-profile-link{font-size:14px;font-weight:600}.swipe-actions{display:flex;gap:var(--space-row-md);margin-top:var(--space-md)}.swipe-actions button{flex:1 1;min-height:52px;font-size:16px;border-radius:var(--radius-lg)}.swipe-actions button+button{margin-left:0}.swipe-pass{background:var(--surface-elev);color:var(--text-primary);border-color:var(--border-strong);box-shadow:none}.swipe-pass:hover:not(:disabled){background:var(--surface-tint)}.swipe-like{background:var(--grad-accent);border-color:transparent;color:var(--text-on-accent)}.match-toasts{list-style:none;padding:0;margin:0 0 var(--space-md);display:flex;flex-direction:column;gap:var(--space-row-md)}.match-toasts li{margin:0}.match-toast{display:flex;align-items:center;gap:var(--space-row-md);padding:var(--space-row-lg) var(--space-md);border-radius:var(--radius-lg);background:var(--accent-tint);border:1px solid var(--accent-tint-strong)}.match-toast p{margin:0;flex:1 1 auto;font-weight:600;color:var(--accent)}.match-toast a{font-weight:600;white-space:nowrap}.match-toast button{flex:0 0 auto;background:transparent;border:0;box-shadow:none;color:var(--accent);min-height:0;padding:6px 8px;font-size:13px}.match-toast button:hover:not(:disabled){background:var(--accent-tint-strong);transform:none}.profile-page{display:flex;flex-direction:column;gap:var(--space-lg)}.profile-hero{display:flex;align-items:center;gap:var(--space-md)}.profile-hero .profile-avatar{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid var(--surface-elev);box-shadow:0 0 0 1px var(--border),var(--shadow-card);background:var(--surface-tint);flex:0 0 auto}.profile-hero .profile-avatar-empty{display:inline-flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-family:var(--font-display-stack);font-size:40px;font-weight:700;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.profile-hero-body{min-width:0;display:flex;flex-direction:column;gap:4px}.profile-name{display:flex;align-items:center;margin:0;font-size:26px;line-height:1.15}.profile-username{margin:0;color:var(--text-secondary);font-size:14px;font-weight:500}.profile-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.profile-bio{margin:0;color:var(--text-primary);line-height:1.6}.profile-interests{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.profile-interests li{margin:0;padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--text-secondary);font-size:13px;font-weight:500}.profile-actions{display:flex;flex-direction:column;gap:var(--space-md)}.profile-nav{display:flex;gap:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border)}.profile-nav a{font-weight:600}.profile-upsell{background:var(--surface-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.profile-upsell-lead{margin:0;font-weight:600;color:var(--text-primary)}.profile-upsell-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;color:var(--text-secondary);font-size:14px}.profile-upsell-list li{margin:0;display:flex;align-items:center;gap:10px}.profile-upsell-list li:before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--accent)}.profile-photos-upsell{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.profile-photos-upsell h2{margin:0}.profile-photos-upsell p{margin:0;color:var(--text-secondary)}.upsell-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:9px 18px;margin-top:2px;border-radius:var(--radius-pill);background:var(--grad-accent);color:var(--text-on-accent);font-size:14px;font-weight:700;letter-spacing:.01em;box-shadow:0 6px 18px -8px var(--accent);transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.upsell-cta:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 10px 22px -8px var(--accent)}.upsell-cta svg{transition:transform var(--dur-fast) var(--ease-standard)}.upsell-cta:hover svg{transform:translateX(2px)}.random-seo~.lp-footer .lp-container{width:100%;max-width:1200px;margin:0 auto;padding-inline:0}main:has(.lp-footer){padding-bottom:0}@media (max-width:1023px){main:has(.lp-footer){padding-bottom:var(--bottombar-h)}}.random-seo~.lp-footer{max-width:680px;margin:var(--space-xl) auto 0;border-top:1px solid var(--border);background:var(--surface);padding-block:var(--space-lg)}.lp-footer-inner{flex-direction:column}.lp-footer-inner,.lp-footer-top{display:flex;gap:var(--space-xl)}.lp-footer-top{flex-wrap:wrap;justify-content:space-between}.lp-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-md);max-width:300px}.lp-footer-tagline{margin:0;color:var(--text-tertiary);font-size:14px;line-height:1.6}.lp-footer-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-lg) var(--space-xl);gap:var(--space-lg) var(--space-xl)}@media (min-width:700px){.lp-footer-groups{grid-template-columns:repeat(4,auto)}}.lp-footer-col{display:flex;flex-direction:column;gap:var(--space-sm)}.lp-footer-head{margin:0 0 4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.lp-footer-col a{color:var(--text-secondary);text-decoration:none;font-size:14px;transition:color var(--dur-fast) var(--ease-standard)}.lp-footer-col a:hover{color:var(--accent)}.lp-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md)}.lp-footer-copy{margin:0;color:var(--text-tertiary);font-size:13px}.lp-footer-social{display:flex;gap:var(--space-md);margin-left:auto}.lp-footer-social a{display:inline-flex;color:var(--text-tertiary);transition:color var(--dur-fast) var(--ease-standard)}.lp-footer-social a:hover{color:var(--accent)}