.sp-fab{right:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:70;background:var(--invert-bg);height:48px;color:var(--invert-fg);font:600 14px/1 var(--font);letter-spacing:-.01em;cursor:pointer;transition:transform .2s var(--ease-out), box-shadow .2s var(--ease);animation:sp-fab-in .36s var(--ease-out) both;border:0;border-radius:999px;align-items:center;gap:10px;padding:0 18px 0 6px;display:inline-flex;position:fixed;box-shadow:0 10px 30px -10px #00000073,inset 0 0 0 1px #ffffff0f}.sp-fab:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px #00000080,inset 0 0 0 1px #ffffff14}.sp-fab:active{transform:scale(.97)}.sp-fab:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.sp-fab-mark{background:var(--invert-fg);width:36px;height:36px;color:var(--invert-bg);border-radius:50%;place-items:center;display:grid}.sp{right:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:75;background:var(--bg);width:420px;height:min(680px,100dvh - 40px);color:var(--fg);box-shadow:0 0 0 1px var(--line), 0 30px 80px -24px #00000059, 0 12px 24px -12px #0000001f;transform-origin:100% 100%;animation:sp-in .3s var(--ease-out) both;border-radius:24px;flex-direction:column;display:flex;position:fixed;overflow:hidden}.sp-head{align-items:center;gap:12px;padding:14px 10px 14px 16px;display:flex}.sp-avatar{background:var(--invert-bg);width:36px;height:36px;color:var(--invert-fg);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.sp-avatar.sm{border-radius:8px;width:24px;height:24px;margin-top:2px}.sp-title{flex:1;min-width:0}.sp-title b{letter-spacing:-.01em;font-size:15px;font-weight:600;line-height:20px;display:block}.sp-title small{color:var(--fg2);align-items:center;gap:6px;font-size:12.5px;line-height:17px;display:flex}.sp-online{background:var(--up);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--up) 18%, transparent);border-radius:50%}.sp-icon{width:36px;height:36px;color:var(--fg2);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.sp-icon:hover{background:var(--hover);color:var(--fg)}.sp-body{overscroll-behavior:contain;border-top:1px solid var(--line);flex-direction:column;flex:1;gap:16px;padding:8px 18px 18px;display:flex;overflow-y:auto}.sp-welcome{flex-direction:column;align-items:flex-start;gap:10px;padding-top:18px;display:flex}.sp-hello{background:var(--invert-bg);width:52px;height:52px;color:var(--invert-fg);border-radius:16px;place-items:center;margin-bottom:6px;display:grid}.sp-welcome h2{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:600;line-height:30px}.sp-welcome p{color:var(--fg2);text-wrap:pretty;margin:0;font-size:14px;line-height:21px}.sp-cards{grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:12px;display:grid}.sp-cards button{background:var(--surface-2);min-height:84px;box-shadow:inset 0 0 0 1px var(--line);color:var(--fg);font:500 13.5px/1.3 var(--font);text-align:left;cursor:pointer;transition:box-shadow .15s var(--ease), transform .15s var(--ease-out), background .15s var(--ease);border:0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;display:flex}.sp-cards button:hover{background:var(--bg);box-shadow:inset 0 0 0 1px var(--fg);transform:translateY(-1px)}.sp-cards svg{color:var(--fg)}.sp-links{flex-wrap:wrap;gap:6px 16px;margin-top:10px;display:flex}.sp-links a{color:var(--fg2);align-items:center;gap:6px;font-size:13px;text-decoration:none;display:inline-flex}.sp-links a:hover{color:var(--fg)}.sp-row{align-items:flex-start;gap:10px;display:flex}.sp-msg{overflow-wrap:anywhere;max-width:86%;font-size:14.5px;line-height:22px}.sp-msg.ai{min-width:0;max-width:100%;color:var(--fg);flex:1}.sp-msg.me{background:var(--surface);color:var(--fg);white-space:pre-wrap;border-radius:18px 18px 6px;align-self:flex-end;padding:9px 14px}.sp-msg.ai .md{font-size:14.5px;line-height:22px}.sp-msg.ai .md p{margin:0 0 10px}.sp-msg.ai .md p:last-child{margin-bottom:0}.sp-msg.ai .md ul,.sp-msg.ai .md ol{margin:4px 0 10px;padding-left:20px}.sp-msg.ai .md a{color:var(--fg);text-underline-offset:2px;text-decoration:underline}.sp-msg.ai .md blockquote{border-left-color:var(--line)}.sp-msg.ai .md code{font-size:12.5px}.sp-tools{gap:2px;margin-top:6px;display:flex}.sp-mini{width:28px;height:28px;color:var(--fg3);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.sp-mini:hover{background:var(--hover);color:var(--fg)}.sp-next{flex-direction:column;align-items:flex-start;gap:6px;margin-top:10px;display:flex}.sp-next button{background:var(--bg);max-width:100%;box-shadow:inset 0 0 0 1px var(--line);color:var(--fg);font:13.5px/1.35 var(--font);text-align:left;cursor:pointer;transition:box-shadow .15s var(--ease), background .15s var(--ease);border:0;border-radius:12px;padding:8px 12px}.sp-next button:hover{box-shadow:inset 0 0 0 1px var(--fg);background:var(--surface-2)}.sp-typing{gap:4px;padding:8px 0;display:inline-flex}.sp-typing i{background:var(--fg);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite sp-pulse}.sp-typing i:nth-child(2){animation-delay:.15s}.sp-typing i:nth-child(3){animation-delay:.3s}.sp-foot{padding:10px 12px 12px}.sp-input{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .15s var(--ease), background .15s var(--ease);border-radius:24px;align-items:flex-end;gap:8px;padding:6px 6px 6px 16px;display:flex}.sp-input:focus-within{background:var(--bg);box-shadow:inset 0 0 0 1px var(--fg), 0 0 0 4px var(--hover)}.sp-input textarea{resize:none;min-width:0;max-height:120px;color:var(--fg);font:15px/22px var(--font);background:0 0;border:0;outline:none;flex:1;padding:6px 0}.sp-input textarea::placeholder{color:var(--fg3)}.sp-send{background:var(--invert-bg);width:34px;height:34px;color:var(--invert-fg);cursor:pointer;transition:opacity .15s var(--ease), transform .15s var(--ease);border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.sp-send:not(:disabled):hover{opacity:.86}.sp-send:not(:disabled):active{transform:scale(.94)}.sp-send:disabled{opacity:.25;cursor:default}.sp-note{color:var(--fg3);text-align:center;margin:8px 0 0;font-size:12px;line-height:16px}.sp-note a{color:var(--fg2);text-underline-offset:2px;text-decoration:underline}@keyframes sp-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}@keyframes sp-fab-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes sp-pulse{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@media (max-width:767px){.sp{width:100%;height:100dvh;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);box-shadow:none;border-radius:0;bottom:0;right:0}.sp-fab{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));justify-content:center;width:48px;padding:0}.sp-fab-mark{width:36px;height:36px}.sp-fab-label{display:none}.sp-input textarea{font-size:16px}}@media (prefers-reduced-motion:reduce){.sp,.sp-fab,.sp-typing i{animation:none}.sp-fab{transition:none}}
