.codegner-ai-shell{--ai-bg:#000;--ai-panel:#0a0a0a;--ai-panel-strong:#111;--ai-surface:#151515;--ai-surface-hover:#1d1d1d;--ai-border:#ffffff1a;--ai-border-strong:#ffffff2b;--ai-text:#f5f5f5;--ai-text-secondary:#b5b5b5;--ai-text-muted:#777;--ai-accent:var(--accent-color,#0077b6);--ai-accent-soft:color-mix(in srgb, var(--ai-accent) 14%, transparent);--ai-accent-border:color-mix(in srgb, var(--ai-accent) 38%, transparent);--ai-shadow:0 30px 90px #0009;z-index:999999;pointer-events:none;isolation:isolate;font-family:inherit;position:fixed;inset:0}.codegner-ai-light{--ai-bg:#fff;--ai-panel:#fff;--ai-panel-strong:#fff;--ai-surface:#f5f5f5;--ai-surface-hover:#eee;--ai-border:#0000001a;--ai-border-strong:#00000029;--ai-text:#111;--ai-text-secondary:#555;--ai-text-muted:#888;--ai-shadow:0 30px 90px #00000029}.codegner-ai-backdrop{pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0003;animation:.18s codegnerAiFadeIn;position:absolute;inset:0}.codegner-ai-window{width:min(460px,100vw - 32px);height:min(780px,100vh - 56px);color:var(--ai-text);background:var(--ai-panel);border:1px solid var(--ai-border-strong);box-shadow:var(--ai-shadow);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);pointer-events:auto;border-radius:28px;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) codegnerAiWindowIn;display:flex;position:absolute;bottom:28px;right:28px;overflow:hidden}.codegner-ai-header{border-bottom:1px solid var(--ai-border);background:var(--ai-panel);flex:none;justify-content:space-between;align-items:center;min-width:0;padding:15px 15px 14px;display:flex;position:relative}.codegner-ai-header-left{align-items:center;gap:9px;min-width:0;display:flex;overflow:hidden}.codegner-ai-header-actions{flex:none;align-items:center;gap:2px;display:flex}.codegner-ai-icon-button{width:38px;height:38px;color:var(--ai-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;place-items:center;transition:background .16s,color .16s,transform .16s;display:grid}.codegner-ai-icon-button:hover,.codegner-ai-icon-button.is-active{color:var(--ai-text);background:var(--ai-surface-hover)}.codegner-ai-icon-button:active{transform:scale(.93)}.codegner-ai-brand{align-items:center;gap:9px;min-width:0;display:flex;overflow:hidden}.codegner-ai-brand-mark{background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:11px;flex:none;place-items:center;width:37px;height:37px;padding:5px;display:grid;overflow:hidden}.codegner-ai-brand-mark .codegner-ai-logo-svg{object-fit:contain;width:27px;height:27px}.codegner-ai-brand strong{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.08em;font-size:12px;font-weight:800;line-height:1.2;display:block;overflow:hidden}.codegner-ai-brand span{text-overflow:ellipsis;white-space:nowrap;max-width:210px;color:var(--ai-text-muted);margin-top:3px;font-size:9px;line-height:1.2;display:block;overflow:hidden}.codegner-ai-logo-svg{object-fit:contain;width:25px;max-width:100%;height:auto;display:block}.codegner-ai-menu{z-index:50;border:1px solid var(--ai-border-strong);background:var(--ai-panel-strong);border-radius:18px;width:285px;max-width:calc(100vw - 28px);padding:9px;animation:.17s cubic-bezier(.16,1,.3,1) codegnerAiMenuIn;position:absolute;top:65px;left:14px;box-shadow:0 25px 65px #0000004d}.codegner-ai-menu-heading{justify-content:space-between;align-items:center;padding:5px 7px 8px;display:flex}.codegner-ai-menu-heading span{color:var(--ai-accent);letter-spacing:.12em;font-size:8px;font-weight:800;display:block}.codegner-ai-menu-heading strong{margin-top:2px;font-size:12px;display:block}.codegner-ai-menu-close{width:28px;height:28px;color:var(--ai-text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.codegner-ai-menu-close:hover{color:var(--ai-text);background:var(--ai-surface-hover)}.codegner-ai-menu-divider{background:var(--ai-border);height:1px;margin:5px 0}.codegner-ai-menu>button:not(.codegner-ai-menu-close){width:100%;min-height:48px;color:var(--ai-text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:10px;padding:7px;transition:color .15s,background .15s;display:flex}.codegner-ai-menu>button:not(.codegner-ai-menu-close):hover{color:var(--ai-text);background:var(--ai-surface-hover)}.codegner-ai-menu-icon{width:34px;height:34px;color:var(--ai-text);background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:10px;flex:none;place-items:center;display:grid}.codegner-ai-menu button>span:nth-child(2){flex:1;min-width:0}.codegner-ai-menu button strong{color:var(--ai-text);font-size:10px;display:block}.codegner-ai-menu button small{color:var(--ai-text-muted);margin-top:2px;font-size:8px;line-height:1.35;display:block}.codegner-ai-menu-chevron{color:var(--ai-text-muted);flex:none}.codegner-ai-content{scrollbar-width:thin;scrollbar-color:var(--ai-border-strong) transparent;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-width:0;min-height:0;overflow:hidden auto}.codegner-ai-content::-webkit-scrollbar{width:5px}.codegner-ai-content::-webkit-scrollbar-track{background:0 0}.codegner-ai-content::-webkit-scrollbar-thumb{background:var(--ai-border-strong);border-radius:999px}.codegner-ai-home{min-width:0;padding:24px 20px 20px}.codegner-ai-welcome{grid-template-columns:62px minmax(0,1fr);align-items:center;gap:13px;min-width:0;display:grid}.codegner-ai-avatar{background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:50%;flex:none;place-items:center;width:62px;height:62px;animation:3.2s ease-in-out infinite codegnerAiAvatarPulse;display:grid;position:relative}.codegner-ai-avatar .codegner-ai-logo-svg{object-fit:contain;width:38px;height:38px}.codegner-ai-online-dot{border:2px solid var(--ai-panel);background:#21d67a;border-radius:50%;width:12px;height:12px;position:absolute;bottom:2px;right:1px;box-shadow:0 0 0 4px #21d67a1a}.codegner-ai-welcome-card{background:var(--ai-surface);border:1px solid var(--ai-border);overflow-wrap:anywhere;border-radius:20px;min-width:0;padding:17px 17px 18px}.codegner-ai-eyebrow{color:var(--ai-accent);letter-spacing:.12em;margin-bottom:6px;font-size:9px;font-weight:800;display:block}.codegner-ai-welcome-card h2{letter-spacing:-.025em;margin:0;font-size:20px;line-height:1.2}.codegner-ai-welcome-card p{color:var(--ai-text-secondary);margin:9px 0 0;font-size:12px;line-height:1.65}.codegner-ai-section-heading{justify-content:space-between;align-items:end;gap:12px;min-width:0;margin-top:29px;margin-bottom:12px;display:flex}.codegner-ai-section-heading>div{min-width:0}.codegner-ai-section-heading>div>span{color:var(--ai-accent);letter-spacing:.13em;margin-bottom:4px;font-size:8px;font-weight:800;display:block}.codegner-ai-section-heading h3{margin:0;font-size:15px;line-height:1.3}.codegner-ai-live{color:var(--ai-text-muted);flex:none;align-items:center;gap:5px;font-size:9px;display:flex}.codegner-ai-live span{background:#21d67a;border-radius:50%;flex:none;width:6px;height:6px;animation:2s infinite codegnerAiOnlinePulse;box-shadow:0 0 0 4px #21d67a1a}.codegner-ai-prompts{gap:7px;min-width:0;display:grid}.codegner-ai-prompt{box-sizing:border-box;border:1px solid var(--ai-border);background:var(--ai-surface);width:100%;min-height:52px;color:var(--ai-text);font:inherit;text-align:left;cursor:pointer;border-radius:15px;grid-template-columns:32px minmax(0,1fr) 17px;align-items:center;gap:10px;padding:7px 10px 7px 7px;font-size:11px;transition:transform .17s,background .17s,border-color .17s;display:grid}.codegner-ai-prompt:hover{background:var(--ai-surface-hover);border-color:var(--ai-border-strong);transform:translateY(-1px)}.codegner-ai-prompt-icon{width:32px;height:32px;color:var(--ai-text);background:var(--ai-surface-hover);border:1px solid var(--ai-border);border-radius:10px;flex:none;place-items:center;display:grid}.codegner-ai-prompt-arrow{color:var(--ai-text-muted);transition:color .16s,transform .16s}.codegner-ai-prompt:hover .codegner-ai-prompt-arrow{color:var(--ai-text);transform:translate(2px)}.codegner-ai-consultation{box-sizing:border-box;background:var(--ai-panel-strong);border:1px solid var(--ai-border);border-radius:17px;grid-template-columns:40px minmax(0,1fr);gap:10px;margin-top:12px;padding:13px;display:grid}.codegner-ai-consultation-icon{width:40px;height:40px;color:var(--ai-text);background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:12px;flex:none;place-items:center;display:grid}.codegner-ai-consultation strong{font-size:11px;display:block}.codegner-ai-consultation span{color:var(--ai-text-muted);margin-top:3px;font-size:9px;line-height:1.5;display:block}.codegner-ai-consultation button{color:#fff;min-height:36px;font:inherit;cursor:pointer;background:#000;border:1px solid #ffffff24;border-radius:11px;grid-column:1/-1;justify-content:center;align-items:center;gap:7px;font-size:10px;font-weight:700;transition:transform .16s,filter .16s;display:inline-flex}.codegner-ai-consultation button:hover{filter:brightness(1.15);transform:translateY(-1px)}.codegner-ai-light .codegner-ai-consultation button{color:#fff;background:#000;border-color:#000}.codegner-ai-topic-section{margin-top:23px}.codegner-ai-section-label{color:var(--ai-text-muted);text-transform:uppercase;letter-spacing:.09em;margin-bottom:9px;font-size:9px;font-weight:700;display:block}.codegner-ai-topics{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.codegner-ai-topic{box-sizing:border-box;max-width:100%;min-height:32px;color:var(--ai-text-secondary);background:var(--ai-surface);border:1px solid var(--ai-border);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:9px;transition:color .16s,background .16s,border-color .16s;display:inline-flex}.codegner-ai-topic svg{color:var(--ai-text-secondary);flex:none}.codegner-ai-topic:hover{color:var(--ai-text);background:var(--ai-surface-hover);border-color:var(--ai-border-strong)}.codegner-ai-conversation{min-width:0;padding:20px}.codegner-ai-message-row{align-items:flex-start;gap:8px;min-width:0;margin-bottom:17px;animation:.18s codegnerAiMessageIn;display:flex}.codegner-ai-message-row.is-user{justify-content:flex-end}.codegner-ai-message-avatar{width:29px;height:29px;color:var(--ai-text);background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:9px;flex:none;place-items:center;margin-top:3px;display:grid}.codegner-ai-message-avatar .codegner-ai-logo-svg{object-fit:contain;width:20px;height:20px}.codegner-ai-message{box-sizing:border-box;min-width:0;max-width:84%;color:var(--ai-text);background:var(--ai-surface);border:1px solid var(--ai-border);overflow-wrap:anywhere;word-break:break-word;border-radius:16px;padding:11px 13px;font-size:12px;line-height:1.65}.codegner-ai-message-row.is-user .codegner-ai-message{color:#fff;background:#000;border-color:#000;border-bottom-right-radius:5px}.codegner-ai-message-row.is-assistant .codegner-ai-message{border-bottom-left-radius:5px}.codegner-ai-markdown{color:inherit;font-size:inherit;overflow-wrap:anywhere;min-width:0;line-height:1.65}.codegner-ai-markdown p{margin:0}.codegner-ai-markdown p+p{margin-top:9px}.codegner-ai-markdown strong{color:var(--ai-text);font-weight:700}.codegner-ai-markdown ul,.codegner-ai-markdown ol{margin:8px 0;padding-left:20px}.codegner-ai-markdown li{margin:4px 0}.codegner-ai-markdown h3,.codegner-ai-markdown h4{color:var(--ai-text);line-height:1.35}.codegner-ai-markdown h3{margin:12px 0 6px;font-size:14px}.codegner-ai-markdown h4{margin:10px 0 5px;font-size:13px}.codegner-ai-markdown blockquote{border-left:3px solid var(--ai-text);color:var(--ai-text-secondary);background:var(--ai-surface);border-radius:0 8px 8px 0;margin:9px 0;padding:7px 11px}.codegner-ai-markdown code{color:var(--ai-text);background:var(--ai-surface-hover);overflow-wrap:anywhere;border-radius:5px;padding:2px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.codegner-ai-markdown pre{max-width:100%;overflow-x:auto}.codegner-ai-markdown a{color:var(--ai-text);text-decoration:underline;-webkit-text-decoration-color:var(--ai-text-muted);text-decoration-color:var(--ai-text-muted);text-underline-offset:2px;overflow-wrap:anywhere}.codegner-ai-thinking{align-items:center;gap:4px;min-width:170px;max-width:100%;height:18px;display:flex}.codegner-ai-thinking span{background:var(--ai-text);border-radius:50%;flex:none;width:5px;height:5px;animation:1.1s ease-in-out infinite codegnerAiThinking}.codegner-ai-thinking span:nth-child(2){animation-delay:.12s}.codegner-ai-thinking span:nth-child(3){animation-delay:.24s}.codegner-ai-thinking small{color:var(--ai-text-muted);margin-left:5px;font-size:9px}.codegner-ai-footer{border-top:1px solid var(--ai-border);background:var(--ai-panel);flex:none;min-width:0;padding:12px 15px 13px}.codegner-ai-composer{width:100%;min-width:0}.codegner-ai-composer-main{box-sizing:border-box;background:var(--ai-surface);border:1px solid var(--ai-border);border-radius:17px;align-items:center;width:100%;min-width:0;min-height:52px;padding:0 7px 0 13px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex;position:relative}.codegner-ai-composer-main:focus-within{background:var(--ai-surface-hover);border-color:var(--ai-border-strong);box-shadow:0 0 0 3px var(--ai-border)}.codegner-ai-composer-main input{box-sizing:border-box;appearance:none;width:100%;min-width:0;height:50px;color:var(--ai-text);caret-color:var(--ai-text);cursor:text;background:0 0;border:0;outline:0;flex:auto;padding:0 9px;font-family:inherit;font-size:12px;font-weight:450;line-height:1.4}.codegner-ai-composer-main input:focus{caret-color:var(--ai-text);outline:none}.codegner-ai-composer-main input:disabled{cursor:wait;opacity:.75}.codegner-ai-composer-main input::placeholder{color:var(--ai-text-muted);opacity:1}.codegner-ai-composer-icon{color:var(--ai-text-muted);pointer-events:none;flex:none}.codegner-ai-mic,.codegner-ai-send{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;width:35px;height:35px;transition:color .15s,background .15s,transform .15s;display:grid}.codegner-ai-mic{color:var(--ai-text-muted);position:relative}.codegner-ai-mic:hover{color:var(--ai-text);background:var(--ai-surface-hover)}.codegner-ai-mic.is-listening{color:var(--ai-text);background:var(--ai-surface-hover);animation:1.4s ease-in-out infinite codegner-ai-mic-pulse}.codegner-ai-mic:disabled{opacity:.45;cursor:not-allowed}.codegner-ai-send{color:#fff;background:#000}.codegner-ai-send:not(:disabled):hover{filter:brightness(1.18);transform:translateY(-1px)}.codegner-ai-send:not(:disabled):active{transform:scale(.94)}.codegner-ai-send:disabled{color:var(--ai-text-muted);opacity:.45;cursor:not-allowed;background:0 0}.codegner-ai-voice-error{color:var(--ai-text-muted);overflow-wrap:anywhere;margin-top:6px;padding:0 4px;font-size:11px;line-height:1.4}@keyframes codegner-ai-mic-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.codegner-ai-composer-hint{color:var(--ai-text-muted);justify-content:space-between;align-items:center;gap:10px;margin-top:6px;padding:0 3px;font-size:8px;display:flex}.codegner-ai-composer-hint span{min-width:0}.codegner-ai-composer-hint span:last-child{flex:none;align-items:center;gap:4px;display:inline-flex}.codegner-ai-footer-meta{color:var(--ai-text-muted);justify-content:space-between;align-items:center;gap:10px;margin-top:7px;padding:0 3px;font-size:8px;display:flex}.codegner-ai-footer-meta>*{min-width:0}.codegner-ai-launcher{z-index:999998;box-sizing:border-box;color:#f6f7f9;min-width:225px;height:64px;font:inherit;cursor:pointer;pointer-events:auto;background:#000;border:1px solid #ffffff24;border-radius:19px;align-items:center;gap:10px;padding:7px 8px 7px 9px;transition:transform .18s,box-shadow .18s;display:flex;position:fixed;bottom:24px;right:24px;overflow:visible;box-shadow:0 18px 55px #00000059}.codegner-ai-launcher:hover{transform:translateY(-3px);box-shadow:0 25px 70px #0000006e}.codegner-ai-launcher-pulse{opacity:0;pointer-events:none;border:1px solid #ffffff2e;border-radius:25px;animation:2.6s ease-out infinite codegnerAiLauncherPulse;position:absolute;inset:-7px}.codegner-ai-launcher-glow{display:none}.codegner-ai-launcher .codegner-ai-logo-mark{background:#111;border:1px solid #ffffff1f;border-radius:13px;flex:none;place-items:center;width:45px;height:45px;display:grid;position:relative}.codegner-ai-launcher .codegner-ai-logo-svg{object-fit:contain;width:31px;height:31px;animation:3s ease-in-out infinite codegnerAiLauncherLogo}.codegner-ai-launcher-status{background:#21d67a;border:2px solid #111;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-2px;right:-2px;box-shadow:0 0 0 3px #21d67a1f}.codegner-ai-launcher-copy{text-align:left;flex-direction:column;align-items:flex-start;min-width:0;display:flex;position:relative}.codegner-ai-launcher-copy strong{letter-spacing:.06em;font-size:11px}.codegner-ai-launcher-copy small{color:#858c96;margin-top:3px;font-size:9px}.codegner-ai-launcher-arrow{color:#fff;background:#111;border:1px solid #ffffff1a;border-radius:9px;flex:none;place-items:center;width:31px;height:31px;margin-left:auto;animation:2.2s ease-in-out infinite codegnerAiArrowFloat;display:grid;position:relative}.codegner-ai-light .codegner-ai-launcher{color:#111;background:#fff;border-color:#0000001f;box-shadow:0 18px 55px #00000029}.codegner-ai-light .codegner-ai-launcher .codegner-ai-logo-mark{background:#f2f2f2;border-color:#0000001a}.codegner-ai-light .codegner-ai-launcher-arrow{color:#fff;background:#000;border-color:#000}.codegner-ai-light .codegner-ai-launcher-status{border-color:#fff}.codegner-ai-light .codegner-ai-launcher-copy small{color:#777}@keyframes codegnerAiWindowIn{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes codegnerAiFadeIn{0%{opacity:0}to{opacity:1}}@keyframes codegnerAiMenuIn{0%{opacity:0;transform:translateY(-7px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes codegnerAiMessageIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes codegnerAiThinking{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes codegnerAiOnlinePulse{0%,to{opacity:.65;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}@keyframes codegnerAiAvatarPulse{0%,to{box-shadow:0 0 #fff0}50%{box-shadow:0 0 0 8px #ffffff0a}}@keyframes codegnerAiLauncherPulse{0%{opacity:0;transform:scale(.94)}20%{opacity:.7}70%{opacity:0;transform:scale(1.04)}to{opacity:0}}@keyframes codegnerAiLauncherLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes codegnerAiArrowFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@media (max-width:767px){.codegner-ai-shell{width:100%;max-width:100%;overflow:hidden}.codegner-ai-backdrop{background:var(--ai-bg);-webkit-backdrop-filter:none;backdrop-filter:none}.codegner-ai-window{width:100%;max-width:100%;height:100dvh;min-height:0;box-shadow:none;border:0;border-radius:0;animation:none;position:fixed;inset:0;overflow:hidden}.codegner-ai-header{width:100%;min-height:60px;padding:max(10px, env(safe-area-inset-top)) 10px 10px;box-sizing:border-box}.codegner-ai-header-left{gap:7px}.codegner-ai-header-actions{gap:0}.codegner-ai-icon-button{border-radius:10px;width:36px;height:36px}.codegner-ai-brand{gap:7px}.codegner-ai-brand-mark{border-radius:10px;width:34px;height:34px;padding:4px}.codegner-ai-brand-mark .codegner-ai-logo-svg{width:25px;height:25px}.codegner-ai-brand strong{font-size:11px}.codegner-ai-brand span{max-width:145px;font-size:8px}.codegner-ai-content{width:100%;min-width:0;min-height:0}.codegner-ai-home{box-sizing:border-box;width:100%;padding:17px 14px 20px}.codegner-ai-welcome{grid-template-columns:44px minmax(0,1fr);gap:10px}.codegner-ai-avatar{width:44px;height:44px}.codegner-ai-avatar .codegner-ai-logo-svg{width:27px;height:27px}.codegner-ai-online-dot{border-width:2px;width:10px;height:10px;bottom:0;right:0}.codegner-ai-welcome-card{border-radius:16px;padding:13px}.codegner-ai-welcome-card h2{font-size:16px;line-height:1.25}.codegner-ai-welcome-card p{margin-top:7px;font-size:10.5px;line-height:1.55}.codegner-ai-section-heading{gap:8px;margin-top:23px;margin-bottom:10px}.codegner-ai-section-heading h3{font-size:14px}.codegner-ai-live{font-size:8px}.codegner-ai-prompts{gap:6px}.codegner-ai-prompt{border-radius:13px;grid-template-columns:29px minmax(0,1fr) 15px;gap:8px;min-height:48px;padding:6px 8px 6px 6px;font-size:10px;line-height:1.4}.codegner-ai-prompt-icon{border-radius:9px;width:29px;height:29px}.codegner-ai-consultation{border-radius:14px;grid-template-columns:35px minmax(0,1fr);gap:9px;margin-top:10px;padding:11px}.codegner-ai-consultation-icon{border-radius:10px;width:35px;height:35px}.codegner-ai-consultation strong{font-size:10px}.codegner-ai-consultation span{font-size:8.5px}.codegner-ai-consultation button{min-height:34px;font-size:9px}.codegner-ai-topic-section{margin-top:19px}.codegner-ai-section-label{margin-bottom:8px;font-size:8px}.codegner-ai-topics{gap:6px}.codegner-ai-topic{min-height:30px;padding:0 9px;font-size:8.5px}.codegner-ai-conversation{box-sizing:border-box;width:100%;padding:15px 13px 20px}.codegner-ai-message-row{gap:6px;margin-bottom:14px}.codegner-ai-message-avatar{border-radius:8px;width:27px;height:27px;margin-top:2px}.codegner-ai-message-avatar .codegner-ai-logo-svg{width:18px;height:18px}.codegner-ai-message{border-radius:14px;max-width:calc(100% - 33px);padding:9px 11px;font-size:11px;line-height:1.6}.codegner-ai-message-row.is-user .codegner-ai-message{max-width:88%}.codegner-ai-markdown{font-size:10.5px;line-height:1.6}.codegner-ai-markdown h3{margin-top:10px;font-size:13px}.codegner-ai-markdown h4{font-size:12px}.codegner-ai-markdown ul,.codegner-ai-markdown ol{padding-left:18px}.codegner-ai-thinking{min-width:0;height:17px}.codegner-ai-thinking small{font-size:8px}.codegner-ai-footer{box-sizing:border-box;width:100%;padding:8px 10px calc(9px + env(safe-area-inset-bottom))}.codegner-ai-composer-main{border-radius:15px;min-height:48px;padding:0 5px 0 9px}.codegner-ai-composer-main input{min-width:0;height:46px;padding:0 6px;font-size:12px}.codegner-ai-composer-main input::placeholder{text-overflow:ellipsis}.codegner-ai-composer-icon{display:none}.codegner-ai-mic,.codegner-ai-send{border-radius:9px;width:34px;height:34px}.codegner-ai-composer-hint{margin-top:5px;padding:0 2px;font-size:7px}.codegner-ai-footer-meta{margin-top:6px;padding:0 2px;font-size:7px}.codegner-ai-menu{width:min(285px,100vw - 16px);max-width:calc(100vw - 16px);top:58px;left:8px}.codegner-ai-launcher{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));border-radius:17px;width:58px;min-width:58px;height:58px;padding:6px}.codegner-ai-launcher-copy,.codegner-ai-launcher-arrow{display:none}.codegner-ai-launcher .codegner-ai-logo-mark{border-radius:13px;width:46px;height:46px}.codegner-ai-launcher .codegner-ai-logo-svg{width:30px;height:30px}}@media (max-width:480px){.codegner-ai-header{min-height:56px;padding:max(8px, env(safe-area-inset-top)) 8px 8px}.codegner-ai-header-left{gap:5px}.codegner-ai-header-actions{gap:0}.codegner-ai-icon-button{width:34px;height:34px}.codegner-ai-brand{gap:6px}.codegner-ai-brand-mark{border-radius:9px;width:32px;height:32px}.codegner-ai-brand-mark .codegner-ai-logo-svg{width:23px;height:23px}.codegner-ai-brand strong{letter-spacing:.06em;font-size:10px}.codegner-ai-brand span{max-width:118px;font-size:7.5px}.codegner-ai-home{padding:14px 11px 18px}.codegner-ai-welcome{grid-template-columns:40px minmax(0,1fr);gap:8px}.codegner-ai-avatar{width:40px;height:40px}.codegner-ai-avatar .codegner-ai-logo-svg{width:24px;height:24px}.codegner-ai-welcome-card{border-radius:14px;padding:11px}.codegner-ai-eyebrow{margin-bottom:5px;font-size:7.5px}.codegner-ai-welcome-card h2{font-size:14px}.codegner-ai-welcome-card p{font-size:9.5px;line-height:1.5}.codegner-ai-section-heading{margin-top:19px;margin-bottom:8px}.codegner-ai-section-heading>div>span{font-size:7px}.codegner-ai-section-heading h3{font-size:13px}.codegner-ai-live{font-size:7px}.codegner-ai-prompt{border-radius:12px;grid-template-columns:27px minmax(0,1fr) 13px;gap:7px;min-height:45px;padding:5px 7px 5px 5px;font-size:9px}.codegner-ai-prompt-icon{border-radius:8px;width:27px;height:27px}.codegner-ai-consultation{grid-template-columns:32px minmax(0,1fr);gap:8px;padding:9px}.codegner-ai-consultation-icon{border-radius:9px;width:32px;height:32px}.codegner-ai-consultation strong{font-size:9px}.codegner-ai-consultation span{font-size:8px}.codegner-ai-topic{min-height:28px;padding:0 8px;font-size:8px}.codegner-ai-conversation{padding:13px 11px 18px}.codegner-ai-message{max-width:calc(100% - 31px);padding:8px 10px;font-size:10.5px}.codegner-ai-message-row.is-user .codegner-ai-message{max-width:91%}.codegner-ai-markdown{font-size:10px}.codegner-ai-footer{padding:7px 8px calc(8px + env(safe-area-inset-bottom))}.codegner-ai-composer-main{border-radius:14px;min-height:46px;padding-left:7px}.codegner-ai-composer-main input{height:44px;padding:0 5px;font-size:11px}.codegner-ai-mic,.codegner-ai-send{border-radius:8px;width:32px;height:32px}.codegner-ai-composer-hint,.codegner-ai-footer-meta{font-size:6.5px}.codegner-ai-menu{border-radius:15px;width:calc(100vw - 14px);max-width:calc(100vw - 14px);top:54px;left:7px}.codegner-ai-launcher{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border-radius:16px;width:54px;min-width:54px;height:54px;padding:5px}.codegner-ai-launcher .codegner-ai-logo-mark{border-radius:12px;width:44px;height:44px}.codegner-ai-launcher .codegner-ai-logo-svg{width:28px;height:28px}.codegner-ai-launcher-status{width:10px;height:10px}}@media (max-width:360px){.codegner-ai-brand span{display:none}.codegner-ai-brand strong{font-size:9.5px}.codegner-ai-header-actions .codegner-ai-icon-button{width:32px;height:32px}.codegner-ai-home{padding-left:9px;padding-right:9px}.codegner-ai-welcome{grid-template-columns:36px minmax(0,1fr);gap:7px}.codegner-ai-avatar{width:36px;height:36px}.codegner-ai-avatar .codegner-ai-logo-svg{width:22px;height:22px}.codegner-ai-welcome-card{padding:10px}.codegner-ai-welcome-card h2{font-size:13px}.codegner-ai-welcome-card p{font-size:9px}.codegner-ai-prompt{grid-template-columns:25px minmax(0,1fr) 12px;gap:6px;font-size:8.5px}.codegner-ai-prompt-icon{width:25px;height:25px}.codegner-ai-message{max-width:calc(100% - 30px);font-size:10px}.codegner-ai-message-row.is-user .codegner-ai-message{max-width:93%}.codegner-ai-footer{padding-left:6px;padding-right:6px}.codegner-ai-composer-main{padding-left:6px;padding-right:4px}.codegner-ai-composer-main input{font-size:10.5px}.codegner-ai-mic,.codegner-ai-send{width:31px;height:31px}.codegner-ai-composer-hint,.codegner-ai-footer-meta{display:none}}@media (max-width:767px) and (orientation:landscape){.codegner-ai-window{height:100dvh}.codegner-ai-header{min-height:52px;padding-top:max(6px, env(safe-area-inset-top));padding-bottom:6px}.codegner-ai-content{min-height:0}.codegner-ai-home{padding-top:12px;padding-bottom:14px}.codegner-ai-welcome-card h2{font-size:14px}.codegner-ai-welcome-card p{font-size:9px}.codegner-ai-section-heading{margin-top:15px}.codegner-ai-prompt{min-height:42px}.codegner-ai-footer{padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.codegner-ai-composer-main{min-height:44px}.codegner-ai-composer-main input{height:42px}}.booking-page{box-sizing:border-box;background:#f4f4f5;justify-content:center;align-items:center;min-height:100vh;padding:28px;font-family:inherit;display:flex}.booking-shell{background:#fff;border:1px solid #e1e1e3;border-radius:20px;width:min(860px,100%);overflow:hidden;box-shadow:0 25px 80px #00000014}.booking-header{border-bottom:1px solid #ececee;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:0 28px;display:flex}.booking-brand{color:#151515;letter-spacing:.08em;align-items:center;gap:9px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.booking-brand-mark{color:#fff;letter-spacing:0;background:#111;border-radius:9px;place-items:center;width:30px;height:30px;font-size:9px;display:grid}.booking-header-label{color:#999;letter-spacing:.13em;font-size:8px;font-weight:800}.booking-intro{border-bottom:1px solid #ececee;padding:36px 38px 28px}.booking-eyebrow,.booking-calendar-kicker{color:#777;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:9px;font-weight:800}.booking-intro h1{color:#151515;letter-spacing:-.045em;margin:8px 0 0;font-size:clamp(30px,5vw,42px);font-weight:750;line-height:1.08}.booking-intro>p:last-child{color:#777;max-width:590px;margin:12px 0 0;font-size:13px;line-height:1.65}.booking-alert{color:#222;background:#f8f8f8;border:1px solid #e1e1e1;border-radius:12px;align-items:center;gap:9px;margin:18px 28px 0;padding:12px 14px;font-size:12px;line-height:1.5;display:flex}.booking-alert-icon{color:#fff;background:#111;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.booking-content{padding:24px 28px 30px}.booking-visit-toggle{background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px;padding:0;display:grid}.booking-visit-option{box-sizing:border-box;color:#777;min-height:62px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e1e2e4;border-radius:13px;justify-content:flex-start;align-items:center;gap:11px;padding:10px 14px;transition:transform .15s,border-color .15s,background .15s,color .15s,box-shadow .15s;display:flex}.booking-visit-option:hover{background:#fafafa;border-color:#aaa;transform:translateY(-1px)}.booking-visit-option-active{color:#fff;background:#111;border-color:#111;box-shadow:0 8px 18px #0000001a}.booking-visit-option strong,.booking-visit-option small{display:block}.booking-visit-option strong{font-size:12px;line-height:1.2}.booking-visit-option small{color:#999;margin-top:3px;font-size:9px;line-height:1.3}.booking-visit-option-active small{color:#bdbdbd}.booking-visit-icon{color:#333;background:#f1f1f2;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.booking-visit-option-active .booking-visit-icon{color:#111;background:#fff}.booking-platform-section{margin-bottom:28px;padding-top:2px}.booking-platform-section .booking-form-heading{margin-bottom:18px}.booking-platform-options{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin:0;padding:0;display:grid}.booking-platform-option{box-sizing:border-box;color:#222;width:100%;min-height:92px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e1e2e4;border-radius:13px;align-items:center;gap:11px;padding:14px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.booking-platform-option:hover{background:#fafafa;border-color:#aaa;transform:translateY(-2px);box-shadow:0 6px 16px #0000000d}.booking-platform-option-active{color:#fff;background:#111;border-color:#111;box-shadow:0 8px 20px #0000001a}.booking-platform-icon{color:#222;background:#f1f1f2;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:grid}.booking-platform-option-active .booking-platform-icon{color:#111;background:#fff}.booking-platform-content{flex:1;min-width:0}.booking-platform-content strong,.booking-platform-content small{display:block}.booking-platform-content strong{color:inherit;white-space:nowrap;font-size:11px;line-height:1.3}.booking-platform-content small{color:#999;margin-top:4px;font-size:9px;line-height:1.35}.booking-platform-option-active .booking-platform-content small{color:#bdbdbd}.booking-platform-check{color:#0000;background:#fff;border:1px solid #dcdde0;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:10px;font-weight:800;display:grid}.booking-platform-check-active{color:#111;background:#fff;border-color:#fff}.booking-location-card{box-sizing:border-box;background:#fff;border:1px solid #e3e4e7;border-radius:14px;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:9px;min-height:56px;margin-bottom:24px;padding:9px 12px;display:grid}.booking-location-icon{color:#333;background:#f5f5f6;border-radius:10px;place-items:center;width:34px;height:34px;font-size:15px;display:grid}.booking-location-card div,.booking-location-card strong,.booking-location-card small,.booking-location-label{min-width:0;display:block}.booking-location-label{color:#999;letter-spacing:.11em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:800}.booking-location-card strong{color:#222;font-size:11px}.booking-location-card small{color:#999;margin-top:2px;font-size:9px}.booking-location-chevron{color:#888;text-align:center}.booking-schedule{padding:0}.booking-calendar-header,.booking-times-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.booking-calendar-header>div:first-child,.booking-times-heading>div:first-child{align-items:flex-start;gap:11px;display:flex}.booking-step{color:#aaa;letter-spacing:.08em;padding-top:2px;font-size:9px;font-weight:800}.booking-calendar-header h2,.booking-times-heading h2,.booking-form-heading h2{color:#181818;letter-spacing:-.025em;margin:4px 0 0;font-size:18px;line-height:1.25}.booking-calendar-nav{gap:7px;display:flex}.booking-calendar-nav button{color:#222;cursor:pointer;background:#fff;border:1px solid #e2e3e5;border-radius:50%;place-items:center;width:34px;height:34px;font-size:16px;transition:transform .15s,background .15s,opacity .15s;display:grid}.booking-calendar-nav button:hover:not(:disabled){background:#f5f5f6;transform:translateY(-1px)}.booking-calendar-nav button:disabled{cursor:not-allowed;opacity:.35}.booking-date-grid{scrollbar-width:none;gap:8px;margin-top:18px;padding:2px 1px 8px;display:flex;overflow-x:auto}.booking-date-grid::-webkit-scrollbar{display:none}.booking-date-card{color:#222;cursor:pointer;background:#fff;border:1px solid #e3e4e7;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;width:76px;min-width:76px;min-height:82px;padding:10px 7px;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.booking-date-card:hover:not(:disabled){border-color:#aaa;transform:translateY(-1px)}.booking-date-card:disabled{cursor:not-allowed;opacity:.42}.booking-date-card span,.booking-date-card small,.booking-date-card strong{display:block}.booking-date-card span{color:#999;text-transform:uppercase;font-size:9px;font-weight:700}.booking-date-card strong{color:#151515;margin-top:6px;font-size:23px;font-weight:700;line-height:1}.booking-date-card small{color:#999;margin-top:5px;font-size:8px}.booking-date-card i{background:#111;border-radius:50%;width:4px;height:4px;position:absolute;bottom:7px}.booking-date-card-active{color:#fff;background:#111;border-color:#111;box-shadow:0 8px 18px #0000001f}.booking-date-card-active span,.booking-date-card-active strong,.booking-date-card-active small{color:#fff}.booking-date-card-active i{background:#fff}.booking-times-heading{border-top:1px solid #ececee;margin-top:24px;padding-top:23px}.booking-timezone{color:#999;white-space:nowrap;font-size:9px}.booking-time-sections{margin-top:18px}.booking-time-section+.booking-time-section{margin-top:19px}.booking-time-section h3{color:#777;margin:0 0 9px 1px;font-size:10px;font-weight:700}.booking-time-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.booking-time-button{color:#292929;cursor:pointer;background:#fff;border:1px solid #e2e3e5;border-radius:11px;min-height:44px;padding:8px 7px;font-size:11px;font-weight:600;transition:transform .15s,border-color .15s,background .15s,color .15s}.booking-time-button:hover{border-color:#111;transform:translateY(-1px)}.booking-time-button-active{color:#fff;background:#111;border-color:#111}.booking-no-times{color:#777;text-align:center;border:1px dashed #d2d2d2;border-radius:11px;margin:0;padding:16px;font-size:11px}.booking-form-section{border-top:1px solid #ececee;margin-top:30px;padding-top:28px}.booking-form-heading{align-items:flex-start;gap:11px;margin-bottom:18px;display:flex}.booking-form-heading>div>p:last-child{color:#999;max-width:520px;margin:6px 0 0;font-size:11px;line-height:1.55}.booking-selected{background:#f7f7f8;border:1px solid #dedfe2;border-radius:12px;align-items:center;gap:10px;margin-bottom:17px;padding:11px 13px;display:flex}.booking-selected-icon{color:#fff;background:#111;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.booking-selected span,.booking-selected strong,.booking-selected small{display:block}.booking-selected span{color:#999;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px;font-size:8px;font-weight:800}.booking-selected strong{color:#222;font-size:11px}.booking-selected small{color:#888;margin-top:2px;font-size:9px}.booking-form{flex-direction:column;gap:14px;display:flex}.booking-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.booking-field{flex-direction:column;gap:7px;display:flex}.booking-field label{color:#333;justify-content:space-between;gap:10px;font-size:10px;font-weight:700;display:flex}.booking-field label span{color:#aaa;font-weight:500}.booking-field label b{color:#777;font-weight:800}.booking-field input,.booking-field textarea{box-sizing:border-box;color:#181818;background:#fff;border:1px solid #d7d8db;border-radius:10px;outline:none;width:100%;font-family:inherit;font-size:12px;transition:border-color .15s,box-shadow .15s,background .15s}.booking-field input{min-height:44px;padding:0 12px}.booking-field textarea{resize:vertical;min-height:100px;padding:11px 12px;line-height:1.5}.booking-field input::placeholder,.booking-field textarea::placeholder{color:#aaa}.booking-field input:focus,.booking-field textarea:focus{border-color:#111;box-shadow:0 0 0 3px #0000000f}.booking-submit-area{margin-top:2px}.booking-primary-button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:11px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 17px;font-family:inherit;font-size:11px;font-weight:700;text-decoration:none;transition:transform .15s,opacity .15s,background .15s;display:inline-flex}.booking-primary-button:hover:not(:disabled){background:#242424;transform:translateY(-1px)}.booking-primary-button:disabled{opacity:.4;cursor:not-allowed}.booking-submit-button{width:100%}.booking-submit-button span{font-size:15px;line-height:1}.booking-form-hint{color:#999;text-align:center;margin:8px 0 0;font-size:9px;line-height:1.5}.booking-loading{color:#777;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:360px;font-size:11px;display:flex}.booking-spinner{border:2px solid #e4e4e5;border-top-color:#111;border-radius:50%;width:25px;height:25px;animation:.8s linear infinite booking-spin}@keyframes booking-spin{to{transform:rotate(360deg)}}.booking-empty{text-align:center;padding:65px 30px}.booking-empty-icon{color:#999;border:1px solid #ddd;border-radius:50%;place-items:center;width:42px;height:42px;margin:0 auto 15px;font-size:18px;display:grid}.booking-empty h2{color:#181818;margin:0;font-size:20px}.booking-empty p{color:#888;max-width:480px;margin:9px auto 0;font-size:12px;line-height:1.6}.booking-footer{color:#aaa;background:#fafafa;border-top:1px solid #ececee;justify-content:space-between;gap:15px;padding:17px 28px;font-size:8px;line-height:1.5;display:flex}.booking-success-shell{min-height:620px}.booking-success{text-align:center;max-width:570px;margin:0 auto;padding:70px 30px}.booking-success-icon{color:#fff;background:#111;border-radius:50%;place-items:center;width:56px;height:56px;margin:0 auto 19px;font-size:23px;font-weight:700;display:grid}.booking-success h1{color:#151515;letter-spacing:-.04em;margin:0;font-size:clamp(29px,5vw,42px);line-height:1.08}.booking-success-description{color:#777;max-width:480px;margin:13px auto 0;font-size:12px;line-height:1.65}.booking-confirmation-card{text-align:left;background:#e3e4e7;border:1px solid #e3e4e7;border-radius:13px;grid-template-columns:1fr 1fr;gap:1px;margin:27px 0;display:grid;overflow:hidden}.booking-confirmation-card>div{background:#fff;padding:15px}.booking-confirmation-card span,.booking-confirmation-card strong{display:block}.booking-confirmation-card span{color:#aaa;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:800}.booking-confirmation-card strong{color:#222;word-break:break-word;font-size:11px;line-height:1.5}.booking-meeting-link{color:#111;font-size:11px;font-weight:700;text-decoration:none}.booking-meeting-link:hover{text-decoration:underline}.booking-success-note{color:#777;max-width:470px;margin:0 auto 23px;font-size:11px;line-height:1.6}@media (max-width:760px){.booking-platform-options{grid-template-columns:1fr}.booking-platform-option{min-height:76px}}@media (max-width:640px){.booking-page{background:#fff;padding:0}.booking-shell{width:100%;box-shadow:none;border:0;border-radius:0}.booking-header{padding:0 18px}.booking-header-label{display:none}.booking-intro{padding:30px 18px 25px}.booking-intro h1{font-size:34px}.booking-content{padding:20px 18px 26px}.booking-visit-toggle{grid-template-columns:1fr;gap:8px}.booking-visit-option{min-height:58px}.booking-platform-options{grid-template-columns:1fr;gap:9px}.booking-platform-option{min-height:72px;padding:12px}.booking-platform-content strong{white-space:normal}.booking-date-card{width:72px;min-width:72px}.booking-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-form-grid{grid-template-columns:1fr}.booking-footer{flex-direction:column;padding:16px 18px}.booking-confirmation-card{grid-template-columns:1fr}.booking-success{padding:58px 18px}}@media (prefers-reduced-motion:reduce){.booking-spinner,.booking-primary-button,.booking-date-card,.booking-time-button,.booking-calendar-nav button,.booking-visit-option,.booking-platform-option{transition:none!important;animation:none!important}}@media (max-width:640px){.booking-page{background:#fff;padding:0}.booking-shell{width:100%;box-shadow:none;border:0;border-radius:0}.booking-header{padding:0 18px}.booking-header-label{display:none}.booking-intro{padding:30px 18px 25px}.booking-intro h1{font-size:34px}.booking-content{padding:20px 18px 26px}.booking-visit-option{padding:5px 8px}.booking-visit-option small{display:none}.booking-date-card{width:72px;min-width:72px}.booking-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-form-grid{grid-template-columns:1fr}.booking-footer{flex-direction:column;padding:16px 18px}.booking-confirmation-card{grid-template-columns:1fr}.booking-success{padding:58px 18px}}@media (prefers-reduced-motion:reduce){.booking-spinner,.booking-primary-button,.booking-date-card,.booking-time-button,.booking-calendar-nav button{transition:none!important;animation:none!important}.codegner-ai-window,.codegner-ai-backdrop,.codegner-ai-menu,.codegner-ai-thinking span,.codegner-ai-launcher-pulse,.codegner-ai-launcher-glow,.codegner-ai-launcher-logo,.codegner-ai-launcher-arrow,.codegner-ai-avatar,.codegner-ai-live span,.codegner-ai-mic.is-listening{animation:none!important}.codegner-ai-prompt,.codegner-ai-launcher,.codegner-ai-message-row,.codegner-ai-mic,.codegner-ai-send{transition:none!important}}
