:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eef4ff;background:#05070b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at top,#4aa3ff1f,#0000 32%),radial-gradient(circle at bottom,#22d6991a,#0000 28%),#05070b;width:100%;height:100%;margin:0;overflow:hidden}body{position:fixed;inset:0}button,input,textarea,select{font:inherit}button,.panel,.message-bubble{-webkit-touch-callout:none}#app{width:100%;height:100%}.app-shell{width:100%;height:100%;padding:max(12px, env(safe-area-inset-top)) 14px max(12px, env(safe-area-inset-bottom)) 14px;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;display:grid;position:relative}.header{z-index:1;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid;position:relative}.header-spacer{min-height:44px}.header-button,.stop-button,.log-button,.unlock-form button{color:inherit;cursor:pointer;white-space:nowrap;background:#ffffff14;border:0;border-radius:999px;min-height:44px;padding:0 18px;transition:background .18s,color .18s,box-shadow .18s,opacity .18s}.header-button:disabled,.stop-button:disabled{opacity:.45;cursor:default}.header-button.confirming-danger{color:#fff4f6;background:#6a1421f5;box-shadow:0 12px 28px #ff5d6738}.transcript-region{z-index:1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0c1017b8;border:1px solid #ffffff0f;border-radius:22px;min-height:0;position:relative;overflow:hidden}.status-line{color:#f4c16d;opacity:0;min-height:0;padding:0 18px;font-size:.88rem;line-height:1.35;transition:opacity .16s,padding .16s}.status-line.visible{opacity:1;padding-top:14px}.transcript{flex-direction:column;gap:12px;height:100%;padding:16px 14px 18px;display:flex;overflow-y:auto}.transcript-messages,.transcript-group{flex-direction:column;gap:12px;display:flex}.transcript-group:empty{display:none}.transcript-hint{text-align:center;color:#eef4ff80;margin:auto 0;font-size:.96rem}.message-row{display:flex}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.message-row.temporary .message-bubble{opacity:.82}.message-bubble{background:#ffffff13;border:1px solid #ffffff14;border-radius:18px;width:fit-content;min-width:min(18rem,84%);max-width:min(86%,540px);padding:12px 14px}.message-row.user .message-bubble{background:#4aa3ff2e;border-color:#4aa3ff3d}.message-header{align-items:flex-start;gap:8px;min-width:0;margin-bottom:6px;display:flex}.message-thinking-host,.message-thinking-panel-host{min-width:0}.message-thinking-host{flex:auto;justify-content:flex-start;align-items:flex-start;display:flex}.message-thinking-host:empty,.message-thinking-panel-host:empty{display:none}.message-role{color:#eef4ff94;letter-spacing:.03em;text-transform:uppercase;flex:none;font-size:.76rem;line-height:1.4}.message-header>.thinking-inline{flex:auto;min-width:0}.message-header>.thinking-toggle{flex:none}.message-text{white-space:pre-wrap;word-break:break-word;line-height:1.45}.sources{margin-top:10px}.thinking-inline{color:#eef4ff8f;align-items:center;gap:6px;min-width:0;max-width:100%;font-size:.76rem;line-height:1.4;display:inline-flex;overflow:hidden}.thinking-inline.temporary{opacity:.88}.thinking-toggle{color:#eef4ff8f;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-width:0;max-width:100%;padding:0;font-size:.76rem;font-weight:500;line-height:1.4;display:inline-flex}.thinking-caret{color:#eef4ff70;transform-origin:50%;flex:none;font-size:.72rem;line-height:1;transition:transform .12s}.thinking-label{white-space:nowrap;flex:none;font-weight:500}.thinking-preview{text-overflow:ellipsis;white-space:nowrap;color:#eef4ff75;flex:auto;min-width:0;overflow:hidden}.thinking-toggle[aria-expanded=true] .thinking-caret{transform:rotate(90deg)}.thinking-panel{color:#eef4ffa8;white-space:pre-wrap;word-break:break-word;margin-top:10px;font-size:.94rem;line-height:1.5}.thinking-panel+.message-text{margin-top:12px}.sources summary{cursor:pointer;color:#98ccff}.sources-list{gap:8px;padding-top:10px;display:grid}.sources-list a{color:#98ccff;word-break:break-word;text-decoration:none}.footer{z-index:1;grid-template-columns:1fr minmax(0,1.5fr) 1fr;align-items:center;gap:10px;min-height:clamp(176px,22vh,208px);display:grid;position:relative}.footer-slot{justify-content:center;align-items:center;min-height:100%;display:flex}.footer-slot-empty{pointer-events:none}.footer-slot-center{overflow:visible}.footer-slot-right{justify-content:center}.stop-button{width:112px;min-height:56px;padding:0 24px;font-weight:700}.stop-button.inactive{visibility:hidden;pointer-events:none}.ptt-stack{aspect-ratio:1;justify-content:center;align-items:center;width:min(100%,300px);display:flex;position:relative;overflow:visible}.discard-target{color:#eef4ffb8;opacity:0;pointer-events:none;z-index:3;background:#0f141df0;border:1px solid #ffffff1a;border-radius:999px;justify-content:center;align-items:center;width:74px;height:74px;transition:opacity .18s,transform .18s,background .16s,border-color .16s,box-shadow .16s,color .16s;display:flex;position:absolute;bottom:calc(100% + 18px);left:50%;transform:translate(-50%,16px)scale(.9);box-shadow:0 16px 40px #00000057}.discard-target.visible{opacity:1;transform:translate(-50%)scale(1)}.discard-target.active{color:#fff3f5;background:#4a121ef5;border-color:#ff78889e;box-shadow:0 18px 42px #ff5d6747}.discard-icon{width:26px;height:26px}.ptt-button{aspect-ratio:1;color:#7f7f94;cursor:pointer;isolation:isolate;touch-action:none;z-index:2;background:radial-gradient(circle at 30% 25%,#ffffff08,#0000 34%),linear-gradient(#1e1e2afa,#181823fc);border:2px solid #2a2a3a;border-radius:999px;width:100%;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .18s,box-shadow .18s,border-color .18s,color .18s;position:relative;overflow:hidden;transform:scale(.84);box-shadow:inset 0 1px #ffffff05,0 14px 32px #00000038}.ptt-button.ready{color:#f7fbff;background:radial-gradient(circle at 30% 24%,#ffffff3d,#0000 34%),radial-gradient(circle at 68% 18%,#4aa3ff47,#0000 30%),linear-gradient(#184374f5,#0b1e39fc);border-color:#7bc4ff4d;transform:scale(1);box-shadow:inset 0 1px #ffffff14,0 24px 56px #1859b557}.ptt-button.pressed{color:#fff;background:radial-gradient(circle at 50% 28%,#ffffff52,#0000 30%),radial-gradient(circle at 50% 70%,#22d69952,#0000 44%),linear-gradient(#148172fa,#094753fc);border-color:#6fffde6b;transform:scale(.94);box-shadow:inset 0 1px #ffffff1a,0 20px 48px #0f927d57}.ptt-label{text-align:center;pointer-events:none;z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:20px 28px 36px;display:flex;position:absolute;inset:0}.ptt-label.action-copy{gap:8px}.ptt-label.loading{gap:0}.ptt-icon{width:40px;height:40px;color:inherit;justify-content:center;align-items:center;display:inline-flex}.ptt-icon svg{width:100%;height:100%}.ptt-button.warming .ptt-icon{display:none}.ptt-label-text{letter-spacing:.01em;text-wrap:balance;max-width:14ch;font-size:clamp(1rem,2.6vw,1.2rem);font-weight:800;line-height:1.15}.ptt-label.action-copy .ptt-label-text{font-size:clamp(.94rem,2.35vw,1.08rem)}.ptt-button.discard-armed{border-color:#ff78886b;box-shadow:inset 0 1px #ffffff14,0 22px 50px #ff5d6747}.voice-indicator{--voice-glow-strength:0;--voice-glow-scale:1;left:0;right:0;bottom:max(0px, env(safe-area-inset-bottom));pointer-events:none;opacity:0;z-index:0;height:150px;transition:opacity .18s,transform .18s;position:absolute;transform:translateY(14px)}.voice-indicator:before,.voice-indicator:after{content:"";transform-origin:50% 100%;transform:scaleY(var(--voice-glow-scale));transition:opacity 90ms linear,transform 90ms linear;position:absolute;bottom:0;left:-10%;right:-10%}.voice-indicator:before{filter:blur(26px);height:128px;opacity:calc(var(--voice-glow-strength) * .95);background:radial-gradient(at bottom,#78f4ffb8 0%,#4aa3ff75 26%,#1c60ad2e 55%,#0000 80%);border-radius:50% 50% 0 0/100% 100% 0 0;animation:1.65s ease-in-out infinite voice-glow-pulse}.voice-indicator:after{filter:blur(18px);height:34px;opacity:calc(var(--voice-glow-strength) * 1.15);background:linear-gradient(90deg,#0000 0%,#58d1ff29 12%,#6fffd9e0 50%,#58d1ff29 88%,#0000 100%);border-radius:999px;animation:1.15s ease-in-out infinite voice-glow-swell;left:-6%;right:-6%}.voice-indicator.active{opacity:1;transform:translateY(0)}.overlay{padding:max(12px, env(safe-area-inset-top)) 14px max(12px, env(safe-area-inset-bottom)) 14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#05070beb;justify-content:center;align-items:stretch;display:flex;position:fixed;inset:0}.overlay.hidden{display:none}.panel{background:#0c1017f5;border:1px solid #ffffff0f;border-radius:28px;grid-template-rows:auto minmax(0,1fr);width:min(720px,100%);height:100%;display:grid;overflow:hidden}.panel-header{justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.panel-title{font-size:1.1rem;font-weight:600}.panel-body{gap:16px;min-height:0;padding:0 14px 18px;display:grid;overflow-y:auto}.field,.toggle-field{gap:8px;display:grid}.field-label{color:#eef4ffb8;font-size:.92rem}.field-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.field-value{color:#eef4ff8f;text-align:right;font-size:.84rem}.field input,.field textarea,.field select{width:100%;color:inherit;background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;padding:12px 14px}.field textarea{resize:vertical;min-height:112px}.range-field input[type=range]{accent-color:#7bc4ff;background:0 0;border:0;border-radius:0;width:100%;min-height:28px;padding:0}.toggle-field{grid-template-columns:auto 1fr;align-items:center}.toggle-field input{width:20px;height:20px}.log-button{justify-content:center;align-items:center;gap:10px;padding:0 18px;display:inline-flex}.log-button.copied{color:#f4fffc;background:#12564af5;box-shadow:0 12px 30px #22d69924}.log-dot{background:0 0;border-radius:999px;width:9px;height:9px}.log-dot.visible{background:#ff5d67;box-shadow:0 0 10px #ff5d67cc}.unlock-overlay{align-items:center}.unlock-form{gap:12px;width:min(360px,100%);display:grid}.unlock-form input{width:100%;min-height:52px;color:inherit;text-align:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;padding:0 18px}.unlock-error{text-align:center;color:#f4c16d;min-height:1.25rem;font-size:.9rem}@keyframes voice-glow-pulse{0%,to{transform:scaleY(var(--voice-glow-scale)) scaleX(.98)}50%{transform:scaleY(calc(var(--voice-glow-scale) * 1.08)) scaleX(1.02)}}@keyframes voice-glow-swell{0%,to{transform:scaleY(var(--voice-glow-scale)) scaleX(.96)}50%{transform:scaleY(calc(var(--voice-glow-scale) * 1.12)) scaleX(1.04)}}@media (orientation:landscape){.ptt-stack{width:min(100%,220px)}.stop-button{width:104px;min-height:52px}}
