:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{color:#e6edf3;background-color:#0d1117;min-height:100vh;margin:0}#root{height:100vh}:root{--bg-1:#0d1117;--bg-2:#161b22;--bg-3:#010409;--bg-hover:#21262d;--bg-hover-alt:#1f2937;--border:#30363d;--text-1:#e6edf3;--text-1-alt:#c9d1d9;--text-1-alt2:#adbac7;--text-2:#8b949e;--text-3:#6e7681;--text-4:#484f58;--text-placeholder:#ccc;--white:#fff;--accent:#58a6ff;--accent-hover:#388bfd;--accent-active:#1f6feb;--accent-light:#79c0ff;--accent-wash-1:#58a6ff22;--accent-hover-wash-1:#388bfd11;--accent-hover-wash-2:#388bfd22;--accent-hover-wash-3:#388bfd33;--accent-hover-wash-4:#388bfd44;--success:#238636;--success-hover:#2ea043;--success-light:#3fb950;--success-wash-1:#23863622;--success-wash-2:#23863633;--danger:#f85149;--danger-hover:#da3633;--danger-light:#ff6b5f;--danger-alt:#f97583;--danger-alt2:#ff7b93;--danger-wash-1:#f8514922;--danger-hover-wash-1:#da363322;--danger-hover-wash-2:#da363333;--danger-alt-wash-1:#f9758333;--warning:#d29922;--warning-wash-1:#d2992211;--warning-wash-2:#d2992222;--warning-wash-3:#d2992244;--purple:#a78bfa;--purple-alt:#a371f7;--purple-light:#c4b5fd;--code-comment:#8b949e;--code-keyword:#ff7b72;--code-string:#a5d6ff;--code-constant:#79c0ff;--code-function:#d2a8ff;--code-type:#ffa657;--code-tag:#7ee787;--code-inserted:#aff5b4;--code-deleted:#ffa198;--font-scale:1;--dialog-scale:clamp(1, var(--font-scale), 1.5);--top-bar-h:max(48px, calc(17px + 31px * var(--font-scale)));--font-size-base:calc(14px * var(--font-scale))}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg-1:#fff;--bg-2:#f6f8fa;--bg-3:#eaeef2;--bg-hover:#eaeef2;--bg-hover-alt:#e1e4e8;--border:#d0d7de;--text-1:#1f2328;--text-1-alt:#24292f;--text-1-alt2:#32383f;--text-2:#57606a;--text-3:#6e7781;--text-4:#8c959f;--text-placeholder:#6e7781;--white:#fff;--accent:#0969da;--accent-hover:#0860ca;--accent-active:#0757ba;--accent-light:#218bff;--accent-wash-1:#0969da1a;--accent-hover-wash-1:#0860ca11;--accent-hover-wash-2:#0860ca22;--accent-hover-wash-3:#0860ca33;--accent-hover-wash-4:#0860ca44;--success:#1a7f37;--success-hover:#2da44e;--success-light:#1a7f37;--success-wash-1:#1a7f3722;--success-wash-2:#1a7f3733;--danger:#cf222e;--danger-hover:#a40e26;--danger-light:#cf222e;--danger-alt:#cf222e;--danger-alt2:#cf222e;--danger-wash-1:#cf222e22;--danger-hover-wash-1:#a40e2622;--danger-hover-wash-2:#a40e2633;--danger-alt-wash-1:#cf222e33;--warning:#9a6700;--warning-wash-1:#9a670011;--warning-wash-2:#9a670022;--warning-wash-3:#9a670044;--code-comment:#6e7781;--code-keyword:#cf222e;--code-string:#0a3069;--code-constant:#0550ae;--code-function:#8250df;--code-type:#953800;--code-tag:#116329;--code-inserted:#116329;--code-deleted:#82071e;--purple:#8250df;--purple-alt:#8250df;--purple-light:#6639ba}}:root[data-theme=light]{--bg-1:#fff;--bg-2:#f6f8fa;--bg-3:#eaeef2;--bg-hover:#eaeef2;--bg-hover-alt:#e1e4e8;--border:#d0d7de;--text-1:#1f2328;--text-1-alt:#24292f;--text-1-alt2:#32383f;--text-2:#57606a;--text-3:#6e7781;--text-4:#8c959f;--text-placeholder:#6e7781;--white:#fff;--accent:#0969da;--accent-hover:#0860ca;--accent-active:#0757ba;--accent-light:#218bff;--accent-wash-1:#0969da1a;--accent-hover-wash-1:#0860ca11;--accent-hover-wash-2:#0860ca22;--accent-hover-wash-3:#0860ca33;--accent-hover-wash-4:#0860ca44;--success:#1a7f37;--success-hover:#2da44e;--success-light:#1a7f37;--success-wash-1:#1a7f3722;--success-wash-2:#1a7f3733;--danger:#cf222e;--danger-hover:#a40e26;--danger-light:#cf222e;--danger-alt:#cf222e;--danger-alt2:#cf222e;--danger-wash-1:#cf222e22;--danger-hover-wash-1:#a40e2622;--danger-hover-wash-2:#a40e2633;--danger-alt-wash-1:#cf222e33;--warning:#9a6700;--warning-wash-1:#9a670011;--warning-wash-2:#9a670022;--warning-wash-3:#9a670044;--purple:#8250df;--purple-alt:#8250df;--purple-light:#6639ba;--code-comment:#6e7781;--code-keyword:#cf222e;--code-string:#0a3069;--code-constant:#0550ae;--code-function:#8250df;--code-type:#953800;--code-tag:#116329;--code-inserted:#116329;--code-deleted:#82071e}:root[data-font-size="50"]{--font-scale:.5}:root[data-font-size="60"]{--font-scale:.6}:root[data-font-size="70"]{--font-scale:.7}:root[data-font-size="80"]{--font-scale:.8}:root[data-font-size=small]{--font-scale:.9}:root[data-font-size=large]{--font-scale:1.15}:root[data-font-size="130"]{--font-scale:1.3}:root[data-font-size="150"]{--font-scale:1.5}:root[data-font-size="175"]{--font-scale:1.75}:root[data-font-size="200"]{--font-scale:2}:root{font-size:calc(100% * var(--font-scale,1))}button,input,select,textarea{font-size:calc(13.3333px * var(--font-scale,1))}:root[data-accent=purple]{--accent:#a371f7;--accent-hover:#8250df;--accent-active:#6639ba;--accent-light:#c4b5fd}:root[data-accent=green]{--accent:#3fb950;--accent-hover:#2ea043;--accent-active:#238636;--accent-light:#56d364}:root[data-accent=orange]{--accent:#db6d28;--accent-hover:#bd561d;--accent-active:#9a4a1c;--accent-light:#e8a06b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-interface,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);background:var(--bg-1);color:var(--text-1);height:100dvh;overflow:hidden}.auth-screen{background:var(--bg-1);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:var(--bg-2);border:1px solid var(--border);width:100%;max-width:min(calc(400px * var(--dialog-scale,1)), calc(100vw - 32px));box-sizing:border-box;text-align:center;border-radius:12px;padding:48px 40px}.auth-card h1{font-size:calc(32px * var(--font-scale,1));color:var(--accent);margin-bottom:8px}.auth-subtitle{color:var(--text-2);font-size:calc(14px * var(--font-scale,1));margin-bottom:24px}.auth-card form{flex-direction:column;gap:16px;display:flex}.auth-card input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(14px * var(--font-scale,1));border-radius:8px;outline:none;padding:12px 16px}.auth-card input:focus{border-color:var(--accent)}.auth-card button[type=submit]{background:var(--success);color:#fff;font-size:calc(14px * var(--font-scale,1));cursor:pointer;border:none;border-radius:8px;padding:12px 24px}.auth-card button[type=submit]:hover{background:var(--success-hover)}.auth-error{color:var(--danger);font-size:calc(13px * var(--font-scale,1))}.app{box-sizing:border-box;height:100dvh;padding-top:calc(var(--top-bar-h) + var(--offline-banner-h,0px));flex-direction:column;display:flex}.top-bar{top:var(--offline-banner-h,0px);height:var(--top-bar-h);background:var(--bg-2);border-bottom:1px solid var(--border);z-index:100;align-items:center;padding:0 16px;display:flex;position:fixed;left:0;right:0}.hamburger-btn{color:var(--text-1);font-size:calc(20px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;margin-right:12px;padding:4px 8px}.hamburger-btn:hover{background:#ffffff1a;border-radius:4px}.hamburger-menu{top:var(--top-bar-h);background:var(--bg-2);border:1px solid var(--border);z-index:101;min-width:160px;max-width:calc(100vw - 32px);max-height:calc(100dvh - var(--top-bar-h) - var(--offline-banner-h,0px) - 12px);border-radius:8px;position:absolute;left:16px;overflow-y:auto;box-shadow:0 4px 16px #0006}.hamburger-item{text-align:left;width:100%;color:var(--text-1);cursor:pointer;font-size:calc(14px * var(--font-scale,1));background:0 0;border:none;padding:10px 16px;display:block}.hamburger-item:hover{background:#ffffff1a}.hamburger-username{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);padding:6px 16px}.sidebar-toggle-btn{color:var(--text-1);font-size:calc(18px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;margin-right:12px;padding:4px 8px}.sidebar-toggle-btn:hover{background:#ffffff1a;border-radius:4px}.current-session-title{font-size:calc(16px * var(--font-scale,1));color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.info-menu-wrapper{margin-left:auto;position:relative}.info-btn{color:var(--text-1);font-size:calc(18px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px}.info-btn:hover{background:#ffffff1a}.info-menu{top:var(--top-bar-h);background:var(--bg-2);border:1px solid var(--border);z-index:101;border-radius:8px;min-width:220px;padding:12px;position:absolute;right:0;box-shadow:0 4px 16px #0006}.info-menu h3{font-size:calc(14px * var(--font-scale,1));color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:10px;padding-bottom:6px}.info-row{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);justify-content:space-between;align-items:center;padding:4px 0;display:flex}.info-row strong{color:var(--text-1)}.session-menu-wrapper{position:relative}.menu-dots-btn{color:var(--text-2);font-size:calc(18px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px}.session-menu-dropdown{top:var(--top-bar-h);background:var(--bg-2);border:1px solid var(--border);z-index:101;border-radius:8px;min-width:220px;padding:8px 0;position:absolute;right:0;box-shadow:0 4px 16px #0006}.sidebar-session-menu{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;min-width:220px;margin-top:8px;padding:8px 0;box-shadow:0 4px 16px #0006}.sidebar-session-menu.chat-action-menu{z-index:200;box-sizing:border-box;border-radius:10px;width:min(260px,100vw - 16px);min-width:0;max-height:calc(100dvh - 16px);margin:0;padding:6px;position:fixed;overflow-y:auto;box-shadow:0 12px 36px #0000004d}.chat-action-menu .menu-item{min-height:36px;font-size:calc(13px * var(--font-scale,1));border-radius:5px;gap:10px;padding:8px 10px}.chat-action-menu .menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--bg-3)}.chat-menu-icon{color:var(--text-2);flex:0 0 16px}.chat-action-menu .menu-divider{margin:5px 4px}.chat-action-menu .chat-menu-danger{color:var(--danger,#f87171)}.chat-menu-danger .chat-menu-icon{color:inherit}.chat-menu-group>summary{list-style:none}.chat-menu-group>summary::-webkit-details-marker{display:none}.chat-menu-chevron{color:var(--text-2);margin-left:auto}.chat-menu-group[open]>summary .chat-menu-chevron{transform:rotate(90deg)}.chat-menu-group>button{padding-left:24px!important}.chat-action-menu .menu-edit-row{flex-wrap:wrap;padding:6px}.chat-action-menu .menu-edit-row input,.chat-action-menu .menu-edit-row select{min-width:0;max-width:100%}.chat-details{background:var(--bg-2);width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text-1);border:1px solid var(--border);border-radius:12px;padding:0;overflow:auto}.chat-details::backdrop{background:#0000008c}.chat-details-content{padding:20px}.chat-details-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.chat-details-header h2{font-size:calc(18px * var(--font-scale,1));margin:0}.chat-details-header button{width:auto}.chat-details-title{color:var(--text-2);overflow-wrap:anywhere}.chat-details h3{font-size:calc(13px * var(--font-scale,1));margin:20px 0 8px}.chat-details .info-row{grid-template-columns:1fr 1fr;gap:16px;padding:8px 0;display:grid}.chat-details .info-row strong{text-align:right;overflow-wrap:anywhere;min-width:0}.menu-item-header{font-size:calc(13px * var(--font-scale,1));color:var(--text-1);border-bottom:1px solid var(--bg-hover);margin-bottom:4px;padding:8px 16px}.menu-item{text-align:left;width:100%;color:var(--text-2);font-size:calc(13px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;padding:8px 16px;display:block}.menu-item:hover{color:var(--text-1);background:#ffffff0d}.menu-item:disabled{opacity:.5;cursor:not-allowed}.menu-edit-row input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:4px;flex:1;padding:4px 8px}.menu-confirm-btn{color:var(--accent);cursor:pointer;font-size:calc(16px * var(--font-scale,1));background:0 0;border:none;padding:0 4px}.menu-confirm-btn:hover{color:var(--accent-light)}.app-body{flex:1;min-height:0;display:flex}.sidebar{width:calc(280px * clamp(1, var(--font-scale,1), 1.4));background:var(--bg-2);border-right:1px solid var(--border);flex-direction:column;max-width:100vw;transition:transform .2s,width .2s;display:flex}.sidebar:not(.open){z-index:50;height:100%;position:absolute;transform:translate(-100%)}.sidebar-backdrop{display:none}@media (width<=768px){.sidebar,.sidebar.open,.sidebar:not(.open){top:calc(var(--top-bar-h) + var(--offline-banner-h,0px));z-index:90;max-width:calc(100vw - 48px);height:auto;position:fixed;bottom:0;left:0;overflow-x:hidden}.sidebar-actions-row{flex-wrap:wrap;gap:6px}.sidebar.open{box-shadow:4px 0 24px #00000080}.sidebar-backdrop{top:calc(var(--top-bar-h) + var(--offline-banner-h,0px));z-index:89;background:#00000073;display:block;position:fixed;bottom:0;left:0;right:0}}.sidebar-header{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:16px;display:flex}.sidebar-header h2{font-size:calc(18px * var(--font-scale,1));color:var(--accent)}.sidebar-actions-row{justify-content:space-between;align-items:center;display:flex}.sidebar-close-btn{font-size:calc(24px * var(--font-scale,1));opacity:.7;padding:0 4px;line-height:1}.sidebar-close-btn:hover{opacity:1}.sidebar-new-btn-row{border-bottom:1px solid var(--border);padding:8px 16px}.new-session-btn{cursor:pointer;width:100%;font-size:calc(13px * var(--font-scale,1));border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:9px 10px;font-weight:600;transition:background .15s,border-color .15s,transform .15s;display:flex}.new-session-btn:hover{transform:translateY(-1px)}.chat-action-group{border-bottom:1px solid var(--border);padding:10px 12px}.chat-action-primary{background:var(--accent);color:#fff;box-shadow:0 2px 8px color-mix(in srgb, var(--accent) 30%, transparent)}.chat-action-primary:hover{background:var(--accent-hover,#388bfd)}.chat-action-org{background:color-mix(in srgb, var(--accent) 14%, var(--bg-secondary));color:var(--accent);border-color:color-mix(in srgb, var(--accent) 32%, var(--border))}.chat-action-org:hover{background:color-mix(in srgb, var(--accent) 22%, var(--bg-secondary))}.chat-action-share{color:var(--text-secondary);border-color:var(--border);background:0 0}.chat-action-share:hover{background:var(--bg-hover);color:var(--text-primary)}.new-session-btn span{font-size:calc(15px * var(--font-scale,1));line-height:1}.session-list{flex:1;padding:8px;overflow-y:auto}.session-category-group{margin-bottom:4px}.session-category-header{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:flex}.session-category-header:hover{color:var(--text-1)}.session-category-caret{font-size:calc(9px * var(--font-scale,1));width:10px}.session-category-count{opacity:.7;margin-left:auto;font-weight:400}.session-category-items{margin:0;padding:0;list-style:none}.session-item{cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:10px 12px;display:flex}.session-item:hover{background:var(--bg-hover)}.session-item.active{background:var(--accent-hover-wash-3);border-left:3px solid var(--accent)}.session-info{flex:1;overflow:hidden}.session-title{font-size:calc(14px * var(--font-scale,1));white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.session-meta{font-size:calc(11px * var(--font-scale,1));color:var(--text-2);margin-top:2px;display:block}.delete-btn{color:var(--text-2);cursor:pointer;font-size:calc(16px * var(--font-scale,1));opacity:0;background:0 0;border:none;padding:0 4px;transition:opacity .15s}.session-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:var(--danger)}.loading-text{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);padding:16px}.chat-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.chat-header{background:var(--bg-2);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px;display:flex}.menu-btn{color:var(--text-1);font-size:calc(20px * var(--font-scale,1));cursor:pointer;background:0 0;border:none}.current-session-title{font-size:calc(14px * var(--font-scale,1));color:var(--text-2)}.menu-dots-btn{color:var(--text-2);font-size:calc(20px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:4px 8px}.menu-dots-btn:hover{color:var(--text-1);background:#ffffff1a}.session-menu-dropdown{background:var(--bg-2);border:1px solid var(--border);z-index:100;border-radius:8px;min-width:280px;padding:8px 0;position:absolute;top:calc(100% + 4px);left:0;right:auto;box-shadow:0 8px 24px #00000080}.menu-item-header{font-size:calc(13px * var(--font-scale,1));color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;padding:6px 12px;overflow:hidden}.menu-item{width:100%;color:var(--text-1);font-size:calc(13px * var(--font-scale,1));cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.menu-item:hover{background:#388bfd26}.menu-edit-row{align-items:center;gap:4px;padding:6px 8px;display:flex}.menu-edit-row input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:4px;outline:none;flex:1;padding:6px 8px}.menu-edit-row input:focus{border-color:var(--accent)}.menu-confirm-btn{background:var(--success);color:#fff;cursor:pointer;font-size:calc(14px * var(--font-scale,1));border:none;border-radius:4px;padding:6px 10px}.menu-confirm-btn:hover{background:var(--success-hover)}.menu-divider{background:var(--border);height:1px;margin:4px 8px}.menu-stats{padding:4px 12px}.stat-label{font-size:calc(10px * var(--font-scale,1));text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);margin-bottom:4px}.stat-row{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);justify-content:space-between;align-items:center;padding:3px 0;display:flex}.stat-row strong{color:var(--text-1)}.stat-total{border-top:1px solid var(--border);font-size:calc(13px * var(--font-scale,1));margin-top:2px;padding-top:4px!important}.stat-total strong{color:var(--accent)}.error-banner{background:var(--danger-wash-1);border-bottom:1px solid var(--danger);font-size:calc(13px * var(--font-scale,1));color:var(--danger);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.error-banner button{color:var(--danger);cursor:pointer;font-size:calc(16px * var(--font-scale,1));background:0 0;border:none}.status-bar{background:var(--accent-hover-wash-1);border-bottom:1px solid var(--accent-hover-wash-4);font-size:calc(12px * var(--font-scale,1));color:var(--accent);align-items:center;gap:8px;padding:6px 16px;display:flex}.status-vllm-load{color:var(--text-2)}.turn-progress{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.turn-progress-bar{background:var(--accent-hover-wash-4);border-radius:2px;height:3px;position:relative;overflow:hidden}.turn-progress-bar span{background:var(--accent);border-radius:2px;width:30%;animation:1.6s ease-in-out infinite turn-progress-sweep;position:absolute;inset:0 auto 0 0}@keyframes turn-progress-sweep{0%{transform:translate(-100%)}to{transform:translate(340%)}}@media (prefers-reduced-motion:reduce){.turn-progress-bar span{width:100%;animation:1.5s ease-in-out infinite pulse}}.turn-progress-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.turn-progress-label{overflow-wrap:anywhere;min-width:0}.turn-done{border-left:3px solid var(--success);background:var(--bg-2);color:var(--text-2);font-size:calc(12px * var(--font-scale,1));border-radius:4px;margin:8px 16px;padding:6px 10px}.turn-done-noreply{border-left-color:var(--warning)}.turn-progress-note{color:var(--text-2);font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere}.turn-done-meta{font-variant-numeric:tabular-nums}.turn-done-flag{color:var(--warning)}.turn-progress-meta{color:var(--text-2);font-variant-numeric:tabular-nums}.turn-progress.is-runaway .turn-progress-bar span{background:var(--warning)}.turn-progress-warning{border-left:3px solid var(--warning);background:var(--warning-wash-2);color:var(--text-1);font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere;border-radius:4px;padding:4px 8px}.approval-prompts{flex-direction:column;gap:6px;display:flex}.approval-card{border:1px solid var(--warning);background:var(--warning-wash-2);color:var(--text-1);font-size:calc(12px * var(--font-scale,1));border-left-width:3px;border-radius:6px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.approval-title{font-weight:600;font-size:calc(13px * var(--font-scale,1))}.approval-rule{color:var(--text-2)}.approval-command{border:1px solid var(--border);background:var(--bg-1);max-height:160px;font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px;margin:0;padding:6px 8px;overflow:auto}.approval-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.approval-expiry{color:var(--text-2);font-variant-numeric:tabular-nums}.approval-error{color:var(--danger);font-size:calc(12px * var(--font-scale,1))}.context-warning-banner{background:var(--warning-wash-1);border-bottom:1px solid var(--warning-wash-3);font-size:calc(12px * var(--font-scale,1));color:var(--warning);justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.context-warning-banner button{flex-shrink:0}.connectivity-banner{z-index:1000;background:var(--danger-wash-1);border-bottom:1px solid var(--danger);color:var(--danger);font-size:calc(12px * var(--font-scale,1));justify-content:center;align-items:center;gap:12px;padding:8px 16px;display:flex;position:fixed;top:0;left:0;right:0}.connectivity-banner button{flex-shrink:0}.version-banner{top:calc(var(--offline-banner-h,0px) + 8px);z-index:1000;background:var(--bg-1);border:1px solid var(--accent,var(--border));max-width:calc(100vw - 32px);color:var(--text-1,inherit);font-size:calc(12px * var(--font-scale,1));border-radius:999px;align-items:center;gap:10px;padding:6px 8px 6px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #00000040}.version-banner button{flex-shrink:0}.version-banner-dismiss{color:var(--text-2);cursor:pointer;font-size:calc(16px * var(--font-scale,1));background:0 0;border:none;padding:0 4px;line-height:1}.bottom-status-bar{background:var(--bg-1);border-top:1px solid var(--border);font-size:calc(11px * var(--font-scale,1));color:var(--text-2);justify-content:space-between;align-items:center;gap:12px;padding:4px 16px;display:flex}.bottom-status-bar .status-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite pulse}.token-usage{color:var(--text-4)}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.messages-container{flex:1;min-height:0}.message-row{padding:0 20px;display:flex}.empty-state{height:100%;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px}.message{max-width:80%;line-height:1.5;font-size:var(--font-size-base);border-radius:12px;margin-bottom:12px;padding:12px 16px}.message.user{background:var(--accent-hover);color:#fff;border-bottom-right-radius:4px}.message.assistant{background:var(--bg-hover);border-bottom-left-radius:4px}.message-role{font-size:calc(11px * var(--font-scale,1));opacity:.7;margin-bottom:4px;display:block}.message-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.message-copy-btn{color:var(--text-3);font-size:calc(11px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px}.message-copy-btn:hover{color:var(--white);background:#ffffff1a}.message-content{white-space:pre-wrap;word-break:break-word}.message-content p{margin-bottom:.5em}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin-bottom:.5em;padding-left:1.2em}.message-content ul:last-child,.message-content ol:last-child{margin-bottom:0}.message-content a{color:var(--accent);text-decoration:underline}.message-content strong{font-weight:600}.message-content code:not(pre code){font-size:.9em;font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);background:#6e768166;border-radius:4px;padding:2px 5px}.code-block{margin:8px 0;position:relative}.copy-btn{color:var(--text-placeholder);font-size:calc(11px * var(--font-scale,1));cursor:pointer;z-index:10;background:#ffffff1a;border:none;border-radius:4px;padding:3px 8px;position:absolute;top:4px;right:4px}.copy-btn:hover{color:var(--white);background:#fff3}.code-block pre{font-size:calc(13px * var(--font-scale,1));border-radius:6px;padding:12px;line-height:1.45;overflow-x:auto;background:var(--bg-1)!important}.code-block .token.comment,.code-block .token.prolog,.code-block .token.doctype,.code-block .token.cdata{color:var(--code-comment);font-style:italic}.code-block .token.keyword,.code-block .token.atrule,.code-block .token.rule,.code-block .token.important{color:var(--code-keyword)}.code-block .token.string,.code-block .token.char,.code-block .token.attr-value,.code-block .token.template-string,.code-block .token.regex,.code-block .token.url{color:var(--code-string)}.code-block .token.number,.code-block .token.boolean,.code-block .token.constant,.code-block .token.symbol,.code-block .token.property,.code-block .token.attr-name,.code-block .token.entity{color:var(--code-constant)}.code-block .token.function{color:var(--code-function)}.code-block .token.class-name,.code-block .token.builtin,.code-block .token.variable,.code-block .token.namespace{color:var(--code-type)}.code-block .token.tag,.code-block .token.selector{color:var(--code-tag)}.code-block .token.inserted{color:var(--code-inserted)}.code-block .token.deleted{color:var(--code-deleted)}.plain-text{white-space:pre-wrap;word-break:break-word}.streaming-cursor{vertical-align:text-bottom;background:var(--accent);width:8px;height:1em;margin-left:2px;animation:.9s ease-in-out infinite pulse;display:inline-block}.streaming-indicator{color:var(--accent);animation:1.2s ease-in-out infinite pulse}.md-image-blocked{color:var(--text-2);font-style:italic}.md-paragraph{margin:8px 0}.file-preview{border:1px solid #ffffff1a;border-radius:6px;margin:8px 0;overflow:hidden}.file-preview-head{font-size:calc(12px * var(--font-scale,1));background:#ffffff0f;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.file-preview-name{opacity:.85;font-weight:600}.file-preview-head a{color:var(--accent);text-decoration:none}.file-preview-head a:hover{text-decoration:underline}.file-preview-status{font-size:calc(13px * var(--font-scale,1));opacity:.7;padding:8px 10px}.file-preview-status.file-preview-error{color:var(--danger);opacity:1}.file-preview-pdf-frame{background:var(--white);border:0;width:100%;height:480px;display:block}.file-preview-pre{background:var(--bg-1);max-height:320px;font-size:calc(13px * var(--font-scale,1));white-space:pre-wrap;word-break:break-word;margin:0;padding:10px;line-height:1.45;overflow:auto}.file-preview-table-wrap{max-height:320px;overflow:auto}.file-preview-table{border-collapse:collapse;width:100%;font-size:calc(13px * var(--font-scale,1))}.file-preview-table td{white-space:nowrap;border:1px solid #ffffff14;padding:4px 8px}.file-preview-truncated{font-size:calc(12px * var(--font-scale,1));opacity:.6;padding:4px 10px}.tool-calls{flex-direction:column;gap:6px;margin-top:8px;display:flex}.tool-call{background:#388bfd1a;border-radius:6px;overflow:hidden}.tool-call-header{width:100%;color:var(--text-1);cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.tool-call-header:hover{background:#388bfd26}.tool-icon{font-size:calc(14px * var(--font-scale,1))}.tool-name{color:var(--accent);font-weight:500}.expand-hint{font-size:calc(11px * var(--font-scale,1));color:var(--text-2);margin-left:auto}.tool-call-body{border-top:1px solid #30363d80;padding:8px 12px}.tool-call-body pre{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);white-space:pre-wrap;word-break:break-all;max-height:300px;margin:0;overflow:auto}.tool-duration{font-size:calc(11px * var(--font-scale,1));color:var(--text-2)}.tool-failed{color:var(--danger);font-weight:600}.tool-result{background:#2386361a;border-radius:6px;margin-top:4px;padding:8px 12px}.tool-result-label{font-size:calc(11px * var(--font-scale,1));color:var(--success-light);text-transform:uppercase;letter-spacing:.5px}.tool-result pre{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);white-space:pre-wrap;word-break:break-all;max-height:300px;margin:6px 0 0;overflow:auto}.tool-result-truncated{font-size:calc(11px * var(--font-scale,1));color:var(--text-2);margin-top:6px;font-style:italic}.tool-result-image img{border-radius:6px;max-width:100%;max-height:320px;margin-top:6px;display:block}.tool-result-image video,video.md-video{background:#000;border-radius:6px;max-width:100%;max-height:360px;margin-top:6px;display:block}.tool-cat-web{border-left:3px solid var(--accent)}.tool-cat-shell{border-left:3px solid var(--warning)}.tool-cat-shell .tool-name{color:var(--warning)}.tool-cat-file{border-left:3px solid var(--success-light)}.tool-cat-file .tool-name{color:var(--success-light)}.tool-cat-browser{border-left:3px solid var(--purple-alt)}.tool-cat-browser .tool-name{color:var(--purple-alt)}.tool-cat-other{border-left:3px solid var(--text-2)}.message.tool{border-left:3px solid var(--success);background:#23863614;align-self:flex-start}.system-seed{background:#8b949e1f;margin-bottom:12px}.system-seed .tool-name{color:var(--text-2)}.msg-action-btn{color:var(--text-3);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:6px;padding:2px 6px}.msg-action-btn:hover{color:var(--white);background:#ffffff1a}.session-search-input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;margin:0 16px 8px;padding:6px 10px}.session-search-input:focus{border-color:var(--accent);outline:none}.pin-marker{margin-right:4px}.move-picker,.category-picker{flex-direction:column;align-items:stretch;gap:6px}.move-picker select,.move-picker input,.category-picker input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;padding:6px 8px}.live-activity{font-size:calc(12px * var(--font-scale,1));color:var(--accent);background:#388bfd1a;border-radius:6px;align-items:center;gap:6px;margin-top:6px;padding:6px 10px;display:flex}.live-activity .activity-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite pulse}.thinking-block{border-left:3px solid var(--purple);background:#8b5cf61a;border-radius:8px;margin-bottom:8px;padding:8px 12px}.thinking-toggle{color:var(--purple);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:flex}.thinking-toggle:hover{color:var(--purple-light)}.thinking-content{font-size:calc(12px * var(--font-scale,1));color:var(--purple);white-space:pre-wrap;word-break:break-word;background:#0003;border-radius:4px;margin-top:8px;padding:8px;line-height:1.5}.queued-messages{background:#d2992211;border-top:1px solid #d2992244;flex-direction:column;gap:4px;padding:6px 16px;display:flex}.queued-message{font-size:calc(12px * var(--font-scale,1));color:#d29922;justify-content:space-between;align-items:center;gap:12px;display:flex}.queued-message button{color:inherit;cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none}.input-area{background:var(--bg-2);border-top:1px solid var(--border);gap:8px;padding:16px;display:flex}.input-area.drag-over,.pc-input.drag-over{outline:2px dashed var(--accent);outline-offset:-2px;background:var(--accent-wash-1)}.input-area textarea{background:var(--bg-1);color:var(--text-1);border:1px solid var(--border);font-size:calc(14px * var(--font-scale,1));resize:none;max-height:calc(120px * var(--font-scale,1));border-radius:8px;outline:none;flex:1;padding:10px 14px}.input-area textarea.composer-sized{max-height:none}.composer-resizer{cursor:ns-resize;touch-action:none;outline:none;flex:none;height:8px;position:relative}.composer-resizer:after{content:"";background:var(--border);border-radius:2px;width:44px;height:4px;margin-left:-22px;position:absolute;top:2px;left:50%}.composer-resizer:hover:after,.composer-resizer:focus-visible:after,.composer-resizer.resizing:after{background:var(--accent)}.input-area input{background:var(--bg-1);color:var(--text-1);border:1px solid var(--border);font-size:calc(14px * var(--font-scale,1));border-radius:8px;outline:none;flex:1;padding:10px 14px}.input-area input:focus,.input-area textarea:focus{border-color:var(--accent)}.input-area button{background:var(--accent);color:#fff;cursor:pointer;font-size:calc(14px * var(--font-scale,1));border:none;border-radius:8px;padding:10px 20px}.input-area button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.input-area button[type=button]{background:var(--danger-hover);color:#fff;cursor:pointer;font-size:calc(14px * var(--font-scale,1));border:none;border-radius:8px;padding:10px 20px}.input-area button[type=button]:hover{background:var(--danger)}.input-area button[disabled]{opacity:.5;cursor:not-allowed}.attach-btn{background:var(--bg-hover);color:var(--text-1);border:1px solid var(--border);cursor:pointer;font-size:calc(14px * var(--font-scale,1));border-radius:8px;padding:10px 14px}.attach-btn:hover:not(:disabled){background:var(--border)}.attach-btn:disabled{opacity:.5;cursor:not-allowed}.command-palette-overlay{z-index:1000;background:#01040999;justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.command-palette{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;width:min(560px,90vw);overflow:hidden;box-shadow:0 16px 40px #01040980}.command-palette-input{box-sizing:border-box;background:var(--bg-1);width:100%;color:var(--text-1);border:none;border-bottom:1px solid var(--border);font-size:calc(15px * var(--font-scale,1));outline:none;padding:14px 16px}.command-palette-list{max-height:300px;margin:0;padding:6px;list-style:none;overflow-y:auto}.command-palette-list li{list-style:none}.command-palette-group{font-size:calc(11px * var(--font-scale,1));color:var(--text-2);padding:8px 12px 4px;font-weight:600}.command-palette-option{cursor:pointer;color:var(--text-1);font-size:calc(14px * var(--font-scale,1));border-radius:6px;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;display:flex}.command-palette-option small{color:var(--text-2);font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-palette-option.is-active{background:var(--bg-hover)}.command-palette-empty{color:var(--text-2);font-size:calc(14px * var(--font-scale,1));padding:10px 12px}.vault-modal{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;width:min(640px,90vw);max-height:80vh;display:flex;overflow:hidden;box-shadow:0 16px 40px #01040980}.vault-modal-header{border-bottom:1px solid var(--border);color:var(--text-1);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.vault-modal-body{color:var(--text-1);font-size:calc(14px * var(--font-scale,1));padding:16px;line-height:1.6;overflow-y:auto}.vault-modal-body a{color:var(--accent)}.category-manager-error{color:var(--danger);font-size:calc(13px * var(--font-scale,1));margin-bottom:10px}.category-manager-list{margin:0;padding:0;list-style:none}.category-manager-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 0;display:flex}.category-manager-row:last-child{border-bottom:none}.category-manager-reorder{flex-direction:column;gap:0;display:flex}.category-manager-reorder button{font-size:calc(9px * var(--font-scale,1));padding:0 4px;line-height:1.4}.category-manager-name{font-size:calc(14px * var(--font-scale,1));flex:1}.category-manager-input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);border-radius:6px;flex:1;padding:6px 8px}@media (width<=768px){.menu-btn{display:block}.message{max-width:92%}}.mode-switcher{gap:4px;margin-bottom:8px;display:flex}.mode-switcher button{border:1px solid var(--border);color:var(--text-2);cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border-radius:6px;padding:6px 12px}.mode-switcher button.active{background:var(--success);color:#fff;border-color:var(--success)}.mode-badge{font-size:calc(12px * var(--font-scale,1));border-radius:12px;margin-right:8px;padding:4px 10px}.mode-badge.workspace{background:var(--success);color:#fff}.messages-container.workspace-layout{gap:0;display:flex;overflow:hidden}.file-tree-sidebar{border-right:1px solid var(--border);width:240px;min-width:240px;padding:12px;overflow-y:auto}.file-tree-sidebar h3{font-size:calc(14px * var(--font-scale,1));color:var(--text-1-alt);margin:0 0 8px}.file-tree-empty{text-align:center;color:var(--text-2);font-size:calc(13px * var(--font-scale,1));padding:16px 8px}.chat-messages-area{flex-direction:column;flex:1;gap:16px;min-width:0;padding:20px;display:flex;overflow-y:auto}.live-preview-pane{border-left:1px solid var(--border);flex-direction:column;width:45%;padding:12px;display:flex;overflow-y:auto}.live-preview-pane h3{font-size:calc(14px * var(--font-scale,1));color:var(--text-1-alt);margin:0 0 8px}.live-preview-pane iframe{border:1px solid var(--border);background:#fff;border-radius:6px;flex:1;min-height:400px}.workspace-header-actions select{border:1px solid var(--border);background:var(--bg-1);color:var(--text-1-alt);font-size:calc(13px * var(--font-scale,1));border-radius:6px;padding:6px 10px}.deploy-btn{background:var(--success);color:#fff;cursor:pointer;font-size:calc(13px * var(--font-scale,1));border:none;border-radius:6px;padding:6px 14px}.deploy-btn:hover:not(:disabled){background:var(--success-hover)}.deploy-btn:disabled{opacity:.5;cursor:not-allowed}.empty-state .hint{color:var(--text-2);font-size:calc(13px * var(--font-scale,1));margin-top:4px}.workspace-layout{flex-direction:row}.file-tree-sidebar{background:var(--bg-2);border-right:1px solid var(--border);flex-direction:column;width:280px;display:flex;overflow-y:auto}.file-tree-sidebar h3{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);border-bottom:1px solid var(--border);padding:12px 16px}.file-tree-empty{font-size:calc(12px * var(--font-scale,1));color:var(--text-3);padding:16px}.file-list{margin:0;padding:8px;list-style:none}.file-item{cursor:pointer;font-size:calc(12px * var(--font-scale,1));color:var(--text-1);border-radius:4px;align-items:center;gap:6px;padding:4px 8px;display:flex}.file-item:hover{background:var(--bg-hover)}.file-item.active{background:var(--accent-hover-wash-3)}.file-icon{font-size:calc(14px * var(--font-scale,1))}.file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dirty-dot{color:var(--danger);font-size:calc(10px * var(--font-scale,1))}.file-editor-panel{border-top:1px solid var(--border);flex-direction:column;flex:1;min-height:200px;display:flex}.file-editor-header{background:var(--bg-1);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 12px;display:flex}.editor-filename{font-size:calc(11px * var(--font-scale,1));color:var(--accent);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dirty-indicator{font-size:calc(10px * var(--font-scale,1));color:var(--danger)}.save-btn{background:var(--success);color:#fff;font-size:calc(11px * var(--font-scale,1));cursor:pointer;border:none;border-radius:4px;padding:4px 10px}.save-btn:hover:not(:disabled){background:var(--success-hover)}.save-btn:disabled{opacity:.5;cursor:not-allowed}.file-editor{background:var(--bg-1);width:100%;color:var(--text-1);font-family:var(--font-code,"Fira Code", "Consolas", monospace);font-size:calc(12px * var(--font-scale,1));resize:none;border:none;outline:none;flex:1;padding:12px;line-height:1.5}.live-preview-pane{background:var(--white);border-left:1px solid var(--border);flex-direction:column;width:40%;display:flex}.live-preview-pane h3{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);background:var(--bg-2);border-bottom:1px solid var(--border);padding:8px 12px}.live-preview-pane iframe{background:#fff;border:none;flex:1;width:100%;height:100%}.workspace-header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.workspace-header-actions select{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(12px * var(--font-scale,1));border-radius:4px;padding:4px 8px}.create-project-btn,.deploy-btn,.toggle-files-btn,.session-files-btn{flex-direction:column;align-items:center;gap:2px;min-width:50px;padding:4px 8px;display:flex}.create-project-btn span.label-text,.deploy-btn span.label-text,.toggle-files-btn span.label-text,.session-files-btn span.label-text{font-size:calc(10px * var(--font-scale,1))}.session-files-btn{color:var(--text-1-alt);border:1px solid var(--border);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px}.session-files-btn.active{background:var(--accent-active);color:#fff;border-color:var(--accent-hover)}.session-files-btn:hover{background:var(--bg-2)}.create-project-btn{background:var(--success);color:#fff;font-size:calc(12px * var(--font-scale,1));cursor:pointer;border:none;border-radius:4px;padding:4px 10px}.create-project-btn:hover{background:var(--success-hover)}.deploy-btn{background:var(--danger-alt);color:#fff;font-size:calc(12px * var(--font-scale,1));cursor:pointer;border:none;border-radius:4px;padding:4px 10px}.deploy-btn:hover{background:var(--danger-alt2)}.toggle-files-btn{border:1px solid var(--border);color:var(--text-2);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px}.toggle-files-btn.active{background:var(--accent-wash-1);border-color:var(--accent);color:var(--accent)}.toggle-files-btn:hover{background:#ffffff1a}.mode-badge.workspace{background:var(--danger-alt-wash-1);color:var(--danger-alt);font-size:calc(11px * var(--font-scale,1));border-radius:4px;padding:2px 8px}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-2);border:1px solid var(--border);width:100%;max-width:min(calc(400px * var(--dialog-scale,1)), calc(100vw - 32px));border-radius:12px;max-height:calc(100dvh - 32px);padding:24px;overflow-y:auto}.modal-card h3{color:var(--text-1);margin-bottom:16px}.modal-card input{background:var(--bg-1);border:1px solid var(--border);width:100%;color:var(--text-1);font-size:calc(14px * var(--font-scale,1));border-radius:6px;outline:none;margin-bottom:12px;padding:8px 12px}.modal-card input:focus{border-color:var(--accent)}.share-modal{width:min(calc(560px * var(--dialog-scale,1)), calc(100vw - 32px));color:var(--text-1);padding:26px}.share-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;margin-bottom:20px;display:flex}.share-title h2{font-size:calc(22px * var(--font-scale,1));margin:0}.share-close{color:inherit;font-size:calc(28px * var(--font-scale,1));cursor:pointer;background:0 0;border:0;line-height:1}.share-people-input{box-sizing:border-box;border:2px solid var(--accent,#0969da);width:100%;min-height:48px;font:inherit;border-radius:4px;padding:10px 12px}.share-suggestions{border:1px solid var(--border-color,#d0d7de);border-radius:6px;margin-top:4px;overflow:hidden}.share-suggestions button{background:var(--bg-primary,white);width:100%;color:inherit;cursor:pointer;border:0;justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.share-suggestions button:hover{background:var(--bg-secondary,#f6f8fa)}.share-suggestions button>span:nth-child(2){color:var(--accent,#0969da)}.share-empty{color:var(--text-muted,#57606a);padding:10px 12px;display:block}.share-modal h3{font-size:calc(16px * var(--font-scale,1));margin:24px 0 10px}.share-owner,.share-member{align-items:center;gap:12px;min-height:56px;display:flex}.share-owner>span:nth-child(2),.share-member>span:nth-child(2),.share-suggestions button>span:first-child{text-align:left;flex-direction:column;flex:1;display:flex}.share-modal small{color:#a8b3c2;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;margin-top:2px;display:block;overflow:hidden}.share-owner b{color:#b8c2cf;margin-left:auto;font-weight:500}.share-avatar{color:#0957c3;background:#dbeafe;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.share-avatar.owner{color:#067647;background:#d1fae5}.share-member select{color:inherit;font:inherit;background:0 0;border:0;padding:6px}.share-member button{color:#a8b3c2;font-size:calc(21px * var(--font-scale,1));cursor:pointer;background:0 0;border:0}.share-general{border-top:1px solid #3a4554;justify-content:space-between;align-items:center;margin-top:14px;padding-top:14px;display:flex}.share-general h3{margin:0 0 4px}.share-general p{color:#a8b3c2;font-size:calc(13px * var(--font-scale,1));margin:0}.share-switch input{display:none}.share-switch span{cursor:pointer;background:#8c959f;border-radius:12px;width:42px;height:24px;display:block;position:relative}.share-switch span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px}.share-switch input:checked+span{background:var(--accent,#0969da)}.share-switch input:checked+span:after{transform:translate(18px)}.share-footer{color:#a8b3c2;font-size:calc(13px * var(--font-scale,1));justify-content:space-between;align-items:center;margin-top:24px;display:flex}.share-done{color:#fff;background:var(--accent,#0969da);font:inherit;cursor:pointer;border:0;border-radius:22px;padding:11px 25px}.share-error{color:#cf222e;font-size:calc(13px * var(--font-scale,1));margin:8px 0 0}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal-actions button{font-size:calc(13px * var(--font-scale,1));cursor:pointer;border:none;border-radius:6px;padding:8px 16px}.modal-cancel-btn{background:var(--bg-hover);color:var(--text-1)}.modal-submit-btn{background:var(--success);color:#fff}.modal-submit-btn:hover{background:var(--success-hover)}.chat-messages-area{flex-direction:column;flex:1;min-width:0;display:flex}@media (width<=768px){.workspace-layout{flex-direction:column}.file-tree-sidebar,.live-preview-pane{width:100%}}.image-preview-row{flex-wrap:wrap;gap:8px;padding:6px 12px;display:flex}.image-preview-thumb{border:1px solid var(--border);border-radius:6px;width:56px;height:56px;position:relative;overflow:hidden}.image-preview-thumb img{object-fit:cover;width:100%;height:100%}.image-preview-thumb.non-image{background:var(--bg-2);justify-content:center;align-items:center;padding:4px;display:flex}.file-name-preview{font-size:calc(9px * var(--font-scale,1));color:var(--text-1-alt);white-space:nowrap;text-overflow:ellipsis;max-width:40px;overflow:hidden}.remove-image-btn{background:var(--danger);color:#fff;width:18px;height:18px;font-size:calc(12px * var(--font-scale,1));cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-4px;right:-4px}.remove-image-btn:hover{background:var(--danger-light)}.session-files-panel h3{font-size:calc(16px * var(--font-scale,1));color:var(--text-1-alt);margin:0 0 4px}.file-upload-zone{border:2px dashed var(--border);text-align:center;color:var(--text-2);border-radius:8px;margin-bottom:16px;padding:24px}.file-upload-zone input[type=file]{display:none}.upload-btn{background:var(--success);color:#fff;cursor:pointer;font-size:calc(14px * var(--font-scale,1));border-radius:6px;margin-right:8px;padding:8px 16px}.upload-btn:hover{background:var(--success-hover)}.session-files-list{margin:0;padding:0;list-style:none}.session-file-item{background:var(--bg-2);border-radius:6px;align-items:center;gap:8px;margin-bottom:4px;padding:8px 12px;display:flex}.session-file-item:hover{background:var(--bg-hover-alt)}.session-file-item .file-icon{font-size:calc(16px * var(--font-scale,1))}.session-file-item a{color:var(--accent);flex:1;text-decoration:none}.session-file-item a:hover{text-decoration:underline}.session-file-item .file-meta{font-size:calc(12px * var(--font-scale,1));color:var(--text-2)}.files-nav-bar{background:var(--bg-1);border-radius:6px;align-items:center;gap:8px;margin-bottom:12px;padding:6px 8px;display:flex}.files-nav-bar button{color:var(--accent);cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none;border-radius:4px;padding:2px 6px}.files-nav-bar button:hover{background:#58a6ff26}.files-path{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.files-actions-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.create-folder-btn{background:var(--success);color:#fff;cursor:pointer;font-size:calc(13px * var(--font-scale,1));border:none;border-radius:6px;padding:6px 12px}.create-folder-btn:hover{background:var(--success-hover)}.delete-file-btn{color:var(--text-2);cursor:pointer;font-size:calc(16px * var(--font-scale,1));opacity:0;background:0 0;border:none;padding:2px 6px;transition:opacity .15s}.session-file-item:hover .delete-file-btn{opacity:1}.delete-file-btn:hover{color:var(--danger)}.page-body{flex-direction:column;gap:12px;height:100vh;padding:60px 16px 16px;display:flex;overflow:hidden}.scope-bar{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.scope-switcher{gap:4px;display:flex}.scope-switcher button{border:1px solid var(--border);color:var(--text-2);cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border-radius:6px;padding:6px 14px}.scope-switcher button:hover{background:#ffffff0f}.scope-switcher button.active{background:var(--accent-hover-wash-3);border-color:var(--accent);color:var(--accent)}.scope-picker{min-width:0;max-width:100%;font-size:calc(12px * var(--font-scale,1));color:var(--text-2);align-items:center;gap:8px;display:flex}.scope-picker select{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;flex:0 auto;min-width:0;max-width:320px;padding:6px 10px}.scope-picker select:focus{border-color:var(--accent);outline:none}.fb{border:1px solid var(--border);background:var(--bg-2);border-radius:8px;flex-direction:column;flex:1;gap:8px;min-height:0;padding:10px;display:flex}.fb-toolbar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fb-btn{background:var(--bg-hover);color:var(--text-1);border:1px solid var(--border);font-size:calc(12px * var(--font-scale,1));cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 10px}.fb-btn:hover:not(:disabled){background:var(--border);border-color:var(--accent)}.fb-btn:disabled{opacity:.4;cursor:not-allowed}.fb-btn-primary{background:var(--success);border-color:var(--success);color:var(--white)}.fb-btn-primary:hover:not(:disabled){background:var(--success-hover);border-color:var(--success-hover)}.fb-btn-danger{background:var(--danger-hover-wash-1);border-color:var(--danger-hover);color:var(--danger)}.fb-btn-danger:hover:not(:disabled){background:var(--danger-hover);color:var(--white)}.fb-file-input{display:none}.fb-toggle{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);cursor:pointer;align-items:center;gap:6px;margin-left:auto;display:flex}.fb-pathbar{background:var(--bg-1);border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:12px;padding:6px 10px;display:flex}.fb-crumbs{flex-wrap:wrap;align-items:center;min-width:0;display:flex}.fb-crumb-wrap{align-items:center;display:inline-flex}.fb-crumb{color:var(--accent);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px}.fb-crumb:hover{background:#58a6ff26}.fb-crumb-sep{color:var(--text-4);font-size:calc(12px * var(--font-scale,1))}.fb-path-form{flex:1;align-items:center;gap:6px;min-width:220px;display:flex}.fb-path-input{background:var(--bg-3);border:1px solid var(--border);color:var(--text-1);font-size:calc(12px * var(--font-scale,1));font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);border-radius:6px;outline:none;flex:1;padding:5px 8px}.fb-path-input:focus{border-color:var(--accent)}.fb-banner{font-size:calc(12px * var(--font-scale,1));border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:7px 12px;display:flex}.fb-banner button{color:inherit;cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none}.fb-banner-readonly{background:var(--accent-hover-wash-1);border:1px solid var(--accent-hover-wash-4);color:var(--accent)}.fb-banner-error{background:var(--danger-wash-1);border:1px solid var(--danger);color:var(--danger)}.fb-banner-ok{background:var(--success-wash-1);border:1px solid var(--success);color:var(--success-light)}.fb-banner-warn{background:var(--warning-wash-2);border:1px solid var(--warning);color:var(--warning)}.fb-banner-progress{background:var(--accent-hover-wash-1);border:1px solid var(--accent-hover-wash-4);color:var(--accent);flex-direction:column;align-items:stretch;gap:6px}.fb-upload-progress-head{justify-content:space-between;gap:12px;display:flex}.fb-progress-track{background:var(--accent-hover-wash-4);border-radius:3px;height:6px;overflow:hidden}.fb-progress-fill{background:var(--accent);height:100%;transition:width .15s linear}.fb-body{flex:1;gap:10px;min-height:0;display:flex;position:relative}.fb-body.fb-drag-over{outline:2px dashed var(--accent);outline-offset:-2px}.fb-drop-overlay{z-index:5;pointer-events:none;background:var(--accent-wash-1);color:var(--accent);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;inset:0}.fb-list{border:1px solid var(--border);background:var(--bg-1);border-radius:6px;flex:1;min-width:0;overflow:auto}.fb-preview{border:1px solid var(--border);background:var(--bg-1);border-radius:6px;flex-direction:column;width:45%;min-width:0;padding:10px;display:flex;overflow:auto}.fb-preview[hidden]{display:none}.fb-status{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);padding:16px}.fb-status-error{color:var(--danger)}.fb-table{border-collapse:collapse;width:100%;font-size:calc(12.5px * var(--font-scale,1))}.fb-table thead th{background:var(--bg-2);border-bottom:1px solid var(--border);text-align:left;color:var(--text-2);z-index:1;padding:6px 8px;font-weight:500;position:sticky;top:0}.fb-sort{color:var(--text-2);font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;padding:0}.fb-sort:hover{color:var(--accent)}.fb-row{cursor:pointer;outline:none}.fb-row:hover{background:var(--bg-hover)}.fb-row.selected{background:var(--accent-hover-wash-3)}.fb-row:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.fb-row td{border-bottom:1px solid var(--bg-2);color:var(--text-1);vertical-align:middle;padding:5px 8px}.fb-col-icon{text-align:center;width:28px}.fb-col-size,.fb-col-date,.fb-col-mode{color:var(--text-2);white-space:nowrap}.fb-col-size{text-align:right;width:90px}.fb-col-date{width:170px}.fb-col-mode{width:100px;font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);font-size:calc(11px * var(--font-scale,1))}.fb-name{word-break:break-all}@media (width<=600px){.fb-table .fb-name{word-break:normal;overflow-wrap:anywhere;min-width:9em}}.fb-symlink{color:var(--text-2);font-size:calc(11px * var(--font-scale,1))}.fb-unreadable{color:var(--danger);font-size:calc(11px * var(--font-scale,1))}.fb-preview-block{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.fb-preview-head{align-items:center;gap:8px;display:flex}.fb-preview-title{font-size:calc(12px * var(--font-scale,1));color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);overflow:hidden}.fb-preview-head .fb-preview-title{flex:1}.fb-truncated{font-size:calc(10px * var(--font-scale,1));text-transform:uppercase;letter-spacing:.5px;color:var(--warning);border:1px solid var(--warning);border-radius:4px;padding:1px 5px}.fb-editor{background:var(--bg-3);width:100%;min-height:240px;color:var(--text-1);border:1px solid var(--border);font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);font-size:calc(12px * var(--font-scale,1));resize:none;border-radius:6px;outline:none;flex:1;padding:10px;line-height:1.5}.fb-editor:focus{border-color:var(--accent)}.fb-preview-image{border:1px solid var(--border);background:var(--bg-2);border-radius:6px;max-width:100%}.fb-preview-pdf{border:1px solid var(--border);background:var(--white);border-radius:6px;flex:1;width:100%;min-height:400px}.fb-danger-text{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);margin-bottom:12px;line-height:1.5}.fb-danger-text strong{color:var(--danger);word-break:break-all}.admin-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px;padding-bottom:8px;display:flex}.admin-tab{color:var(--text-2);cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none;border-radius:6px 6px 0 0;padding:6px 14px}.admin-tab:hover{color:var(--text-1);background:#ffffff0f}.admin-tab.active{color:var(--accent);background:var(--accent-hover-wash-2);box-shadow:inset 0 -2px 0 var(--accent)}.admin-refresh-btn,.admin-sync-btn{margin-left:auto}.admin-sync-btn+.admin-refresh-btn{margin-left:.5rem}.admin-forget-btn{margin-left:auto}.admin-tab-body{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex;overflow:auto}.vault-graph-svg{background:var(--bg-2);border:1px solid var(--border);border-radius:8px}.vault-graph-edge{stroke:var(--border);stroke-width:1px}.vault-graph-label{font-size:calc(11px * var(--font-scale,1));fill:var(--text-2);pointer-events:none;-webkit-user-select:none;user-select:none}.vault-graph-preview{flex:1;min-width:260px;max-width:420px;overflow:auto}.admin-gate{max-width:min(calc(420px * var(--dialog-scale,1)), calc(100vw - 32px));box-sizing:border-box;background:var(--bg-2);border:1px solid var(--border);text-align:center;border-radius:12px;margin:40px auto 0;padding:28px}.admin-gate h2{font-size:calc(18px * var(--font-scale,1));color:var(--accent);margin-bottom:10px}.admin-gate-text{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);margin-bottom:16px;line-height:1.5}.admin-gate-form{gap:8px;display:flex}.admin-gate-form input{background:var(--bg-1);border:1px solid var(--border);min-width:0;color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;outline:none;flex:1;padding:9px 12px}.admin-gate-form input:focus{border-color:var(--accent)}.admin-gate-form button{background:var(--success);color:var(--white);font-size:calc(13px * var(--font-scale,1));cursor:pointer;border:none;border-radius:6px;padding:9px 18px}.admin-gate-form button:hover:not(:disabled){background:var(--success-hover)}.admin-gate-form button:disabled{opacity:.5;cursor:not-allowed}.admin-gate-note{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);margin-top:12px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.stat-card{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.stat-card-label{font-size:calc(11px * var(--font-scale,1));text-transform:uppercase;letter-spacing:.5px;color:var(--text-3)}.stat-card-value{font-size:calc(28px * var(--font-scale,1));color:var(--text-1);font-weight:600}.admin-queue{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;margin-top:16px;padding:16px}.admin-queue h3{font-size:calc(14px * var(--font-scale,1));margin:0 0 8px}.admin-queue-form{flex-wrap:wrap;align-items:flex-end;gap:12px 20px;margin-top:8px;display:flex}.admin-queue-form label{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);flex-direction:column;gap:4px;display:flex}.admin-queue-form input{width:7em}.admin-queue-paused{color:var(--warning,#b7791f);font-weight:500}.admin-queue-pause-note{background:var(--warning-bg,#b7791f1f);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;margin:0 0 8px;padding:8px 12px}.admin-queue-form .admin-queue-check{flex-direction:row;align-self:center;align-items:center;gap:6px}.admin-queue-form small{color:var(--text-3);font-size:calc(11px * var(--font-scale,1))}.health-pill{font-size:calc(13px * var(--font-scale,1));border-radius:999px;align-self:flex-start;padding:4px 12px;font-weight:600}.health-pill.ok{background:var(--success-wash-2);color:var(--success-light);border:1px solid var(--success)}.health-pill.bad{background:var(--danger-hover-wash-2);color:var(--danger);border:1px solid var(--danger-hover)}.admin-note{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);margin:0 0 8px}.admin-table-wrap{border:1px solid var(--border);background:var(--bg-1);border-radius:8px;flex-shrink:0;max-height:70vh;overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:calc(12.5px * var(--font-scale,1))}.admin-table th{background:var(--bg-2);border-bottom:1px solid var(--border);text-align:left;color:var(--text-2);white-space:nowrap;z-index:1;padding:8px 10px;font-weight:500;position:sticky;top:0}.admin-table td{border-bottom:1px solid var(--bg-2);color:var(--text-1);vertical-align:middle;padding:8px 10px}.admin-table tfoot td{border-top:1px solid var(--border);color:var(--accent);font-weight:600}.admin-table .num{text-align:right;white-space:nowrap}.admin-cell-title{color:var(--text-1)}.admin-cell-sub{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace)}@media (width<=900px){.fb-body{flex-direction:column}.fb-preview{flex:1;width:100%;min-height:260px}.fb-preview-back{align-self:flex-start;margin-bottom:8px}}.project-tabs{margin-left:auto}.project-panel{flex-direction:column;gap:16px;padding:16px 0;display:flex}.secret-add,.deploy-form{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.deploy-form{flex-direction:column;align-items:stretch;max-width:420px}.deploy-form label,.secret-add{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);flex-direction:column;gap:4px;display:flex}.secret-add{flex-direction:row;align-items:center}.secret-add input,.deploy-form input,.deploy-form select{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;padding:6px 8px}.secret-add input:first-child{font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);width:160px}.deploy-key{flex-direction:column;gap:6px;display:flex}.deploy-key-value{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-family:var(--font-code,"SF Mono", "Fira Code", Consolas, monospace);font-size:calc(12px * var(--font-scale,1));word-break:break-all;resize:none;border-radius:6px;padding:6px 8px}.deploy-key-actions{flex-wrap:wrap;gap:8px;display:flex}.deploy-savecreds{align-items:center;gap:6px;flex-direction:row!important}.git-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.deploy-stored{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);align-items:baseline;gap:8px;display:flex}.deploy-stored-value{overflow-wrap:anywhere;min-width:0;color:var(--text-1);font-size:calc(13px * var(--font-scale,1));flex:1}.deploy-field-action{color:var(--accent,var(--text-2));font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline}.deploy-note{font-size:calc(12px * var(--font-scale,1));color:var(--text-3);margin:0}.deploy-auto{flex-direction:column;gap:4px;max-width:420px;margin-top:12px;display:flex}.deploy-auto label{font-size:calc(13px * var(--font-scale,1));color:var(--text-1);align-items:center;gap:6px;display:flex}.secret-value{min-width:90px;color:var(--text-1);display:inline-block}.secret-reveal{margin-left:8px}.workspace-bar{gap:8px}.workspace-project{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;max-width:260px;padding:5px 8px}.workspace-publish{margin-left:auto}.workspace{flex:1;min-height:0;display:flex}.workspace-rail{flex-shrink:0;max-width:calc(100% - 320px);min-height:0;display:flex;overflow:hidden}.workspace-resizer{cursor:col-resize;background:var(--bg-hover);flex:0 0 5px}.workspace-resizer:hover,.workspace-resizer:active{background:var(--accent-hover)}.workspace-main{flex-direction:column;flex:1;min-width:0;display:flex}.workspace-main .admin-tab-body{flex:1;min-height:0;padding:0 16px;overflow:auto}.pc{flex-direction:column;width:100%;min-height:0;display:flex}.pc-head{border-bottom:1px solid var(--bg-hover);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.pc-title{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.pc-session-select{background:var(--bg-1);border:1px solid var(--border);min-width:0;color:var(--text-1);font-size:calc(12px * var(--font-scale,1));border-radius:6px;flex:8em;padding:4px 6px}.pc-messages{flex:1;min-height:0}.pc-messages-empty{flex-direction:column;display:flex}.pc-empty{color:var(--text-3);font-size:calc(13px * var(--font-scale,1));text-align:center;margin:auto 0}.pc-msg{flex-direction:column;gap:3px;margin-bottom:12px;padding:0 12px;display:flex}.pc-msg-role{font-size:calc(11px * var(--font-scale,1));color:var(--text-3)}.pc-msg-body{white-space:pre-wrap;word-break:break-word;font-size:calc(var(--font-size-base) - 1px);color:var(--text-1);line-height:1.5}.pc-msg-body ul,.pc-msg-body ol{white-space:normal;margin:4px 0;padding-left:1.4em}.pc-msg-body li+li{margin-top:2px}.pc-msg-body li>.md-paragraph{margin:0}.pc-msg-user .pc-msg-body{color:var(--text-1-alt2)}.pc-edit-row{align-items:flex-start;gap:6px;display:flex}.pc-edit-row textarea{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));resize:vertical;border-radius:6px;flex:1;padding:6px 8px;font-family:inherit}.pc-status{font-size:calc(12px * var(--font-scale,1));color:var(--accent);align-items:center;gap:8px;display:flex}.pc-queued{font-size:calc(12px * var(--font-scale,1));color:#d29922;border-top:1px solid #21262d;flex-direction:column;gap:4px;padding:6px 10px;display:flex}.pc-queued-item{justify-content:space-between;align-items:center;gap:8px;display:flex}.pc-queued-item button{color:inherit;cursor:pointer;font-size:calc(13px * var(--font-scale,1));background:0 0;border:none}.pc-input{border-top:1px solid var(--bg-hover);gap:6px;padding:10px;display:flex}.pc-input textarea{resize:none;background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font:inherit;font-size:calc(13px * var(--font-scale,1));border-radius:6px;flex:1;padding:8px}.preview-bar{gap:6px;display:flex}.preview-bar input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));border-radius:6px;flex:1;padding:6px 8px}.preview-frame{border:1px solid var(--border);background:var(--white);border-radius:6px;flex:1;width:100%;min-height:420px}.workspace-preview{flex:1;min-height:0}.preview-modes{gap:4px;display:flex}.app-preview-bar{flex-wrap:wrap;align-items:center}.app-preview-bar input{min-width:200px;font-family:var(--font-code,ui-monospace, SFMono-Regular, Menlo, monospace)}.app-preview-command{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-2);font-size:calc(12px * var(--font-scale,1));flex:1;overflow:hidden}.app-preview-state{border:1px solid var(--border);color:var(--text-2);font-size:calc(12px * var(--font-scale,1));border-radius:999px;flex-shrink:0;padding:2px 8px}.app-state-running{color:var(--success-light);border-color:var(--success)}.app-state-starting,.app-state-stopping{color:var(--accent);border-color:var(--accent)}.app-state-exited,.app-state-unavailable{color:var(--danger);border-color:var(--danger)}.app-diagnostics{border:1px solid var(--border);background:var(--bg-1);font-size:calc(13px * var(--font-scale,1));border-left-width:4px;border-radius:6px;padding:8px 12px}.app-diagnostics.level-bad{border-left-color:var(--danger)}.app-diagnostics.level-warn{border-left-color:var(--warning)}.app-diagnostics ul{margin:6px 0;padding-left:18px}.app-diagnostics code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:calc(12px * var(--font-scale,1))}.app-diagnostics-actions{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.app-checks{border:1px solid var(--border);background:var(--bg-2);font-size:calc(12px * var(--font-scale,1));border-radius:6px;margin:8px 0;padding:8px 10px}.app-checks>strong{margin-bottom:6px;display:block}.app-checks-row{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:4px 0;display:flex}.app-checks-label{color:var(--text-2);flex:0 0 44px}.app-checks-row input{border:1px solid var(--border);background:var(--bg-1);min-width:0;color:var(--text-1);font-family:var(--font-code,ui-monospace, SFMono-Regular, Menlo, monospace);font-size:calc(12px * var(--font-scale,1));border-radius:6px;flex:200px;padding:5px 8px}.app-checks-row .app-preview-command{flex:200px}.app-checks-state{border:1px solid var(--border);color:var(--text-2);white-space:nowrap;border-radius:10px;flex:none;padding:2px 8px}.app-checks-state.state-passed{color:var(--success);border-color:var(--success)}.app-checks-state.state-failed,.app-checks-state.state-timeout{color:var(--danger);border-color:var(--danger)}.app-checks-state.state-running,.app-checks-state.state-error{color:var(--warning);border-color:var(--warning)}.app-checks .app-preview-logs{margin-top:6px}.app-checks-schedule{color:var(--text-2);flex-wrap:wrap;flex:100%;align-items:center;gap:4px 8px;padding-left:52px;display:flex}.app-checks-schedule label{cursor:pointer;white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.app-checks-schedule input[type=checkbox]{flex:none;width:auto;padding:0}.app-checks-every{width:76px;padding:3px 6px;flex:none!important}.app-checks-next{color:var(--text-2)}.app-preview-options{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);align-items:center;gap:12px;display:flex}.app-preview-options label{align-items:center;gap:6px;display:flex}.app-preview-logs{background:var(--bg-3);border:1px solid var(--border);min-height:120px;max-height:min(40vh,360px);color:var(--text-1-alt);font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;word-break:break-word;border-radius:6px;flex:none;margin:0;padding:8px;overflow:auto}.app-preview-empty{text-align:center;background:var(--bg-2);color:var(--text-2);justify-content:center;align-items:center;padding:16px;display:flex}.workspace-panel-toggle{display:none}@media (width<=900px){.workspace{flex-direction:column}.workspace-rail{border-bottom:1px solid var(--bg-hover);max-width:none;height:45%;width:100%!important}.workspace-resizer{display:none}.workspace-bar{gap:6px;padding:0 8px}.workspace-bar .hamburger-btn{margin-right:0;padding:4px}.workspace-project{flex:auto;min-width:0;max-width:none}.workspace-bar .fb-btn{flex-shrink:0;padding:5px 8px}.workspace-panel-toggle{border-radius:0;width:100%;padding:6px 12px;display:block}.workspace.panel-collapsed .workspace-rail{flex:1;height:auto}.workspace.panel-collapsed .workspace-main{border-bottom:1px solid var(--bg-hover);flex:none;order:-1}.workspace.panel-collapsed .workspace-main .admin-tabs,.workspace.panel-collapsed .workspace-main .admin-tab-body{display:none}}@media (width<=600px){.app:has(>.workspace-bar){padding-top:var(--offline-banner-h,0px)}.workspace-bar{flex-wrap:wrap;flex:none;row-gap:4px;height:auto;padding:4px 8px 6px;position:relative;top:auto}.workspace-bar .project-picker{flex:1 1 0;width:auto}.workspace-bar:after{content:"";flex-basis:100%;order:1;height:0}.workspace-bar>.fb-btn{order:2}}.publish-card{width:calc(460px * var(--dialog-scale,1));max-width:calc(100vw - 32px)}.publish-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.publish-head h3{margin:0}.publish-close{color:var(--text-2);font-size:calc(22px * var(--font-scale,1));cursor:pointer;background:0 0;border:none;padding:0 4px;line-height:1}.publish-close:hover{color:var(--text-1)}.fb-preview-html{border:1px solid var(--border);background:var(--white);border-radius:6px;flex:1;width:100%;min-height:240px}.fb-preview-markdown{border:1px solid var(--border);background:var(--bg-2);min-height:240px;color:var(--text-1);border-radius:6px;flex:1;padding:12px 16px;overflow:auto}.workspace.resizing iframe{pointer-events:none}.workspace.resizing{-webkit-user-select:none;user-select:none}.pc-tokens{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);border-bottom:1px solid var(--bg-hover);padding:4px 12px}.fb-resizer{cursor:col-resize;background:var(--bg-hover);border-radius:3px;flex:0 0 5px;align-self:stretch}.fb-resizer:hover,.fb-resizer:active{background:var(--accent-hover)}.fb-body.resizing iframe{pointer-events:none}.fb-body.resizing{-webkit-user-select:none;user-select:none}.kanban-add{gap:8px;display:flex}.kanban-add input{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(14px * var(--font-scale,1));border-radius:6px;outline:none;flex:1;padding:8px 12px}.kanban-add-column{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(14px * var(--font-scale,1));border-radius:6px;outline:none;padding:8px 12px}.kanban-queue{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kanban-queue-note{color:var(--text-2);font-size:calc(13px * var(--font-scale,1))}.kanban-board{flex-wrap:wrap;gap:16px;display:flex}.kanban-column{background:var(--bg-1);border:1px solid var(--border);border-radius:8px;flex-direction:column;flex:220px;gap:8px;min-width:220px;padding:10px;display:flex}.kanban-column-head{color:var(--text-1);border-bottom:1px solid var(--border);padding:2px 4px 8px;font-weight:600}.kanban-column-body{flex-direction:column;gap:8px;min-height:40px;display:flex}.kanban-card{background:var(--bg-2);border:1px solid var(--border);color:var(--text-1);cursor:grab;font-size:calc(14px * var(--font-scale,1));border-radius:6px;padding:10px 12px}.kanban-card:hover{border-color:var(--accent)}.kanban-edit-description{background:var(--bg-1);border:1px solid var(--border);width:100%;color:var(--text-1);font-size:calc(14px * var(--font-scale,1));resize:vertical;border-radius:6px;outline:none;margin-bottom:12px;padding:8px 12px;font-family:inherit}.kanban-edit-actions{justify-content:space-between;align-items:center;display:flex}.kanban-edit-actions-right{gap:8px;display:flex}.settings-modal-card{max-width:340px}.settings-group{margin-bottom:16px}.settings-group-label{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);margin-bottom:6px}.settings-options{flex-wrap:wrap;gap:8px;display:flex}.settings-option-btn{background:var(--bg-1);border:1px solid var(--border);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));cursor:pointer;border-radius:6px;flex:1;padding:8px 10px}.settings-option-btn:hover{border-color:var(--accent)}.settings-option-btn.active{background:var(--accent);border-color:var(--accent);color:var(--white)}.settings-option-btn:disabled{opacity:.5;cursor:not-allowed}.settings-note{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);margin-top:6px}.settings-swatch-btn{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px}.settings-swatch-btn.active{border-color:var(--text-1)}:root .project-memory{max-width:1200px}.memory-toolbar{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.memory-toolbar input{flex:1;min-width:150px}.memory-layout{grid-template-columns:minmax(180px,1fr) minmax(250px,3fr);gap:20px;display:grid}.memory-list{flex-direction:column;gap:6px;display:flex}.memory-note{text-align:left;border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);overflow-wrap:anywhere;border-radius:6px;padding:12px}.memory-note.active{background:var(--bg-hover);border-color:var(--text-2)}.memory-note small{color:var(--text-2);margin-top:4px;display:block}.memory-editor{min-width:0}.memory-editor label{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.memory-editor input,.memory-editor textarea,.memory-toolbar input{background:var(--bg-1);color:var(--text-1);border:1px solid var(--border);border-radius:6px;padding:10px}.memory-editor textarea{resize:vertical;font-family:var(--font-code,monospace);line-height:1.5}.memory-history{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg-2);padding:12px}.memory-editor details{margin-top:12px}@media (width<=900px){.memory-layout{grid-template-columns:1fr}}.turn-error{border:1px solid var(--danger);background:var(--danger-wash-1);color:var(--text-1);font-size:calc(13px * var(--font-scale,1));overflow-wrap:anywhere;border-radius:8px;max-width:100%;margin:6px 0;padding:10px 12px}.turn-error-resolved{border-color:var(--warning-wash-3);background:var(--warning-wash-1);color:var(--text-2);font-size:calc(12px * var(--font-scale,1));padding:4px 10px}.turn-error-head{align-items:flex-start;gap:8px;display:flex}.turn-error-icon{color:var(--danger)}.turn-error-resolved .turn-error-icon{color:var(--warning)}.turn-error-title{flex:1}.turn-error-head .fb-btn{flex-shrink:0}.turn-error-sub{color:var(--text-2);font-size:calc(12px * var(--font-scale,1));margin:4px 0 0 22px}.turn-error-details{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);margin:6px 0 0 22px}.turn-error-details summary{cursor:pointer;-webkit-user-select:none;user-select:none}.turn-error-details dl{grid-template-columns:max-content 1fr;gap:2px 10px;margin:6px 0;display:grid}.turn-error-details dt{color:var(--text-3)}.turn-error-details dd{min-width:0;margin:0}.turn-error-attempts{margin:6px 0;padding-left:18px}.turn-error-attempt-time{color:var(--text-3)}.retry-notice{border:1px solid var(--warning);background:var(--warning-wash-2);color:var(--warning);font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin:6px 0;padding:7px 12px;display:flex}.retry-notice .fb-btn{flex-shrink:0}.status-page{overflow:hidden}.status-scroll{flex-direction:column;flex:1;gap:16px;padding-bottom:16px;display:flex;overflow-y:auto}.status-summary{background:var(--bg-2);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px 24px;padding:10px 14px;display:flex}.status-summary-item{align-items:baseline;gap:6px;display:flex}.status-summary-num{font-size:calc(22px * var(--font-scale,1));color:var(--text-1);font-variant-numeric:tabular-nums;font-weight:600}.status-summary-label{font-size:calc(12px * var(--font-scale,1));color:var(--text-2)}.status-capacity{flex-direction:column;align-items:flex-start;gap:4px;min-width:140px}.status-meter{background:var(--bg-hover);border-radius:3px;width:140px;height:6px;display:block;overflow:hidden}.status-meter span{background:var(--accent);height:100%;transition:width .4s;display:block}.status-live{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);align-items:center;gap:6px;margin-left:auto;display:flex}.status-live .status-dot{background:var(--success);animation:2s ease-in-out infinite status-pulse}.status-live.is-stale .status-dot{background:var(--warning)}.status-dot{background:var(--text-3);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.status-dot,.status-live .status-dot{animation:none!important}}.status-idle{text-align:center;color:var(--text-2);font-size:calc(14px * var(--font-scale,1));padding:40px 16px}.status-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.status-card{background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex}.status-card.phase-waiting{border-left-color:var(--text-3)}.status-card.phase-finishing{border-left-color:var(--success)}.status-card.phase-subagents{border-left-color:var(--warning)}.status-card.is-runaway{border-left-color:var(--warning);background:var(--warning-wash-1)}.status-card.needs-approval{border-left-color:var(--warning)}.status-card .approval-prompts{margin-top:8px}.status-runaway{background:var(--warning-wash-2);border-left:3px solid var(--warning);font-size:calc(12px * var(--font-scale,1));color:var(--text-1);border-radius:4px;padding:4px 8px}.status-counters{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);font-variant-numeric:tabular-nums}.status-summary-runaway .status-summary-num{color:var(--warning)}.status-recent-flag{font-size:calc(11px * var(--font-scale,1));color:var(--warning);border:1px solid var(--warning-wash-3);border-radius:8px;margin-left:6px;padding:0 6px}.status-card-head{font-size:calc(12px * var(--font-scale,1));justify-content:space-between;align-items:center;gap:8px;display:flex}.status-phase{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;font-size:calc(11px * var(--font-scale,1));align-items:center;gap:6px;display:flex}.status-card .status-phase .status-dot{background:var(--accent);animation:1.6s ease-in-out infinite status-pulse}.status-card.phase-waiting .status-phase .status-dot{background:var(--text-3)}.status-card.phase-finishing .status-phase .status-dot{background:var(--success)}.status-card.phase-subagents .status-phase .status-dot{background:var(--warning)}.status-clock,.status-doing-clock{font-variant-numeric:tabular-nums;color:var(--text-2)}.status-card-title{font-size:calc(15px * var(--font-scale,1));color:var(--text-1);overflow-wrap:anywhere;margin:0;font-weight:600}.status-card-title a,.status-recent-title a{color:inherit;text-decoration:none}.status-card-title a:hover,.status-recent-title a:hover{color:var(--accent);text-decoration:underline}.status-card-meta{font-size:calc(12px * var(--font-scale,1));color:var(--text-2)}.status-doing{font-size:calc(13px * var(--font-scale,1));color:var(--text-1);justify-content:space-between;gap:8px;display:flex}.status-args{background:var(--bg-1);font-size:calc(11px * var(--font-scale,1));color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:4px 8px;display:block;overflow:hidden}.status-steps{flex-wrap:wrap;gap:4px;display:flex}.status-step,.status-steps-more{font-size:calc(11px * var(--font-scale,1));border:1px solid var(--border);color:var(--text-2);background:var(--bg-1);border-radius:10px;padding:1px 7px}.status-step.is-running{border-color:var(--accent);color:var(--accent);animation:1.6s ease-in-out infinite status-pulse}.status-step.is-failed{border-color:var(--danger);color:var(--danger)}.status-steps-more{border-style:dashed}.status-subagents{border-top:1px solid var(--border);padding-top:8px}.status-subagents-head{font-size:calc(12px * var(--font-scale,1));color:var(--text-1);margin-bottom:4px;font-weight:600}.status-subagents-head span{color:var(--text-2);margin-left:6px;font-weight:400}.status-tree{border-left:1px solid var(--border);margin:0;padding:0 0 0 10px;list-style:none}.status-tree .status-tree{margin-left:4px}.status-subagent{padding:3px 0 3px 10px;position:relative}.status-subagent:before{content:"";border-top:1px solid var(--border);width:8px;position:absolute;top:12px;left:0}.status-subagent-row{font-size:calc(12px * var(--font-scale,1));align-items:center;gap:6px;min-width:0;display:flex}.status-subagent-title{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.status-subagent-meta{color:var(--text-3);font-size:calc(11px * var(--font-scale,1));white-space:nowrap;font-variant-numeric:tabular-nums}.status-subagent-activity{font-size:calc(11px * var(--font-scale,1));color:var(--text-2);overflow-wrap:anywhere;margin:1px 0 0 14px}.status-subagent.is-running>.status-subagent-row .status-dot{background:var(--accent);animation:1.6s ease-in-out infinite status-pulse}.status-subagent.is-done>.status-subagent-row .status-dot{background:var(--success)}.status-subagent.is-failed>.status-subagent-row .status-dot{background:var(--danger)}.status-recent-wrap h2{font-size:calc(13px * var(--font-scale,1));color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-weight:600}.status-recent-list{border:1px solid var(--border);border-radius:8px;margin:0;padding:0;list-style:none;overflow:hidden}.status-recent{font-size:calc(13px * var(--font-scale,1));border-top:1px solid var(--border);background:var(--bg-2);grid-template-columns:20px minmax(0,1fr) auto;grid-template-areas:"icon title ago""icon meta meta";gap:0 8px;padding:7px 12px;display:grid}.status-recent:first-child{border-top:none}.status-recent-icon{grid-area:icon;font-weight:700}.status-recent-title{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;grid-area:title;overflow:hidden}.status-recent-meta{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);grid-area:meta}.status-recent-ago{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);white-space:nowrap;grid-area:ago}.status-recent.outcome-ok .status-recent-icon{color:var(--success)}.status-recent.outcome-failed .status-recent-icon{color:var(--danger)}.status-recent.outcome-stopped .status-recent-icon{color:var(--text-3)}.status-recent.outcome-running .status-recent-icon{color:var(--accent)}@media (width<=600px){.status-grid{grid-template-columns:1fr}.status-live{margin-left:0}}.subagent-panel{border:1px solid var(--border);background:var(--bg-2);font-size:calc(12px * var(--font-scale,1));border-radius:8px;margin:0 16px 6px}.subagent-panel.is-running{border-color:var(--accent)}.subagent-panel-head{width:100%;color:var(--text-1);cursor:pointer;text-align:left;font-size:calc(12px * var(--font-scale,1));background:0 0;border:none;align-items:center;gap:8px;padding:6px 10px;display:flex}.subagent-panel-head .status-dot{background:var(--success)}.subagent-panel.is-running .subagent-panel-head .status-dot{background:var(--accent);animation:1.6s ease-in-out infinite status-pulse}.subagent-panel-caret{color:var(--text-2);margin-left:auto}.subagent-panel-body{max-height:30vh;padding:0 10px 8px;overflow-y:auto}.subagent-panel.has-failures .subagent-panel-head .status-dot{background:var(--danger,#d14343)}.subagent-panel-note{font-size:calc(12px * var(--font-scale,1));color:var(--text-2);margin:0 0 6px}.hamburger-btn{position:relative}.menu-badge{min-width:calc(16px * var(--font-scale,1));height:calc(16px * var(--font-scale,1));border-radius:calc(8px * var(--font-scale,1));background:var(--danger);color:#fff;font-size:calc(10px * var(--font-scale,1));font-weight:700;line-height:calc(16px * var(--font-scale,1));text-align:center;padding:0 4px;position:absolute;top:-2px;right:-2px}.menu-badge.inline{vertical-align:middle;margin-left:6px;display:inline-block;position:static}.access-gate{background:var(--bg-2);border:1px solid var(--border);max-width:460px;color:var(--text-1);text-align:center;overflow-wrap:anywhere;border-radius:12px;margin:48px auto;padding:24px}.access-gate h2{font-size:calc(18px * var(--font-scale,1));margin:0 0 10px}.access-gate p{color:var(--text-2);font-size:calc(14px * var(--font-scale,1));margin:0 0 14px;line-height:1.5}.access-gate p strong{color:var(--text-1)}.access-gate-error{color:var(--danger)!important}.access-inline{font-size:calc(12px * var(--font-scale,1));color:var(--text-2)}.access-inline-error{color:var(--danger)}.access-inline-btn{font-size:calc(12px * var(--font-scale,1));padding:2px 10px}.access-requests-modal{max-width:min(calc(520px * var(--dialog-scale,1)), calc(100vw - 32px))}.access-requests-empty{color:var(--text-2);font-size:calc(14px * var(--font-scale,1))}.access-requests-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.access-requests-list li{border:1px solid var(--border);background:var(--bg-1);border-radius:8px;padding:10px 12px}.access-requests-who{font-size:calc(13px * var(--font-scale,1));color:var(--text-1);overflow-wrap:anywhere;margin-bottom:8px}.access-requests-when{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);margin-top:2px;display:block}.access-requests-actions{flex-wrap:wrap;gap:6px;display:flex}@media (width<=600px){.access-gate{margin:24px 16px}}.load-older-row{justify-content:center;padding:8px 0 12px;display:flex}.load-older-btn{border:1px solid var(--border,#444);color:inherit;cursor:pointer;background:0 0;border-radius:14px;padding:4px 14px;font-size:.85em}.load-older-btn:disabled{opacity:.6;cursor:default}.share-links{margin-top:16px}.share-link{font-size:calc(13px * var(--font-scale,1));grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin:6px 0;display:grid}.share-link input{border:1px solid var(--border);background:var(--bg-1);min-width:0;color:var(--text-1);font:inherit;font-size:calc(12px * var(--font-scale,1));border-radius:6px;padding:7px 8px}.share-link button{border:1px solid var(--border);background:var(--bg-2);color:var(--text-1);cursor:pointer;font:inherit;font-size:calc(12px * var(--font-scale,1));white-space:nowrap;border-radius:6px;padding:7px 12px}.images-panel{flex-direction:column;gap:12px;padding:4px 0 16px;display:flex;container-type:inline-size}.images-notice{background:var(--accent-hover-wash-1);border:1px solid var(--accent-hover-wash-3);color:var(--text-1);font-size:calc(12px * var(--font-scale,1));border-radius:8px;margin:0;padding:8px 12px}.images-muted{color:var(--text-2);font-size:calc(12px * var(--font-scale,1));margin:0}.images-layout{grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.images-layout.no-form{grid-template-columns:minmax(0,1fr)}@container (width<=760px){.images-layout{grid-template-columns:minmax(0,1fr)}}.images-composer{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex;position:sticky;top:8px}@container (width<=760px){.images-composer{position:static}}.images-field{min-width:0;font-size:calc(12px * var(--font-scale,1));color:var(--text-2);flex-direction:column;gap:5px;font-weight:500;display:flex}.images-composer input,.images-composer select,.images-composer textarea{box-sizing:border-box;background:var(--bg-1);width:100%;color:var(--text-1);border:1px solid var(--border);font:inherit;font-weight:400;font-size:calc(13px * var(--font-scale,1));border-radius:8px;padding:7px 10px;transition:border-color .15s,box-shadow .15s}.images-composer textarea{resize:vertical;min-height:92px;line-height:1.45;font-size:calc(14px * var(--font-scale,1))}.images-composer input:focus,.images-composer select:focus,.images-composer textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash-1);outline:none}.images-row{flex-wrap:wrap;gap:10px 12px;display:flex}.images-row>.images-field{flex:140px}.images-row>.images-count{flex:0 0 84px}.images-inline{align-items:center;gap:6px;display:flex}.images-inline input,.images-inline select{flex:auto;min-width:0}.images-shape{flex:0 0 28px;justify-content:center;align-items:center;height:28px;display:flex}.images-shape>span{border:2px solid var(--accent);box-sizing:border-box;background:var(--accent-wash-1);border-radius:3px;display:block}.images-hint{font-size:calc(11px * var(--font-scale,1));color:var(--text-3);margin:-4px 0 0}.images-hint-error{color:var(--danger)}.images-more{border-top:1px solid var(--border);padding-top:10px}.images-more>summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:calc(12px * var(--font-scale,1));color:var(--text-2);align-items:center;gap:6px;font-weight:500;list-style:none;display:flex}.images-more>summary::-webkit-details-marker{display:none}.images-more>summary:before{content:"›";width:10px;font-size:1.3em;line-height:1;transition:transform .15s;display:inline-block}.images-more[open]>summary:before{transform:rotate(90deg)}.images-more>summary:hover{color:var(--text-1)}.images-more-body{flex-direction:column;gap:10px;margin-top:10px;display:flex}.images-actions{gap:8px;display:flex}.images-btn-primary{background:var(--accent-active);border-color:var(--accent-active);color:var(--white);font-weight:600}.images-btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.images-generate{font-size:calc(13px * var(--font-scale,1));border-radius:8px;flex:1;padding:9px 14px}.images-btn-ghost{color:var(--text-2);background:0 0;border-color:#0000}.images-btn-ghost:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border);color:var(--text-1)}.images-keys{text-align:center;font-size:calc(11px * var(--font-scale,1));color:var(--text-3);margin:-4px 0 0}@media (hover:none){.images-keys{display:none}}.images-results{flex-direction:column;gap:12px;min-width:0;display:flex}.images-results-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;min-height:30px;display:flex}.images-results-head h3{font-size:calc(15px * var(--font-scale,1));color:var(--text-1);align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.images-count-chip{background:var(--bg-hover);color:var(--text-2);font-size:calc(11px * var(--font-scale,1));border-radius:10px;padding:1px 8px;font-weight:500}.images-pill{border:1px solid var(--border);background:var(--bg-2);color:var(--text-1-alt);font-size:calc(12px * var(--font-scale,1));border-radius:999px;align-items:center;gap:7px;padding:4px 11px;display:inline-flex}.images-pill-dot{background:var(--text-3);border-radius:50%;flex-shrink:0;width:8px;height:8px}.images-pill.tone-ready .images-pill-dot{background:var(--success-light)}.images-pill.tone-switching .images-pill-dot{background:var(--warning);animation:1.2s ease-in-out infinite status-pulse}.images-pill.tone-busy .images-pill-dot{background:var(--accent);animation:1.2s ease-in-out infinite status-pulse}.images-pill.tone-switching{border-color:var(--warning-wash-3)}.images-pill.tone-busy{border-color:var(--accent-hover-wash-4)}.images-pill.tone-down .images-pill-dot{background:var(--danger)}.images-pill.tone-down{border-color:var(--danger-hover-wash-2)}.images-pill.tone-off{color:var(--text-3)}.images-failures{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.images-failure{background:var(--danger-wash-1);border:1px solid var(--danger-hover-wash-2);font-size:calc(12px * var(--font-scale,1));border-radius:8px;align-items:flex-start;gap:10px;padding:8px 8px 8px 10px;display:flex}.images-failure-icon{background:var(--danger);height:18px;color:var(--white);font-weight:700;font-size:calc(11px * var(--font-scale,1));border-radius:50%;flex:0 0 18px;justify-content:center;align-items:center;margin-top:1px;display:flex}.images-failure-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.images-failure-prompt{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.images-failure-error{color:var(--danger-light);overflow-wrap:anywhere}.images-icon-btn{width:26px;height:26px;color:var(--text-2);cursor:pointer;font-size:calc(12px * var(--font-scale,1));background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.images-icon-btn:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text-1)}.images-gallery{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}@container (width<=520px){.images-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.images-tile{border:1px solid var(--border);background:var(--bg-2);border-radius:10px;flex-direction:column;margin:0;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.images-tile:not(.images-tile-pending):hover{border-color:var(--accent-hover-wash-4);transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.images-thumb{aspect-ratio:1;background:var(--bg-1);cursor:zoom-in;display:block;overflow:hidden}.images-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.images-tile:hover .images-thumb img{transform:scale(1.03)}.images-tile-caption{font-size:calc(11px * var(--font-scale,1));flex-direction:column;gap:8px;padding:7px 10px;display:flex}.images-tile-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);overflow:hidden}.images-tile-actions{aspect-ratio:1;box-sizing:border-box;pointer-events:none;opacity:0;background:linear-gradient(#01040900 55%,#010409cc);flex-wrap:wrap;place-content:flex-end center;gap:5px;padding:10px;transition:opacity .15s;display:flex;position:absolute;top:0;left:0;right:0}.images-tile:hover .images-tile-actions,.images-tile-actions:focus-within{opacity:1}@media (hover:none){.images-tile-actions{opacity:1}}.images-tile-actions button{pointer-events:auto;cursor:pointer;white-space:nowrap;color:#fff;font:inherit;font-size:calc(11px * var(--font-scale,1));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d1117bf;border:1px solid #ffffff40;border-radius:999px;padding:4px 9px}.images-tile-actions button:hover{background:var(--accent-active);border-color:var(--accent-active)}.images-tile-actions button:focus-visible{outline:2px solid var(--accent-light);outline-offset:1px}.images-tile-pending{border-style:dashed}.images-tile-pending .images-thumb{cursor:default;justify-content:center;align-items:center;display:flex}.images-shimmer{background:linear-gradient(110deg, var(--bg-1) 30%, var(--bg-hover) 50%, var(--bg-1) 70%) 0 0 / 250% 100%;animation:1.6s linear infinite images-shimmer}@keyframes images-shimmer{0%{background-position:125% 0}to{background-position:-125% 0}}.images-pending-state{background:var(--bg-2);border:1px solid var(--border);color:var(--text-1-alt);font-size:calc(11px * var(--font-scale,1));text-align:center;border-radius:999px;max-width:85%;padding:4px 10px}.images-tile-pending.state-running .images-pending-state{border-color:var(--accent);color:var(--accent-light)}.images-empty{text-align:center;border:1px dashed var(--border);min-height:220px;color:var(--text-1);border-radius:12px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:4px;padding:24px;display:flex}.images-empty p{margin:0}.images-empty>p:first-child{font-size:calc(14px * var(--font-scale,1));font-weight:500}.images-lightbox{box-sizing:border-box;background:#010409d9;padding:24px}.images-lightbox-card{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;grid-template-columns:minmax(0,1fr) 300px;width:min(1400px,100%);height:min(900px,100%);display:grid;overflow:hidden;box-shadow:0 24px 64px #00000080}.images-lightbox-stage{background:var(--bg-3);justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.images-lightbox-stage img{object-fit:contain;max-width:100%;max-height:100%;display:block}.images-lightbox-nav{border:1px solid var(--border);width:40px;height:40px;color:var(--white);font-size:calc(22px * var(--font-scale,1));cursor:pointer;background:#0d1117b3;border-radius:50%;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.images-lightbox-nav:hover{background:var(--accent-active);border-color:var(--accent-active)}.images-lightbox-nav.prev{left:12px}.images-lightbox-nav.next{right:12px}.images-lightbox-side{border-left:1px solid var(--border);flex-direction:column;gap:14px;min-height:0;padding:14px 16px 16px;display:flex;overflow-y:auto}.images-lightbox-top{justify-content:space-between;align-items:center;display:flex}.images-lightbox-count{color:var(--text-2);font-size:calc(12px * var(--font-scale,1))}.images-lightbox-prompt{color:var(--text-1);font-size:calc(14px * var(--font-scale,1));white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.images-lightbox-meta{font-size:calc(12px * var(--font-scale,1));flex-direction:column;gap:6px;margin:0;display:flex}.images-lightbox-row{grid-template-columns:76px minmax(0,1fr);gap:8px;display:grid}.images-lightbox-row dt{color:var(--text-2)}.images-lightbox-row dd{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.images-lightbox-file{color:var(--text-3);font-size:calc(11px * var(--font-scale,1));overflow-wrap:anywhere;margin:auto 0 0}.images-lightbox-actions{flex-direction:column;gap:6px;display:flex}.images-lightbox-actions .fb-btn{text-align:center;padding:7px 10px;text-decoration:none}@media (width<=760px){.images-lightbox{padding:0}.images-lightbox-card{border-radius:0;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100%}.images-lightbox-side{border-left:0;border-top:1px solid var(--border);max-height:45vh}}@media (prefers-reduced-motion:reduce){.images-shimmer,.images-pill-dot{animation:none!important}.images-tile,.images-thumb img{transition:none}.images-tile:not(.images-tile-pending):hover,.images-tile:hover .images-thumb img{transform:none}}.images-page .scope-bar{gap:10px 16px}.images-page-open{font-size:calc(12px * var(--font-scale,1));color:var(--accent);text-decoration:none}.images-page-open:hover{text-decoration:underline}.images-page-scroll{flex:1;min-height:0;overflow-y:auto}
