.bb-studio{--bb-lavender:oklch(0.78 0.12 295);--bb-peach:oklch(0.80 0.11 40);--bb-mint:oklch(0.83 0.11 160);--bb-sky:oklch(0.78 0.12 260);--bb-aurora:linear-gradient(90deg,transparent 0%,var(--primary) 18%,var(--bb-peach) 40%,var(--bb-lavender) 65%,var(--bb-sky) 85%,transparent 100%);--bb-card-shadow:0 1px 0 color-mix(in srgb,var(--foreground) 5%,transparent) inset,0 -40px 72px -28px color-mix(in srgb,var(--bb-lavender) 20%,transparent) inset,0 30px 70px -24px color-mix(in srgb,var(--foreground) 28%,transparent),0 10px 24px -10px color-mix(in srgb,var(--foreground) 16%,transparent)}.dark .bb-studio{--bb-lavender:oklch(0.82 0.13 295);--bb-peach:oklch(0.80 0.12 40)}@keyframes bb-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes bb-spin{to{transform:rotate(1turn)}}@keyframes bb-twinkle{0%,to{opacity:.55}50%{opacity:1}}@keyframes bb-pulse-ring{0%,to{box-shadow:0 8px 22px -8px color-mix(in srgb,var(--primary) 55%,transparent),0 0 0 4px color-mix(in srgb,var(--primary) 22%,transparent)}50%{box-shadow:0 8px 22px -8px color-mix(in srgb,var(--primary) 55%,transparent),0 0 0 7px color-mix(in srgb,var(--primary) 14%,transparent)}}@keyframes bb-blink{0%,60%,to{opacity:.3;transform:scale(.9)}30%{opacity:1;transform:scale(1.1)}}.bb-chat-card{position:relative;background:linear-gradient(180deg,color-mix(in srgb,var(--bb-lavender) 8%,transparent),transparent 40%),linear-gradient(0deg,color-mix(in srgb,var(--primary) 6%,transparent),transparent 55%),var(--card);border:1px solid color-mix(in srgb,var(--border) 65%,transparent);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-rows:auto minmax(300px,1fr) auto;height:clamp(600px,78vh,740px);box-shadow:var(--bb-card-shadow)}.bb-chat-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--bb-aurora);opacity:.9;z-index:2}.bb-chat-head{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px 22px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 8%,transparent) 0,transparent 100%)}.bb-chat-head-title{font-family:var(--font-display);font-weight:800;font-size:1.22rem;letter-spacing:-.01em;line-height:1.15;color:var(--foreground)}.bb-chat-head-sub{margin-top:3px;font-size:.75rem;font-weight:700;color:var(--muted-foreground);display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.bb-model-pill{padding:2px 9px;border-radius:9999px;background:color-mix(in srgb,var(--bb-lavender) 18%,transparent);color:color-mix(in srgb,var(--bb-lavender) 85%,var(--foreground));font-weight:800;font-size:.7rem;letter-spacing:.02em}.bb-chat-stream{overflow-y:auto;padding:1.75rem 1.5rem .75rem;display:flex;flex-direction:column}.bb-chat-stream>:only-child{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}.bb-chat-stream::-webkit-scrollbar{width:6px}.bb-chat-stream::-webkit-scrollbar-track{background:transparent}.bb-chat-stream::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--bb-lavender) 25%,transparent);border-radius:9999px}.bb-brand-dot{position:relative;width:2.75rem;height:2.75rem;border-radius:9999px;background:radial-gradient(circle at 32% 28%,color-mix(in srgb,var(--primary) 40%,white) 0,var(--primary) 55%,color-mix(in srgb,var(--primary) 80%,black) 100%);color:var(--primary-foreground);display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:800;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent),0 8px 18px -6px color-mix(in srgb,var(--primary) 55%,transparent);animation:bb-pulse-ring 3.2s ease-in-out infinite}.bb-brand-dot-sm{width:1.8rem;height:1.8rem;font-size:.9rem}.bb-credits-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .75rem .42rem .5rem;border-radius:9999px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 22%,transparent),color-mix(in srgb,var(--primary) 8%,transparent));color:var(--foreground);font-size:.8rem;font-weight:900;border:1px solid color-mix(in srgb,var(--primary) 45%,transparent)}.bb-credits-pill-star{display:inline-block;width:14px;height:14px;border-radius:9999px;background:radial-gradient(circle at 30% 30%,#fff,var(--primary) 70%);box-shadow:0 0 8px color-mix(in srgb,var(--primary) 65%,transparent)}.bb-credits-pill-unit{color:var(--muted-foreground);font-weight:700;font-size:.7rem}.bb-user-bubble{position:relative;display:inline-block;max-width:80%;background:var(--card);border:1px solid var(--border);border-radius:var(--radius) var(--radius) .5rem var(--radius);padding:.9rem 1.1rem;color:var(--foreground);font-size:.95rem;line-height:1.55;box-shadow:0 1px 2px 0 color-mix(in srgb,var(--foreground) 6%,transparent)}.bb-user-bubble-meta{margin-top:.65rem;padding-top:.6rem;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent);display:flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:700;color:var(--muted-foreground)}.bb-user-bubble-meta-thumb{width:1.1rem;height:1.1rem;border-radius:9999px;background-size:cover;background-position:50%;border:1px solid var(--border)}.bb-hero-scene{position:relative;width:168px;height:168px;margin:0 auto 1.15rem}.bb-hero-orbit{position:absolute;inset:-4px;border-radius:9999px;border:1.5px dashed color-mix(in srgb,var(--bb-lavender) 45%,transparent);animation:bb-spin 14s linear infinite}.bb-hero-orbit:after,.bb-hero-orbit:before{content:"✦";position:absolute;font-size:14px;line-height:1;color:var(--bb-lavender);text-shadow:0 0 10px color-mix(in srgb,var(--bb-lavender) 70%,transparent)}.bb-hero-orbit:before{top:-6px;left:50%;transform:translateX(-50%)}.bb-hero-orbit:after{bottom:-2px;left:18%;color:var(--bb-peach);font-size:12px;text-shadow:0 0 10px color-mix(in srgb,var(--bb-peach) 70%,transparent)}.bb-hero-moon{position:absolute;inset:18px;border-radius:9999px;background:radial-gradient(circle at 34% 28%,color-mix(in srgb,var(--primary) 35%,white) 0,var(--primary) 55%,color-mix(in srgb,var(--primary) 80%,black) 100%);box-shadow:0 0 0 8px color-mix(in srgb,var(--primary) 14%,transparent),0 0 0 18px color-mix(in srgb,var(--primary) 6%,transparent),0 24px 60px -16px color-mix(in srgb,var(--primary) 55%,transparent);animation:bb-float 5s ease-in-out infinite}.bb-hero-face{position:absolute;top:58px;left:58px;width:72px;height:72px;pointer-events:none}.bb-hero-title{font-family:var(--font-display);font-weight:800;font-size:clamp(1.8rem,3.6vw,2.4rem);letter-spacing:-.02em;line-height:1.05;color:var(--foreground);margin:.25rem 0 .55rem;text-align:center}.bb-hero-title em{font-style:italic;color:color-mix(in srgb,var(--primary) 70%,var(--foreground));font-weight:600}.bb-hero-sub{text-align:center;font-weight:600;font-size:.925rem;max-width:420px;margin:0 auto 1.4rem;line-height:1.55}.bb-hero-sub,.bb-try-label{color:var(--muted-foreground)}.bb-try-label{font-size:.68rem;letter-spacing:.22em;font-weight:900;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;margin-bottom:.9rem}.bb-try-label:after,.bb-try-label:before{content:"";width:24px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bb-lavender) 45%,transparent),transparent)}.bb-idea-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-width:520px;margin:0 auto}@media (max-width:540px){.bb-idea-grid{grid-template-columns:1fr}}.bb-idea{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;padding:12px 16px 12px 12px;background:color-mix(in srgb,var(--card) 55%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:18px;text-align:left;color:var(--foreground);font-weight:800;font-size:.88rem;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .2s ease}.bb-idea:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--card));box-shadow:0 10px 20px -12px color-mix(in srgb,var(--primary) 55%,transparent)}.bb-idea-ill{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(160deg,color-mix(in srgb,var(--bb-lavender) 22%,transparent),color-mix(in srgb,var(--bb-peach) 18%,transparent));border:1px solid color-mix(in srgb,var(--border) 70%,transparent);font-size:1.35rem}.bb-idea-body{display:grid;line-height:1.35}.bb-idea-tiny{display:block;font-weight:700;font-size:.7rem;color:var(--muted-foreground);margin-top:2px;letter-spacing:.01em}.bb-result{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:.6rem;box-shadow:0 1px 2px 0 color-mix(in srgb,var(--foreground) 6%,transparent);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease}.bb-result:hover{transform:translateY(-4px) rotate(-.3deg);box-shadow:0 4px 12px -2px color-mix(in srgb,var(--foreground) 12%,transparent),0 20px 40px -14px color-mix(in srgb,var(--primary) 22%,transparent)}.bb-result-photo{position:relative;aspect-ratio:1/1;border-radius:.75rem;overflow:hidden}.bb-result-photo img{width:100%;height:100%;object-fit:cover}.bb-result-dl{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:9999px;background:color-mix(in srgb,var(--card) 94%,transparent);color:var(--foreground);display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s;box-shadow:0 2px 6px 0 color-mix(in srgb,var(--foreground) 12%,transparent);border:1px solid var(--border)}@media (hover:none){.bb-result-dl{opacity:1;transform:none}}.bb-result:hover .bb-result-dl{opacity:1;transform:translateY(0)}.bb-result-caption{margin-top:.55rem;padding:0 .3rem .15rem;font-size:.72rem;font-weight:700;color:var(--muted-foreground);display:flex;align-items:center;justify-content:space-between;letter-spacing:.03em}.bb-result-stamp{gap:.3rem}.bb-result-stamp,.bb-result-stamp-num{display:inline-flex;align-items:center;color:var(--foreground)}.bb-result-stamp-num{justify-content:center;width:1rem;height:1rem;border-radius:9999px;background:color-mix(in srgb,var(--primary) 22%,transparent);font-size:.65rem;font-weight:800}.bb-dance-btn{position:relative;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.6rem;padding:0 1rem;background:linear-gradient(120deg,var(--primary) 0,color-mix(in srgb,var(--primary) 75%,white) 45%,var(--accent) 100%);color:var(--primary-foreground);border:1px solid color-mix(in srgb,var(--primary) 75%,black);border-radius:9999px;font-weight:900;font-size:.92rem;box-shadow:0 8px 22px -8px color-mix(in srgb,var(--primary) 55%,transparent),0 2px 6px -2px color-mix(in srgb,var(--primary) 30%,transparent);transition:transform .18s ease,box-shadow .3s ease,filter .25s ease;overflow:hidden;isolation:isolate;cursor:pointer}.bb-dance-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent,transparent 38%,rgba(255,255,255,.75) 50%,transparent 62%,transparent);transform:translateX(-120%);transition:transform .7s cubic-bezier(.4,.2,.2,1);pointer-events:none;z-index:0}.bb-dance-btn>*{position:relative;z-index:1}.bb-dance-btn:hover:not(:disabled):before{transform:translateX(120%)}.bb-dance-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 32px -8px color-mix(in srgb,var(--primary) 55%,transparent),0 4px 10px -2px color-mix(in srgb,var(--accent) 40%,transparent);filter:saturate(1.1)}.bb-dance-btn:active:not(:disabled){transform:translateY(0)}.bb-dance-btn:disabled{opacity:.55;cursor:not-allowed}.bb-dance-btn .bb-dancer{display:inline-block;transition:transform .4s cubic-bezier(.4,.2,.2,1)}.bb-dance-btn:hover:not(:disabled) .bb-dancer{transform:rotate(-10deg) scale(1.12)}.bb-dance-btn .bb-arrow{transition:transform .25s}.bb-dance-btn:hover:not(:disabled) .bb-arrow{transform:translateX(3px)}.bb-followup{position:relative;display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;background:var(--card);border:1px solid var(--border);border-radius:9999px;font-size:.8rem;font-weight:700;color:var(--foreground);transition:transform .18s ease,border-color .2s,background .2s;cursor:pointer}.bb-followup:hover{border-color:color-mix(in srgb,var(--primary) 65%,var(--border));background:color-mix(in srgb,var(--primary) 14%,var(--card));transform:translateY(-1px)}.bb-followup:active{transform:translateY(0)}.bb-composer-wrap{padding:.9rem 1rem 1rem;border-top:1px solid color-mix(in srgb,var(--border) 40%,transparent);background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--bb-lavender) 4%,transparent) 70%,color-mix(in srgb,var(--primary) 4%,transparent))}.bb-style-rail{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 12px;margin:0 -4px 6px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--bb-lavender) 35%,transparent) transparent}.bb-style-rail::-webkit-scrollbar{height:6px}.bb-style-rail::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--bb-lavender) 35%,transparent);border-radius:99px}.bb-style-pill{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;gap:9px;padding:5px 14px 5px 5px;border-radius:9999px;background:var(--card);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);cursor:pointer;transition:border-color .2s,background .2s,transform .15s,box-shadow .2s;color:var(--foreground)}.bb-style-pill:hover{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--card))}.bb-style-pill.is-active{border-color:color-mix(in srgb,var(--primary) 90%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 24%,transparent),color-mix(in srgb,var(--primary) 6%,transparent));box-shadow:0 10px 22px -14px color-mix(in srgb,var(--primary) 85%,transparent)}.bb-style-pill-sw{width:30px;height:30px;border-radius:9999px;background-size:cover;background-position:50%;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--foreground) 12%,transparent);flex:0 0 auto}.bb-style-pill-label{font-weight:800;font-size:.78rem;letter-spacing:.005em}.bb-composer{background:var(--card);border:1.5px solid var(--border);border-radius:1.1rem;padding:.85rem .95rem .65rem;transition:border-color .2s ease,box-shadow .25s ease,background .2s ease}.bb-composer:hover{border-color:color-mix(in srgb,var(--muted-foreground) 40%,var(--border))}.bb-composer:focus-within{border-color:color-mix(in srgb,var(--primary) 70%,transparent);background:color-mix(in srgb,var(--primary) 4%,var(--card));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 20%,transparent),0 14px 28px -16px color-mix(in srgb,var(--primary) 40%,transparent)}.bb-composer textarea{width:100%;min-height:48px;max-height:130px;background:transparent;border:0;resize:none;outline:none;font-weight:600;font-size:.97rem;line-height:1.55;color:var(--foreground)}.bb-composer textarea::placeholder{color:var(--muted-foreground);font-weight:500;font-style:italic}.bb-rail-chip{display:inline-flex;align-items:center;gap:.4rem;height:2rem;padding:0 .75rem;background:var(--card);border:1px solid var(--border);border-radius:9999px;color:var(--foreground);font-size:.78rem;font-weight:800;cursor:pointer;transition:border-color .2s,background .2s}.bb-rail-chip:hover{border-color:color-mix(in srgb,var(--primary) 60%,var(--border));background:color-mix(in srgb,var(--primary) 12%,var(--card))}.bb-rail-chip-thumb{width:1.25rem;height:1.25rem;border-radius:9999px;background-size:cover;background-position:50%;box-shadow:0 0 0 1px var(--border);flex-shrink:0}.bb-rail-chip-icon{width:2rem;padding:0;justify-content:center}.bb-send-btn{display:inline-flex;align-items:center;gap:.5rem;height:2.5rem;padding:0 1.05rem 0 .9rem;border-radius:9999px;font-family:var(--font-sans);font-weight:900;font-size:.84rem;letter-spacing:.005em;color:var(--primary-foreground);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 40%,white) 0,var(--primary) 55%,color-mix(in srgb,var(--primary) 85%,black) 100%);border:1px solid color-mix(in srgb,var(--primary) 75%,black);box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 -10px 16px -8px color-mix(in srgb,var(--primary) 50%,black) inset,0 14px 26px -10px color-mix(in srgb,var(--primary) 55%,transparent);transition:filter .2s,transform .15s,box-shadow .2s;cursor:pointer;white-space:nowrap}.bb-send-btn-icon-only{width:2.5rem;padding:0;justify-content:center}.bb-send-btn:hover:not(:disabled){filter:brightness(1.04)}.bb-send-btn:active:not(:disabled){transform:scale(.97)}.bb-send-btn:disabled{opacity:.5;cursor:not-allowed}.bb-send-spark{display:inline-block;font-size:.92rem;line-height:1;transform:rotate(-6deg);color:color-mix(in srgb,var(--primary-foreground) 85%,transparent)}.bb-attach-preview{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .7rem .4rem .4rem;background:var(--card);border:1px solid var(--border);border-radius:9999px}.bb-attach-preview-thumb{width:28px;height:28px;border-radius:9999px;background-size:cover;background-position:50%;flex-shrink:0;border:1px solid var(--border)}.bb-attach-preview-name{font-size:.75rem;font-weight:700;color:var(--foreground);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-attach-preview-x{width:20px;height:20px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;background:var(--muted);color:var(--muted-foreground);cursor:pointer;border:0}.bb-attach-preview-x:hover{background:var(--border);color:var(--foreground)}.bb-popover-item{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:.7rem;padding:.55rem .6rem;border-radius:.75rem;cursor:pointer;transition:background .15s;width:100%;border:0;background:transparent;text-align:left}.bb-popover-item:hover{background:color-mix(in srgb,var(--muted) 75%,transparent)}.bb-popover-item.bb-active{background:color-mix(in srgb,var(--primary) 18%,transparent)}.bb-popover-item-thumb{width:40px;height:40px;border-radius:9999px;background-size:cover;background-position:50%;box-shadow:0 0 0 2px var(--card),0 0 0 3px var(--border)}.bb-popover-item.bb-active .bb-popover-item-thumb{box-shadow:0 0 0 2px var(--card),0 0 0 3px var(--primary),0 6px 14px -4px color-mix(in srgb,var(--primary) 50%,transparent)}.bb-popover-item-name{font-size:.9rem;font-weight:800;color:var(--foreground);line-height:1.15}.bb-popover-item-desc{font-size:.72rem;color:var(--muted-foreground);font-weight:500;line-height:1.3}.bb-dots{display:inline-flex;gap:4px;align-items:center}.bb-dots span{width:6px;height:6px;border-radius:9999px;background:var(--muted-foreground);animation:bb-blink 1.4s infinite}.bb-dots span:nth-child(2){animation-delay:.2s}.bb-dots span:nth-child(3){animation-delay:.4s}.bb-foot-hint{margin:1.1rem auto 0;text-align:center;font-size:.78rem;font-weight:700;color:var(--muted-foreground);display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.bb-foot-hint-tag{padding:3px 10px;background:color-mix(in srgb,var(--bb-lavender) 18%,transparent);color:color-mix(in srgb,var(--bb-lavender) 85%,var(--foreground));border-radius:9999px;font-weight:900;letter-spacing:.02em;font-size:.7rem;text-transform:uppercase}.bb-foot-hint b{color:var(--foreground)}.bb-kbd{display:inline-block;padding:1px 6px;font-family:var(--font-sans);font-weight:800;font-size:.65rem;color:var(--muted-foreground);background:color-mix(in srgb,var(--muted) 60%,transparent);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:6px}