:root{--space-0:#040713;--space-1:#071436;--space-2:#10366d;--space-3:#194b8d;--glass:#b1c5e54a;--glass-soft:#9ab5dc38;--glass-strong:#e2e8f4d6;--glass-border:#fff3;--text-primary:#f7f8fc;--text-muted:#d3d9e7;--text-dim:#aebbd2;--danger:#bf1323;--radius-card:1.5rem;--radius-control:999px;--app-width:26.875rem;--safe-bottom:max(.75rem, env(safe-area-inset-bottom));--safe-top:max(1rem, env(safe-area-inset-top));--motion-duration-press:80ms;--motion-duration-fast:.12s;--motion-duration-base:.2s;--motion-duration-slow:.35s;--motion-duration-panel:.3s;--motion-duration-reveal:.5s;--motion-duration-scene:.75s;--motion-duration-loop:1.2s;--motion-duration-ambient:18s;--motion-ease-standard:cubic-bezier(.32, .72, 0, 1);--motion-ease-enter:cubic-bezier(.25, 1, .5, 1);--motion-ease-emphasized:cubic-bezier(.17, .89, .24, 1.15);--motion-ease-spring:cubic-bezier(.34, 1.56, .64, 1);--motion-ease-ambient:ease-in-out;--motion-distance-sm:.45rem;--motion-distance-panel:1.125rem;--motion-scale-pressed:.97;--motion-stagger-step:45ms}@keyframes motion-typing-pulse{0%,70%,to{opacity:.35;transform:translateY(0)scale(.82)}35%{opacity:1;transform:translateY(-2px)scale(1.12)}}@keyframes motion-nebula-drift{0%{opacity:.78;transform:translate(-.35rem,.2rem)scale(1)}to{opacity:1;transform:translate(.4rem,-.35rem)scale(1.018)}}@keyframes motion-starfield-reveal{0%{opacity:0;transform:scale(1.018)}to{opacity:1;transform:scale(1)}}@keyframes motion-gate-enter{0%{opacity:0;transform:translateY(calc(.9rem - 50%))scale(.975)}to{opacity:1;transform:translateY(-50%)scale(1)}}@keyframes motion-mark-awaken{0%{opacity:0;transform:translateY(.4rem)scale(.78)rotate(-7deg)}65%{opacity:1;transform:translateY(0)scale(1.05)rotate(1deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes motion-drop-in{0%{opacity:0;transform:translateY(-.65rem)}to{opacity:1;transform:translateY(0)}}@keyframes motion-fade-in{0%{opacity:0}to{opacity:1}}@keyframes motion-message-in-left{0%{opacity:0;transform:translate(-.55rem)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes motion-message-in-right{0%{opacity:0;transform:translate(.55rem)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes motion-rise{0%{opacity:0;transform:translateY(var(--motion-distance-sm))}to{opacity:1;transform:translateY(0)}}@keyframes motion-drawer-in{0%{transform:translate(-100%)}to{transform:translate(0,0)}}@keyframes motion-sheet-in{0%{opacity:0;transform:translateY(var(--motion-distance-panel)) scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-preview-in{0%{opacity:0;transform:translateY(.65rem)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-image-reveal{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes motion-error-nudge{0%{opacity:0;transform:translate(0)}38%{opacity:1;transform:translate(-.18rem)}68%{transform:translate(.12rem)}to{opacity:1;transform:translate(0)}}@keyframes motion-status-settle{0%{opacity:.74;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes motion-stop-state{0%{opacity:.62}to{opacity:1}}@keyframes motion-camera-processing{0%,to{opacity:.62}50%{opacity:1}}@keyframes motion-processing-label{0%,to{opacity:.66}50%{opacity:1}}@keyframes motion-toast-in{0%{opacity:0;transform:translateY(-.55rem)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-toast-error-in{0%{opacity:0;transform:translateY(-.45rem)translate(0)}55%{opacity:1;transform:translateY(0)translate(-.12rem)}78%{transform:translate(.08rem)}to{opacity:1;transform:translate(0)}}@keyframes motion-status-in{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}@keyframes motion-status-error-in{0%{opacity:0;transform:translateY(.35rem)scale(.985)}70%{opacity:1;transform:translateY(0)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-prompt-in{0%{opacity:0;transform:translateY(.6rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-icon-arrive{0%{opacity:0;transform:rotate(-18deg)scale(.72)}to{opacity:1;transform:rotate(0)scale(1)}}@keyframes motion-panel-content{0%{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}@keyframes motion-toggle-selected{0%{opacity:.68}to{opacity:1}}@keyframes motion-confirm-in{0%{opacity:0;transform:translateY(.35rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-fade-out{0%{opacity:1}to{opacity:0}}@keyframes motion-drawer-out{0%{transform:translate(0,0)}to{transform:translate(-100%)}}@keyframes motion-sheet-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(var(--motion-distance-panel)) scale(.985)}}.chat-stage{isolation:isolate;width:min(100%, var(--app-width));background:radial-gradient(115% 46% at 58% 100%,#2c77c28a,#0000 67%),radial-gradient(90% 60% at 48% 10%,#193d8b7a,#0000 72%),linear-gradient(#07133a 0%,#0a1e4c 50%,#12396d 100%);height:100dvh;min-height:35rem;margin-inline:auto;display:block;position:relative;overflow:hidden}.chat-stage:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 68% 77%,#6eb4ff2b,#0000 18%),radial-gradient(circle at 28% 62%,#4b85df1f,#0000 28%);position:absolute;inset:0}.starfield{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.top-header-scrim{height:calc(var(--safe-top) + 5.6rem);z-index:3;pointer-events:none;opacity:var(--top-scrim-opacity,0);will-change:opacity;background:linear-gradient(#07133aeb 0%,#07133ab3 35%,#07133a52 68%,#07133a14 88%,#0000 100%);transition:opacity .12s linear;position:absolute;top:0;left:0;right:0}.top-controls{z-index:4;top:calc(var(--safe-top) + .7rem);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;left:1.25rem;right:1.25rem}.top-controls>*{pointer-events:auto}.top-controls__menu,.control-dock__button{border:1px solid var(--glass-border);color:var(--text-primary);background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(118%);box-shadow:inset 0 1px #ffffff21}.top-controls__menu{width:3.25rem;height:3.25rem;box-shadow:none;background:0 0;border-color:#0000;place-items:center;padding:0;display:grid}.capture-pill{border:1px solid var(--glass-border);border-radius:var(--radius-control);color:#163d72;background:var(--glass-strong);-webkit-backdrop-filter:blur(18px)saturate(118%);letter-spacing:.035em;justify-content:center;align-items:center;gap:.5rem;min-width:7.1rem;min-height:3.25rem;padding:.7rem 1.05rem;font-size:.82rem;font-weight:760;display:inline-flex;box-shadow:inset 0 1px #ffffff21}.capture-pill:disabled,.composer__action:disabled{cursor:not-allowed;opacity:.55}.conversation-view{z-index:2;scrollbar-width:none;-webkit-mask-image:linear-gradient(180deg, transparent 0%, #00000005 calc(var(--safe-top) + .8rem), #00000026 calc(var(--safe-top) + 1.8rem), #00000073 calc(var(--safe-top) + 2.8rem), #000c calc(var(--safe-top) + 3.8rem), #000 calc(var(--safe-top) + 4.8rem), #000 100%);-webkit-mask-image:linear-gradient(180deg, transparent 0%, #00000005 calc(var(--safe-top) + .8rem), #00000026 calc(var(--safe-top) + 1.8rem), #00000073 calc(var(--safe-top) + 2.8rem), #000c calc(var(--safe-top) + 3.8rem), #000 calc(var(--safe-top) + 4.8rem), #000 100%);mask-image:linear-gradient(180deg, transparent 0%, #00000005 calc(var(--safe-top) + .8rem), #00000026 calc(var(--safe-top) + 1.8rem), #00000073 calc(var(--safe-top) + 2.8rem), #000c calc(var(--safe-top) + 3.8rem), #000 calc(var(--safe-top) + 4.8rem), #000 100%);position:absolute;inset:0;overflow:hidden auto}.conversation-view::-webkit-scrollbar{display:none}.message-list{box-sizing:border-box;min-height:100%;padding:calc(var(--safe-top) + 4.8rem) 1rem calc(var(--safe-bottom) + 9.8rem);flex-direction:column;justify-content:flex-end;gap:.72rem;margin:0;list-style:none;display:flex}.message-list__item{width:100%;display:flex}.message-list__item--assistant{justify-content:flex-start}.message-list__item--user{justify-content:flex-end}.message-list__item--memory{justify-content:center;margin-bottom:.35rem}.memory-card{-webkit-backdrop-filter:blur(16px);background:#7694c62e;border:1px solid #ffffff29;border-radius:.95rem;width:100%;max-width:100%;transition:background .16s;overflow:hidden;box-shadow:inset 0 1px #ffffff1f}.memory-card[open]{background:#7694c642}.memory-card__summary{color:#ffffffd9;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.45rem;padding:.5rem .85rem;font-size:.82rem;font-weight:600;list-style:none;display:flex}.memory-card__summary::-webkit-details-marker{display:none}.memory-card__summary svg{color:#ffe68cf2;flex-shrink:0}.memory-card__body{border-top:1px solid #ffffff1a;margin-top:.2rem;padding:.45rem .85rem .65rem}.memory-card__body p{color:#fffc;white-space:pre-wrap;word-break:break-word;margin:0;font-size:.82rem;line-height:1.5}.message-list__end{flex:none;width:1px;height:1px}.message-bubble{overflow-wrap:anywhere;max-width:82%;color:var(--text-primary);-webkit-backdrop-filter:blur(22px)saturate(116%);-webkit-touch-callout:none;cursor:default;transition:transform var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);background:#7694c659;border:1px solid #ffffff26;border-radius:1.25rem;padding:.8rem 1rem;position:relative;box-shadow:inset 0 1px #ffffff1a}.message-bubble--menu-open{z-index:20;box-shadow:0 0 0 2px #d2e4ff59,inset 0 1px #ffffff26}.message-bubble--assistant{border-radius:var(--radius-card);background:#a6b9da57;width:fit-content;max-width:100%;padding:.88rem 1rem}.message-bubble--typing{justify-content:center;align-items:center;width:fit-content;min-width:6rem;display:inline-flex}.message-bubble--user{background:#507dbb73;border-bottom-right-radius:.45rem}.message-bubble p{white-space:pre-wrap;letter-spacing:.008em;margin:0;font-size:clamp(.92rem,3.9vw,1rem);font-weight:580;line-height:1.55}.message-bubble__image{object-fit:contain;border-radius:.9rem;max-width:100%;height:auto;max-height:18rem;margin-bottom:.65rem;display:block}.message-bubble__image:last-child{margin-bottom:0}.message-bubble__image--loading{background:#ffffff1f;border-radius:.9rem;min-height:8rem}.message-bubble__truncated{opacity:.62;margin-top:.45rem;font-size:.78rem;font-weight:500;display:block}.message-bubble__sources{border-top:1px dashed #ffffff24;flex-direction:column;gap:.28rem;margin-top:.55rem;padding-top:.5rem;display:flex}.message-bubble__sources a{color:#bcd8ffeb;letter-spacing:.01em;overflow-wrap:anywhere;transition:color var(--motion-duration-fast) var(--motion-ease-standard);font-size:.78rem;font-weight:560;text-decoration:none}.message-bubble__sources a:hover,.message-bubble__sources a:focus-visible{color:#eaf2ff;text-decoration:underline}.message-bubble__context-menu{z-index:50;border-radius:var(--radius-control);-webkit-backdrop-filter:blur(24px)saturate(130%);white-space:nowrap;-webkit-user-select:none;user-select:none;background:#0e1a34eb;border:1px solid #ffffff3d;align-items:center;gap:.25rem;padding:.3rem .4rem;animation:.18s cubic-bezier(.17,.89,.24,1.15) both context-menu-pop;display:inline-flex;position:absolute;bottom:calc(100% + .5rem);box-shadow:0 8px 28px #0000007a,0 2px 8px #00000047,inset 0 1px #fff3}.message-bubble__context-menu--top{bottom:calc(100% + .5rem)}.message-bubble__context-menu--bottom{top:calc(100% + .5rem);bottom:auto}.message-bubble__context-menu--user{transform-origin:100% 100%;right:0}.message-bubble__context-menu--user.message-bubble__context-menu--bottom{transform-origin:100% 0}.message-bubble__context-menu--assistant{transform-origin:0 100%;left:0}.message-bubble__context-menu--assistant.message-bubble__context-menu--bottom{transform-origin:0 0}.message-bubble__context-item{border-radius:var(--radius-control);color:#f7f8fc;letter-spacing:.015em;cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-ease-standard), color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-fast) var(--motion-ease-standard);background:0 0;border:0;align-items:center;gap:.38rem;padding:.4rem .72rem;font-size:.8rem;font-weight:600;display:inline-flex}.message-bubble__context-item:hover{color:#fff;background:#ffffff29}.message-bubble__context-item:active{transform:scale(.95)}.message-bubble__context-item--recall{color:#ff9ca3}.message-bubble__context-item--recall:hover{color:#ffb8bd;background:#eb344938}.message-bubble__context-item--regenerate{color:#cbe3fe}.message-bubble__context-item--regenerate:hover{color:#fff;background:#76a9fa38}@keyframes context-menu-pop{0%{opacity:0;transform:scale(.85)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.message-bubble__typing{align-items:center;gap:.3rem;min-height:1.5rem;display:inline-flex}.message-bubble__typing i{transform-origin:50%;width:.34rem;height:.34rem;animation:motion-typing-pulse var(--motion-duration-loop) var(--motion-ease-ambient) infinite;background:currentColor;border-radius:50%}.message-bubble__typing i:nth-child(2){animation-delay:calc(var(--motion-stagger-step) * 3)}.message-bubble__typing i:nth-child(3){animation-delay:calc(var(--motion-stagger-step) * 6)}.chat-bottom{z-index:3;padding-inline:1rem;padding-bottom:calc(var(--safe-bottom) + .65rem);pointer-events:none;position:absolute;bottom:0;left:0;right:0}.chat-bottom>*{pointer-events:auto}.control-dock{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:.72rem;display:grid}.control-dock__button{border-radius:var(--radius-control);color:#e7edf9;place-items:center;min-width:0;height:3.85rem;padding:0;display:grid}.control-dock__button--reserved{cursor:default;color:#d9e2f3}.control-dock__button:nth-child(3){color:#254f8b;background:#ebeff7d1}.composer{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.72rem;display:grid}.composer__preview{z-index:10;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px);background:#1a3260d1;border-radius:1.15rem;align-items:center;min-height:5.1rem;padding:.45rem;display:flex;position:absolute;bottom:calc(100% + .5rem);left:0;right:0}.composer__preview img{object-fit:cover;border-radius:.8rem;width:4.2rem;height:4.2rem}.composer__preview button{color:#fff;cursor:pointer;background:#050918b8;border:0;border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;padding:0;display:grid;position:absolute;top:.35rem;right:.35rem}.composer__input-wrap{border:1px solid var(--glass-border);border-radius:var(--radius-control);background:var(--glass-soft);-webkit-backdrop-filter:blur(18px);cursor:text;min-height:3.72rem;transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);align-items:center;display:flex;box-shadow:inset 0 1px #ffffff14}.composer__input-wrap:focus-within{border-color:#d2e4ffa6;box-shadow:0 0 0 2px #d2e4ff4d,inset 0 1px #ffffff26}.composer textarea,.composer textarea:focus,.composer textarea:focus-visible{resize:none;width:100%;min-height:1.5rem;max-height:7rem;box-shadow:none;color:var(--text-primary);field-sizing:content;background:0 0;border:0;outline:none;padding:0 1.25rem;line-height:1.5;overflow-y:auto}.composer textarea::placeholder{color:var(--text-muted);opacity:.78}.composer__action{border-radius:var(--radius-control);color:#163d72;background:var(--glass-strong);letter-spacing:.025em;justify-content:center;align-items:center;gap:.45rem;min-width:6.6rem;min-height:3.72rem;padding:.65rem 1rem;font-size:.82rem;font-weight:760;display:inline-flex}.chat-loading{z-index:6;justify-content:center;align-items:center;gap:.42rem;display:flex;position:absolute;inset:0}.chat-loading span{background:var(--text-primary);width:.42rem;height:.42rem;animation:motion-typing-pulse var(--motion-duration-loop) var(--motion-ease-ambient) infinite;border-radius:50%}.chat-loading span:nth-child(2){animation-delay:calc(var(--motion-stagger-step) * 3)}.chat-loading span:nth-child(3){animation-delay:calc(var(--motion-stagger-step) * 6)}.access-gate{z-index:7;border:1px solid var(--glass-border);color:var(--text-primary);text-align:center;-webkit-backdrop-filter:blur(28px)saturate(120%);background:#203d70b8;border-radius:1.8rem;padding:1.6rem;position:absolute;top:50%;left:1.2rem;right:1.2rem;transform:translateY(-50%);box-shadow:0 1.4rem 4rem #0206124d,inset 0 1px #ffffff21}.access-gate__mark{color:#eff5ff;background:#b5caeb33;border:1px solid #ffffff38;border-radius:1.1rem;place-items:center;width:3.35rem;height:3.35rem;margin:0 auto .8rem;display:grid}.access-gate h1{letter-spacing:.02em;margin:0;font-size:1.35rem}.access-gate__hint{color:var(--text-muted);margin:.45rem 0 1.35rem;font-size:.9rem}.access-gate form>label{color:var(--text-muted);text-align:left;margin:0 0 .42rem .35rem;font-size:.78rem;display:block}.access-gate__field{border-radius:var(--radius-control);height:3.35rem;color:var(--text-dim);cursor:text;transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);background:#07143478;border:1px solid #ffffff29;align-items:center;gap:.7rem;padding:0 1rem;display:flex}.access-gate__field:focus-within{border-color:#d2e4ffa6;box-shadow:0 0 0 2px #d2e4ff4d}.access-gate__field input,.access-gate__field input:focus,.access-gate__field input:focus-visible{width:100%;box-shadow:none;color:var(--text-primary);background:0 0;border:0;outline:none}.access-gate__toggle{width:2.2rem;height:2.2rem;color:var(--text-muted);background:0 0;border:0;border-radius:.5rem;flex-shrink:0;place-items:center;padding:0;display:grid}.access-gate form>button{border-radius:var(--radius-control);color:#143b71;background:#e9eff9e8;border:0;width:100%;min-height:3.3rem;margin-top:.78rem;font-weight:750}.access-gate form>button:disabled{opacity:.5}.access-gate__error{color:#ffd4d9;min-height:1.3rem;margin:.72rem 0 -.25rem;font-size:.8rem}.overlay{z-index:20;-webkit-backdrop-filter:blur(5px);background:#03071494;justify-content:flex-start;align-items:stretch;display:flex;position:absolute;inset:0}.overlay__backdrop{background:0 0;border:0;padding:0;position:absolute;inset:0}.drawer{width:min(88%,22rem);max-width:none;height:100%;max-height:none;padding:calc(var(--safe-top) + .75rem) 1rem calc(var(--safe-bottom) + .5rem);border:0;border-right:1px solid var(--glass-border);color:var(--text-primary);will-change:transform;background:#0c1d43f0;margin:0;position:relative;overflow-y:auto;box-shadow:1.4rem 0 4rem #0206143d}.drawer__header,.history-panel>header{justify-content:space-between;align-items:center;min-height:3.3rem;display:flex}.drawer__header span{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;display:block}.drawer__header strong{margin-top:.2rem;font-size:1.2rem;display:block}.drawer__header button,.history-panel>header button{border:1px solid var(--glass-border);width:2.8rem;height:2.8rem;color:var(--text-primary);background:var(--glass-soft);border-radius:50%;place-items:center;padding:0;display:grid}.drawer__actions{gap:.6rem;margin-top:1.35rem;display:grid}.drawer__actions button,.drawer__footer button{width:100%;min-height:3.2rem;color:var(--text-primary);text-align:left;background:#91aeda21;border:1px solid #ffffff1a;border-radius:1rem;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.drawer__language{background:#07133157;border:1px solid #ffffff1a;border-radius:1.1rem;margin-top:1.3rem;padding:1rem}.drawer__language h2{color:var(--text-muted);align-items:center;gap:.55rem;margin:0 0 .75rem;font-size:.85rem;display:flex}.drawer__language>div{border-radius:var(--radius-control);background:#030a1f70;grid-template-columns:1fr 1fr;padding:.22rem;display:grid}.drawer__language button{border-radius:var(--radius-control);min-height:2.55rem;color:var(--text-muted);background:0 0;border:0;font-size:.82rem}.drawer__language button[aria-pressed=true]{color:#153866;background:#e6edf8eb;font-weight:700}.drawer__footer{gap:.6rem;margin-top:1.3rem;display:grid}.drawer .danger-action,.history-panel .danger-action{color:#ffc7ce}.drawer__confirm{background:#5a1b2e47;border:1px solid #ff8d9938;border-radius:1rem;margin-top:1.3rem;padding:1rem}.drawer__confirm p{color:var(--text-muted);margin:0 0 .85rem;font-size:.85rem;line-height:1.5}.drawer__confirm>div{justify-content:flex-end;gap:.55rem;display:flex}.drawer__confirm button,.history-panel__confirm button{border:1px solid var(--glass-border);border-radius:var(--radius-control);min-height:2.5rem;color:var(--text-primary);background:var(--glass-soft);padding:.45rem .85rem}.overlay--history{align-items:flex-end;padding:.7rem}.history-panel{border:1px solid var(--glass-border);background:#0d204af5;border-radius:1.7rem;width:100%;max-height:min(78%,38rem);padding:1rem;overflow:hidden;box-shadow:0 -1rem 4rem #02061447}.history-panel h1{margin:0;font-size:1.15rem}.history-panel>ol{gap:.55rem;max-height:calc(78dvh - 5.6rem);margin:.85rem 0 0;padding:0;list-style:none;display:grid;overflow:hidden auto}.history-panel>ol>li{background:#97b1d81a;border:1px solid #ffffff1a;border-radius:1rem;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.35rem;padding:.42rem;display:grid;position:relative}.history-panel>ol>li[data-active=true]{background:#78a4dd30;border-color:#bcd8ff4d}.history-panel__select{min-width:0;min-height:3rem;color:var(--text-primary);text-align:left;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;padding:.35rem .5rem;display:flex}.history-panel__select strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.history-panel__select time{color:var(--text-dim);margin-top:.2rem;font-size:.68rem}.history-panel li>button:not(.history-panel__select),.history-panel li form button{width:2.55rem;height:2.55rem;color:var(--text-muted);background:#cadaf01a;border:0;border-radius:.8rem;place-items:center;padding:0;display:grid}.history-panel li form{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;gap:.35rem;display:grid}.history-panel li form input{border:1px solid var(--glass-border);min-width:0;color:var(--text-primary);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);background:#020a1f6b;border-radius:.8rem;padding:0 .75rem}.history-panel li form input:focus,.history-panel li form input:focus-visible{border-color:#d2e4ffa6;outline:none;box-shadow:0 0 0 2px #d2e4ff4d}.history-panel__confirm{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;padding:.5rem;display:grid}.history-panel__confirm p{color:var(--text-muted);margin:0;font-size:.78rem}.history-panel__empty{color:var(--text-dim);text-align:center;padding:2rem 0}.toast-region{z-index:40;top:calc(var(--safe-top) + 4.7rem);pointer-events:none;grid-template-areas:"toast";justify-content:center;display:grid;position:absolute;left:.9rem;right:.9rem}.toast-region__live{grid-area:toast;justify-content:center;width:100%;min-width:0;display:flex}.toast{border:1px solid var(--glass-border);border-radius:var(--radius-control);max-width:100%;color:var(--text-primary);text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#15305ee8;padding:.7rem 1rem;font-size:.82rem;box-shadow:0 .7rem 2rem #0207153d}.toast--error{background:#552036eb;border-color:#ffa4ae40}.status-banner{border:1px solid var(--glass-border);min-height:2.5rem;color:var(--text-muted);text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#091b40d1;border-radius:1rem;justify-content:center;align-items:center;margin:0 0 .55rem;padding:.55rem .85rem;font-size:.78rem;display:flex}.status-banner--error{justify-content:space-between;gap:.65rem}.status-banner button{border-radius:var(--radius-control);color:#153866;background:var(--glass-strong);border:0;min-height:2rem;padding:.3rem .7rem;font-weight:700}.pwa-prompt{z-index:45;border:1px solid var(--glass-border);min-height:3.4rem;color:var(--text-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#102a57f0;border-radius:1.05rem;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.55rem;margin:0 0 .55rem;padding:.65rem .75rem;font-size:.78rem;display:grid;position:relative;box-shadow:0 .8rem 2.6rem #02071540}.access-gate__prompt{right:1rem;bottom:calc(var(--safe-bottom) + 1.2rem);z-index:45;pointer-events:auto;position:absolute;left:1rem}.access-gate__prompt .pwa-prompt{margin:0}.pwa-prompt button{border-radius:var(--radius-control);color:#153866;background:var(--glass-strong);border:0;min-height:2.2rem;padding:.35rem .65rem;font-weight:700}.pwa-prompt button[aria-label]{width:2.2rem;color:var(--text-primary);background:var(--glass-soft);place-items:center;padding:0;display:grid}@media (width<=22rem){.top-controls{left:.85rem;right:.85rem}.chat-bottom,.message-list{padding-inline:.7rem}.control-dock{gap:.42rem}.control-dock__button{height:3.55rem}.composer{gap:.48rem}.composer__action{min-width:5.35rem;padding-inline:.75rem}}@media (width>=48rem){.chat-stage{box-shadow:0 0 6rem #15438433}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.llm-panel{border:1px solid var(--glass-border);background:#0d204af5;border-radius:1.7rem;width:100%;max-height:min(86%,42rem);padding:1rem;overflow-y:auto;box-shadow:0 -1rem 4rem #02061447}.llm-panel>header{justify-content:space-between;align-items:center;min-height:3.3rem;display:flex}.llm-panel h1{margin:0;font-size:1.15rem}.llm-panel>header button{border:1px solid var(--glass-border);width:2.8rem;height:2.8rem;color:var(--text-primary);background:var(--glass-soft);border-radius:50%;place-items:center;padding:0;display:grid}.llm-panel__active{color:var(--text-muted);background:#07133157;border:1px solid #ffffff1a;border-radius:1rem;margin:.85rem 0 .35rem;padding:.6rem .85rem;font-size:.82rem}.llm-panel__field{flex-direction:column;gap:.42rem;margin-top:.95rem;display:flex}.llm-panel__field>label{color:var(--text-muted);font-size:.78rem}.llm-panel__field select,.llm-panel__key input{border:1px solid var(--glass-border);border-radius:var(--radius-control);width:100%;min-height:3rem;color:var(--text-primary);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard);background:#020a1f6b;padding:0 .85rem;font-size:.9rem}.llm-panel__field select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.llm-panel__field select optgroup{color:#aebbd2;background-color:#07153a;font-weight:700}.llm-panel__field select option{color:#f7f8fc;background-color:#07153a;padding:.5rem}.llm-panel__field select:focus,.llm-panel__field select:focus-visible,.llm-panel__key input:focus,.llm-panel__key input:focus-visible{border-color:#d2e4ffa6;outline:none;box-shadow:0 0 0 2px #d2e4ff4d}.custom-select{width:100%;position:relative}.custom-select__trigger{border:1px solid var(--glass-border);border-radius:var(--radius-control);width:100%;min-height:3.15rem;color:var(--text-primary);text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(18px);transition:border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard);background:#07143485;justify-content:space-between;align-items:center;padding:0 1.1rem;font-size:.9rem;display:flex}.custom-select__trigger:hover{background:#0f234ea6;border-color:#d2e4ff73}.custom-select__trigger--open,.custom-select__trigger:focus-visible{border-color:#d2e4ffbf;outline:none;box-shadow:0 0 0 2px #d2e4ff4d,0 .5rem 1.5rem #02071659}.custom-select__value{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 1.8rem);overflow:hidden}.custom-select__chevron{color:var(--text-muted);transition:transform var(--motion-duration-base) var(--motion-ease-spring), color var(--motion-duration-fast);flex-shrink:0}.custom-select__chevron--open{color:#eff5ff;transform:rotate(180deg)}.custom-select__menu{z-index:55;-webkit-backdrop-filter:blur(28px)saturate(130%);max-height:15.5rem;animation:motion-confirm-in var(--motion-duration-fast) var(--motion-ease-enter) backwards;scrollbar-width:thin;scrollbar-color:#97b1d859 transparent;background:#09183cf5;border:1px solid #ffffff2e;border-radius:1.25rem;padding:.45rem;position:absolute;top:calc(100% + .45rem);left:0;right:0;overflow:hidden auto;box-shadow:0 1.2rem 3.5rem #010512a6,inset 0 1px #ffffff26}.custom-select__group-label{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;padding:.6rem .75rem .25rem;font-size:.72rem;font-weight:700}.custom-select__option{width:100%;min-height:2.7rem;color:var(--text-muted);text-align:left;cursor:pointer;transition:all var(--motion-duration-fast) var(--motion-ease-standard);background:0 0;border:0;border-radius:.85rem;justify-content:space-between;align-items:center;padding:.55rem .85rem;font-size:.88rem;display:flex}.custom-select__option:hover{color:#fff;background:#97b1d82e;transform:translate(3px)}.custom-select__option--selected{color:#eff5ff;background:#5584cd52;font-weight:600}.custom-select__option--selected svg{color:#a4c9ff;flex-shrink:0}.custom-select__option-text{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.custom-select__tag{color:#bbd5ff;background:#15366e8c;border:1px solid #add8ff4d;border-radius:999px;align-items:center;padding:.12rem .45rem;font-size:.68rem;font-weight:600;display:inline-flex}.llm-panel__key{align-items:center;display:flex;position:relative}.llm-panel__key button{width:2.4rem;height:2.4rem;color:var(--text-muted);background:0 0;border:0;border-radius:.6rem;place-items:center;padding:0;display:grid;position:absolute;right:.4rem}.llm-panel__hint,.llm-panel__note{color:var(--text-dim);margin:.2rem .1rem 0;font-size:.74rem;line-height:1.45}.llm-panel__note{color:#ffd5a8c7}.llm-panel__feedback{color:var(--text-muted);text-align:center;background:#07133157;border:1px solid #ffffff1a;border-radius:.8rem;margin:.95rem 0 0;padding:.55rem .85rem;font-size:.8rem}.llm-panel__feedback--error{color:#ffd4d9;background:#5520365c;border-color:#ffa4ae40}.llm-panel__actions{gap:.55rem;margin-top:1.1rem;display:flex}.llm-panel__actions button{border:1px solid var(--glass-border);border-radius:var(--radius-control);color:#153866;background:var(--glass-strong);flex:1;min-height:3rem;padding:0 .75rem;font-size:.82rem;font-weight:700}.llm-panel__actions button:disabled{cursor:not-allowed;opacity:.55}.llm-panel__actions .danger-action{color:#ffc7ce;background:#5a1b2e6b}.skills-panel{border:1px solid var(--glass-border);background:#0d204af5;border-radius:1.7rem;width:100%;max-height:min(86%,42rem);padding:1rem;overflow-y:auto;box-shadow:0 -1rem 4rem #02061447}.skills-panel>header{justify-content:space-between;align-items:center;min-height:3.3rem;display:flex}.skills-panel h1{margin:0;font-size:1.15rem}.skills-panel>header button{border:1px solid var(--glass-border);width:2.8rem;height:2.8rem;color:var(--text-primary);background:var(--glass-soft);border-radius:50%;place-items:center;padding:0;display:grid}.skills-panel__hint{color:var(--text-muted);margin:.85rem 0 0;font-size:.8rem}.skills-panel__list{gap:.55rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.skills-panel__item{background:#97b1d81a;border:1px solid #ffffff1a;border-radius:1rem;padding:.6rem;display:grid}.skills-panel__item[data-active=true]{background:#78a4dd30;border-color:#bcd8ff4d}.skills-panel__summary{align-items:center;gap:.55rem;display:flex}.skills-panel__meta{text-align:left;flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.skills-panel__meta strong{font-size:.95rem}.skills-panel__meta span{color:var(--text-dim);font-size:.74rem}.skills-panel__toggle{border:1px solid var(--glass-border);border-radius:var(--radius-control);min-height:2.2rem;color:var(--text-muted);white-space:nowrap;background:#cadaf01a;padding:0 .85rem;font-size:.78rem}.skills-panel__toggle[aria-pressed=true]{color:#eaf2ff;background:#78a4dd4d;border-color:#bcd8ff73}.skills-panel__web-search{border-top:1px solid #ffffff1a;margin-top:.95rem;padding-top:.85rem}.skills-panel__web-search .skills-panel__toggle:disabled{color:var(--text-dim);opacity:.45;cursor:not-allowed}.skills-panel__expand{min-height:2.1rem;color:var(--text-muted);background:0 0;border:0;border-radius:.7rem;justify-content:center;align-items:center;gap:.3rem;margin-top:.5rem;font-size:.76rem;display:flex}.skills-panel__expand svg{transition:transform var(--motion-duration-fast) var(--motion-ease-standard)}.skills-panel__expand svg[data-expanded=true]{transform:rotate(180deg)}.skills-panel__content{max-height:16rem;color:var(--text-muted);white-space:pre-wrap;overflow-wrap:break-word;background:#020a1f6b;border:1px solid #ffffff14;border-radius:.8rem;margin:.55rem 0 0;padding:.75rem .85rem;font-family:inherit;font-size:.78rem;line-height:1.65;overflow:hidden auto}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.message-bubble,.capture-pill,.control-dock__button,.composer__input-wrap,.composer__action{background-color:#4a679af0}}.chat-stage{animation:motion-fade-in var(--motion-duration-reveal) var(--motion-ease-enter) backwards}.chat-stage:before{transform-origin:58% 72%;animation:motion-nebula-drift var(--motion-duration-ambient) var(--motion-ease-ambient) infinite alternate}.starfield{animation:motion-starfield-reveal var(--motion-duration-scene) var(--motion-ease-standard) backwards}.access-gate{animation:motion-gate-enter var(--motion-duration-reveal) var(--motion-ease-enter) backwards}.access-gate__mark{animation:motion-mark-awaken var(--motion-duration-reveal) calc(var(--motion-stagger-step) * 3) var(--motion-ease-emphasized) backwards}.access-gate h1,.access-gate__hint,.access-gate form{animation:motion-rise var(--motion-duration-slow) var(--motion-ease-enter) backwards}.access-gate h1{animation-delay:calc(var(--motion-stagger-step) * 2)}.access-gate__hint{animation-delay:calc(var(--motion-stagger-step) * 3)}.access-gate form{animation-delay:calc(var(--motion-stagger-step) * 4)}.top-controls{animation:motion-drop-in var(--motion-duration-slow) calc(var(--motion-stagger-step) * 2) var(--motion-ease-enter) backwards}.top-controls__menu,.capture-pill{animation:motion-fade-in var(--motion-duration-slow) var(--motion-ease-enter) backwards}.top-controls__menu{animation-delay:calc(var(--motion-stagger-step) * 3)}.capture-pill{animation-delay:calc(var(--motion-stagger-step) * 4)}.conversation-view{animation:motion-panel-content var(--motion-duration-slow) var(--motion-ease-enter) backwards}.message-list__item--assistant:nth-last-child(-n+3){animation:motion-message-in-left var(--motion-duration-base) var(--motion-ease-enter) backwards}.message-list__item--user:nth-last-child(-n+3){animation:motion-message-in-right var(--motion-duration-base) var(--motion-ease-enter) backwards}.message-list__item--assistant:nth-last-child(2){animation-delay:var(--motion-stagger-step)}.control-dock{animation:motion-rise var(--motion-duration-slow) calc(var(--motion-stagger-step) * 4) var(--motion-ease-enter) backwards}.control-dock__button{animation:motion-fade-in var(--motion-duration-slow) var(--motion-ease-enter) backwards;animation-delay:calc(var(--motion-stagger-step) * var(--stagger-index,0))}.control-dock__button:first-child{--stagger-index:5}.control-dock__button:nth-child(2){--stagger-index:6}.control-dock__button:nth-child(3){--stagger-index:7}.control-dock__button:nth-child(4){--stagger-index:8}.composer{animation:motion-rise var(--motion-duration-slow) calc(var(--motion-stagger-step) * 5) var(--motion-ease-enter) backwards}.overlay{animation:motion-fade-in var(--motion-duration-fast) var(--motion-ease-standard) backwards}.drawer{animation:motion-drawer-in var(--motion-duration-panel) var(--motion-ease-enter) backwards}.history-panel,.llm-panel,.skills-panel{animation:motion-sheet-in var(--motion-duration-panel) var(--motion-ease-enter) backwards}.chat-stage button:not(.overlay__backdrop){transition:transform var(--motion-duration-base) var(--motion-ease-spring), opacity var(--motion-duration-fast) var(--motion-ease-standard), background-color var(--motion-duration-fast) var(--motion-ease-standard), border-color var(--motion-duration-fast) var(--motion-ease-standard)}.chat-stage button:not(.overlay__backdrop) svg{transition:transform var(--motion-duration-base) var(--motion-ease-spring), opacity var(--motion-duration-fast) var(--motion-ease-standard)}.composer__input-wrap,.access-gate__field,.history-panel>ol>li,.history-panel li form input,.llm-panel__field select,.llm-panel__key input{transition-property:background-color,border-color,box-shadow,opacity;transition-duration:var(--motion-duration-fast);transition-timing-function:var(--motion-ease-standard)}.composer__input-wrap:focus-within,.access-gate__field:focus-within{background-color:#a4bee447;border-color:#d2e4ff70;box-shadow:0 0 0 3px #8fb8f41a,inset 0 1px #ffffff21}.history-panel li form input:focus,.llm-panel__field select:focus,.llm-panel__key input:focus{background-color:#0e234bb8;border-color:#d2e4ff7a}.composer textarea::placeholder{transition:opacity var(--motion-duration-fast) var(--motion-ease-standard)}.composer textarea:focus::placeholder{opacity:.48}.chat-stage button:not(.overlay__backdrop):not(:disabled):not([aria-disabled=true]):active{transform:scale(var(--motion-scale-pressed));transition:transform var(--motion-duration-press) var(--motion-ease-standard)}@media (hover:hover) and (pointer:fine){.chat-stage :where(button:not(.overlay__backdrop):not(:disabled):not([aria-disabled=true])):not(:active):hover{transform:scale(1.02)}.chat-stage :where(button:not(.overlay__backdrop):not(:disabled):not([aria-disabled=true])):not(:active):hover svg,.capture-pill:not(:disabled):not(:active):hover svg{transform:scale(1.06)}.drawer__actions button:not(:active):hover,.drawer__footer button:not(:active):hover{background-color:#ffffff0f;border-color:#ffffff2e}.history-panel>ol>li:hover,.skills-panel__item:hover{background-color:#97b1d826;border-color:#bcd8ff3d}}.chat-loading{animation:motion-fade-in var(--motion-duration-base) var(--motion-ease-standard) backwards}.composer__preview{transform-origin:50% 100%;animation:motion-preview-in var(--motion-duration-base) var(--motion-ease-enter) backwards}.composer__preview img,.message-list__item:nth-last-child(-n+3) .message-bubble__image{animation:motion-image-reveal var(--motion-duration-base) var(--motion-ease-enter) backwards}.message-list__item:nth-last-child(-n+3) .message-bubble[data-status=failed]{animation:motion-error-nudge var(--motion-duration-base) var(--motion-ease-standard) backwards}.message-list__item:nth-last-child(-n+3) .message-bubble[data-status=stopped]{animation:motion-status-settle var(--motion-duration-base) var(--motion-ease-enter) backwards}.composer__action--stop{animation:motion-stop-state var(--motion-duration-base) var(--motion-ease-enter) backwards}.capture-pill[aria-busy=true] svg{animation:motion-camera-processing var(--motion-duration-loop) var(--motion-ease-ambient) infinite}.capture-pill[aria-busy=true] span{animation:motion-processing-label var(--motion-duration-loop) var(--motion-ease-ambient) infinite}.toast{animation:motion-toast-in var(--motion-duration-panel) var(--motion-ease-enter) backwards}.toast--error{animation-name:motion-toast-error-in}.status-banner{animation:motion-status-in var(--motion-duration-base) var(--motion-ease-enter) backwards}.status-banner--error{animation-name:motion-status-error-in}.pwa-prompt{animation:motion-prompt-in var(--motion-duration-panel) var(--motion-ease-enter) backwards}.pwa-prompt>svg{animation:motion-icon-arrive var(--motion-duration-slow) calc(var(--motion-stagger-step) * 2) var(--motion-ease-emphasized) backwards}.access-gate__error:not(:empty){animation:motion-error-nudge var(--motion-duration-base) var(--motion-ease-standard) backwards}.history-panel>header,.history-panel>ol,.llm-panel>header,.llm-panel__active,.llm-panel__field,.llm-panel__actions,.skills-panel>header,.skills-panel__hint,.skills-panel__list{animation:motion-panel-content var(--motion-duration-panel) var(--motion-ease-enter) backwards}.history-panel>ol,.llm-panel__active,.skills-panel__list{animation-delay:var(--motion-stagger-step)}.llm-panel__field{animation-delay:calc(var(--motion-stagger-step) * 2)}.llm-panel__actions{animation-delay:calc(var(--motion-stagger-step) * 3)}.history-panel>ol>li:nth-child(-n+4){animation:motion-fade-in var(--motion-duration-base) var(--motion-ease-enter) backwards;animation-delay:calc(var(--motion-stagger-step) * var(--stagger-index,0))}.history-panel>ol>li:first-child{--stagger-index:2}.history-panel>ol>li:nth-child(2){--stagger-index:3}.history-panel>ol>li:nth-child(3){--stagger-index:4}.history-panel>ol>li:nth-child(4){--stagger-index:5}.drawer__language button[aria-pressed=true]{animation:motion-toggle-selected var(--motion-duration-base) var(--motion-ease-emphasized) backwards}.drawer__confirm,.history-panel__confirm,.llm-panel__feedback,.history-panel__empty{animation:motion-confirm-in var(--motion-duration-base) var(--motion-ease-enter) backwards}.llm-panel__feedback.llm-panel__feedback--error{animation-name:motion-error-nudge}.overlay--closing{animation:motion-fade-out var(--motion-duration-panel) var(--motion-ease-standard) forwards}.drawer--closing{animation:motion-drawer-out var(--motion-duration-panel) var(--motion-ease-enter) forwards}.history-panel--closing,.llm-panel--closing,.skills-panel--closing{animation:motion-sheet-out var(--motion-duration-panel) var(--motion-ease-enter) forwards}*,:before,:after{box-sizing:border-box}html{background:var(--space-0);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-width:20rem;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:20rem;min-height:100dvh;color:var(--text-primary);background:var(--space-0);margin:0;overflow:hidden}button,input,textarea{font:inherit}dialog{max-width:none;max-height:none;color:inherit;background:0 0;border:0;margin:0;padding:0}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #d2e4ffeb}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}#root,.app-shell{min-height:100dvh}.app-shell{isolation:isolate;background:radial-gradient(circle at 50% 12%, #123d78cc, transparent 42%), linear-gradient(180deg, var(--space-1), var(--space-0));position:relative;overflow:hidden}.app-shell__backdrop{z-index:-1;pointer-events:none;background:radial-gradient(circle at 18% 24%,#f7f8fcb3 0 1px,#0000 2px) 0 0/11rem 13rem,radial-gradient(circle at 78% 18%,#d3d9e78c 0 1px,#0000 2px) 0 0/15rem 17rem,radial-gradient(circle at 68% 66%,#f7f8fc73 0 1px,#0000 2px) 0 0/19rem 23rem;position:absolute;inset:0}
