/* Sunstar side companion. Motion reflects real UI state, never microphone access by itself. */
.sunstar-assistant-launcher{position:fixed;inset:auto 22px 20px auto;width:104px;height:118px;min-height:0;padding:8px 10px 10px;border:1px solid #476268;border-radius:20px;display:flex;flex-direction:column;gap:1px;background:linear-gradient(145deg,#182a33,#111b29);color:#dcf7f2;box-shadow:0 14px 40px #0007,0 0 22px #74dac00b;z-index:80;cursor:pointer;transition:background .18s,box-shadow .18s,translate .18s;animation:orb-card-in .2s ease-out}
.sunstar-assistant-launcher:hover{background:#203841;box-shadow:0 16px 38px #0009,0 0 25px #80dfce24;translate:0 -2px}.sunstar-assistant-launcher[hidden]{display:none!important}.sunstar-orb-brand{font:650 12px/1.5 var(--font-ui,system-ui)}.sunstar-orb-hint{font:400 10px/1.5 var(--font-ui,system-ui);color:#accac9}.sunstar-energy-orb{--orb-size:126px;position:relative;display:block;isolation:isolate;width:var(--orb-size);height:var(--orb-size);flex-shrink:0;border-radius:50%;pointer-events:none;animation:orb-breathe 5s ease-in-out infinite}.sunstar-energy-orb>span{position:absolute;display:block;pointer-events:none}.sunstar-energy-orb .orb-halo{inset:-10%;border-radius:50%;background:radial-gradient(circle,#82e2cf23,transparent 70%);filter:blur(6px)}.sunstar-energy-orb .orb-core{inset:10%;border-radius:50%;border:1px solid #8ce8da77;background:radial-gradient(circle at 34% 27%,#c6fff03d,transparent 48%),radial-gradient(circle at 70% 80%,#76c5df38,#17323c4d 65%);box-shadow:inset -10px -8px 18px #0a18286b,inset 6px 6px 16px #9ce8db22,0 0 21px #77e0cc23}.sunstar-energy-orb .orb-grid{inset:11%;border-radius:50%;background-image:repeating-linear-gradient(0deg,transparent 0 17%,#8bcec825 18% 19%,transparent 20%),repeating-linear-gradient(90deg,transparent 0 17%,#8bcec825 18% 19%,transparent 20%);mask-image:radial-gradient(circle,#0008 15%,#000 58%,transparent 73%)}.sunstar-energy-orb .orb-orbit{inset:4%;border:1px solid #88d8cb7a;border-radius:50%;transform:rotate(-32deg) scaleX(.52);animation:orb-orbit-a 13s linear infinite}.sunstar-energy-orb .orb-orbit.two{transform:rotate(40deg) scaleX(.55);animation:orb-orbit-b 19s linear infinite;border-color:#9dcfda66}.sunstar-energy-orb .orb-orbit.three{inset:0;border-style:dashed;border-color:#8bdbcb45;transform:rotate(16deg) scaleY(.61);animation:orb-orbit-c 24s linear infinite}.sunstar-energy-orb .orb-dot{left:47%;top:47%;width:6%;height:6%;border-radius:50%;background:#c4fff0;box-shadow:0 0 12px #a5ffdfcc}.sunstar-energy-orb .orb-dot.two{left:78%;top:25%;width:3%;height:3%;background:#70d4c4;box-shadow:0 0 9px #bdfdec}.sunstar-assistant-launcher .sunstar-energy-orb{--orb-size:68px}
.sunstar-chat{position:fixed;inset:auto 20px 20px auto;margin:0;width:min(420px,calc(100vw - 28px));height:min(740px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);border:1px solid #405964;border-radius:21px;background:#111c29;color:#e2ecf2;box-shadow:0 24px 70px #0009;z-index:90;padding:0;overflow:hidden}.sunstar-chat[open]{display:flex;flex-direction:column;animation:orb-panel-in .2s ease-out}.sunstar-chat::backdrop{background:#08121d24;backdrop-filter:none}.sunstar-chat-head{padding:17px 19px 13px;background:linear-gradient(120deg,#20353e,#142431);color:#e7f7f5;border-bottom:1px solid #2a414c;gap:8px}.sunstar-chat-head h2{font:650 17px/1.5 var(--font-ui,system-ui);margin:0 0 3px}.sunstar-chat-head p{font-size:11px;color:#adc6cc;max-width:290px}.sunstar-chat-head .close-btn{width:35px;height:35px;min-width:35px;border:1px solid #46616a;border-radius:9px;background:#18303b;color:#d2eee9;font-size:23px}.sunstar-chat-content{background:#111c29;padding:12px 18px 6px;flex:1 1 42%;overflow-y:auto;min-height:130px;scrollbar-color:#4f6a76 transparent}.sunstar-orb-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:164px;padding-top:3px;background:radial-gradient(ellipse at center,#3c817d19,transparent 66%);margin:0 0 8px}.sunstar-orb-tips{position:absolute;inset:0;pointer-events:none}.sunstar-orb-tip{position:absolute;top:4px;left:0;max-width:61%;font:450 10px/1.5 var(--font-ui,system-ui);padding:7px 9px;border:1px solid #3c5962;border-radius:8px 8px 8px 2px;background:#1b303b;color:#c2ebe3;box-shadow:0 7px 20px #0002;animation:orb-tip-in .3s ease-out}.sunstar-orb-tip.secondary{left:auto;right:0;top:100px;max-width:60%;border-radius:8px 8px 2px 8px;background:#152c37}.sunstar-orb-state{font-size:11px;color:#9ee3d5;line-height:1.5;margin:9px 0 0}.sunstar-chat-intro{font-size:11px;line-height:1.65;color:#b0c4cd}.sunstar-chat-examples{gap:6px;margin:10px 0}.sunstar-example,.sunstar-action{background:#172a38;border:1px solid #3a5563;color:#cfebe6;border-radius:8px;transition:background .15s,border-color .15s;min-height:36px}.sunstar-example{font-size:11px;padding:7px 9px}.sunstar-example:hover,.sunstar-action:hover{background:#24434b;border-color:#7cbcaf}.sunstar-chat-empty{font:400 12px/1.6 var(--font-ui,system-ui);color:#94abb8;margin:12px 0}.sunstar-message{background:#192938;color:#e1ecf2;border-color:#324957}.sunstar-message.user{background:#213c44;border-color:#395d64}.sunstar-message-by,.sunstar-chat-status{color:#9fdfd2}.sunstar-message-text{font-size:12px;line-height:1.7}.sunstar-message-notice{font-size:10px;color:#b6c7cf}.sunstar-chat-mode{color:#dae8bf;background:#3b4434}.sunstar-chat-form{background:#14212f;border-top:1px solid #334953;padding:13px 18px;flex:0 1 47%;min-height:192px;max-height:58dvh;overflow-y:auto;scrollbar-color:#4f6a76 transparent}.sunstar-chat-form>label,.sunstar-transcript>label{color:#d3e5e8;font-size:11px}.sunstar-chat-form textarea{min-height:62px;background:#0c1724;color:#e1eef4;border:1px solid #4b626e;border-radius:10px;font-size:13px;padding:9px 11px}.sunstar-chat-form textarea::placeholder{color:#8fa5b6}.sunstar-chat-controls{margin-top:9px;gap:7px}.sunstar-chat-controls .btn{min-height:38px;font-size:11px;padding:8px 12px}.sunstar-chat .btn{background:#213745;color:#d5eee8;border-color:#45656c}.sunstar-chat .btn.primary{background:#8ae0cf;color:#102a31;border-color:#8ae0cf}.sunstar-chat .btn:hover:not(:disabled){filter:brightness(1.09)}.sunstar-chat .text-btn{color:#b3ded3}.sunstar-chat-error{background:#452a2e;color:#ffd2cd;border:1px solid #795056}.sunstar-voice-details{margin-top:11px;border-top:1px solid #304652;padding-top:9px}.sunstar-voice-details>summary{color:#aabec9;font-size:10px;cursor:pointer;line-height:1.6}.sunstar-voice-note,.sunstar-chat-privacy{font-size:10px;line-height:1.65;color:#91aab9}.sunstar-chat-privacy{border-color:#314653;margin:10px 0 0;padding-top:9px}.sunstar-recording{background:#382f25;border-color:#756444}.sunstar-recording strong{color:#f5d294}.sunstar-transcript{background:#21392e;border-color:#476753}.sunstar-transcript .hint{color:#b9d3bf}.sunstar-chat-footer{margin-top:5px}.sunstar-chat button:disabled{opacity:.5;cursor:not-allowed}.sunstar-chat [hidden]{display:none!important}.sunstar-assistant-launcher:focus-visible,.sunstar-chat :is(button,summary,textarea):focus-visible{outline:3px solid #95e8d6;outline-offset:3px}
[data-orb-state="listening"] .sunstar-energy-orb{animation:orb-listen .8s ease-in-out infinite}[data-orb-state="listening"] .orb-core{box-shadow:0 0 26px #8cead47a,inset 0 0 18px #9bece741}[data-orb-state="listening"] .sunstar-orb-state{color:#edc985}[data-orb-state="processing"] .orb-orbit{animation-duration:2.8s}[data-orb-state="processing"] .orb-orbit.two{animation-duration:3.6s}[data-orb-state="processing"] .orb-dot{background:#fff2c9}[data-orb-state="review"] .orb-core{border-color:#e9ce8e}
@keyframes orb-breathe{0%,100%{scale:1;opacity:.86}50%{scale:1.035;opacity:1}}@keyframes orb-listen{0%,100%{scale:.98}50%{scale:1.075}}@keyframes orb-orbit-a{to{transform:rotate(328deg) scaleX(.52)}}@keyframes orb-orbit-b{to{transform:rotate(-320deg) scaleX(.55)}}@keyframes orb-orbit-c{to{transform:rotate(376deg) scaleY(.61)}}@keyframes orb-card-in{from{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}@keyframes orb-panel-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}@keyframes orb-tip-in{from{opacity:0;translate:0 4px}to{opacity:1;translate:0 0}}
@media(max-width:680px){.sunstar-assistant-launcher{right:12px;bottom:12px;width:80px;height:94px;border-radius:16px;padding:5px 7px 7px}.sunstar-assistant-launcher .sunstar-energy-orb{--orb-size:51px}.sunstar-orb-brand{font-size:11px}.sunstar-orb-hint{font-size:9px}.sunstar-chat{inset:auto 10px 10px auto;width:calc(100vw - 20px);height:min(730px,calc(100dvh - 20px));max-height:calc(100dvh - 20px)}.sunstar-chat-form textarea{font-size:16px}.sunstar-chat-head{padding:13px 15px 10px}.sunstar-chat-content{padding:10px 14px 4px}.sunstar-chat-form{padding:11px 14px;flex-basis:48%}.sunstar-orb-stage{min-height:140px}.sunstar-orb-stage .sunstar-energy-orb{--orb-size:106px}.sunstar-orb-tip{font-size:9px;max-width:60%}.sunstar-orb-tip.secondary{top:85px}.sunstar-chat-head h2{font-size:16px}}
@media(prefers-reduced-motion:reduce){.sunstar-energy-orb,.sunstar-energy-orb>span,.sunstar-orb-tip,.sunstar-chat[open],.sunstar-assistant-launcher{animation:none!important;transition:none!important}.sunstar-assistant-launcher:hover{translate:none}}

/* Cloud processing is always an explicit, keyboard-accessible opt-in. */
.sunstar-cloud-consent{border:1px solid var(--line,#526675);border-radius:9px;padding:10px;margin-bottom:12px;color:inherit}.sunstar-cloud-consent>label{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;cursor:pointer}.sunstar-cloud-consent input[type="checkbox"]{appearance:auto;flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:2px 0 0;accent-color:var(--accent,#63b7aa)}.sunstar-cloud-consent input:focus-visible{outline:3px solid currentColor;outline-offset:3px}.sunstar-cloud-consent .sunstar-voice-note{margin-top:6px}
