.genie-panel,.genie-launcher,.genie-navbtn{--genie-gold:#ecce86;--genie-gold-rgb:236,206,134;--genie-mark:#e7a63f;--genie-on-gold:#1a1a2e;--genie-r:16px;--genie-r-bubble:22px;--genie-r-field:9px;--genie-r-ctl:8px;--genie-glass:#ffffff94;--genie-glass-line:#ecce866b;--genie-glass-shadow:0 12px 40px #0000001a,inset 0 1px 0 #ffffffa6;--genie-head:linear-gradient(180deg,#fff 0%,#fafafa 100%);--genie-head-line:#ecce8633;--genie-field:#fafafa;--genie-field-glow:0 0 10px #ecce861f,0 2px 8px #0000000f;--genie-field-glow-on:0 0 16px #ecce8633;--genie-ai-bg:#0000000a;--genie-ai-line:#ecce8638;--genie-ai-ink:#1a1a1a;--genie-ai-shadow:0 2px 10px #0000000f;--genie-user-shadow:0 2px 10px #0000001a;--genie-gold-ink:#6b5a32;--genie-role:var(--genie-gold-ink);--genie-ctl:#000000a6;--genie-ctl-hover:#ecce8614;--genie-try-bg:linear-gradient(135deg,#fff 0%,#ffffffeb 100%);--genie-try-bg-on:linear-gradient(135deg,#ecce861f 0%,#fff 100%);--genie-try-line:#ecce8659;--genie-try-ink:#4a5568;--genie-try-shadow:0 1px 4px #2d37480f;--genie-card-bg:#ffc1070f;--genie-card-line:#ffc10766;--genie-mute:#0000008c}[data-theme=dark] .genie-panel,[data-theme=dark] .genie-launcher,[data-theme=dark] .genie-navbtn{--genie-glass:#12121685;--genie-glass-line:#ecce8673;--genie-glass-shadow:0 8px 32px #00000073,inset 0 1px 0 #ffffff0f;--genie-head:linear-gradient(180deg,#222222f2 0%,#1a1a1a99 100%);--genie-head-line:#ecce8638;--genie-field:#0a0a0a;--genie-field-glow:0 0 14px #ecce862e,0 4px 14px #00000080;--genie-field-glow-on:0 0 22px #ecce8652,0 4px 16px #0000008c;--genie-ai-bg:#ffffff0f;--genie-ai-line:#ecce8652;--genie-ai-ink:#ccc;--genie-ai-shadow:0 4px 18px #0003;--genie-user-shadow:0 4px 16px #00000052;--genie-gold-ink:#ecce86f2;--genie-role:#ecce86d9;--genie-ctl:#ffffffd9;--genie-ctl-hover:#ecce861f;--genie-try-bg:linear-gradient(135deg,#ffffff12 0%,#ffffff08 100%);--genie-try-bg-on:linear-gradient(135deg,#ecce8624 0%,#ffffff0d 100%);--genie-try-line:#ecce8638;--genie-try-ink:#f1f5f9f0;--genie-try-shadow:0 1px 3px #00000059;--genie-card-bg:#ffffff14;--genie-card-line:#ecce8673;--genie-mute:#fff9}.genie-mark{flex-shrink:0}.genie-launcher{right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:87;cursor:pointer;filter:drop-shadow(0 0 16px #e7a63f80);background-color:#0000;border:0;place-items:center;width:80px;height:80px;padding:0;transition:transform .18s,filter .18s;display:grid;position:fixed}.genie-launcher:hover{filter:drop-shadow(0 0 22px #e7a63fad);transform:scale(1.08)}.genie-launcher:active{transform:scale(.92)}.genie-launcher:focus-visible{outline:2px solid var(--genie-gold);outline-offset:4px;border-radius:50%}.genie-launcher[hidden]{display:none}.genie-launcher>*{grid-area:1/1}.genie-spark{width:var(--s);height:var(--s);opacity:0;pointer-events:none;background-color:#e7a63f;border-radius:50%;box-shadow:0 0 6px #e7a63f}@media (prefers-reduced-motion:no-preference){.genie-spark{animation:2s ease-out infinite genie-spark;animation-delay:var(--d)}}@keyframes genie-spark{0%{opacity:0;transform:translate(0)scale(0)}50%{opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}.genie-navbtn{border:1px solid var(--line);border-radius:var(--r);background-color:var(--raised);width:33px;height:33px;transition:border-color var(--t),box-shadow var(--t);flex-shrink:0;place-items:center;display:grid}.genie-navbtn:hover{border-color:var(--genie-gold);box-shadow:0 0 10px rgba(var(--genie-gold-rgb),.28)}.genie-navbtn .genie-mark{filter:drop-shadow(0 0 3px #e7a63f8c)}.genie-panel{right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:88;box-sizing:border-box;border-radius:var(--genie-r);background-color:var(--genie-glass);-webkit-backdrop-filter:blur(10px)saturate(1.25);backdrop-filter:blur(10px)saturate(1.25);border:1px solid var(--genie-glass-line);width:min(400px,100vw - 16px);height:min(720px,100vh - 88px);min-height:0;box-shadow:var(--genie-glass-shadow);flex-direction:column;transition:width .28s,height .28s,right .28s,border-radius .28s;display:flex;position:fixed;overflow:hidden}@media (min-width:640px){.genie-panel{width:min(400px,100vw - 40px);height:min(880px,100vh - 120px)}}.genie-panel.is-wide{width:min(960px,100vw - 24px);height:min(92vh,100vh - 48px)}@media (min-width:640px){.genie-panel.is-wide{height:min(92vh,100vh - 72px)}}@media (max-width:639px){.genie-panel.is-wide{border-width:0;border-radius:0;width:100%;height:100dvh;inset:0}}@media (prefers-reduced-motion:no-preference){.genie-panel{animation:.22s cubic-bezier(.2,.7,.3,1) genie-panel-in}}@keyframes genie-panel-in{0%{opacity:0}to{opacity:1}}.genie-head{background-color:#0000;background-image:var(--genie-head);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--genie-head-line);flex-shrink:0;align-items:center;gap:12px;min-height:56px;padding:10px 14px;display:flex}.genie-head-av{background-color:rgba(var(--genie-gold-rgb),.1);border:1px solid rgba(var(--genie-gold-rgb),.35);width:40px;height:40px;box-shadow:0 0 10px rgba(var(--genie-gold-rgb),.12);border-radius:50%;flex-shrink:0;place-items:center;display:grid}[data-theme=dark] .genie-head-av{background-color:rgba(var(--genie-gold-rgb),.12);border-color:rgba(var(--genie-gold-rgb),.45);box-shadow:0 0 16px rgba(var(--genie-gold-rgb),.2)}.genie-head-t{min-width:0;font:600 1rem/1.2 var(--sans);letter-spacing:.02em;color:#1a1a1a;flex:1}[data-theme=dark] .genie-head-t{color:#fff}.genie-tool,.genie-close{color:var(--genie-ctl);border-radius:50%;flex-shrink:0;place-items:center;transition:background-color .3s,color .3s;display:grid}.genie-tool{width:34px;height:34px}.genie-close{width:40px;height:40px}.genie-tool:hover,.genie-close:hover{background-color:var(--genie-ctl-hover);color:var(--genie-gold)}.genie-tool:disabled{opacity:.45;cursor:default}.genie-tool:disabled:hover{color:var(--genie-ctl);background-color:#0000}.genie-tool svg,.genie-close svg{width:22px;height:22px}.genie-toolbar{flex-shrink:0;align-items:center;gap:4px;display:flex}.genie-list{overscroll-behavior:contain;flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px 14px;display:flex;overflow-y:auto}.genie-list::-webkit-scrollbar{width:4px}.genie-history-list::-webkit-scrollbar{width:4px}.genie-fact-wrap::-webkit-scrollbar{width:4px}.genie-list::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.4);border-radius:10px}.genie-history-list::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.4);border-radius:10px}.genie-fact-wrap::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.4);border-radius:10px}[data-theme=dark] .genie-list::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.35)}[data-theme=dark] .genie-history-list::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.35)}[data-theme=dark] .genie-fact-wrap::-webkit-scrollbar-thumb{background-color:rgba(var(--genie-gold-rgb),.35)}.genie-list::-webkit-scrollbar-track{background-color:#0000}.genie-history-list::-webkit-scrollbar-track{background-color:#0000}.genie-fact-wrap::-webkit-scrollbar-track{background-color:#0000}.genie-panel.is-wide .genie-list{padding:16px 20px}.genie-panel.is-wide .genie-list>*{width:100%;max-width:820px;margin-inline:auto}.genie-msg{flex-direction:column;gap:6px;max-width:88%;display:flex}.genie-msg--user{align-self:flex-end;align-items:flex-end;padding-inline-start:12px}.genie-msg--genie{align-self:flex-start;align-items:flex-start;padding-inline-end:12px}.genie-msg-role{font:600 11px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--genie-role)}.genie-bubble{border-radius:var(--genie-r-bubble);font:400 14px/1.55 var(--sans);overflow-wrap:anywhere;padding:14px 18px}.genie-msg--user .genie-bubble{background-color:var(--genie-gold);color:var(--genie-on-gold);box-shadow:var(--genie-user-shadow);border:1px solid #1a1a2e1f}.genie-msg--genie .genie-bubble{background-color:var(--genie-ai-bg);color:var(--genie-ai-ink);border:1px solid var(--genie-ai-line);box-shadow:var(--genie-ai-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.genie-bubble p{margin:0;line-height:1.5}.genie-bubble ul,.genie-bubble ol{margin:8px 0;padding-inline-start:20px}.genie-bubble li{margin-bottom:4px}.genie-bubble h1,.genie-bubble h2,.genie-bubble h3{font:600 15px/1.35 var(--sans);margin:10px 0 4px}.genie-bubble code{font-family:var(--mono);background-color:#0000001a;border-radius:3px;padding:2px 4px;font-size:.9em}.genie-bubble pre{background-color:#0000001a;border-radius:6px;margin:8px 0;padding:12px;overflow:auto}.genie-bubble pre code{background-color:#0000;padding:0}.genie-bubble a{color:inherit;text-decoration:underline}.genie-caret{vertical-align:text-bottom;background-color:rgba(var(--genie-gold-rgb),.85);width:6px;height:1em;margin-inline-start:2px;display:inline-block}@media (prefers-reduced-motion:no-preference){.genie-caret,.genie-stage-dot{animation:1s ease-in-out infinite genie-pulse}}@keyframes genie-pulse{0%,to{opacity:1}50%{opacity:.25}}.genie-cites,.genie-videos{flex-direction:column;gap:4px;margin:2px 0 0;padding:0;list-style:none;display:flex}.genie-cite,.genie-video{font:500 12px/1.4 var(--sans);color:var(--genie-gold-ink);text-decoration:none}.genie-cite:hover,.genie-video:hover{color:var(--genie-gold-ink);text-decoration:underline}.genie-cite-w{flex-direction:column;gap:1px;min-width:0;display:flex}.genie-cite-m{font:400 11px/1.3 var(--sans);color:var(--genie-mute)}.genie-actions{gap:2px;margin-top:2px;display:flex}.genie-action{width:28px;height:28px;color:var(--genie-mute);border-radius:8px;place-items:center;transition:background-color .2s,color .2s;display:grid}.genie-action:hover{background-color:var(--genie-ctl-hover);color:var(--genie-gold)}.genie-action svg{width:15px;height:15px}.genie-action.is-active{color:var(--genie-gold)}.genie-tries{flex-direction:column;gap:6px;min-width:0;margin-top:2px;display:flex}.genie-tries-t{font:700 11.5px/1.4 var(--sans);letter-spacing:.02em;border-inline-start:3px solid var(--genie-gold);background-color:rgba(var(--genie-gold-rgb),.08);color:#3d3528;border-radius:9px;padding:6px 9px;display:block}[data-theme=dark] .genie-tries-t{background-color:rgba(var(--genie-gold-rgb),.06);color:#e8e4dc}.genie-tries-row{flex-direction:column;gap:6px;min-width:0;display:flex}.genie-try{text-align:left;border-radius:var(--genie-r-ctl);border:1px solid var(--genie-try-line);background-color:#0000;background-image:var(--genie-try-bg);width:100%;min-width:0;color:var(--genie-try-ink);font:500 12px/1.45 var(--sans);box-shadow:var(--genie-try-shadow);overflow-wrap:anywhere;padding:8px 10px 8px 12px;transition:border-color .2s,box-shadow .2s,background-image .2s;position:relative;overflow:hidden}.genie-try:before{content:"";inset-inline-start:0;background-image:linear-gradient(180deg,var(--genie-gold),rgba(var(--genie-gold-rgb),.45));opacity:.85;border-start-start-radius:var(--genie-r-ctl);border-end-start-radius:var(--genie-r-ctl);width:3px;position:absolute;top:0;bottom:0}.genie-try:hover{border-color:rgba(var(--genie-gold-rgb),.65);box-shadow:0 2px 8px rgba(var(--genie-gold-rgb),.18);background-image:var(--genie-try-bg-on)}[data-theme=dark] .genie-try:hover{box-shadow:0 2px 8px rgba(var(--genie-gold-rgb),.14)}.genie-stage{font:400 12px/1.4 var(--sans);color:var(--genie-mute);flex-shrink:0;align-items:center;gap:8px;padding:9px 4px;display:flex}.genie-stage-dot{background-color:var(--genie-gold);border-radius:50%;flex-shrink:0;width:6px;height:6px}.genie-stage--error{color:var(--danger)}.genie-stage--error .genie-stage-dot{background-color:var(--danger);animation:none}.genie-draft{border-radius:var(--genie-r);background-color:var(--genie-card-bg);border:2px solid var(--genie-card-line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);margin-top:8px;padding:18px}.genie-draft-t{font:700 15px/1.3 var(--sans);color:var(--genie-ai-ink);margin:0 0 4px}[data-theme=dark] .genie-draft-t{color:#fff}.genie-draft-s{font:400 12px/1.5 var(--sans);color:var(--genie-mute);margin:0 0 12px}.genie-draft-f{flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.genie-draft-f li{grid-template-columns:minmax(0,86px) minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.genie-draft-k{font:400 11px/1.4 var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--genie-mute)}.genie-draft-v{min-width:0;font:400 13px/1.5 var(--sans);color:var(--genie-ai-ink);overflow-wrap:anywhere}.genie-draft-act{gap:10px;display:flex}.genie-draft-btn{border-radius:var(--genie-r-ctl);min-width:0;font:600 13px/1.2 var(--sans);text-transform:none;flex:1;justify-content:center;align-items:center;gap:7px;padding:10px 20px;transition:box-shadow .2s,opacity .2s,border-color .2s;display:flex}.genie-draft-btn svg{flex-shrink:0;width:16px;height:16px}.genie-draft-btn:disabled{opacity:.55;cursor:default}.genie-draft-go{background-color:var(--genie-gold);color:var(--genie-on-gold);border:1px solid #0000}.genie-draft-go:hover:not(:disabled){box-shadow:0 0 14px rgba(var(--genie-gold-rgb),.4)}.genie-draft-no{color:var(--genie-mute);border:1px solid var(--genie-try-line);background-color:#0000}.genie-draft-no:hover:not(:disabled){border-color:rgba(var(--genie-gold-rgb),.6);color:var(--genie-ai-ink)}.genie-draft-r{font:400 12px/1.5 var(--sans);color:var(--genie-mute);margin:10px 0 0}.genie-draft-r.is-bad{color:var(--danger)}.genie-composer{flex-shrink:0;align-items:stretch;gap:10px;padding:12px 16px 16px;display:flex}.genie-panel.is-wide .genie-composer{width:100%;max-width:860px;margin-inline:auto}.genie-input{border:1px solid var(--genie-gold);border-radius:var(--genie-r-field);background-color:var(--genie-field);min-width:0;min-height:44px;color:var(--genie-ai-ink);font:400 14px/1.5 var(--sans);box-shadow:var(--genie-field-glow);outline:none;flex:1;padding:0 8px 0 12px;transition:box-shadow .2s,border-color .2s}[data-theme=dark] .genie-input{color:#f0f0f0}.genie-input:focus{box-shadow:var(--genie-field-glow-on)}.genie-input::placeholder{color:var(--genie-mute)}.genie-input:disabled{opacity:.6}.genie-send{border-radius:var(--genie-r-ctl);background-color:var(--genie-gold);width:48px;height:48px;color:var(--genie-on-gold);flex-shrink:0;align-self:center;place-items:center;transition:box-shadow .2s,opacity .2s;display:grid;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001f}[data-theme=dark] .genie-send{box-shadow:0 2px 10px #00000073}.genie-send:before{content:"";opacity:.7;pointer-events:none;background-image:radial-gradient(circle,#ffffff80 0%,#fff0 70%);width:48%;height:48%;position:absolute;top:14%;left:18%}.genie-send svg{width:18px;height:18px;margin-inline-start:2px;position:relative}.genie-send:hover:not(:disabled){box-shadow:0 0 14px rgba(var(--genie-gold-rgb),.35)}[data-theme=dark] .genie-send:hover:not(:disabled){box-shadow:0 0 18px rgba(var(--genie-gold-rgb),.45),0 2px 12px #00000080}.genie-send:active:not(:disabled){opacity:.92}.genie-send:disabled{opacity:.4;cursor:default}.genie-history-list{overscroll-behavior:contain;flex-direction:column;flex:1;gap:2px;min-height:0;margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.genie-history-list li{min-width:0}.genie-history-row{border-radius:var(--genie-r-ctl);text-align:left;flex-direction:column;gap:2px;width:100%;padding:10px 12px;transition:background-color .2s;display:flex}.genie-history-row:hover{background-color:var(--genie-ctl-hover)}.genie-history-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font:400 13.5px/1.4 var(--sans);color:var(--genie-ai-ink);overflow:hidden}.genie-history-m{font:400 11px/1.3 var(--sans);color:var(--genie-mute)}.genie-memory-toggle{border-bottom:1px solid var(--genie-head-line);background-color:#0000;background-image:var(--genie-head);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.genie-memory-toggle-t{font:400 13.5px/1.4 var(--sans);color:var(--genie-ai-ink)}.genie-switch{background-color:var(--genie-try-line);border-radius:999px;flex-shrink:0;width:38px;height:22px;transition:background-color .2s;position:relative}.genie-switch.is-on{background-color:var(--genie-gold)}.genie-switch:disabled{opacity:.6;cursor:default}.genie-switch-thumb{background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000004d}.genie-switch.is-on .genie-switch-thumb{transform:translate(16px)}.genie-fact-wrap{overscroll-behavior:contain;flex:1;min-height:0;padding:10px 14px;overflow-y:auto}.genie-memory-empty{text-align:center;font:400 13px/1.5 var(--sans);color:var(--genie-mute);padding:28px 8px}.genie-fact-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.genie-fact{border-radius:var(--genie-r-ctl);background-color:#0000;background-image:var(--genie-try-bg);border:1px solid var(--genie-try-line);padding:10px 12px}.genie-fact-t{font:400 13px/1.5 var(--sans);color:var(--genie-ai-ink);overflow-wrap:anywhere;margin:0}.genie-fact-meta{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.genie-fact-from{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:400 11px/1.3 var(--sans);color:var(--genie-gold-ink);text-align:left;overflow:hidden}.genie-fact-from:hover{text-decoration:underline}.genie-fact-forget{width:24px;height:24px;color:var(--genie-mute);border-radius:50%;flex-shrink:0;place-items:center;transition:background-color .2s,color .2s;display:grid}.genie-fact-forget:hover{background-color:var(--genie-ctl-hover);color:var(--danger)}.genie-fact-forget svg{width:12px;height:12px}.genie-memory-footer{border-top:1px solid var(--genie-head-line);flex-shrink:0;padding:12px 14px}.genie-memory-forget-all{border-radius:var(--genie-r-ctl);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);background-color:var(--danger-bg);width:100%;color:var(--danger);font:600 12.5px/1.2 var(--sans);padding:10px;transition:border-color .2s}.genie-memory-forget-all:hover{border-color:color-mix(in srgb,var(--danger) 55%,transparent)}.genie-panel :focus-visible,.genie-navbtn:focus-visible{outline-color:var(--genie-gold)}.genie-input:focus-visible{border-radius:var(--genie-r-field)}.genie-send:focus-visible,.genie-try:focus-visible,.genie-draft-btn:focus-visible,.genie-history-row:focus-visible,.genie-action:focus-visible,.genie-memory-forget-all:focus-visible{border-radius:var(--genie-r-ctl)}.genie-navbtn:focus-visible{border-radius:var(--r)}.genie-tool:focus-visible,.genie-close:focus-visible,.genie-fact-forget:focus-visible{border-radius:50%}.genie-switch:focus-visible{border-radius:999px}.genie-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
