:root{--vh:1svh;--bg:#000;--fg:#fff;--dim:rgba(255,255,255,.55);--line:rgba(255,255,255,.16);--glass:rgba(255,255,255,.06);--ease:cubic-bezier(.77,0,.18,1)}
*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%;background:var(--bg)}
body{color:var(--fg);font:16px/1.65 'Product Sans','Google Sans','Outfit',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}
button,textarea,input{font:inherit;color:inherit}button{cursor:pointer}
a{color:inherit}::selection{background:#fff;color:#000}
:focus-visible{outline:1px solid #fff;outline-offset:3px}
textarea:focus-visible,#ms:focus-visible{outline:0}

/* loader */
#ld{position:fixed;inset:0;z-index:100;pointer-events:none;--p:0}
.h{position:absolute;left:0;right:0;height:50%;background:#000;overflow:hidden;transition:transform 1s var(--ease)}
.h.t{top:0}.h.b{bottom:0}
.h .in{position:absolute;left:0;right:0;height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.h.t .in{top:0}.h.b .in{bottom:0}
.br{font-weight:800;font-size:clamp(34px,8vw,70px);letter-spacing:-.05em}.br span{font-weight:300}
.tr{width:clamp(140px,22vw,240px);height:2px;background:var(--line);overflow:hidden}
.tr i{display:block;height:100%;background:#fff;transform-origin:left;transform:scaleX(var(--p));transition:transform .4s ease-out}
#ld.open .h.t{transform:translateY(-100%)}#ld.open .h.b{transform:translateY(100%)}

/* nav */
nav{position:fixed;top:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:14px clamp(14px,3vw,32px);padding-top:max(14px,env(safe-area-inset-top));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(0,0,0,.4);border-bottom:1px solid var(--line)}
.logo{font-weight:800;letter-spacing:-.04em;font-size:19px;text-decoration:none;justify-self:start}.logo span{font-weight:300;color:var(--dim)}
.pill{white-space:nowrap;background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:7px 14px;display:flex;align-items:center;gap:8px;transition:background .3s,color .3s}
.pill:hover{background:#fff;color:#000}
#nw{justify-self:end;font-weight:500}
.pop{position:fixed;z-index:60;width:min(380px,94vw);max-height:60svh;display:flex;flex-direction:column;background:rgba(10,10,10,.88);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--line);border-radius:22px;transform:translateY(10px) scale(.95);filter:blur(12px);opacity:0;visibility:hidden;transition:transform .5s cubic-bezier(.33,0,.2,1),filter .5s cubic-bezier(.33,0,.2,1),opacity .5s ease,visibility 0s .5s}
#efm{width:min(270px,94vw);padding:6px;overflow-y:auto}
.pop.on{transform:none;filter:none;opacity:1;visibility:visible;transition-delay:0s}
#ms{margin:10px;padding:11px 16px;background:var(--glass);border:1px solid var(--line);border-radius:14px;outline:0}#ms:focus{border-color:#fff}
#ml{overflow-y:auto;padding:0 8px 8px}
#ml h4{font-weight:500;font-size:11px;line-height:1;letter-spacing:.25em;text-transform:uppercase;color:var(--dim);padding:14px 12px 8px;display:flex;align-items:center;gap:8px}
#ml button,#efm button{display:block;width:100%;text-align:left;background:none;border:0;border-radius:12px;padding:9px 12px;transition:background .25s,color .25s}
#ml button:hover,#ml button.cur,#efm button:hover,#efm button.cur{background:#fff;color:#000}#ml small,#efm small{display:block;opacity:.6;font-weight:300;font-size:12.5px}

/* chat log */
#log{position:fixed;inset:0;overflow-y:auto;padding:90px 16px 190px}
#wrap{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:30px}
.m{display:flex;flex-direction:column;gap:8px}
.m.u{align-items:flex-end}
.m.u .bb{background:#fff;color:#000;padding:10px 18px;border-radius:22px 22px 6px 22px;max-width:85%;white-space:pre-wrap;word-break:break-word}
.m.a .bb::before{content:"";display:block;width:9px;height:9px;border-radius:50%;background:#fff;margin-bottom:10px;box-shadow:0 0 18px 2px rgba(255,255,255,.6)}
.m.e .bb{color:var(--dim);border-left:1px solid var(--line);padding-left:14px}
.bb p{margin-bottom:.8em}.bb p:last-child{margin:0}
.bb h1,.bb h2,.bb h3{margin:1em 0 .4em;line-height:1.25;letter-spacing:-.03em}.bb h1{font-size:1.5em}.bb h2{font-size:1.25em}.bb h3{font-size:1.05em}
.bb ul,.bb ol{margin:.3em 0 .9em;padding-left:1.4em}.bb a{text-underline-offset:3px}
.bb blockquote{border-left:2px solid #fff;padding-left:14px;color:var(--dim);margin:.6em 0}
.bb code{font:13.5px 'JetBrains Mono',monospace;background:var(--glass);padding:2px 6px;border-radius:6px}
.ccard{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:.7em 0}
.cchead{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--line);font-size:12.5px}
.cclang{flex:none;text-transform:uppercase;letter-spacing:.04em;font-size:10px;background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--dim)}
.ccname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--dim);font:12.5px 'JetBrains Mono',monospace}
.ccard pre{background:none;border:0;border-radius:0;padding:14px 16px;overflow-x:auto;margin:0}
.ccard pre code{background:none;padding:0}
.cp,.dl{flex:none;background:#000;border:1px solid var(--line);border-radius:999px;font-size:12px;padding:2px 12px;color:var(--dim)}.cp:hover,.dl:hover{background:#fff;color:#000}
.dots{display:inline-flex;gap:6px;padding:6px 0}.dots b{width:7px;height:7px;border-radius:50%;background:#fff;animation:pl 1s infinite ease-in-out}.dots b:nth-child(2){animation-delay:.15s}.dots b:nth-child(3){animation-delay:.3s}
@keyframes pl{0%,80%,100%{transform:scale(.5);filter:blur(2px);opacity:.3}40%{transform:scale(1);filter:none;opacity:1}}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:flex;align-items:center;gap:8px;background:var(--glass);border:1px solid var(--line);border-radius:14px;padding:5px 10px;font-size:13px;color:var(--dim);max-width:220px}
.chip img{width:32px;height:32px;object-fit:cover;border-radius:8px}.chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip button{background:none;border:0;color:var(--dim)}

/* hero + dock */
#hero{position:fixed;left:0;right:0;top:0;height:calc(var(--vh)*100);z-index:5;display:grid;grid-template-rows:1fr 120px 1fr;padding:calc(70px + env(safe-area-inset-top)) 16px 0;text-align:center;pointer-events:none;opacity:1;transition:transform 1.3s cubic-bezier(.33,0,.2,1),filter 1.3s cubic-bezier(.33,0,.2,1),opacity 1.3s cubic-bezier(.4,0,.6,1),visibility 0s 1.3s}
#hero h1{font-size:clamp(34px,7.5vw,68px);font-weight:800;letter-spacing:-.055em;line-height:1.05}
#hero small{display:block;margin-top:12px;color:var(--dim);font-weight:300;font-size:clamp(14px,2.2vw,17px)}
.w{display:inline-block;transform:scale(.6) translateY(50%);filter:blur(16px);opacity:0}
.ready .w{transform:none;filter:none;opacity:1;animation:win 1.3s cubic-bezier(.33,0,.2,1) calc(var(--i)*.09s + .7s) backwards}
@keyframes win{from{transform:scale(.6) translateY(50%);filter:blur(16px);opacity:0}}
body.chat #hero{transform:scale(.9) translateY(-30px);filter:blur(26px);opacity:0;visibility:hidden;pointer-events:none}
#dock{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:0 14px max(16px,env(safe-area-inset-bottom));transform:translateY(calc(var(--vh)*-50 + 43px + 50%));transition:transform 1s var(--ease)}
body.chat #dock{transform:none}
#dock::before{content:"";position:absolute;inset:-40px 0 0;background:linear-gradient(transparent,#000 60%);opacity:0;transition:opacity .8s;pointer-events:none;z-index:-1}
body.chat #dock::before{opacity:1}
.box{max-width:720px;margin:0 auto;background:rgba(18,18,18,.65);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border:1px solid var(--line);border-radius:30px;padding:14px 12px 10px 18px;transition:border-color .3s,box-shadow .5s}
.box:focus-within,.box.drag{border-color:#fff;box-shadow:0 0 60px rgba(255,255,255,.12)}
.box .chips{margin:4px 0 8px}
.bar{display:flex;align-items:center;gap:4px;min-width:0}.sp{flex:1}.sel{display:flex;align-items:center;min-width:0;margin-left:2px}
textarea{display:block;width:100%;background:none;border:0;resize:none;outline:0;max-height:200px;padding:4px 2px 10px}textarea::placeholder{color:var(--dim)}
.ic{width:42px;height:42px;border-radius:50%;border:0;background:none;display:grid;place-items:center;flex:none;color:var(--dim);transition:background .3s,color .3s,transform .4s var(--ease)}
.ic:hover{background:#fff;color:#000;transform:scale(1.08)}
#sd{background:#fff;color:#000}#sd:hover{background:var(--glass);color:#fff}

/* entrance + scroll-driven */
nav,#dock{transition:transform 1s var(--ease)}
@supports (animation-timeline:view()){
  .m{animation:ent linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
  @keyframes ent{from{transform:translateY(40px) skewY(3deg) scale(.96);filter:blur(14px);opacity:0}to{transform:none;filter:none;opacity:1}}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01s!important}}

/* accounts, drawer, extras */
[hidden]{display:none!important}
.lt{display:flex;align-items:center;gap:10px;justify-self:start;min-width:0}
.bg{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--glass);display:grid;place-items:center;flex:none;transition:background .3s,color .3s}.bg:hover{background:#fff;color:#000}
.big{background:#fff;color:#000;border:0;border-radius:14px;padding:12px 16px;font-weight:700;transition:background .3s,color .3s,box-shadow .3s}.big:hover{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px #fff}.big:disabled{opacity:.5}
.lnk{background:none;border:0;color:var(--dim);text-decoration:underline;text-underline-offset:3px;padding:2px;font-size:14px}.lnk:hover{color:#fff}
#side{position:fixed;top:0;bottom:0;left:0;width:min(320px,86vw);z-index:70;display:flex;flex-direction:column;gap:10px;padding:max(18px,env(safe-area-inset-top)) 12px 14px;background:rgba(8,8,8,.82);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);border-right:1px solid var(--line);transform:translateX(-30px) scale(.97);filter:blur(14px);opacity:0;visibility:hidden;transition:transform .6s cubic-bezier(.33,0,.2,1),filter .6s cubic-bezier(.33,0,.2,1),opacity .6s ease,visibility 0s .6s}
body.side #side{transform:none;filter:none;opacity:1;visibility:visible;transition-delay:0s}
#shade{position:fixed;inset:0;z-index:65;background:rgba(0,0,0,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s .6s}
body.side #shade{opacity:1;visibility:visible;transition-delay:0s}
#sq,.card input{width:100%;padding:12px 16px;background:var(--glass);border:1px solid var(--line);border-radius:14px;outline:0;transition:border-color .3s}#sq:focus,.card input:focus{border-color:#fff}
#sl{flex:1;overflow-y:auto}.em{color:var(--dim);text-align:center;margin-top:20px;font-weight:300}
.ci{display:flex;align-items:center;gap:2px;padding:9px 12px;border-radius:12px;cursor:pointer;transition:background .25s,color .25s}
.ci span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci:hover,.ci.on{background:#fff;color:#000}
.ci button{background:none;border:0;opacity:.35;width:28px;height:28px;border-radius:8px}.ci button:hover{opacity:1;background:rgba(0,0,0,.12)}
.sf{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:12px;font-size:13px;color:var(--dim)}.sf span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#auth,#cfg,#adm,#ob,#sh{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.55);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s 1s}
#auth.on,#cfg.on,#adm.on,#ob.on,#sh.on{opacity:1;visibility:visible;transition-delay:0s}
.card{width:min(390px,100%);padding:32px 26px 24px;border:1px solid var(--line);border-radius:30px;background:rgba(14,14,14,.7);text-align:center;transform:scale(.9) translateY(30px);filter:blur(16px);transition:transform 1.1s cubic-bezier(.33,0,.2,1),filter 1.1s cubic-bezier(.33,0,.2,1)}
#auth.on .card,#cfg.on .card,#adm.on .card,#ob.on .card,#sh.on .card{transform:none;filter:none}
.card h2{font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.1}.card p{color:var(--dim);margin:8px 0 20px;font-weight:300;font-size:15px}
.card input{margin-bottom:10px}.card .big{width:100%;margin-top:4px}#ac{text-align:center;letter-spacing:.5em;font-size:22px}
.fm{min-height:1.4em;font-size:14px;margin:12px 0 4px!important;color:#fff!important}.alt{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
.act{display:flex;gap:6px}.act button{background:none;border:1px solid var(--line);border-radius:999px;padding:3px 13px;font-size:12.5px;color:var(--dim);transition:background .3s,color .3s}.act button:hover{background:#fff;color:#000}
#toast{position:fixed;top:78px;left:50%;z-index:90;max-width:90vw;padding:10px 20px;border-radius:999px;background:rgba(20,20,20,.8);border:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transform:translateX(-50%) scale(.9);filter:blur(12px);opacity:0;visibility:hidden;transition:transform .6s cubic-bezier(.33,0,.2,1),filter .6s cubic-bezier(.33,0,.2,1),opacity .6s ease,visibility 0s .6s}
#toast.on{transform:translateX(-50%);filter:none;opacity:1;visibility:visible;transition-delay:0s}
.st{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:22px}
.st button{background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:14px;color:var(--dim);backdrop-filter:blur(10px);transition:background .3s,color .3s}.st button:hover{background:#fff;color:#000}
body.anon #hero,body.anon #dock,body.anon .bg,body.anon #mb,body.anon #nw{opacity:0!important;visibility:hidden!important;pointer-events:none}
.card textarea{width:100%;padding:12px 16px;background:var(--glass);border:1px solid var(--line);border-radius:14px;outline:0;margin-bottom:10px;resize:vertical;text-align:left;max-height:none}.card textarea:focus{border-color:#fff}
.card.set{text-align:left;max-height:92svh;overflow-y:auto}.card.set h2{text-align:center}.card.set p{text-align:center}
.card label{display:block;font-size:13px;color:var(--dim);margin:0 0 6px}.card hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.ic.rec{background:#fff;color:#000;animation:pl 1.2s infinite}
.ci .pn{opacity:.35}.ci .pn.y{opacity:1}
@supports(height:1dvh){:root{--vh:1dvh}}
#hero>*{pointer-events:auto}.ht{align-self:end;padding-bottom:20px}#hero .st{grid-row:3;align-self:start;margin-top:16px}
#hero h1{font-size:clamp(30px,7vw,60px)}
.tg{display:block;opacity:.55;font-size:11.5px;font-weight:300}
.fcards{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.fcard{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.04);cursor:pointer;transition:background .25s}.fcard:hover{background:rgba(255,255,255,.09)}
.fico{flex:none;width:44px;height:54px;border-radius:10px;border:1px solid var(--line);background:var(--glass);display:grid;place-items:center;font:12px 'JetBrains Mono',monospace;color:var(--dim);text-transform:uppercase}
.fmeta{flex:1;min-width:0}.fmeta b{display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmeta small{color:var(--dim);font-size:13px}
.fdl{flex:none;width:42px;height:42px;border-radius:12px;border:0;background:rgba(255,255,255,.1);display:grid;place-items:center}.fdl:hover{background:#fff;color:#000}
.fcard.w{cursor:default}.fcard.w .fico{animation:pl 1.2s infinite}
#vw{position:fixed;inset:0;z-index:85;display:flex;flex-direction:column;background:rgba(6,6,6,.97);padding-top:env(safe-area-inset-top);opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s .4s}#vw.on{opacity:1;visibility:visible;transition-delay:0s}
.vh{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.vh b{flex:1;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vh button{padding:5px 14px}
#vb{flex:1;overflow:auto}#vb pre{padding:16px;font:13.5px/1.6 'JetBrains Mono',monospace;tab-size:2}#vb iframe{width:100%;height:100%;border:0;background:#fff}#vb .bb{padding:18px;max-width:720px;margin:0 auto}
.tx{background:none;border:0;border-radius:10px;padding:6px 8px;color:var(--fg);font-weight:500;font-size:15px;line-height:1.2;white-space:nowrap;transition:background .25s,color .25s}
.tx:hover{background:var(--glass)}
#mb{min-width:0;flex:0 1 auto}#mb span{display:block;overflow:hidden;text-overflow:ellipsis}
#ef{color:var(--dim);flex:none}#ef:hover{color:var(--fg)}
@media(max-width:600px){.logo{display:none}#nw{padding:7px 11px}}
.card .sw{display:flex;align-items:center;gap:12px;color:var(--fg);font-size:15px;margin:0 0 14px;cursor:pointer}.sw span{flex:1}.sw small{display:block;color:var(--dim);font-size:12.5px}
.sw input{display:none}.sw i{width:46px;height:26px;border-radius:999px;background:var(--glass);border:1px solid var(--line);position:relative;flex:none;transition:background .3s}
.sw i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .3s}.sw input:checked+i{background:#fff}.sw input:checked+i::after{background:#000;transform:translateX(20px)}
.th{margin-bottom:12px;border-left:1px solid var(--line);padding-left:12px;color:var(--dim);font-size:14px}.th summary{cursor:pointer}.th div{white-space:pre-wrap;margin-top:6px}
.src{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.src a{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:2px 10px;color:var(--dim);text-decoration:none}.src a:hover{background:#fff;color:#000}
.ci button.a{width:auto;padding:0 10px;opacity:.8}.ci small{display:block;font-size:11.5px;opacity:.6}
.card select{width:100%;padding:12px 16px;background:var(--glass);border:1px solid var(--line);border-radius:14px;color:inherit;margin-bottom:12px;outline:0}.card select option{background:#111;color:#fff}

/* input bar */
.bar .ic{width:38px;height:38px}
/* avatar + profile */
.av{width:46px;height:46px;border-radius:50%;background:#fff;color:#000;font-weight:800;font-size:20px;line-height:1;display:grid;place-items:center;overflow:hidden;border:0;padding:0;flex:none}
.av img{width:100%;height:100%;object-fit:cover}
.av.big2{width:68px;height:68px;font-size:28px}
.pf{display:flex;align-items:center;gap:12px;padding:2px 4px 10px;min-width:0;cursor:pointer}
.pi{min-width:0;display:flex;flex-direction:column;line-height:1.3}
.pi b{font-weight:700;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pi span{color:var(--dim);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pi small.adm{font-weight:500;font-size:10px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line);border-radius:999px;padding:1px 8px;margin-left:6px;color:var(--dim);vertical-align:middle}
.sf{justify-content:space-between}
.pe{display:flex;align-items:center;gap:14px;justify-content:center;margin:6px 0 18px}.pe .av{cursor:pointer}
.pb{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
/* provider logos */
.lg{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#fff;color:#000;font-size:11px;font-weight:800;letter-spacing:0;text-transform:none;flex:none;overflow:hidden}
.lg img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;padding:2px}
/* welcome + entrance */
#wl{position:fixed;inset:0;z-index:95;background:#000;display:grid;place-items:center;text-align:center;padding:20px;opacity:0;visibility:hidden;filter:blur(22px);transform:scale(1.08);pointer-events:none;transition:opacity .9s ease,filter .9s cubic-bezier(.33,0,.2,1),transform .9s cubic-bezier(.33,0,.2,1),visibility 0s .9s}
#wl.on{opacity:1;visibility:visible;filter:none;transform:none;pointer-events:auto;transition-delay:0s}
#wl small{display:block;color:var(--dim);font-weight:300;letter-spacing:.3em;text-transform:uppercase;font-size:12px;margin-bottom:14px}
#wl h1{font-size:clamp(38px,10vw,84px);font-weight:800;letter-spacing:-.055em;line-height:1.05}
.ww{display:inline-block}
#wl.on .ww{animation:win 1.2s cubic-bezier(.33,0,.2,1) calc(var(--i)*.12s + .3s) backwards}
#wl.on small{animation:uifade 1s ease .1s backwards}
@keyframes uiin{from{opacity:0;filter:blur(16px);transform:translateY(-16px)}}
@keyframes uifade{from{opacity:0;filter:blur(16px)}}
body.enter nav{animation:uiin 1.1s cubic-bezier(.33,0,.2,1) backwards}
body.enter #hero{animation:uifade 1.2s ease .15s backwards}
body.enter #dock{animation:uifade 1.2s ease .3s backwards}
/* settings tabs */
.tabs{display:flex;gap:4px;background:var(--glass);border:1px solid var(--line);border-radius:999px;padding:4px;margin:22px 0 22px}
.tabs button{flex:1;background:none;border:0;border-radius:999px;padding:10px 4px;font-size:12.5px;font-weight:500;color:var(--dim);transition:background .3s,color .3s}
.tabs button.on{background:#fff;color:#000}
.tp{display:none}.tp.on{display:block;animation:uifade .5s ease backwards}
.card.set .tp p{text-align:center}
/* API tab (admin) */
.onlyadm{display:none}body.admin .onlyadm{display:block}
.tabs{overflow-x:auto;scrollbar-width:none}.tabs button{white-space:nowrap;padding-left:10px;padding-right:10px}
.ap{margin:0 0 18px}.ap>label{font-weight:500;color:var(--fg);font-size:15px}
.kr{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;margin-bottom:6px;font:13px 'JetBrains Mono',monospace;background:var(--glass)}
.kr span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kr em{font:11px 'Outfit',sans-serif;color:var(--dim);font-style:normal}
.kr button{background:none;border:0;width:26px;height:26px;border-radius:8px;color:var(--dim)}.kr button:hover{background:#fff;color:#000}
.kadd{display:flex;gap:8px;margin:8px 0}.kadd input{margin:0!important}.kadd .big{width:auto!important;margin:0!important;padding:10px 18px}
.ap .em{margin:6px 0}
.stt{margin-left:10px;color:var(--dim);font-size:14px;font-weight:300;vertical-align:middle}
/* share */
.rt{display:flex;gap:8px;justify-self:end;align-items:center}#shr{display:none}body.chat #shr{display:inline-block}
.opt{display:block;width:100%;text-align:left;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:8px;background:var(--glass);color:var(--fg);transition:background .3s,color .3s,border-color .3s}
.opt b{display:block;font-weight:600}.opt small{display:block;opacity:.65;font-size:13px;margin-top:2px}.opt.on{background:#fff;color:#000;border-color:#fff}
.ci i.lk{font-style:normal;font-size:11px;opacity:.6;margin-left:4px}
