/* whycloud "Airy Glass" design system — tokens, foundations, primitives, motion. Shared by console + account. */
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh Light"),local("YekanBakh-Light"),url(/shared/fonts/YekanBakh-Light.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh Regular"),local("YekanBakh-Regular"),url(/shared/fonts/YekanBakh-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh Medium"),local("YekanBakh-Medium"),url(/shared/fonts/YekanBakh-Medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh SemiBold"),local("YekanBakh-SemiBold"),url(/shared/fonts/YekanBakh-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh Bold"),local("YekanBakh-Bold"),url(/shared/fonts/YekanBakh-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh ExtraBold"),local("YekanBakh-ExtraBold"),url(/shared/fonts/YekanBakh-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Yekan Bakh";src:local("Yekan Bakh Black"),local("YekanBakh-Black"),url(/shared/fonts/YekanBakh-Black.woff2) format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/shared/fonts/Vazirmatn-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/shared/fonts/Vazirmatn-Medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/shared/fonts/Vazirmatn-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/shared/fonts/Vazirmatn-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/shared/fonts/Vazirmatn-Black.woff2) format("woff2");font-weight:800 900;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/shared/fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/shared/fonts/jetbrains-mono-latin-500-normal.woff2) format("woff2");font-weight:500 700;font-display:swap}

:root{
 --blue-50:#EEF4FF;--blue-100:#DCE8FF;--blue-200:#BDD3FF;--blue-300:#92B5FF;--blue-400:#5E8EFF;--blue-500:#2667FF;--blue-600:#1A52E6;--blue-700:#1641B8;--blue-800:#16378F;--blue-900:#172F6B;
 --berry-50:#FFF0F3;--berry-100:#FFDDE5;--berry-400:#EE5279;--berry-500:#DB2B5C;--berry-600:#C9184A;--berry-700:#A6123C;
 --success-50:#E9FBF4;--success-100:#C8F2E1;--success-500:#14B885;--success-600:#0B9A6F;--success-700:#07734F;
 --warning-50:#FFF7E8;--warning-100:#FDE8C0;--warning-500:#F2A20C;--warning-600:#D98207;--warning-700:#9A5B05;
 --danger-50:#FFF0F3;--danger-100:#FFDDE5;--danger-500:#DB2B5C;--danger-600:#C9184A;--danger-700:#A6123C;
 --info-50:#EAF8FC;--info-100:#C9EEF8;--info-500:#14A9D6;--info-600:#0B8DB8;--info-700:#086B8C;
 --ai-50:#F3F0FF;--ai-100:#E4DDFF;--ai-500:#7C5CFF;--ai-600:#6941F0;--ai-700:#5131C4;
 --ink-900:#0F1D3A;--ink-800:#1B2B4B;--ink-700:#33456A;--ink-600:#50648A;--ink-500:#627497;--ink-400:#8D9DBC;--ink-300:#B4C1D9;--ink-200:#D6DFEE;--ink-100:#E8EEF8;--ink-50:#F4F7FC;

 --bg-canvas:#F3F7FF;
 --bg-canvas-grad:linear-gradient(180deg,#F6F9FF 0%,#EEF3FD 55%,#F1F2FD 100%);
 --bg-glow-1:radial-gradient(60% 50% at 85% 0%,rgba(38,103,255,.10) 0%,transparent 70%);
 --bg-glow-2:radial-gradient(50% 45% at 0% 100%,rgba(124,92,255,.07) 0%,transparent 70%);
 --surface-glass:rgba(255,255,255,.72);--surface-glass-2:rgba(255,255,255,.86);--surface-solid:#FFFFFF;--surface-sunken:rgba(238,244,255,.70);--surface-tint:var(--blue-50);--surface-hover:rgba(38,103,255,.045);--surface-selected:rgba(38,103,255,.08);--overlay:rgba(15,29,58,.32);
 --glass-blur:20px;--glass-blur-strong:28px;--glass-sat:160%;
 --text-1:var(--ink-900);--text-2:var(--ink-600);--text-3:var(--ink-500);--text-disabled:var(--ink-400);--text-link:var(--blue-500);
 --border-hair:rgba(38,103,255,.10);--border-soft:rgba(38,103,255,.16);--border-strong:rgba(38,103,255,.28);--border-input:#D3DDF0;--border-inner-hi:rgba(255,255,255,.75);
 --brand:var(--blue-500);--brand-hover:var(--blue-600);--brand-grad:linear-gradient(135deg,#3A7BFF 0%,#2667FF 45%,#1A52E6 100%);--brand-grad-soft:linear-gradient(90deg,rgba(38,103,255,.14) 0%,rgba(38,103,255,.04) 100%);--accent:var(--berry-600);
 --ai-grad:linear-gradient(135deg,#7C5CFF,#2667FF);
 --focus-ring:0 0 0 2px #FFFFFF,0 0 0 4px rgba(38,103,255,.55);
 --shadow-xs:0 1px 2px rgba(23,47,107,.05);
 --shadow-sm:0 1px 2px rgba(23,47,107,.04),0 4px 12px rgba(38,103,255,.05);
 --shadow-md:0 1px 2px rgba(23,47,107,.04),0 10px 28px rgba(38,103,255,.08);
 --shadow-lg:0 2px 6px rgba(23,47,107,.05),0 20px 48px rgba(38,103,255,.12);
 --shadow-xl:0 4px 12px rgba(23,47,107,.06),0 32px 80px rgba(23,47,107,.18);
 --shadow-brand:0 6px 16px rgba(38,103,255,.28),0 1px 0 rgba(255,255,255,.25) inset;
 --shadow-glow:0 0 0 1px rgba(38,103,255,.18),0 14px 40px rgba(38,103,255,.18);
 --shadow-inset-hi:inset 0 1px 0 var(--border-inner-hi);
 --r-xs:6px;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-2xl:24px;--r-3xl:32px;--r-pill:999px;
 --font-sans:"Yekan Bakh","Vazirmatn",system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;
 --viz-1:#2667FF;--viz-2:#14A9D6;--viz-3:#7C5CFF;--viz-4:#14B885;--viz-5:#F2A20C;--viz-6:#8D9DBC;--grid-line:rgba(38,103,255,.08);
 --dur-1:120ms;--dur-2:180ms;--dur-3:260ms;--dur-4:360ms;--dur-5:600ms;--dur-6:1200ms;
 --ease-out:cubic-bezier(.22,1,.36,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-in:cubic-bezier(.55,0,1,.45);--ease-spring:cubic-bezier(.34,1.56,.64,1);--ease-emph:cubic-bezier(.16,1,.3,1);--stagger:50ms;
 /* legacy aliases used by older modules */
 --ink:var(--text-1);--muted:var(--text-2);--faint:var(--text-3);--line:var(--border-hair);--line-2:var(--border-soft);--line-strong:var(--border-strong);
 --surface:var(--surface-solid);--surface-2:var(--surface-sunken);--surface-3:var(--ink-100);--bg:var(--bg-canvas);
 --accent-soft:var(--blue-50);--accent-line:var(--blue-200);--accent-2:var(--blue-600);--ink-2:var(--ink-700);
 --ok:var(--success-600);--ok-soft:var(--success-50);--warn:var(--warning-600);--warn-soft:var(--warning-50);--bad:var(--danger-600);--bad-soft:var(--danger-50);
 --ai:var(--ai-500);--ai-soft:var(--ai-50);
 --blue:var(--blue-500);--blue-strong:var(--blue-600);--berry:var(--berry-600);--green:var(--success-600);--red:var(--danger-600);--panel:var(--surface-glass);--panel-strong:var(--surface-glass-2);--wash:var(--blue-50);--shadow:var(--shadow-md);--radius:var(--r-xl);--radius-sm:var(--r-md);--r:var(--r-lg);--ring:var(--focus-ring);--shadow-1:var(--shadow-xs);--shadow-2:var(--shadow-md);--shadow-3:var(--shadow-xl);--mono:var(--font-mono);--font:var(--font-sans);
 color-scheme:light
}
html[data-theme="dark"]{
 --bg-canvas:#070F24;--bg-canvas-grad:linear-gradient(180deg,#081230 0%,#070F24 50%,#0A0E2A 100%);
 --bg-glow-1:radial-gradient(60% 50% at 85% 0%,rgba(38,103,255,.22) 0%,transparent 70%);--bg-glow-2:radial-gradient(50% 45% at 0% 100%,rgba(124,92,255,.14) 0%,transparent 70%);
 --surface-glass:rgba(19,34,70,.58);--surface-glass-2:rgba(14,27,58,.82);--surface-solid:#0F1D3F;--surface-sunken:rgba(8,17,40,.55);--surface-tint:rgba(38,103,255,.14);--surface-hover:rgba(146,181,255,.06);--surface-selected:rgba(94,142,255,.14);--overlay:rgba(3,8,22,.62);
 --text-1:#E8EEFF;--text-2:#A9B9DA;--text-3:#8496BC;--text-disabled:#5A6B90;--text-link:var(--blue-300);
 --border-hair:rgba(146,181,255,.12);--border-soft:rgba(146,181,255,.20);--border-strong:rgba(146,181,255,.36);--border-input:rgba(146,181,255,.22);--border-inner-hi:rgba(255,255,255,.06);
 --brand:var(--blue-400);--brand-hover:#7AA3FF;--brand-grad:linear-gradient(135deg,#5E8EFF 0%,#2667FF 60%,#1A52E6 100%);--brand-grad-soft:linear-gradient(90deg,rgba(94,142,255,.22) 0%,rgba(94,142,255,.05) 100%);--accent:var(--berry-400);
 --blue-50:rgba(94,142,255,.14);--blue-100:rgba(94,142,255,.22);--blue-700:#9DBBFF;--ink-100:rgba(146,181,255,.10);--ink-50:rgba(146,181,255,.06);--ink-200:rgba(146,181,255,.18);--ink-300:rgba(146,181,255,.30);
 --success-50:rgba(20,184,133,.14);--success-600:#2FD3A0;--success-700:#2FD3A0;--warning-50:rgba(242,162,12,.14);--warning-600:#F7B733;--warning-700:#F7B733;--danger-50:rgba(219,43,92,.16);--danger-600:#F06A8C;--danger-700:#F06A8C;--info-50:rgba(20,169,214,.14);--info-600:#3CC4EC;--ai-50:rgba(124,92,255,.16);--ai-700:#B7A6FF;--berry-50:rgba(219,43,92,.16);
 --shadow-xs:0 1px 2px rgba(0,0,0,.25);--shadow-sm:0 1px 0 rgba(255,255,255,.03) inset,0 4px 14px rgba(0,0,0,.25);--shadow-md:0 1px 0 rgba(255,255,255,.04) inset,0 12px 32px rgba(0,0,0,.32);--shadow-lg:0 1px 0 rgba(255,255,255,.05) inset,0 22px 56px rgba(0,0,0,.42);--shadow-xl:0 32px 90px rgba(0,0,0,.55);
 --shadow-glow:0 0 0 1px rgba(94,142,255,.30),0 14px 44px rgba(38,103,255,.28);--focus-ring:0 0 0 2px #070F24,0 0 0 4px rgba(122,163,255,.75);
 --viz-1:#5E8EFF;--viz-2:#3CC4EC;--viz-3:#9B84FF;--viz-4:#2FD3A0;--viz-5:#F7B733;--viz-6:#7184AC;--grid-line:rgba(146,181,255,.08);
 color-scheme:dark
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{font-family:var(--font-sans);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{margin:0;min-height:100vh;color:var(--text-1);background:var(--bg-canvas);font:400 14px/1.75 var(--font-sans);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:var(--bg-glow-1),var(--bg-glow-2),var(--bg-canvas-grad)}
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.ambient>i{position:absolute;border-radius:50%;filter:blur(40px);will-change:transform}
.ambient>i:nth-child(1){width:520px;height:520px;top:-160px;inset-inline-start:-120px;background:radial-gradient(circle,rgba(38,103,255,.16),transparent 65%);animation:drift-a 28s ease-in-out infinite}
.ambient>i:nth-child(2){width:460px;height:460px;bottom:-140px;inset-inline-end:-100px;background:radial-gradient(circle,rgba(20,169,214,.12),transparent 65%);animation:drift-b 34s ease-in-out infinite}
.ambient>i:nth-child(3){width:380px;height:380px;top:40%;inset-inline-end:30%;background:radial-gradient(circle,rgba(124,92,255,.10),transparent 65%);animation:drift-c 40s ease-in-out infinite}
html[data-theme=dark] .ambient>i{opacity:1.4}
.ambient.paused>i{animation-play-state:paused}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none!important}
:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-md)}
::selection{background:rgba(38,103,255,.2)}
h1,h2,h3,h4{margin:0;line-height:1.35;color:var(--text-1)}
p{margin:0}
code,kbd,pre,samp,.mono{font-family:var(--font-mono);font-size:.92em}
.num{font-variant-numeric:tabular-nums}
.glass,.glass-solid{background:var(--surface-glass);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));border:1px solid var(--border-hair);box-shadow:var(--shadow-inset-hi),var(--shadow-md);border-radius:var(--r-xl)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass,.glass-solid{background:rgba(255,255,255,.94)}html[data-theme=dark] .glass{background:#101F44}}
.eyebrow{display:inline-block;font:700 11px/1.4 var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.subtle,.help-text{color:var(--text-2)}
/* buttons */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--r-md);border:1px solid var(--border-input);background:var(--surface-solid);color:var(--text-1);font-weight:600;font-size:14px;line-height:1;white-space:nowrap;box-shadow:var(--shadow-xs);overflow:hidden;transition:background-color var(--dur-2) var(--ease-out),border-color var(--dur-2),color var(--dur-2),box-shadow var(--dur-3) var(--ease-out),transform var(--dur-1) var(--ease-out)}
.btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--blue-700)}
.btn:active:not(:disabled){transform:translateY(1px) scale(.98)}
.btn svg{width:16px;height:16px;flex:none}
.btn.primary{background:var(--brand-grad);border-color:transparent;color:#fff;box-shadow:var(--shadow-brand)}
.btn.primary:hover:not(:disabled){color:#fff;filter:brightness(1.06);box-shadow:0 8px 22px rgba(38,103,255,.36)}
.btn.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);transform:translateX(-120%);pointer-events:none}
.btn.primary:hover::after{transition:transform .7s var(--ease-out);transform:translateX(120%)}
.btn.ghost,.btn.soft{background:transparent;border-color:transparent;box-shadow:none;color:var(--text-2)}
.btn.ghost:hover:not(:disabled),.btn.soft:hover:not(:disabled){background:var(--surface-hover);color:var(--blue-700)}
.btn.tinted{background:var(--blue-50);border-color:rgba(38,103,255,.14);color:var(--blue-700);box-shadow:none}
.btn.danger{color:var(--danger-600);border-color:var(--danger-100);background:var(--surface-solid)}
.btn.danger:hover:not(:disabled){background:var(--danger-50);color:var(--danger-700);border-color:var(--danger-100)}
.btn.ai{background:var(--ai-grad);border-color:transparent;color:#fff;box-shadow:0 6px 16px rgba(124,92,255,.3)}
.btn.tiny,.btn.compact{height:32px;padding:0 12px;font-size:13px;border-radius:var(--r-sm)}
.btn.large{height:48px;padding:0 22px;font-size:15px;border-radius:12px}
.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:var(--r-pill);font-size:12px;font-weight:600;background:var(--ink-100);color:var(--ink-700);white-space:nowrap}
.pill.good,.pill.success{background:var(--success-50);color:var(--success-700)}
.pill.danger{background:var(--danger-50);color:var(--danger-700)}
.pill.warn{background:var(--warning-50);color:var(--warning-700)}
.pill.info{background:var(--blue-50);color:var(--blue-700)}
/* forms */
.field{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text-1)}
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{width:100%;height:40px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--border-input);background:var(--surface-solid);color:var(--text-1);font-size:14px;font-weight:400;transition:border-color var(--dur-2),box-shadow var(--dur-2)}
textarea{height:auto;min-height:96px;padding:10px 12px;resize:vertical;line-height:1.7}
input:hover,select:hover,textarea:hover{border-color:var(--ink-300)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(38,103,255,.12)}
input::placeholder,textarea::placeholder{color:var(--text-3)}
select{appearance:none;-webkit-appearance:none;padding-inline-end:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238D9DBC' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center}
[dir=ltr] select{background-position:right 12px center}
input[type=checkbox],input[type=radio]{accent-color:var(--brand);width:18px;height:18px;margin:0;flex:none}
input[type=range]{accent-color:var(--brand);width:100%}
progress{appearance:none;-webkit-appearance:none;width:100%;height:6px;border:0;border-radius:var(--r-pill);background:var(--ink-100);overflow:hidden;display:block}
progress::-webkit-progress-bar{background:var(--ink-100);border-radius:var(--r-pill)}
progress::-webkit-progress-value{background:var(--brand-grad);border-radius:var(--r-pill);transition:width .5s var(--ease-out)}
progress::-moz-progress-bar{background:var(--brand);border-radius:var(--r-pill)}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
th{font-size:12px;font-weight:600;color:var(--text-3);text-align:start;padding:11px 14px;background:var(--surface-sunken);border-bottom:1px solid var(--border-hair);white-space:nowrap}
td{padding:13px 14px;border-bottom:1px solid var(--border-hair);color:var(--text-1);vertical-align:middle;font-weight:500}
tr:last-child td{border-bottom:0}
tbody tr{transition:background-color var(--dur-1)}
tbody tr:hover{background:var(--surface-hover)}
details>summary{cursor:pointer;list-style:none;font-weight:600}
details>summary::-webkit-details-marker{display:none}
dialog{border:1px solid var(--border-hair);border-radius:var(--r-2xl);background:var(--surface-solid);color:var(--text-1);padding:0;box-shadow:var(--shadow-xl);max-width:min(560px,calc(100vw - 32px));width:100%}
dialog[open]{animation:dialog-in .28s var(--ease-emph)}
dialog::backdrop{background:var(--overlay);backdrop-filter:blur(4px)}
dialog form{padding:24px;display:grid;gap:14px}
dialog h2{font-size:20px}
dialog p{color:var(--text-2);font-size:13.5px}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:rgba(38,103,255,.16);border-radius:99px;border:3px solid transparent;background-clip:content-box}
::-webkit-scrollbar-thumb:hover{background:rgba(38,103,255,.3);background-clip:content-box;border:3px solid transparent}
/* motion */
@keyframes rise-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes slide-in-top{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@keyframes flash-row{0%{background:rgba(38,103,255,.12)}100%{background:transparent}}
@keyframes shimmer{to{transform:translateX(100%)}}
@keyframes ping{0%{transform:scale(1);opacity:.55}80%,100%{transform:scale(2.6);opacity:0}}
@keyframes breathe{0%,100%{opacity:1}50%{opacity:.55}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes blink{50%{opacity:0}}
@keyframes typing{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@keyframes dialog-in{from{opacity:0;transform:scale(.96) translateY(8px)}}
@keyframes pop-in{from{opacity:0;transform:scale(.96) translateY(-4px)}}
@keyframes fade{from{opacity:0}}
@keyframes flow{to{stroke-dashoffset:-20}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes drift-a{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-60px,40px,0) scale(1.08)}}
@keyframes drift-b{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(50px,-30px,0) scale(.94)}}
@keyframes drift-c{0%,100%{transform:translate3d(0,0,0)}33%{transform:translate3d(30px,30px,0)}66%{transform:translate3d(-20px,10px,0)}}
@keyframes grow-y{from{transform:scaleY(0)}}
@keyframes draw{to{stroke-dashoffset:0}}
.reveal{animation:rise-in var(--dur-4) var(--ease-out) both;animation-delay:calc(var(--i,0) * var(--stagger))}
.live-dot{position:relative;display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}
.live-dot::after{content:"";position:absolute;inset:0;border-radius:inherit;background:inherit;animation:ping 1.8s var(--ease-out) infinite}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.ambient{display:none}.live-dot::after{display:none}}
