.profile-chat{color:var(--foreground)}.profile-chat-launcher-wrap{position:fixed;right:24px;bottom:max(20px,env(safe-area-inset-bottom));z-index:30;transition:opacity var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out)}.profile-chat-launcher-wrap.is-open{opacity:0;pointer-events:none;transform:scale(.9)}.profile-chat-launcher{position:relative;display:flex;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 7px;border:1px solid var(--border);border-radius:999px;background:var(--foreground);color:var(--background);box-shadow:0 4px 18px rgba(12,17,27,.16),0 1px 3px rgba(0,0,0,.08);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-smooth-out),color var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out),box-shadow var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-fast) var(--ease-smooth-out);will-change:transform,box-shadow}.profile-chat-launcher:hover{background:var(--accent);color:#ffffff;border-color:var(--accent);transform:translateY(-2px) scale(1.05);box-shadow:0 8px 24px rgba(47,91,255,.3),0 2px 6px rgba(0,0,0,.08)}.profile-chat-launcher:active{transform:translateY(0) scale(.95)}.profile-chat-launcher:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.profile-chat-tooltip{position:absolute;bottom:calc(100% + 10px);right:0;display:flex;align-items:center;padding:6px 12px;background:var(--card);color:var(--foreground);border:1px solid var(--border);border-radius:8px;font-size:12px;font-weight:500;letter-spacing:-.01em;white-space:nowrap;box-shadow:0 4px 18px rgba(0,0,0,.1);pointer-events:none;opacity:0;transform:translateY(0) scale(var(--tt-scale));transform-origin:bottom right;transition:opacity var(--tt-out-dur) var(--tt-out-ease),transform var(--tt-out-dur) var(--tt-out-ease);will-change:transform,opacity;z-index:50}.profile-chat-launcher-wrap:hover .profile-chat-tooltip,.profile-chat-launcher:focus-visible+.profile-chat-tooltip{opacity:1;transform:translateY(-2px) scale(1);transition-duration:var(--tt-in-dur);transition-timing-function:var(--tt-in-ease);transition-delay:var(--tt-delay)}.profile-chat-dialog{position:fixed;inset:auto 24px max(20px,env(safe-area-inset-bottom)) auto;width:400px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);margin:0;padding:0;border:1px solid var(--border);border-radius:12px;color:var(--foreground);background:var(--background);box-shadow:0 16px 64px rgba(12,17,27,.22);overflow:hidden;transform-origin:bottom right;opacity:0;transform:scale(var(--modal-scale)) translateY(var(--distance-base));transition:transform var(--modal-open-dur) var(--modal-ease),opacity var(--modal-open-dur) var(--modal-ease);will-change:transform,opacity}.profile-chat-dialog[open]{opacity:1;transform:scale(1) translateY(0)}.profile-chat-dialog.is-closing{opacity:0;transform:scale(var(--modal-scale-close)) translateY(var(--distance-micro));transition:transform var(--modal-close-dur) var(--modal-ease),opacity var(--modal-close-dur) var(--modal-ease)}.profile-chat-dialog::backdrop{background:rgba(12,17,27,.35);opacity:0;transition:opacity var(--modal-open-dur) var(--modal-ease)}.profile-chat-dialog[open]::backdrop{opacity:1}.profile-chat-dialog.is-closing::backdrop{opacity:0;transition:opacity var(--modal-close-dur) var(--modal-ease)}.profile-chat-panel{display:flex;flex-direction:column;height:min(640px,calc(100dvh - 42px))}.profile-chat-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:12px;padding:20px 16px 16px 20px;border-bottom:1px solid var(--border)}.profile-chat-header h2{font-family:var(--font-dm-sans),sans-serif;font-size:17px;font-weight:600;letter-spacing:-.02em;line-height:1.3;margin:0}.profile-chat-header p{margin:5px 0 0;font-size:11px;line-height:1.4;color:var(--muted-foreground)}.profile-chat-actions{display:flex}.profile-chat-actions button{display:grid;place-items:center;width:36px;height:40px;border-radius:6px;color:var(--muted-foreground);cursor:pointer}.profile-chat-actions button:hover{background:var(--muted);color:var(--foreground)}.profile-chat-transcript{flex:1;min-height:96px;overflow-y:auto;overscroll-behavior:contain;padding:24px 20px 8px;scrollbar-width:thin}.profile-chat-message{margin-bottom:24px;overflow-wrap:anywhere}.profile-chat-message p{font-size:13px;line-height:1.75;color:var(--foreground);margin:0}.profile-chat-message--visitor{width:fit-content;max-width:85%;margin-left:auto;padding:9px 14px;background:color-mix(in srgb,var(--accent) 13%,var(--card));border-radius:16px 16px 4px 16px;animation:chat-bubble-in var(--duration-fast) var(--ease-smooth-out) both}.profile-chat-sources{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;gap:6px;animation:chat-fade-in var(--duration-slow) var(--ease-smooth-out) both}.profile-chat-sources a{display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;color:var(--accent);font-size:11px;transition:background-color var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-fast) var(--ease-smooth-out)}.profile-chat-sources a:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:var(--accent)}.profile-chat-suggestions{display:flex;flex-wrap:nowrap;flex-shrink:0;gap:7px;padding:10px 20px 12px;border-top:1px solid var(--border);overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}.profile-chat-suggestions::-webkit-scrollbar{display:none}.profile-chat-suggestions button{display:inline-flex;flex-shrink:0;white-space:nowrap;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;min-height:34px;border:1px solid var(--border);border-radius:999px;font-size:11px;text-align:left;line-height:1.4;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-smooth-out),border-color var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out)}.profile-chat-suggestions button:hover{background:var(--card);border-color:var(--accent)}.profile-chat-suggestions button svg{flex-shrink:0;transition:transform var(--learn-out) var(--learn-ease)}.profile-chat-suggestions button:hover svg{transform:translate(2px,-2px)}.profile-chat-suggestions button:active{transform:scale(.97)}.profile-chat-suggestions button:disabled{opacity:.6;cursor:default}.profile-chat .profile-chat-notice{padding:10px 16px 0;margin:0;font-size:11px;line-height:1.5;color:var(--muted-foreground)}.profile-chat-loading{display:flex;align-items:center;gap:8px;color:var(--muted-foreground);font-size:12px;padding-bottom:16px}.profile-chat-loading button{margin-left:auto;min-height:36px;padding:6px;text-decoration:underline;cursor:pointer}.profile-chat-form{flex-shrink:0;padding:12px 16px;border-top:1px solid var(--border)}.profile-chat-input-row{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card)}.profile-chat-input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.profile-chat-input-row input{min-width:0;flex:1;font-size:16px;line-height:1.5;background:transparent;color:var(--foreground)}.profile-chat-input-row input::placeholder{color:var(--muted-foreground);font-size:13px}.profile-chat-input-row input:focus-visible{outline:none}.profile-chat-input-row button{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:6px;background:var(--foreground);color:var(--background);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out)}.profile-chat-input-row button:not(:disabled):hover{background:var(--accent)}.profile-chat-input-row button:not(:disabled):active{transform:scale(.95)}.profile-chat-input-row button:disabled{background:var(--muted);color:var(--muted-foreground);cursor:default}.profile-chat-form .profile-chat-note{margin:10px 0 0;text-align:center;font-size:10px;line-height:1.4;color:var(--muted-foreground)}.profile-chat-launcher-label{display:inline-block;max-width:140px;margin:0 8px 0 4px;overflow:hidden;white-space:nowrap;font-size:13px;font-weight:500;opacity:1;transition:max-width var(--duration-slow) var(--ease-smooth-out),opacity var(--duration-fast) var(--ease-smooth-out),margin var(--duration-slow) var(--ease-smooth-out)}.profile-chat-launcher-wrap.is-compact .profile-chat-launcher-label{max-width:0;margin:0;opacity:0}.profile-chat-launcher-wrap:not(.is-compact) .profile-chat-tooltip{display:none}.profile-chat-identity{display:flex;align-items:center;gap:12px;min-width:0}.profile-chat-avatar{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:12px;background:var(--foreground)}.profile-chat-thinking{display:grid;gap:2px;color:var(--muted-foreground)}.profile-chat-header p{display:flex;align-items:center;gap:6px}.profile-chat-live{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:chat-live 2.4s ease-in-out infinite}.profile-chat-rich{font-size:13px;line-height:1.75;color:var(--foreground)}.profile-chat-rich p+p,.profile-chat-rich p+ul,.profile-chat-rich ul+p{margin-top:10px}.profile-chat-rich ul{display:grid;gap:4px;margin:8px 0 0;padding:0;list-style:none}.profile-chat-rich li{position:relative;padding-left:16px}.profile-chat-rich li:before{content:"";position:absolute;left:2px;top:.72em;width:5px;height:5px;border-radius:1.5px;background:var(--accent)}.profile-chat-rich strong{font-weight:600}.profile-chat-caret{display:inline-block;width:7px;height:14px;margin-left:2px;vertical-align:-2px;border-radius:1.5px;background:var(--accent);animation:chat-caret .9s steps(2) infinite}.profile-chat-starters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:-6px}.profile-chat-starters button{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:12px;min-height:84px;border:1px solid var(--border);border-radius:10px;background:var(--card);font-size:12px;line-height:1.45;text-align:left;cursor:pointer;animation:chat-fade-in var(--duration-slow) var(--ease-smooth-out) both;transition:border-color var(--duration-fast) var(--ease-smooth-out),transform var(--duration-fast) var(--ease-smooth-out),background-color var(--duration-fast) var(--ease-smooth-out)}.profile-chat-starters button:nth-child(2){animation-delay:50ms}.profile-chat-starters button:nth-child(3){animation-delay:.1s}.profile-chat-starters button:nth-child(4){animation-delay:.15s}.profile-chat-starters button svg{color:var(--accent)}.profile-chat-starters button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--card));transform:translateY(-1px)}.profile-chat-starters button:active{transform:scale(.98)}.profile-chat-starters button:disabled{opacity:.6;cursor:default;transform:none}.profile-chat-thinking>span{width:6px;height:6px;border-radius:1.5px;animation:chat-scan 1.2s var(--ease-smooth-out) infinite;animation-delay:calc(var(--c) * 90ms)}@keyframes chat-scan{0%,60%,to{background:color-mix(in srgb,currentColor 22%,transparent)}15%{background:var(--accent)}}@keyframes chat-live{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 45%,transparent)}50%{box-shadow:0 0 0 4px transparent}}@keyframes chat-caret{0%{opacity:1}to{opacity:0}}@keyframes chat-bubble-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes chat-fade-in{0%{opacity:0;transform:translateY(4px)}}.mascot{display:block;overflow:visible;--lx:0px;--ly:0px}.mascot *{transform-box:fill-box;transform-origin:center}.mascot-body{fill:var(--background)}.mascot-shade{fill:color-mix(in srgb,var(--background) 62%,var(--accent))}.mascot-stalk{stroke:var(--background);stroke-width:2;stroke-linecap:round}.mascot-bulb{fill:var(--accent)}.mascot-eye{fill:var(--foreground)}.mascot-smile{stroke:var(--foreground);stroke-width:2;stroke-linecap:round;fill:none;opacity:0}.mascot-glass{fill:color-mix(in srgb,var(--accent) 22%,var(--background));stroke:var(--accent);stroke-width:2.4}.mascot-handle{stroke:var(--accent);stroke-width:3;stroke-linecap:round}.mascot-look{transform:translate(var(--lx),var(--ly));transition:transform .22s var(--ease-smooth-out)}.mascot-bob,.mascot-eyes,.mascot-lens,.mascot-smile{transition:opacity .18s ease,transform .3s var(--ease-smooth-out)}.mascot.is-happy .mascot-eyes{opacity:0}.mascot.is-happy .mascot-smile{opacity:1}.mascot.is-thinking .mascot-look{transform:translate(2px,1.6px)}.profile-chat-launcher:hover .mascot-bob{transform:translateY(-1.5px) rotate(-4deg)}.profile-chat-launcher:hover .mascot-lens{transform:rotate(-14deg) scale(1.08)}@media (prefers-reduced-motion:no-preference){.mascot-eyes{animation:mascot-blink 4.6s infinite}.mascot.is-thinking .mascot-lens{animation:mascot-scan 1.4s ease-in-out infinite}.mascot.is-thinking .mascot-bulb{animation:mascot-bulb .7s ease-in-out infinite alternate}.mascot.is-happy .mascot-bob{animation:mascot-hop .6s var(--ease-smooth-out)}}@keyframes mascot-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.12)}}@keyframes mascot-scan{0%,to{transform:translate(0)}25%{transform:translate(-3px,-2px)}50%{transform:translate(-6px)}75%{transform:translate(-3px,2px)}}@keyframes mascot-bulb{to{fill:var(--background)}}@keyframes mascot-hop{30%{transform:translateY(-3px)}60%{transform:translateY(0)}80%{transform:translateY(-1px)}}@media (max-width:639px){.profile-chat-launcher-wrap{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.profile-chat-launcher{min-width:44px;height:44px;padding:0 5px}.profile-chat-launcher .profile-chat-launcher-label{max-width:0;opacity:0;margin:0}.profile-chat-tooltip{display:none!important}.profile-chat-dialog{inset:auto 12px max(12px,env(safe-area-inset-bottom)) 12px;width:auto;max-width:none;max-height:calc(100dvh - 24px)}.profile-chat-panel{height:min(640px,calc(100dvh - 26px))}.profile-chat-header{padding-top:16px}.profile-chat-suggestions{padding-inline:16px;gap:6px}.profile-chat-transcript{padding-inline:16px}}@media (hover:none){.profile-chat-tooltip{display:none!important}}@media (max-height:500px){.profile-chat-header{padding-block:8px}.profile-chat-suggestions{max-height:75px;overflow-y:auto;padding-block:8px}.profile-chat-form{padding-block:8px}.profile-chat-note{display:none}}@media (prefers-reduced-motion:reduce){.mascot *,.profile-chat-caret,.profile-chat-launcher,.profile-chat-launcher-label,.profile-chat-launcher-wrap,.profile-chat-live,.profile-chat-message--visitor,.profile-chat-sources,.profile-chat-starters button,.profile-chat-thinking>span,.profile-chat-tooltip{transition:none!important;animation:none!important;transform:none!important}}@media print{.profile-chat{display:none!important}}