:root{--gdock-w:380px}.modal-frame{display:contents}.modal-frame[data-docked=true]{justify-content:center;align-items:stretch;width:calc(100% - 32px);max-width:100%;display:flex}.modal-frame[data-docked=true]>.modal{min-width:0;border-top-right-radius:0!important;border-bottom-right-radius:0!important}.gdock-slot{width:var(--gdock-w);border-radius:0 var(--radius-xl) var(--radius-xl) 0;background:var(--bg-elevated);clip-path:inset(-80px -80px -80px 0);flex:none;min-height:min(520px,80dvh);animation:.22s cubic-bezier(.2,.8,.2,1) gdock-slot-in;position:relative;overflow:hidden;box-shadow:0 8px 16px #00000014,0 16px 32px #0000001f,0 32px 64px #00000029,0 0 0 1px #0000000d}.gdock-slot[data-dark=true]{background:#151a33}.gdock-slot>.gdock-panel{width:var(--gdock-w);position:absolute;top:0;bottom:0;left:0}@keyframes gdock-slot-in{0%{opacity:0;width:0}to{width:var(--gdock-w);opacity:1}}.gdock-fixed{z-index:999;width:var(--gdock-w);border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:var(--bg-elevated);clip-path:inset(-80px -80px -80px 0);height:min(94dvh,94vh);margin:auto 0;animation:.22s cubic-bezier(.2,.8,.2,1) gdock-fixed-in;position:fixed;top:0;bottom:0;overflow:hidden;box-shadow:0 8px 16px #00000014,0 16px 32px #0000001f,0 32px 64px #00000029,0 0 0 1px #0000000d}.gdock-fixed>.gdock-panel{height:100%}@keyframes gdock-fixed-in{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}.card-expand-panel[data-docked=true]{transition:transform .2s ease-out,opacity .2s ease-out,right .2s ease-out,width .2s ease-out;border-top-right-radius:0!important;border-bottom-right-radius:0!important}@media (prefers-reduced-motion:reduce){.gdock-slot,.gdock-fixed{animation:none}.card-expand-panel[data-docked=true]{transition:none}}@media (min-width:1024px) and (max-width:1279px){:root{--gdock-w:320px}}.gdock-toggle{border-radius:var(--radius-sm);border:1px solid var(--border-default);cursor:pointer;background:linear-gradient(180deg, var(--bg-elevated) 0%, var(--bg-sunken) 100%);height:36px;color:var(--text-secondary);letter-spacing:.01em;box-shadow:var(--shadow-xs);transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);flex:none;align-items:center;gap:6px;margin-right:8px;padding:0 12px;font-size:.78rem;font-weight:650;display:inline-flex}.gdock-toggle:hover{color:var(--accent-text);border-color:var(--accent-primary)}.gdock-toggle[data-open=true]{color:var(--accent-text);border-color:var(--accent-primary);background:var(--accent-bg)}.gdock-toggle:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}.gdock-toggle[data-dark=true]{color:#fff;box-shadow:none;background:#ffffff1a;border-color:#fff3}.gdock-toggle[data-dark=true][data-open=true]{background:#ffffff38}.card-expand-topbar .gdock-toggle{height:32px}.gdock-panel{background:var(--bg-elevated);min-height:0;color:var(--text-primary);border-left:1px solid var(--border-default);flex-direction:column;font-size:.85rem;display:flex}.gdock-panel[data-dark=true]{--bg-elevated:#151a33;--bg-sunken:#ffffff12;--bg-hover:#ffffff1f;--text-primary:#fff;--text-secondary:#ffffffc7;--text-tertiary:#ffffff94;--text-meta:#ffffff94;--border-subtle:#ffffff1f;--border-default:#fff3;--accent-text:#8db6fa;--accent-bg:#6396f52e;background:#151a33}.gdock-head{padding:var(--space-5) var(--space-4);border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg, var(--bg-elevated) 0%, var(--bg-secondary) 100%);flex:none;align-items:center;gap:10px;min-height:76px;display:flex}.gdock-panel[data-dark=true] .gdock-head{background:0 0}.gdock-title{letter-spacing:-.01em;flex:1;margin:0;font-size:1.05rem;font-weight:650}.gdock-role{letter-spacing:0;color:var(--text-meta);margin-top:1px;font-size:.72rem;font-weight:500;display:block}.gdock-chip-role{color:var(--text-meta);font-weight:400}.gdock-head-actions{gap:6px;display:flex}.gdock-icon-btn{cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-sunken);width:32px;height:32px;color:var(--text-secondary);transition:color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.gdock-icon-btn:hover:not(:disabled){color:var(--accent-text);border-color:var(--accent-primary)}.gdock-icon-btn:disabled{opacity:.5;cursor:default}.gdock-icon-btn:focus-visible,.gdock-starter:focus-visible,.gdock-chip-x:focus-visible,.gdock-chip-off:focus-visible,.gdock-send:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}.gdock-log{overflow-anchor:none;overscroll-behavior:contain;min-height:0;padding:var(--space-4);flex-direction:column;flex:1;gap:10px;display:flex;overflow-y:auto}.gdock-empty{color:var(--text-tertiary);text-align:center;padding:0 var(--space-2);margin:auto 0;line-height:1.5}.gdock-empty p{margin:0 0 var(--space-3)}.gdock-starters{flex-direction:column;align-items:stretch;gap:8px;display:flex}.gdock-starter{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-sunken);color:var(--text-secondary);cursor:pointer;text-align:left;transition:color var(--transition-fast), border-color var(--transition-fast);padding:8px 12px;font-size:.8rem;font-weight:600}.gdock-starter:hover:not(:disabled){color:var(--accent-text);border-color:var(--accent-primary)}.gdock-starter:disabled{opacity:.5;cursor:default}.gdock-row{flex-direction:column;display:flex}.gdock-row-user{align-items:flex-end}.gdock-row-model{align-items:flex-start}.gdock-bubble{border-radius:var(--radius-md);overflow-wrap:anywhere;max-width:90%;padding:8px 12px;line-height:1.5}.gdock-bubble-user{background:var(--accent-solid);color:#fff;white-space:pre-wrap}.gdock-bubble-model{background:var(--bg-sunken);color:var(--text-primary)}.gdock-note{color:var(--text-meta);margin-top:3px;font-size:.68rem}.gthink{box-sizing:border-box;white-space:nowrap;text-overflow:clip;overflow-wrap:normal;color:var(--text-tertiary);line-height:1.5;display:block;overflow:hidden}.gthink-dots>span{opacity:.25;animation:1.2s ease-in-out infinite gthink-dot}.gthink-dots>span:nth-child(2){animation-delay:.2s}.gthink-dots>span:nth-child(3){animation-delay:.4s}@keyframes gthink-dot{0%,60%,to{opacity:.25}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.gthink-dots>span{opacity:.6;animation:none}}.gdock-error{padding:0 var(--space-4) var(--space-2);color:var(--negative-text,var(--negative));flex:none;font-size:.75rem}.gdock-composer{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border-subtle);flex-direction:column;flex:none;gap:8px;display:flex}.gdock-chip-row{align-items:center;min-height:26px;display:flex}.gdock-chip{border:1px solid var(--accent-primary);background:var(--accent-bg);max-width:100%;color:var(--accent-text);border-radius:999px;align-items:center;gap:6px;padding:3px 4px 3px 10px;font-size:.72rem;display:inline-flex}.gdock-chip-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gdock-chip-x{width:18px;height:18px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.gdock-chip-x:hover{background:var(--accent-glow)}.gdock-chip-off{border:1px dashed var(--border-default);color:var(--text-tertiary);cursor:pointer;text-align:left;background:0 0;padding:3px 10px}.gdock-chip-off:hover{color:var(--accent-text);border-color:var(--accent-primary)}.gdock-input-row{align-items:flex-end;gap:8px;display:flex}.gdock-input{resize:none;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-sunken);min-width:0;color:var(--text-primary);font:inherit;outline:none;flex:1;padding:8px 12px;line-height:1.4}.gdock-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.gdock-input:disabled{opacity:.6}.gdock-send{border-radius:var(--radius-sm);cursor:pointer;background:var(--accent-solid);color:#fff;border:none;flex:none;height:36px;padding:0 14px;font-size:.82rem;font-weight:700}.gdock-send:disabled{opacity:.5;cursor:default}.gdock-card-ask{z-index:10;top:50%;right:calc(var(--space-3) + 2rem);cursor:pointer;border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-tertiary);transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex;position:absolute;transform:translateY(-50%)}.gdock-card-ask:hover{color:var(--accent-text);border-color:var(--border-default);background:var(--bg-sunken)}.gdock-card-ask[data-open=true]{color:var(--accent-text);border-color:var(--accent-primary);background:var(--accent-bg)}.gdock-card-ask:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}@media (pointer:coarse){.gdock-card-ask{width:44px;height:44px;right:calc(var(--space-3) + 3rem)}}.gdock-drawer{z-index:999;width:var(--gdock-w);border-radius:var(--radius-lg);background:var(--bg-elevated);animation:.22s cubic-bezier(.2,.8,.2,1) gdock-drawer-in;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;box-shadow:0 8px 16px #00000014,0 16px 32px #0000001f,0 32px 64px #00000029,0 0 0 1px #0000000d}.gdock-drawer>.gdock-panel{height:100%}@keyframes gdock-drawer-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.gdock-drawer{animation:none}}.gdock-suggest{flex-wrap:wrap;gap:6px;display:flex}.gdock-suggest .gdock-starter{text-align:left;border-radius:999px;padding:6px 10px;font-size:.74rem;line-height:1.3}.gsheet-scrim{z-index:1099;background:#00000061;position:fixed;inset:0}.gsheet{z-index:1100;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--bg-elevated);max-width:640px;box-shadow:0 -8px 28px #00000038, 0 0 0 1px var(--border-default);outline:none;flex-direction:column;margin:0 auto;transition:top .22s cubic-bezier(.2,.8,.2,1),height .22s cubic-bezier(.2,.8,.2,1);animation:.24s cubic-bezier(.2,.8,.2,1) gsheet-in;display:flex;position:fixed;left:0;right:0;overflow:hidden}.gsheet[data-dragging=true]{transition:none}@keyframes gsheet-in{0%{opacity:.4;transform:translateY(40%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.gsheet{transition:none;animation:none}}.gsheet-grab{cursor:grab;touch-action:none;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:100%;height:44px;padding:0;display:flex}.gsheet-grab:focus-visible{outline:3px solid var(--accent-text);outline-offset:-3px}.gsheet-grab-bar{background:var(--border-default);border-radius:999px;width:40px;height:5px}.gsheet-body{min-height:0;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;flex:1;display:flex}.gsheet-body>.gdock-panel{border-left:0;flex:1;min-height:0}.gsheet .gdock-head{min-height:56px;padding:var(--space-2) var(--space-4)}.gsheet .gdock-icon-btn{width:44px;height:44px}.gsheet .gdock-suggest{scrollbar-width:none;margin:0 calc(var(--space-4) * -1);padding:0 var(--space-4);-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.gsheet .gdock-suggest::-webkit-scrollbar{display:none}.gsheet .gdock-starter{white-space:nowrap;flex:none;align-items:center;min-height:44px;display:inline-flex}.gsheet .gdock-composer{padding-top:var(--space-2);padding-bottom:var(--space-3);gap:6px}.gsheet .gdock-input{height:44px}.gsheet .gdock-chip-x{width:44px;height:44px;margin:-12px -4px}.gsheet .gdock-chip{padding-top:0;padding-bottom:0}.gsheet .gdock-send{min-width:64px;height:44px}.gsheet .gdock-input{min-height:44px;font-size:16px}.gsheet .gdock-chip-row{min-height:32px}body[data-gsheet]{padding-bottom:var(--gsheet-h,0px)}@media (max-width:767px){.gdock-toggle{height:44px;padding:0 12px}}@media (max-width:639px){.modal-header.has-actions>.gdock-toggle{display:none}}.gask-launcher{z-index:1050;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));cursor:pointer;border:1px solid var(--accent-solid);background:var(--accent-solid);color:#fff;letter-spacing:.01em;min-width:48px;height:48px;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px 0 14px;font-size:.9rem;font-weight:700;display:inline-flex;position:fixed}.gask-launcher:active{transform:scale(.96)}.gask-launcher:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px}.gask-launcher svg{width:18px;height:18px}@media (prefers-reduced-motion:reduce){.gask-launcher{transition:none}}@media (max-width:1023px){body[data-gask] .modal-body{padding-bottom:calc(var(--space-5) + 64px)}body[data-gsheet] .modal-overlay{bottom:var(--gsheet-h,0px)!important;transition:bottom .22s cubic-bezier(.2,.8,.2,1),opacity .3s,visibility .3s!important}body[data-gsheet] .modal-overlay .modal{max-height:100%!important}body[data-gsheet] .modal-overlay{padding-top:env(safe-area-inset-top,0px)}.gsheet[data-snap=keyboard] .gdock-suggest{display:none}}@media (pointer:coarse){.gdock-toggle{min-width:44px;min-height:44px}}.gsheet [aria-label^="Gerald status:"]{min-width:44px;min-height:44px}.gask-card-btn{cursor:pointer;border:1px solid var(--accent-primary);border-radius:var(--radius-sm);background:var(--accent-bg);width:100%;min-height:44px;color:var(--accent-text);justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:650;display:inline-flex}.gask-card-btn:hover{background:var(--bg-hover)}.gask-card-btn:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}.gask-card-btn[aria-expanded=true]{background:var(--accent-solid);color:#fff}
