*{box-sizing:border-box}body,html{height:100%}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text)}input,select,textarea{font-family:var(--font-ui)}[data-theme=cyberpunk] body{background:transparent}:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer);border-radius:var(--r-control)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--r-pill);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}@supports not selector(::-webkit-scrollbar){*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}}.small{font-size:var(--type-sm)}.muted,.small{color:var(--muted)}.code{font-family:var(--font-mono);font-size:var(--type-sm)}.chat-empty{text-align:center;padding:48px 24px;color:var(--muted)}.error-msg{font-size:var(--type-sm);color:var(--danger);padding:8px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-to-content:focus{position:fixed;top:var(--sp-2);left:var(--sp-2);z-index:10000;width:auto;height:auto;padding:var(--sp-2) var(--sp-4);margin:0;overflow:visible;clip:auto;white-space:nowrap;background:var(--panel);color:var(--accent);border:2px solid var(--focus-inner);border-radius:var(--r-control);box-shadow:var(--shadow-e2);font-size:var(--type-base);font-weight:var(--weight-semibold);text-decoration:none}@keyframes calm-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes calm-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.calm-widget--highlight{animation:calm-widget-pulse 1.5s ease-out}@keyframes calm-widget-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 40%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 20%,transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 0,transparent)}}.stop-btn.active{color:var(--danger)}.bubble.streaming .bubbleContent:after{content:"";display:inline-block;width:2px;height:1em;background:var(--text);margin-left:2px;vertical-align:text-bottom;animation:blink-cursor .8s step-end infinite}@keyframes blink-cursor{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.bubble.streaming .bubbleContent:after,.calm-widget--highlight{animation:none}}.app-shell{display:grid;grid-template-rows:var(--header-height) 1fr;grid-template-columns:1fr var(--rail-width);grid-template-areas:"header header" "canvas rail";height:100vh;overflow:hidden}.app-shell>aside,.app-shell>main{display:contents}.spline-bg{position:fixed;top:50%;left:50%;border:none;z-index:0;pointer-events:none;transform-origin:center center}.app-shell--rail-collapsed{grid-template-columns:1fr 0}.shell-header{grid-area:header;display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-5);background:var(--glass-bg);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-highlight);z-index:100;gap:var(--sp-4);height:var(--header-height);position:relative}.shell-header__left{display:flex;align-items:center;gap:var(--sp-3);flex-shrink:0}.shell-header__brand-avatar{width:28px;height:28px;border-radius:var(--r-sm);object-fit:cover;flex-shrink:0}.shell-header__brand{font-size:var(--type-lg);font-weight:var(--weight-medium);color:var(--text);letter-spacing:var(--tracking-tight)}.shell-header__center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;justify-content:center;pointer-events:auto;z-index:1}.shell-header__right{display:flex;align-items:center;gap:var(--sp-3);flex-shrink:0}.shell-header__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:var(--r-control);cursor:pointer;font-size:var(--type-lg);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.shell-header__icon-btn:hover{background:var(--panel-2);color:var(--text)}.context-pill{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2);padding:6px 12px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-pill);font-size:var(--type-base);color:var(--muted);cursor:pointer;white-space:nowrap;transition:grid-template-columns var(--dur-fast) var(--ease-standard),gap var(--dur-fast) var(--ease-standard),padding var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.context-pill:hover{border-color:var(--border-strong)}.context-pill__segment{overflow:hidden;text-overflow:ellipsis;min-width:0;transition:opacity var(--dur-fast) var(--ease-standard)}@media (hover:hover){.context-pill{grid-template-columns:0fr auto 0fr;gap:0;padding:6px;transition:grid-template-columns var(--dur-fast) var(--ease-standard) .6s,gap var(--dur-fast) var(--ease-standard) .6s,padding var(--dur-fast) var(--ease-standard) .6s,border-color var(--dur-fast) var(--ease-standard)}.context-pill__segment{opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-standard) .6s}.context-pill--pinned,.context-pill:focus-within,.context-pill:hover{grid-template-columns:1fr auto 1fr;gap:var(--sp-2);padding:6px 12px;transition:grid-template-columns var(--dur-fast) var(--ease-standard) .3s,gap var(--dur-fast) var(--ease-standard) .3s,padding var(--dur-fast) var(--ease-standard) .3s,border-color var(--dur-fast) var(--ease-standard)}.context-pill--pinned .context-pill__segment,.context-pill:focus-within .context-pill__segment,.context-pill:hover .context-pill__segment{opacity:1;pointer-events:auto;transition:opacity var(--dur-fast) var(--ease-standard) .3s}}.context-pill__segment--agent{justify-self:end;gap:var(--sp-2);color:var(--subtle)}.context-pill__segment--mono{justify-self:start;font-family:var(--font-mono);font-size:var(--type-xs);display:inline-flex;align-items:center;gap:var(--sp-2);max-width:180px;overflow:hidden;text-overflow:ellipsis}.spinning-globe{--globe-jewel:#a8bdd8;--globe-jewel-core:rgba(210,228,255,.95);--globe-bg-inner:rgba(40,55,80,.25);--globe-bg-outer:rgba(20,30,50,.4);position:relative;border-radius:50%;overflow:hidden;flex-shrink:0;background:radial-gradient(circle at 50% 50%,var(--globe-bg-inner) 0,var(--globe-bg-outer) 100%);box-shadow:inset 1px 1px 2px rgba(168,189,216,.08),inset -1px -1px 2px rgba(0,0,0,.25),0 0 4px rgba(168,189,216,.15),0 0 1px rgba(0,0,0,.3);animation:globe-moon-breathe 8s ease-in-out infinite;transition:box-shadow .6s ease-in-out,background .6s ease-in-out,transform var(--dur-fast) var(--ease-standard)}.spinning-globe__net{position:absolute;inset:0;width:100%;height:100%}.spinning-globe__arc{stroke:var(--globe-jewel);stroke-width:.15;will-change:opacity,stroke-width;animation:arc-wave 6s ease-in-out infinite;transition:stroke .6s ease-in-out}@keyframes arc-wave{0%,85%,to{opacity:.28;stroke-width:.14}8%{opacity:.6;stroke-width:.22}}.spinning-globe__jewel-blur{fill:var(--globe-jewel);opacity:.48;transition:fill .6s ease-in-out}.spinning-globe__jewel-glow{fill:var(--globe-jewel);opacity:.6;transition:fill .6s ease-in-out}.spinning-globe__jewel-core{fill:var(--globe-jewel-core);opacity:.9;transition:fill .6s ease-in-out}.spinning-globe__jewel{will-change:opacity,transform;animation:jewel-wave 6s cubic-bezier(.4,0,.2,1) infinite,jewel-drift 24s ease-in-out infinite}@keyframes jewel-wave{0%,85%,to{opacity:.55}8%{opacity:1}}@keyframes jewel-drift{0%,to{transform:translate(0)}33%{transform:translate(.15px,-.1px)}66%{transform:translate(-.1px,.12px)}}.context-pill:hover .spinning-globe{transform:scale(1.05);box-shadow:inset 1px 1px 2px rgba(200,220,255,.12),inset -1px -1px 2px rgba(0,0,0,.15),0 0 6px rgba(168,189,216,.45),0 0 14px rgba(168,189,216,.2)}.context-pill:hover .spinning-globe__jewel{animation:jewel-wave 4s cubic-bezier(.4,0,.2,1) infinite,jewel-drift 20s ease-in-out infinite}.context-pill:hover .spinning-globe__arc{animation-duration:4s}.spinning-globe__shade{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 28% 28%,hsla(0,0%,100%,.42) 0,transparent 22%),radial-gradient(circle at 50% 50%,transparent 25%,rgba(0,0,0,.04) 45%,transparent 60%),radial-gradient(circle at 72% 72%,hsla(0,0%,100%,.05) 0,transparent 25%),radial-gradient(circle at 50% 50%,transparent 35%,rgba(0,0,0,.4) 100%);pointer-events:none;transition:background var(--dur-fast) var(--ease-standard)}.context-pill:hover .spinning-globe__shade{background:radial-gradient(circle at 28% 28%,hsla(0,0%,100%,.45) 0,transparent 35%),radial-gradient(circle at 50% 50%,rgba(168,189,216,.06) 0,transparent 20%,rgba(168,189,216,.08) 35%,transparent 55%),radial-gradient(circle at 72% 72%,hsla(0,0%,100%,.08) 0,transparent 28%),radial-gradient(circle at 50% 50%,transparent 35%,rgba(0,0,0,.3) 100%)}.spinning-globe__corona-glow{fill:var(--globe-jewel);opacity:0;transition:opacity .8s ease-in-out,fill .6s ease-in-out}.spinning-globe__corona-ring{fill:none;stroke:var(--globe-jewel);stroke-width:.15;opacity:0;transition:opacity .8s ease-in-out,stroke .6s ease-in-out}.context-pill:hover .spinning-globe__corona-glow{opacity:.1}.context-pill:hover .spinning-globe__corona-ring{opacity:.2}.spinning-globe--loading{--globe-jewel:#fdba42;--globe-jewel-core:hsla(0,0%,100%,.95);--globe-bg-inner:rgba(60,35,10,.25);--globe-bg-outer:rgba(35,18,5,.4);animation:globe-sun-breathe 8s ease-in-out infinite;box-shadow:inset 1px 1px 2px rgba(255,220,150,.1),inset -1px -1px 2px rgba(0,0,0,.2),0 0 6px rgba(253,180,75,.35),0 0 12px rgba(253,180,75,.15)}.spinning-globe--loading .spinning-globe__jewel{animation:jewel-wave 3s cubic-bezier(.4,0,.2,1) infinite}.spinning-globe--loading .spinning-globe__arc{animation-duration:3s}.spinning-globe--loading .spinning-globe__shade{background:radial-gradient(circle at 28% 28%,hsla(0,0%,100%,.42) 0,transparent 22%),radial-gradient(circle at 50% 50%,rgba(253,180,75,.08) 0,transparent 30%),radial-gradient(circle at 72% 72%,hsla(0,0%,100%,.06) 0,transparent 28%),radial-gradient(circle at 50% 50%,transparent 35%,rgba(0,0,0,.35) 100%)}.spinning-globe--loading .spinning-globe__corona-glow{opacity:.08;animation:corona-breathe 4s ease-in-out infinite}.spinning-globe--loading .spinning-globe__corona-ring{opacity:.15;animation:corona-ring-pulse 4s ease-in-out infinite}.spinning-globe--thinking{--globe-jewel:#a8bdd8;--globe-jewel-core:rgba(210,228,255,.95);--globe-bg-inner:rgba(40,55,80,.3);--globe-bg-outer:rgba(20,30,50,.5);animation:thinking-celestial-cycle 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__jewel{animation:jewel-wave 2s cubic-bezier(.4,0,.2,1) infinite}.spinning-globe--thinking .spinning-globe__arc{animation:arc-shimmer-celestial 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__arc:nth-child(3n+1){animation-delay:-.4s;animation-duration:7.6s}.spinning-globe--thinking .spinning-globe__arc:nth-child(3n+2){animation-delay:-1.2s;animation-duration:8.4s}.spinning-globe--thinking .spinning-globe__shade{background:radial-gradient(circle at 32% 28%,rgba(255,240,210,.38) 0,transparent 20%),radial-gradient(circle at 50% 50%,transparent 20%,hsla(36,97%,73%,.1) 50%,transparent 70%),radial-gradient(circle at 70% 72%,rgba(255,230,200,.1) 0,transparent 22%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(20,30,50,.4) 100%);animation:shade-celestial 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__corona-glow{opacity:.15;animation:corona-celestial 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__corona-ring{opacity:.3;animation:corona-ring-celestial 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__jewel-blur,.spinning-globe--thinking .spinning-globe__jewel-glow{animation:jewel-celestial-glow 8s ease-in-out infinite}.spinning-globe--thinking .spinning-globe__jewel-core{animation:core-celestial-glow 8s ease-in-out infinite}@keyframes thinking-celestial-cycle{0%,to{box-shadow:inset 1px 1px 2px rgba(168,189,216,.08),inset -1px -1px 2px rgba(0,0,0,.25),0 0 8px rgba(168,189,216,.4),0 0 16px rgba(130,160,200,.2)}20%{box-shadow:inset 1px 1px 2px hsla(31,53%,64%,.12),inset -1px -1px 2px rgba(0,0,0,.2),0 0 10px hsla(37,49%,67%,.45),0 0 20px hsla(36,48%,59%,.25)}35%,65%{box-shadow:inset 1px 1px 3px hsla(39,97%,69%,.22),inset -1px -1px 2px rgba(0,0,0,.12),0 0 18px rgba(253,180,75,.7),0 0 36px rgba(253,180,75,.4)}80%{box-shadow:inset 1px 1px 2px rgba(196,150,96,.1),inset -1px -1px 2px rgba(0,0,0,.22),0 0 10px hsla(24,25%,61%,.4),0 0 18px rgba(160,130,140,.22)}}@keyframes jewel-celestial-glow{0%,to{fill:#a8bdd8}10%{fill:#b6b7c0}18%{fill:#c4b0a8}28%{fill:#d4a574}35%,65%{fill:#ffb020}72%{fill:#d4a574}82%{fill:#b0a0c0}90%{fill:#acafcc}}@keyframes core-celestial-glow{0%,to{fill:rgba(210,228,255,.95)}35%,65%{fill:rgba(255,255,240,.98)}}@keyframes arc-shimmer-celestial{0%,to{opacity:.15;stroke-width:.1;stroke:#a8bdd8}20%{opacity:.3;stroke-width:.16;stroke:#c4b0a8}35%,65%{opacity:.75;stroke-width:.28;stroke:#ffb020}80%{opacity:.25;stroke-width:.14;stroke:#b0a0c0}}@keyframes corona-celestial{0%,to{opacity:.05;fill:#a8bdd8}20%{opacity:.12;fill:#c4b0a8}35%,65%{opacity:.45;fill:#ffb020}80%{opacity:.1;fill:#b0a0c0}}@keyframes corona-ring-celestial{0%,to{opacity:.18;stroke-width:.12;stroke:#a8bdd8}35%,65%{opacity:.55;stroke-width:.28;stroke:#ffb020}}.spinning-globe__ray{stroke:var(--globe-jewel);stroke-width:.1;opacity:0;transition:opacity .8s ease-in-out,stroke .6s ease-in-out}.spinning-globe--thinking .spinning-globe__ray{animation:ray-pulse-celestial 8s ease-in-out infinite}.spinning-globe--loading .spinning-globe__ray{animation:ray-pulse 8s ease-in-out infinite}@keyframes ray-pulse{0%,to{opacity:0;stroke-width:.06}20%{opacity:.08;stroke-width:.08}35%,65%{opacity:.4;stroke-width:.2}80%{opacity:.06;stroke-width:.07}}@keyframes ray-pulse-celestial{0%,to{opacity:0;stroke-width:.06;stroke:#a8bdd8}20%{opacity:.08;stroke-width:.08;stroke:#c4b0a8}35%,65%{opacity:.4;stroke-width:.2;stroke:#ffb020}80%{opacity:.06;stroke-width:.07;stroke:#b0a0c0}}.spinning-globe__subsurface{fill:var(--globe-jewel);opacity:.1;transition:opacity .8s ease-in-out,fill .6s ease-in-out}.spinning-globe--thinking .spinning-globe__subsurface{animation:subsurface-glow 8s ease-in-out infinite}@keyframes subsurface-glow{0%,to{opacity:.1;fill:#a8bdd8}20%{opacity:.16;fill:#c4b0a8}35%,65%{opacity:.3;fill:#ffb020}80%{opacity:.12;fill:#b0a0c0}}@keyframes shade-celestial{0%,to{background:radial-gradient(circle at 32% 28%,rgba(210,228,255,.38) 0,transparent 20%),radial-gradient(circle at 50% 50%,transparent 20%,rgba(168,189,216,.14) 50%,transparent 70%),radial-gradient(circle at 70% 72%,rgba(200,220,245,.1) 0,transparent 22%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(20,30,50,.4) 100%)}35%,65%{background:radial-gradient(circle at 32% 28%,rgba(255,240,200,.45) 0,transparent 24%),radial-gradient(circle at 50% 50%,transparent 20%,hsla(39,97%,69%,.16) 50%,transparent 70%),radial-gradient(circle at 70% 72%,rgba(255,220,180,.14) 0,transparent 22%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(40,25,10,.35) 100%)}}.spinning-globe__atmosphere{opacity:.15;transition:opacity .8s ease-in-out,transform .8s ease-in-out}.spinning-globe--thinking .spinning-globe__atmosphere{opacity:.35;animation:atmosphere-swell 8s ease-in-out infinite}@keyframes atmosphere-swell{0%,to{opacity:.35;transform:scale(1) rotate(0deg)}20%{opacity:.42;transform:scale(1.02) rotate(1.5deg)}35%,65%{opacity:.55;transform:scale(1.06) rotate(3deg)}80%{opacity:.4;transform:scale(1.03) rotate(1deg)}}.spinning-globe__flare{fill:none;stroke:var(--globe-jewel);stroke-width:.25;stroke-linecap:round;opacity:0;stroke-dasharray:12;stroke-dashoffset:12;transition:opacity .8s ease-in-out,stroke .6s ease-in-out}.spinning-globe--thinking .spinning-globe__flare{animation:flare-arc 8s ease-in-out infinite}@keyframes flare-arc{0%,85%,to{opacity:0;stroke-dashoffset:12}30%{opacity:.25;stroke-dashoffset:4}38%,62%{opacity:.55;stroke-dashoffset:0}70%{opacity:.2;stroke-dashoffset:2}}@keyframes corona-breathe{0%,to{opacity:.08}50%{opacity:.18}}@keyframes corona-ring-pulse{0%,to{opacity:.15;stroke-width:.12}50%{opacity:.35;stroke-width:.2}}@keyframes globe-moon-breathe{0%,to{box-shadow:inset 1px 1px 2px rgba(168,189,216,.08),inset -1px -1px 2px rgba(0,0,0,.25),0 0 4px rgba(168,189,216,.15),0 0 1px rgba(0,0,0,.3)}50%{box-shadow:inset 1px 1px 2px rgba(168,189,216,.1),inset -1px -1px 2px rgba(0,0,0,.22),0 0 6px rgba(168,189,216,.22),0 0 1px rgba(0,0,0,.3)}}@keyframes globe-sun-breathe{0%,to{box-shadow:inset 1px 1px 2px rgba(255,220,150,.08),inset -1px -1px 2px rgba(0,0,0,.25),0 0 4px rgba(253,180,75,.15),0 0 1px rgba(0,0,0,.3)}50%{box-shadow:inset 1px 1px 2px rgba(255,220,150,.1),inset -1px -1px 2px rgba(0,0,0,.22),0 0 6px rgba(253,180,75,.22),0 0 1px rgba(0,0,0,.3)}}.spinning-globe--error{--globe-jewel:#607590;--globe-jewel-core:rgba(200,210,220,.7);--globe-bg-inner:rgba(40,45,55,.15);--globe-bg-outer:rgba(30,35,45,.25);animation:globe-error-pulse 4s ease-in-out infinite}.spinning-globe--error .spinning-globe__jewel{animation-duration:4s}.spinning-globe--error .spinning-globe__arc{opacity:.06;animation-duration:4s}.spinning-globe--error .spinning-globe__shade{background:radial-gradient(circle at 28% 28%,hsla(0,0%,100%,.1) 0,transparent 30%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(96,117,144,.08) 60%,transparent 80%),radial-gradient(circle at 72% 72%,hsla(0,0%,100%,.03) 0,transparent 25%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(96,117,144,.1) 100%)}@keyframes globe-error-pulse{0%,to{box-shadow:inset 1px 1px 2px hsla(0,0%,100%,.04),inset -1px -1px 2px rgba(0,0,0,.3),0 0 4px rgba(96,117,144,.3)}50%{box-shadow:inset 1px 1px 2px hsla(0,0%,100%,.04),inset -1px -1px 2px rgba(0,0,0,.3),0 0 6px rgba(96,117,144,.4)}}.spinning-globe--inline{display:inline-block;vertical-align:middle;width:1.1ex;height:1.1ex;margin:0 .02em;transform:translateY(-.05ex)}.spinning-globe--inline .spinning-globe__connections{display:none}@media (prefers-reduced-motion:reduce){.spinning-globe--thinking .spinning-globe__arc,.spinning-globe__arc,.spinning-globe__jewel{animation:none;opacity:.7}.spinning-globe__jewel-blur{opacity:.2}.context-pill:hover .spinning-globe{transform:none}.spinning-globe,.spinning-globe--error,.spinning-globe--thinking,.spinning-globe--thinking .spinning-globe__jewel-blur,.spinning-globe--thinking .spinning-globe__jewel-core,.spinning-globe--thinking .spinning-globe__jewel-glow,.spinning-globe--thinking .spinning-globe__shade,.spinning-globe__atmosphere,.spinning-globe__corona-glow,.spinning-globe__corona-ring,.spinning-globe__flare,.spinning-globe__ray,.spinning-globe__subsurface{animation:none}.context-pill,.context-pill__segment{transition:none}}.spinning-globe__tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.spinning-globe__tooltip{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(-4px);background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-e2);padding:var(--sp-3) var(--sp-4);min-width:220px;z-index:160;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--dur-fast) var(--ease-standard),visibility var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard);text-align:center;display:flex;flex-direction:column;gap:var(--sp-3)}.spinning-globe__tooltip-wrapper:hover .spinning-globe__tooltip{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);transition-delay:.3s}.context-pill--pinned .spinning-globe__tooltip-wrapper:hover .spinning-globe__tooltip{opacity:0;visibility:hidden}@media (hover:none){.spinning-globe__tooltip{display:none}}.spinning-globe__tooltip-brand{font-size:var(--type-lg);font-weight:var(--weight-semibold);color:var(--text);letter-spacing:var(--tracking-tight)}.spinning-globe__tooltip-poem{font-size:var(--type-sm);line-height:var(--leading-relaxed);color:var(--text);font-style:italic}.spinning-globe__tooltip-tagline{font-size:var(--type-xs);font-weight:var(--weight-medium);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-overline)}.context-pill-wrapper{position:relative}.context-popover{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--r-card);box-shadow:var(--shadow-e2);padding:var(--sp-4);min-width:280px;z-index:150;animation:calm-modal-in var(--dur-fast) var(--ease-standard) forwards}.context-popover__row{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-2) 0;gap:var(--sp-3)}.context-popover__row:not(:last-of-type){border-bottom:1px solid var(--border)}.context-popover__label{font-size:var(--type-xs);text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--muted);flex-shrink:0}.context-popover__value{font-size:var(--type-base);color:var(--text);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.context-popover__footer{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--border);display:flex;justify-content:flex-end}.context-pill__agent-avatar,.context-pill__avatar{width:20px;height:20px;border-radius:var(--r-sm);object-fit:cover;flex-shrink:0}.context-pill__segment--agent{display:inline-flex;align-items:center;gap:var(--sp-1);cursor:pointer;border-radius:var(--r-sm);padding:2px 4px;margin:-2px -4px;transition:background var(--dur-fast) var(--ease-standard)}.context-pill__segment--agent:hover{background:var(--panel-3)}.context-pill__chevron{display:inline-block;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid;opacity:.5;margin-left:2px}.context-pill__agent-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--panel);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-e2);min-width:240px;z-index:160;overflow:hidden;animation:calm-modal-in var(--dur-fast) var(--ease-standard) forwards}.context-pill__agent-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--sp-3) var(--sp-4);background:none;border:none;cursor:pointer;text-align:left;color:var(--text);font-size:var(--type-base);transition:background var(--dur-fast) var(--ease-standard)}.context-pill__agent-item:hover{background:var(--panel-2)}.context-pill__agent-item--active{background:var(--accent-soft)}.context-pill__agent-item:not(:last-child){border-bottom:1px solid var(--border)}.context-pill__agent-info{display:flex;align-items:center;gap:var(--sp-2)}.context-pill__agent-name{font-size:var(--type-base);font-weight:var(--weight-medium);color:var(--text)}.context-pill__agent-desc{font-size:var(--type-xs);color:var(--muted);line-height:var(--leading-tight)}.agent-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:var(--sp-3)}.shell-canvas{grid-area:canvas;overflow-y:auto;padding:var(--sp-4);position:relative;z-index:1;container-type:size;container-name:dashboard}[data-theme=cyberpunk] .shell-canvas{background:transparent}.shell-canvas:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:var(--canvas-scrim),radial-gradient(ellipse at 15% 50%,var(--canvas-glow-1) 0,transparent 50%),radial-gradient(ellipse at 80% 20%,var(--canvas-glow-2) 0,transparent 50%)}.shell-rail{grid-area:rail;box-shadow:var(--shadow-rail),var(--glass-highlight);display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--glass-rail-bg);backdrop-filter:var(--glass-rail-backdrop);-webkit-backdrop-filter:var(--glass-rail-backdrop);z-index:1}.shell-rail--hidden{overflow:visible;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.shell-rail--hidden .rail-content,.shell-rail--hidden .rail-overlays,.shell-rail--hidden .rail-tabs{display:none}.mobile-tab-bar{display:none;grid-area:tabs;border-top:1px solid var(--border);background:var(--glass-bg);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop)}.mobile-tab-bar__tabs{display:flex;justify-content:stretch;padding:0;margin:0;list-style:none}.mobile-tab-bar__tab{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sp-2) 0;background:none;border:none;color:var(--muted);font-size:var(--type-xs);font-family:var(--font-body);cursor:pointer;transition:color var(--dur-fast) var(--ease-standard)}.mobile-tab-bar__tab:hover{color:var(--text)}.mobile-tab-bar__tab--active{color:var(--accent)}@media (max-width:767px),(orientation:portrait){.app-shell,.app-shell.app-shell--rail-collapsed{grid-template-columns:1fr;grid-template-rows:var(--header-height) 1fr auto;grid-template-areas:"header" "content" "tabs"}.shell-canvas,.shell-rail{grid-area:content}.app-shell[data-mobile-tab=chat] .shell-canvas,.app-shell[data-mobile-tab=dashboard] .shell-rail{display:none}.shell-rail{width:100%;box-shadow:none}.rail-pill{display:none}.mobile-tab-bar{display:block}.shell-header__center{display:none}}.input{width:100%;background:var(--panel);border:1px solid var(--border-control);color:var(--text);padding:10px 12px;border-radius:var(--r-control);outline:none;transition:border-color .15s ease}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--accent)}.rail-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.rail-tab{padding:12px 16px;font-size:var(--type-base);font-weight:var(--weight-medium);color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.rail-tab:hover{color:var(--text)}.rail-tab--active{color:var(--text);border-bottom-color:var(--accent)}.rail-content{flex:1 1;overflow:hidden;min-height:0;display:flex;flex-direction:column}.rail-pill{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:10;display:flex;align-items:center;justify-content:center}.rail-pill__knob{width:4px;height:48px;border-radius:var(--r-pill);background:var(--border-strong);transition:background var(--dur-fast) var(--ease-standard),height var(--dur-fast) var(--ease-standard)}.rail-pill:hover .rail-pill__knob{background:var(--accent);height:64px}.rail-pill--collapsed{position:absolute;top:var(--sp-4);bottom:auto;left:-44px;width:40px;height:40px;cursor:pointer;border-radius:var(--r-card) 0 0 var(--r-card);background:var(--accent-soft);border:1px solid var(--accent);border-right:none;box-shadow:var(--shadow-e2);color:var(--accent);padding:0;font:inherit;transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.rail-pill--collapsed:hover{color:var(--accent-hover);border-color:var(--accent-hover);background:var(--accent-soft);box-shadow:var(--shadow-e3);transform:translateX(-2px)}.rail-pill--collapsed:active{background:var(--accent);color:var(--text-inverse)}.rail-pill--collapsed:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rail-chat-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.rail-chat-panel__messages{flex:1 1;overflow-y:auto;padding:var(--sp-3)}.rail-chat-panel__messages,.rail-chat-stream{display:flex;flex-direction:column;gap:var(--sp-3)}.rail-empty-panel{display:flex;align-items:center;justify-content:center;padding:var(--sp-7);text-align:center}.rail-chat-panel__threads{position:absolute;top:0;left:0;bottom:0;width:min(260px,75%);z-index:5;background:var(--glass-rail-bg);backdrop-filter:var(--glass-rail-backdrop);-webkit-backdrop-filter:var(--glass-rail-backdrop);border-right:1px solid var(--border);box-shadow:var(--shadow-e2);display:flex;flex-direction:column;overflow:hidden;animation:thread-sidebar-in var(--dur-fast) var(--ease-standard) forwards}@keyframes thread-sidebar-in{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}.rail-chat-panel__threads-scrim{position:absolute;inset:0;z-index:4;background:rgba(0,0,0,.15)}.rail-chat-panel__threads-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3);border-bottom:1px solid var(--border);flex-shrink:0}.rail-chat-panel__threads-title{font-size:var(--type-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--muted)}.rail-chat-panel__threads-list{flex:1 1;overflow-y:auto;padding:var(--sp-2) 0}.rail-chat-panel__thread-item{display:flex;flex-direction:column;gap:2px;padding:var(--sp-2) var(--sp-3);cursor:pointer;border:none;background:none;width:100%;text-align:left;font-family:var(--font-body);transition:background var(--dur-fast) var(--ease-standard)}.rail-chat-panel__thread-item:hover{background:var(--panel-2)}.rail-chat-panel__thread-item--active{background:var(--accent-soft)}.rail-chat-panel__thread-name{font-size:var(--type-base);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-chat-panel__thread-meta{font-size:var(--type-xs);color:var(--muted)}.rail-chat-panel__threads-empty{padding:var(--sp-4) var(--sp-3);text-align:center;font-size:var(--type-sm);color:var(--muted)}.rail-tabs__sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:4px var(--sp-2);background:none;border:1px solid var(--border);border-radius:var(--r-control);color:var(--muted);cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.rail-tabs__sidebar-toggle:hover{background:var(--panel-2);color:var(--text);border-color:var(--border-strong)}.rail-tabs__sidebar-toggle--active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.rail-tabs__avatar-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:4px var(--sp-2) 4px auto;background:none;border:1px solid var(--border);border-radius:var(--r-control);color:var(--muted);cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.rail-tabs__avatar-toggle:hover{background:var(--panel-2);color:var(--text);border-color:var(--border-strong)}@media (prefers-reduced-motion:reduce){.rail-chat-panel__threads{animation:none}}.settings-modal{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-card);max-width:520px;width:calc(100% - var(--sp-6));box-shadow:var(--shadow-e3);animation:calm-modal-in var(--dur-modal) var(--ease-standard) forwards;overflow:hidden}.settings-modal__header{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border)}.settings-modal__title{font-size:var(--type-lg);font-weight:var(--weight-semibold);color:var(--text);margin:0}.settings-modal__content{padding:var(--sp-5)}.settings-modal__section{display:flex;flex-direction:column;gap:var(--sp-4)}.settings-modal__field{display:flex;flex-direction:column;gap:var(--sp-1)}.settings-modal__label{font-size:var(--type-sm);font-weight:var(--weight-medium);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-overline)}.calm-region-error{display:flex;align-items:center;justify-content:center;padding:var(--sp-7);min-height:200px}.calm-region-error__content{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center;max-width:360px}.calm-region-error__title{margin:0;font-size:var(--type-md);font-weight:var(--weight-semibold);color:var(--text)}.calm-region-error__message{margin:0;font-size:var(--type-sm);color:var(--muted);line-height:var(--leading-relaxed)}.calm-error-boundary__header{display:flex;align-items:center;gap:var(--sp-2)}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bubble{border-radius:var(--r-card);padding:var(--sp-3);max-width:100%}.bubble.user{margin-left:auto;max-width:85%;background:var(--panel-2);border:var(--bubble-user-border)}.bubble.user,.bubble__row{animation:fadeSlideIn .3s ease-out}.bubble__row{display:flex;align-items:flex-start;gap:var(--sp-2)}.bubble__row--grouped{margin-top:-2px}.bubble__avatar-col{flex-shrink:0;width:28px;padding-top:2px}.bubble__avatar-col--spacer{visibility:hidden}.bubble__avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;display:block}.bubble.assistant{background:var(--bubble-assistant-bg);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);border:1px solid var(--glass-border);border-radius:var(--r-card);box-shadow:var(--glass-shadow),var(--glass-highlight);overflow:hidden;padding:0;position:relative;flex:1 1;min-width:0;transition:box-shadow var(--dur-standard) var(--ease-standard),transform var(--dur-standard) var(--ease-standard)}.bubble.assistant:hover{box-shadow:var(--glass-shadow),var(--glass-highlight),var(--shadow-e2);transform:translateY(-1px)}.bubble.assistant:before{content:"";display:block;height:2px;background:var(--ai-hairline)}.bubble--grouped.assistant:before{display:none}.bubble--grouped.assistant{border-top-left-radius:var(--r-sm);border-top-right-radius:var(--r-sm)}.bubbleContent{font-family:var(--font-prose);font-size:var(--type-base);line-height:var(--leading-relaxed);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bubble.assistant .bubbleContent{padding:var(--sp-3);padding-right:var(--sp-6);word-break:break-word}.bubbleContent :where(p){margin:0 0 10px}.bubbleContent :where(p:last-child){margin-bottom:0}.bubbleContent :where(code){background:var(--panel-2);border:1px solid var(--border);padding:2px 6px;border-radius:var(--r-code);font-family:var(--font-mono);font-size:var(--type-sm)}.bubbleContent :where(pre){background:var(--panel-2);border:1px solid var(--border);padding:10px 12px;border-radius:var(--r-code);overflow:auto}.bubbleContent :where(pre code){background:transparent;border:none;padding:0}.bubbleContent :where(a){color:var(--accent)}.bubbleContent :where(a:hover){text-decoration:underline}.process-strip{margin:var(--sp-1) 0}.process-strip-row{display:grid;grid-template-columns:16px auto 1fr auto;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2);padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-control);background:var(--panel);box-shadow:var(--shadow-e1);cursor:pointer;list-style:none;font-size:var(--type-base)}.process-strip-row::-webkit-details-marker{display:none}.process-glyph{display:block;width:16px;height:16px;transform:scaleX(1);transition:transform .15s linear}.process-glyph--collapsing{transform:scaleX(0)}.process-glyph--active{color:var(--ai)}.process-glyph--complete{color:var(--muted)}.process-glyph--error{color:var(--danger)}.process-label{font-size:var(--type-xs);text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--muted)}.process-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.process-time{font-size:var(--type-xs);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.process-panel{padding:var(--sp-2) var(--sp-3) var(--sp-3)}.process-section{margin-bottom:var(--sp-2)}.process-section-label{font-size:var(--type-xs);text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--muted);margin-bottom:var(--sp-1);cursor:pointer;list-style:none}.process-section-label::-webkit-details-marker{display:none}.process-step{display:grid;grid-template-columns:1px 16px 1fr;grid-gap:var(--sp-2);gap:var(--sp-2);padding:2px 0;font-size:var(--type-md);line-height:var(--leading-normal)}.process-step-rail{width:1px;background:var(--border);justify-self:center;min-height:100%}.process-step-rail--active{background:var(--accent)}.process-step-text{color:var(--text)}.process-step--alert{grid-template-columns:2px 16px 1fr}.process-step-icon{font-size:var(--type-md);display:flex;align-items:center;justify-content:center;width:16px;height:16px}.process-step-rail--info{background:var(--calm-ai);width:2px}.process-step-rail--success{background:var(--calm-ok);width:2px}.process-step-rail--warning{background:var(--calm-warn);width:2px}.process-step-rail--error{background:var(--calm-err);width:2px}.process-step--info .process-step-icon{color:var(--calm-ai)}.process-step--success .process-step-icon{color:var(--calm-ok)}.process-step--warning .process-step-icon{color:var(--calm-warn)}.process-step--error .process-step-icon{color:var(--calm-err)}.process-step--tool .process-step-tool-name{color:var(--accent)}.process-step--tool .process-step-tool-args{color:var(--muted);font-size:var(--type-xs)}.process-step--clickable{cursor:pointer;border-radius:var(--r-sm)}.process-step--clickable:hover{background:var(--hover-overlay)}.process-step-details{grid-column:1/-1;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) 0 var(--sp-1) calc(1px + var(--sp-2) + 16px + var(--sp-2));font-size:var(--type-xs)}.process-step-details__label{color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.process-step-details__label--error{color:var(--calm-err)}.process-step-details__kv-list{display:flex;flex-direction:column;gap:2px}.process-step-details__kv{display:flex;gap:var(--sp-2)}.process-step-details__key{color:var(--muted);flex-shrink:0}.process-step-details__result,.process-step-details__value{color:var(--text);word-break:break-all}.process-step-details__result{white-space:pre-wrap}.process-step-details__error{color:var(--calm-err);white-space:pre-wrap;word-break:break-all}.timeline__active{margin-bottom:var(--sp-1)}.process-all{margin-top:var(--sp-1)}.input-dock{position:fixed;bottom:var(--sp-5);left:50%;transform:translateX(-50%);width:min(960px,calc(100% - var(--sp-7)));background:var(--glass-elevated-bg);backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);border:1px solid var(--glass-border);border-radius:var(--r-pill);box-shadow:var(--glass-shadow),var(--glass-highlight);padding:var(--sp-3) var(--sp-4);z-index:99}.input-dock-row{display:flex;align-items:center;gap:var(--sp-3)}.input-dock .input{flex:1 1;background:transparent;border:none;padding:var(--sp-2) 0;border-radius:0}.input-dock .input:focus{border:none;outline:none}.chat-input{font-family:var(--font-prose);font-size:var(--type-base);resize:none;overflow-y:auto;max-height:150px;line-height:var(--leading-normal)}.attach-btn{background:transparent;border:none;color:var(--subtle);cursor:pointer;padding:var(--sp-2);border-radius:var(--r-md);font-size:var(--type-xl);transition:background var(--dur-standard) var(--ease-standard),color var(--dur-standard) var(--ease-standard);display:flex;align-items:center;justify-content:center}.attach-btn:hover{background:var(--panel-2);color:var(--text)}.send-btn{background:transparent;border:none;color:var(--subtle);cursor:pointer;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-control);font-size:var(--type-xl);transition:background var(--dur-standard) var(--ease-standard),color var(--dur-standard) var(--ease-standard);display:flex;align-items:center;justify-content:center}.send-btn.active{color:var(--accent);background:var(--accent-soft)}.send-btn:hover{background:var(--panel-2);color:var(--text)}.send-btn:disabled{cursor:not-allowed}.hidden-file-input{display:none}.staged-files{display:flex;flex-wrap:wrap;gap:6px;padding:6px 8px 0}.staged-file-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--r-control);background:var(--panel-2);border:1px solid var(--border);font-size:var(--type-sm);max-width:200px}.staged-file-chip__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staged-file-chip__icon{font-size:var(--type-xs);opacity:.6}.staged-file-chip__remove{background:none;border:none;cursor:pointer;padding:0 2px;opacity:.5;font-size:var(--type-sm);color:var(--text)}.staged-file-chip__remove:hover{opacity:1}.mic-btn{background:transparent;border:none;color:var(--subtle);cursor:pointer;padding:var(--sp-2);border-radius:var(--r-md);font-size:var(--type-xl);transition:background var(--dur-standard) var(--ease-standard),color var(--dur-standard) var(--ease-standard);display:flex;align-items:center;justify-content:center}.mic-btn:hover{background:var(--panel-2);color:var(--text)}.mic-btn:disabled{cursor:not-allowed;opacity:.4}.recording-overlay{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-1) 0}.recording-cancel-btn,.recording-confirm-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;cursor:pointer;font-size:var(--type-lg);flex-shrink:0;transition:background var(--dur-standard) var(--ease-standard),color var(--dur-standard) var(--ease-standard)}.recording-cancel-btn{background:var(--panel-2);color:var(--muted)}.recording-cancel-btn:hover{background:var(--danger-soft);color:var(--danger)}.recording-confirm-btn{background:var(--danger);color:var(--text-inverse)}.recording-confirm-btn:hover{background:color-mix(in srgb,var(--danger) 80%,#000)}.recording-waveform{flex:1 1;display:flex;align-items:center;justify-content:center;gap:2px;height:36px;min-width:0}.recording-bar{width:3px;height:100%;background:var(--danger);border-radius:1.5px;transform-origin:center;transform:scaleY(.08);transition:transform 80ms ease-out}.recording-timer{font-size:var(--type-base);color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:36px;text-align:center;flex-shrink:0}.calm-audio{display:flex;flex-direction:column;gap:6px;max-width:360px;width:100%}.calm-audio__controls{display:flex;align-items:center;gap:10px}.calm-audio__play-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;border-radius:50%;border:none;background:var(--accent);color:var(--text-inverse);cursor:pointer;transition:background var(--dur-fast,.12s) ease;padding:0}.calm-audio__play-btn:hover{background:var(--accent-hover)}.calm-audio__play-btn:active{background:var(--accent-pressed)}.calm-audio__play-btn:focus-visible{outline:2px solid var(--focus-inner);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-outer)}.calm-audio__play-btn:disabled{opacity:.5;cursor:default}.calm-audio__play-btn--ai{background:var(--ai)}.calm-audio__play-btn--ai:hover{background:var(--ai-hover)}.calm-audio__play-btn--ai:active{background:var(--ai-pressed)}.calm-audio__play-btn--ghost{width:36px;height:36px;min-width:36px;border-radius:50%;background:var(--border);animation:calm-audio-pulse 1.2s ease-in-out infinite}.calm-audio__waveform{flex:1 1;display:flex;align-items:center;gap:1.5px;height:36px;cursor:pointer;touch-action:none;border-radius:var(--r-sm)}.calm-audio__waveform:focus-visible{outline:2px solid var(--focus-inner);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-outer)}.calm-audio__bar{flex:1 1;min-width:2px;max-width:4px;height:100%;background:var(--border-strong);border-radius:1px;transform-origin:center center;transition:background .1s ease}.calm-audio__bar--played{background:var(--accent)}.calm-audio--assistant .calm-audio__bar--played{background:var(--ai)}.calm-audio__bar--skeleton{background:var(--border);animation:calm-audio-pulse 1.2s ease-in-out infinite}.calm-audio__time{font-size:var(--type-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);min-width:70px;text-align:right;white-space:nowrap;flex-shrink:0}.calm-audio__label{display:flex;align-items:center;gap:4px;font-size:var(--type-xs);color:var(--subtle);padding-left:46px}.calm-audio__error{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger);font-size:var(--type-base)}@keyframes calm-audio-pulse{0%,to{opacity:1}50%{opacity:.4}}.calm-file{display:flex;flex-direction:column;gap:var(--sp-3);max-width:360px}.calm-file__header{display:flex;align-items:center;gap:var(--sp-3)}.calm-file__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);flex-shrink:0}.calm-file--assistant .calm-file__icon{background:var(--ai-soft);color:var(--ai)}.calm-file__info{display:flex;flex-direction:column;gap:2px;overflow:hidden;min-width:0}.calm-file__name{font-weight:var(--weight-medium);font-size:var(--type-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calm-file__meta{font-size:var(--type-sm);color:var(--muted)}.calm-file__actions{margin-top:var(--sp-1)}.calm-file__actions a{text-decoration:none;display:inline-block}.calm-file__preview{max-height:200px;overflow:auto;border-top:1px solid var(--border);padding-top:var(--sp-3);font-size:var(--type-sm)}.calm-file__empty{font-size:var(--type-sm);color:var(--muted)}.calm-buttons{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-2)}.calm-buttons__row{display:flex;gap:var(--sp-2);flex-wrap:wrap}.calm-image{max-width:100%}.calm-image__img{max-width:100%;border-radius:var(--r-md);display:block}.calm-image__caption{font-size:var(--type-sm);color:var(--muted);margin-top:6px}.calm-message-error{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);color:var(--danger);font-size:var(--type-sm)}.calm-message-error__text{flex:1 1}.rail-chat-panel__error{padding:0 var(--sp-3)}.input-dock--inline{position:relative;bottom:auto;left:auto;transform:none;width:100%;border-radius:0;box-shadow:none;border:none;border-top:1px solid var(--border);flex-shrink:0;z-index:auto}@media (prefers-reduced-motion:reduce){.bubble.user,.bubble__row{animation:none}.bubble.assistant{transition:none}.calm-audio__bar--skeleton,.calm-audio__play-btn--ghost{animation:none}.recording-bar{transition:none}}.activity-drawer{position:static}.activity-toggle{position:absolute;top:14px;right:12px;background:transparent;border:none;cursor:pointer;padding:4px;z-index:1}.activity-toggle:hover .activity-toggle__hexagon{opacity:1}.activity-toggle:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer);border-radius:var(--r-sm)}.activity-toggle__hexagon{font-size:var(--type-md);color:var(--calm-ai);opacity:.5;transition:opacity var(--dur-fast) var(--ease-standard)}.activity-toggle--active .activity-toggle__hexagon{opacity:1;animation:activity-pulse 1.5s ease-in-out infinite}.activity-toggle--expanded .activity-toggle__hexagon{opacity:1}@keyframes activity-pulse{0%,to{opacity:1}50%{opacity:.5}}.activity-toggle__error-dot{position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--danger)}.activity-drawer__panel{--type-2xs:11px;--type-xs:12px;--type-sm:13px;--type-base:14px;--type-md:16px;background:var(--panel-2);border-top:1px solid var(--border);margin-top:var(--sp-2);padding:var(--sp-2) var(--sp-3);animation:activity-panel-in var(--dur-fast) var(--ease-standard) both}@keyframes activity-panel-in{0%{opacity:0;max-height:0}to{opacity:1;max-height:400px}}.activity-summary{display:flex;align-items:center;gap:6px;padding:8px 0;font-size:var(--type-base);color:var(--muted)}.activity-summary__circle{color:var(--calm-ai)}.activity-summary__label{font-weight:var(--weight-medium)}.activity-summary__stats{color:var(--muted)}.activity-panel{gap:var(--sp-2);max-height:300px;overflow-y:auto}.activity-panel,.activity-section{display:flex;flex-direction:column}.activity-section{gap:var(--sp-1)}.activity-section--all{margin-top:var(--sp-2)}.activity-section__label{font-size:var(--type-2xs);text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--muted);padding:var(--sp-1) 0}.activity-section__label--clickable{cursor:pointer;list-style:none}.activity-section__label--clickable::-webkit-details-marker{display:none}.activity-section__list{display:flex;flex-direction:column;gap:2px}.activity-row{display:grid;grid-template-columns:3px 16px auto 1fr auto;align-items:baseline;grid-gap:6px;gap:6px;padding:4px 0;font-size:var(--type-base);border-radius:var(--r-control);transition:background var(--dur-fast) var(--ease-standard)}.activity-row--progress{grid-template-columns:3px 16px 1fr auto}.activity-row--clickable{cursor:pointer}.activity-row--clickable:hover{background:var(--panel)}.activity-row--clickable:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer)}.activity-row--error{color:var(--calm-err)}.activity-row__rail{width:3px;background:var(--border);align-self:stretch;border-radius:1.5px}.activity-row__rail--active{background:var(--calm-ai);animation:rail-pulse 1s ease-in-out infinite}@keyframes rail-pulse{0%,to{opacity:1}50%{opacity:.5}}.activity-row__icon{font-size:var(--type-2xs);color:var(--calm-ai);text-align:center;line-height:var(--leading-none)}.activity-row__name{font-weight:var(--weight-semibold);color:var(--text)}.activity-row__text{color:var(--text)}.activity-row__args,.activity-row__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-row__args{color:var(--muted);font-family:var(--font-mono);font-size:var(--type-sm)}.activity-row__duration{color:var(--muted);font-size:var(--type-sm);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.activity-row__details{grid-column:1/-1;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2);background:var(--panel);border-radius:var(--r-control);margin-top:var(--sp-1)}.activity-row__section{display:flex;flex-direction:column;gap:var(--sp-1)}.activity-row__section-label{font-size:var(--type-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.activity-row__section-label--error{color:var(--calm-err)}.activity-row__args-list{display:flex;flex-direction:column;gap:2px}.activity-row__arg{display:flex;gap:var(--sp-2);font-size:var(--type-xs);font-family:var(--font-mono)}.activity-row__arg-key{color:var(--muted);flex-shrink:0}.activity-row__arg-value{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-row__result{font-family:var(--font-mono);color:var(--text);background:var(--panel-2);max-height:100px;overflow-y:auto}.activity-row__error,.activity-row__result{font-size:var(--type-xs);padding:var(--sp-2);border-radius:var(--r-sm);white-space:pre-wrap;word-break:break-word}.activity-row__error{color:var(--calm-err);background:var(--danger-soft)}.processing-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--panel-2);border-top:1px solid var(--border);font-size:var(--type-base);color:var(--muted);animation:processing-indicator-in var(--dur-fast) var(--ease-standard) both}@keyframes processing-indicator-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.processing-indicator__hexagon{font-size:var(--type-sm);color:var(--calm-ai);animation:activity-pulse 1.5s ease-in-out infinite}.processing-indicator__text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:var(--weight-medium)}.processing-indicator__dots{display:flex;gap:3px;align-items:center}.processing-indicator__dot{width:4px;height:4px;border-radius:50%;background:var(--calm-ai);animation:processing-dot 1.4s ease-in-out infinite}.processing-indicator__dot:nth-child(2){animation-delay:.2s}.processing-indicator__dot:nth-child(3){animation-delay:.4s}@keyframes processing-dot{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.processing-indicator--expanded{flex-direction:column;padding:0}.processing-indicator__header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;background:transparent;border:none;cursor:pointer;font-size:var(--type-base);text-align:left;color:var(--text);font-family:inherit}.processing-indicator__header:hover{background:var(--panel)}.processing-indicator__header:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer);border-radius:0}.processing-indicator__elapsed{color:var(--muted);font-size:var(--type-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.processing-indicator__chevron{color:var(--muted);font-size:var(--type-2xs);margin-left:8px}.processing-indicator__panel{padding:0 16px 12px;max-height:200px;overflow-y:auto;border-top:1px solid var(--border)}.tool-panel{padding:12px}.tool-panel--empty,.tool-panel--error,.tool-panel--loading{padding:24px;text-align:center;color:var(--muted)}.tool-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tool-panel__count{font-size:var(--type-base);color:var(--muted)}.tool-panel__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.tool-panel__item{padding:10px;border:1px solid var(--border);border-radius:var(--r-sm);cursor:default}.tool-panel__item:hover{border-color:var(--border-strong)}.tool-panel__item-name{font-weight:var(--weight-semibold);margin-bottom:4px}.tool-panel__item-desc{font-size:var(--type-base);color:var(--muted);margin-bottom:6px}.tool-panel__item-meta{display:flex;gap:6px;flex-wrap:wrap}.tool-panel__badge--confirm{font-size:var(--type-sm);padding:2px 6px;border-radius:var(--r-sm);background:var(--confirm-bg);color:var(--confirm-text)}.tool-panel__item--clickable{cursor:pointer}.tool-panel__item--clickable:hover{background:var(--panel-2)}.tool-call-card{padding:8px 12px;border-radius:var(--r-sm);border:1px solid var(--border);margin:4px 0;font-size:var(--type-base)}.tool-call-card--running{border-color:var(--status-info);background:var(--status-info-soft)}.tool-call-card--completed{border-color:var(--status-ok);background:var(--status-ok-soft)}.tool-call-card--failed{border-color:var(--status-fail);background:var(--status-fail-soft)}.tool-call-card__header{display:flex;align-items:center;gap:8px}.tool-call-card__name{font-weight:var(--weight-semibold)}.tool-call-card__status{font-size:var(--type-sm);padding:1px 6px;border-radius:3px}.tool-call-card__status--running{color:var(--status-info-text)}.tool-call-card__status--completed{color:var(--status-ok-text)}.tool-call-card__status--failed{color:var(--status-fail-text)}.tool-call-card__args{margin-top:4px;color:var(--muted);font-size:var(--type-sm)}.tool-call-card__result{margin-top:6px;padding:6px;background:var(--panel-2);border-radius:var(--r-sm);white-space:pre-wrap}.tool-call-card__error{margin-top:6px;color:var(--status-fail-text)}.tool-call-card__duration{margin-top:4px;font-size:var(--type-sm);color:var(--muted)}.tool-form{padding:8px 0}.tool-form__title{font-weight:var(--weight-semibold);font-size:var(--type-lg);margin-bottom:4px}.tool-form__desc{font-size:var(--type-base);color:var(--muted);margin-bottom:12px}.tool-form__fields{display:flex;flex-direction:column;gap:10px}.tool-form__field{display:flex;flex-direction:column;gap:3px}.tool-form__field--toggle{flex-direction:row;align-items:center;gap:8px}.tool-form__label{font-size:var(--type-base);font-weight:var(--weight-medium)}.tool-form__hint{font-size:var(--type-sm);color:var(--muted)}.tool-form__input,.tool-form__select{padding:6px 8px;border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--type-md);background:var(--panel)}.tool-form__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.tool-form__field--error .tool-form__input,.tool-form__field--error .tool-form__select,.tool-form__field--error textarea.tool-form__input{border-color:var(--danger)}.tool-form__error{font-size:var(--type-sm);color:var(--danger);margin-top:2px}.tool-form__input:focus-visible,.tool-form__select:focus-visible,textarea.tool-form__input:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer);border-radius:var(--r-sm)}.tool-form__label [aria-hidden=true]{color:var(--danger)}.tool-form__object{border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.tool-form__object--error{border-color:var(--danger)}.tool-form__object-header{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:10px 12px;background:var(--panel-2);border:none;cursor:pointer;font-size:var(--type-base);font-weight:var(--weight-medium);text-align:left}.tool-form__object-header:hover{background:var(--panel)}.tool-form__object-header:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer);outline-offset:-2px}.tool-form__object-chevron{color:var(--muted);transition:transform .15s ease}.tool-form__object-chevron--collapsed{transform:rotate(-90deg)}.tool-form__object-title{flex:1 1}.tool-form__object-title [aria-hidden=true]{color:var(--danger)}.tool-form__object-hint{font-size:var(--type-sm);font-weight:var(--weight-normal);color:var(--muted)}.tool-form__object-content{padding:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.tool-form__array{border:1px solid var(--border);border-radius:var(--r-sm);padding:0;margin:0}.tool-form__array--error{border-color:var(--danger)}.tool-form__array-legend{padding:10px 12px;font-size:var(--type-base);font-weight:var(--weight-medium);background:var(--panel-2);width:100%;margin:0}.tool-form__array-legend [aria-hidden=true]{color:var(--danger)}.tool-form__array-hint{display:block;padding:0 12px 8px;font-size:var(--type-sm);color:var(--muted)}.tool-form__array-list{display:flex;flex-direction:column;gap:1px;background:var(--border)}.tool-form__array-item{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:var(--panel)}.tool-form__array-index{min-width:24px;padding-top:8px;font-size:var(--type-base);color:var(--muted);text-align:right}.tool-form__array-item-content{flex:1 1;min-width:0}.tool-form__array-remove{width:40px;height:40px;border:1px solid var(--border);border-radius:var(--r-sm);background:transparent;cursor:pointer;font-size:var(--type-xl);line-height:var(--leading-none);color:var(--muted)}.tool-form__array-remove:hover{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.tool-form__array-remove:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer)}.tool-form__array-add{width:calc(100% - 24px);min-height:40px;margin:12px;border:1px dashed var(--border);border-radius:var(--r-sm);background:transparent;cursor:pointer;font-size:var(--type-base);color:var(--accent)}.tool-form__array-add:hover{background:var(--accent-soft);border-color:var(--accent)}.tool-form__array-add:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer)}.tool-form__mode-toggle{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:var(--type-base)}.tool-form__mode-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.tool-form__json-textarea{min-height:200px;font-family:var(--font-mono);font-size:var(--type-base);resize:vertical}.tool-result{margin-top:10px;padding:8px;border-radius:var(--r-sm);border:1px solid var(--border)}.tool-result--success{border-color:var(--status-ok);background:var(--status-ok-soft)}.tool-result--error{border-color:var(--status-fail);background:var(--status-fail-soft)}.tool-result--confirm{border-color:var(--status-warn-alt);background:var(--status-warn-soft)}.tool-result__status{font-weight:var(--weight-semibold);font-size:var(--type-base);margin-bottom:4px}.tool-result__output{font-size:var(--type-base);white-space:pre-wrap;margin:0;padding:6px;background:var(--panel-2);border-radius:var(--r-sm)}.tool-result__message{font-size:var(--type-base);color:var(--muted)}.tool-result__meta{font-size:var(--type-sm);color:var(--muted);margin-top:4px}.calm-tool-activity,.calm-tool-activity__feed{display:flex;flex-direction:column;gap:var(--sp-1)}.calm-tool-activity__empty{font-size:var(--type-base);color:var(--muted);text-align:center;padding:var(--sp-4)}.widgets-panel{padding:12px}.widgets-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.widgets-panel__count{font-size:var(--type-base);color:var(--muted)}.widgets-panel__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.widgets-panel__item{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--border);border-radius:var(--r-sm)}.widgets-panel__item:hover{border-color:var(--border-strong)}.widgets-panel__item--hidden{opacity:.6}.widgets-panel__item-info{flex:1 1;min-width:0}.widgets-panel__item-name{font-weight:var(--weight-semibold);font-size:var(--type-base)}.widgets-panel__item-desc{font-size:var(--type-sm);color:var(--muted);margin-top:2px}.widgets-panel__item-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.widgets-panel__badge{font-size:var(--type-xs);padding:1px 6px;border-radius:var(--r-sm);background:var(--panel-2);color:var(--muted)}.widgets-panel__empty{padding:24px}.calm-grid__empty,.widgets-panel__empty{text-align:center;color:var(--muted);font-size:var(--type-base)}.calm-grid__empty{grid-column:1/-1;padding:48px 24px}.calm-alert-container{position:fixed;bottom:56px;left:calc((100% - var(--rail-width, 400px)) / 2);transform:translateX(-50%);display:flex;flex-direction:column-reverse;gap:var(--sp-2);z-index:1000;pointer-events:none;max-width:400px}.calm-alert{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow-e2);font-size:var(--type-base);pointer-events:auto;animation:calm-alert-in var(--dur-standard) var(--ease-standard)}.calm-alert--info{border-left:3px solid var(--calm-ai);background:var(--calm-card-bg-ai)}.calm-alert--success{border-left:3px solid var(--calm-ok)}.calm-alert--warning{border-left:3px solid var(--calm-warn)}.calm-alert--error{border-left:3px solid var(--calm-err)}.calm-alert__icon{font-size:var(--type-sm);flex-shrink:0}.calm-alert--info .calm-alert__icon{color:var(--calm-ai)}.calm-alert--success .calm-alert__icon{color:var(--calm-ok)}.calm-alert--warning .calm-alert__icon{color:var(--calm-warn)}.calm-alert--error .calm-alert__icon{color:var(--calm-err)}.calm-alert__message{flex:1 1;color:var(--text)}.calm-alert__dismiss{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;font-size:var(--type-lg);line-height:var(--leading-none)}.calm-alert__dismiss:hover{color:var(--text)}@keyframes calm-alert-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.activity-row--alert{display:grid;grid-template-columns:3px 16px 1fr auto;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2)}.activity-row--alert .activity-row__rail,.activity-row--info .activity-row__rail{background:var(--calm-ai)}.activity-row--success .activity-row__rail{background:var(--calm-ok)}.activity-row--warning .activity-row__rail{background:var(--calm-warn)}.activity-row--error .activity-row__rail{background:var(--calm-err)}.activity-row--info .activity-row__icon{color:var(--calm-ai)}.activity-row--success .activity-row__icon{color:var(--calm-ok)}.activity-row--warning .activity-row__icon{color:var(--calm-warn)}.activity-row--error .activity-row__icon{color:var(--calm-err)}.activity-row__source{font-size:var(--type-xs);color:var(--muted);background:var(--panel-2);padding:1px 6px;border-radius:var(--r-pill)}.alert-history,.alert-history__list{display:flex;flex-direction:column}.alert-history__list{gap:var(--sp-2)}.alert-history__row{display:grid;grid-template-columns:2px 16px 1fr auto auto auto;grid-gap:var(--sp-3);gap:var(--sp-3);align-items:center;padding:var(--sp-2) 0;font-size:var(--type-lg)}.alert-history__row--acknowledged{opacity:.5}.alert-history__rail{width:2px;height:100%;min-height:20px;border-radius:1px}.alert-history__icon{font-size:var(--type-sm);width:16px;text-align:center}.alert-history__message{color:var(--text);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.alert-history__source{background:var(--panel-2);padding:1px 6px;border-radius:var(--r-pill)}.alert-history__source,.alert-history__time{font-size:var(--type-base);color:var(--muted)}.alert-history__time{min-width:24px}.alert-history__dismiss{background:none;border:none;color:var(--muted);cursor:pointer;padding:2px 4px;font-size:var(--type-md);opacity:0;transition:opacity .15s}.alert-history__row:hover .alert-history__dismiss{opacity:1}.alert-history__dismiss:hover{color:var(--text)}.alert-history__rail--info{background:var(--calm-ai)}.alert-history__rail--success{background:var(--calm-ok)}.alert-history__rail--warning{background:var(--calm-warn)}.alert-history__rail--error{background:var(--calm-err)}.alert-history__icon--info{color:var(--calm-ai)}.alert-history__icon--success{color:var(--calm-ok)}.alert-history__icon--warning{color:var(--calm-warn)}.alert-history__icon--error{color:var(--calm-err)}.alert-history__empty{text-align:center;padding:var(--sp-4);color:var(--muted);font-size:var(--type-lg)}.alert-history__empty-icon{font-size:var(--type-2xl);color:var(--calm-ok);margin-bottom:var(--sp-2)}.alert-history__clear{text-align:center;padding-top:var(--sp-3);border-top:1px solid var(--border);margin-top:var(--sp-2)}.alert-history__clear-btn{font-size:var(--type-sm);color:var(--muted);background:none;border:none;cursor:pointer}.alert-history__clear-btn:hover{color:var(--text);text-decoration:underline}.alert-history__date-range{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;margin-bottom:var(--sp-2);border-bottom:1px solid var(--border);flex-wrap:wrap}.alert-history__date-label{display:flex;flex-direction:column;gap:2px;font-size:var(--type-xs);color:var(--muted);flex:1 1;min-width:120px}.alert-history__date-input{font-size:var(--type-sm);padding:4px 6px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--panel);color:var(--text);width:100%}.alert-history__date-input:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer)}.alert-history__date-separator{color:var(--muted);font-size:var(--type-sm);padding-top:14px}.alert-history__apply-btn{padding:4px 12px;font-size:var(--type-sm);background:var(--accent);color:var(--text-inverse);border:none;border-radius:var(--r-sm);cursor:pointer;margin-top:14px;transition:background .15s}.alert-history__apply-btn:hover:not(:disabled){background:var(--accent-hover)}.alert-history__apply-btn:disabled{opacity:.5;cursor:not-allowed}.alert-history__apply-btn:focus-visible{outline:2px solid var(--focus-inner);box-shadow:0 0 0 4px var(--focus-outer)}.calm-alert--rich .calm-alert__body{display:flex;flex-direction:column;gap:var(--sp-1);flex:1 1;min-width:0}.calm-alert__progress{height:4px;background:var(--panel-2);border-radius:var(--r-pill);overflow:hidden}.calm-alert__progress-bar{height:100%;border-radius:var(--r-pill);transition:width var(--dur-standard) var(--ease-standard)}.calm-alert__progress-bar--success{background:var(--calm-ok)}.calm-alert__progress-bar--warning{background:var(--calm-warn)}.calm-alert__progress-bar--error{background:var(--calm-err)}.calm-alert__progress-bar--info{background:var(--calm-ai)}.calm-alert__badges{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.calm-alert__badge{font-size:var(--type-xs);color:var(--muted);background:var(--panel-2);padding:1px 6px;border-radius:var(--r-pill)}.calm-alert__badge--apy{color:var(--calm-ok);background:var(--success-soft,var(--panel-2))}.calm-alert--milestone{border-left:3px solid var(--accent);background:linear-gradient(135deg,var(--accent-soft,var(--panel)) 0,var(--ai-soft,var(--panel)) 100%);animation:calm-alert-in var(--dur-standard) var(--ease-standard),calm-celebration-shimmer 1s var(--ease-standard) 1}.calm-alert__icon--milestone{color:var(--accent);animation:calm-milestone-bounce .5s var(--ease-standard)}@keyframes calm-celebration-shimmer{0%{box-shadow:0 0 0 0 var(--accent-soft,rgba(99,102,241,.3))}50%{box-shadow:0 0 12px 4px var(--accent-soft,rgba(99,102,241,.2))}to{box-shadow:var(--shadow-e2)}}@keyframes calm-milestone-bounce{0%{transform:scale(.5)}60%{transform:scale(1.2)}to{transform:scale(1)}}.calm-alert--action{border-left:3px solid var(--accent);animation:calm-alert-in var(--dur-standard) var(--ease-standard),calm-action-pulse 2s var(--ease-standard) infinite}@keyframes calm-action-pulse{0%,to{border-left-color:var(--accent)}50%{border-left-color:var(--calm-ai)}}.calm-alert--action .calm-alert__body{display:flex;flex-direction:column;gap:var(--sp-1);flex:1 1;min-width:0}@media (prefers-reduced-motion:reduce){.calm-alert--action,.calm-alert--milestone{animation:calm-alert-in var(--dur-standard) var(--ease-standard)}.calm-alert__icon--milestone{animation:none}}