.module-projects .row-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.workspace-page{min-height:0;padding-bottom:var(--space-3)}.module-workspace{min-width:0}.workspace-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.workspace-project-name{color:var(--muted);font-size:var(--font-size-sm)}.workspace-search-toolbar{justify-content:flex-end;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.workspace-search-toolbar .input{max-width:260px}.workspace{--tree-width:230px;--preview-width:300px;--bottom-height:190px;grid-template-columns:var(--tree-width) 4px minmax(0, 1fr) 4px var(--preview-width);grid-template-rows:minmax(240px, 1fr) 4px var(--bottom-height);min-height:min(760px, calc(100vh - var(--topbar-height) - 170px));border:1px solid var(--border);border-radius:var(--radius);background:var(--code-bg);color:var(--text);display:grid;overflow:hidden}.workspace.is-tree-hidden{grid-template-columns:0 0 minmax(0, 1fr) 4px var(--preview-width)}.workspace.is-preview-hidden{grid-template-columns:var(--tree-width) 4px minmax(0, 1fr) 0 0}.workspace.is-tree-hidden.is-preview-hidden{grid-template-columns:0 0 minmax(0,1fr) 0 0}.workspace.is-bottom-hidden{grid-template-rows:minmax(240px,1fr) 0 0}.workspace-tree,.workspace-preview,.workspace-bottom,.workspace-center{min-width:0;min-height:0;overflow:auto}.workspace-tree{background:var(--surface);border-right:1px solid var(--border);grid-area:1/1}.workspace-center{flex-direction:column;grid-area:1/3;display:flex;overflow:hidden}.workspace-preview{padding:var(--space-2);background:var(--surface);border-left:1px solid var(--border);grid-area:1/5}.workspace-bottom{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;grid-area:3/1/auto/-1;display:flex}.workspace-resizer{z-index:1;background:var(--border)}.workspace-resizer--x{cursor:col-resize;grid-row:1}.workspace-resizer--tree{grid-column:2}.workspace-resizer--preview{grid-column:4}.workspace-resizer--y{cursor:row-resize;grid-area:2/1/auto/-1}.workspace-toolbar,.workspace-tree-toolbar,.workspace-tabs,.workspace-bottom-tabs{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:6px;min-height:42px;padding:6px 8px;display:flex}.workspace-toolbar{flex-wrap:wrap}.workspace-toolbar .btn{font-size:var(--font-size-sm);padding:5px 9px}.workspace-toolbar .workspace-project-select{width:auto;min-width:130px;max-width:190px}.workspace-toolbar .workspace-font-size{width:62px;padding:5px}.workspace-file-title{text-overflow:ellipsis;white-space:nowrap;max-width:220px;color:var(--muted);font-size:var(--font-size-sm);overflow:hidden}.workspace-tree-toolbar strong{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;flex:1}.workspace-tree-toolbar .btn{font-size:var(--font-size-sm);padding:4px 7px}.workspace-tree>.input{width:calc(100% - 16px);margin:8px}.workspace-tree-state{padding:8px 12px}.workspace-file-item{width:100%;padding:5px 8px 5px calc(10px + var(--file-depth,0) * 14px);color:var(--text);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;display:block;overflow:hidden}.workspace-file-item:hover,.workspace-file-item.is-selected{background:color-mix(in srgb, var(--accent) 13%, var(--surface))}.workspace-tabs{flex-wrap:nowrap;min-height:36px;overflow-x:auto}.workspace-tab,.workspace-panel-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:7px 12px}.workspace-tab.is-active,.workspace-panel-tab.is-active{border-bottom-color:var(--accent);color:var(--text)}.workspace-editor{min-height:240px;font-size:var(--workspace-editor-font-size,14px);flex:1;overflow:hidden}.workspace-editor .cm-editor{height:100%}.workspace-editor .cm-scroller{overflow:auto}.workspace-editor .cm-content{padding-top:8px;padding-bottom:24px}.workspace-editor .cm-gutters{-webkit-user-select:none;user-select:none}.workspace-bottom-tabs{min-height:36px}.workspace-panel-tab{padding:5px 10px}.workspace-output{white-space:pre-wrap;overflow-wrap:anywhere;flex:1;min-height:50px;margin:0;padding:8px 12px;font:12px/1.5 Consolas,Cascadia Code,monospace;overflow:auto}.workspace-preview h3{font-size:var(--font-size-sm);text-transform:uppercase;margin:4px 0 8px}.preview-html{border:1px solid var(--border);background:#fff;width:100%;min-height:280px;display:block}.workspace-state{padding:24px}.workspace-center.is-max{z-index:36;background:var(--code-bg);position:fixed;inset:0}body.editor-max{overflow:hidden}@media (width<=1000px){.workspace{grid-template-rows:minmax(320px,1fr) 4px 180px;grid-template-columns:minmax(150px,30%) 0 minmax(0,1fr)}.workspace>.workspace-resizer--x,.workspace-preview{display:none}.workspace-center{grid-column:3}.workspace.is-tree-hidden{grid-template-columns:0 0 minmax(0,1fr)}.workspace.is-preview-hidden{grid-template-columns:minmax(150px,30%) 0 minmax(0,1fr)}.workspace-bottom{grid-row:3}}@media (width<=650px){.workspace-heading{flex-direction:column;align-items:flex-start}.workspace{grid-template-rows:minmax(110px,auto) minmax(320px,1fr) 4px 180px;grid-template-columns:minmax(0,1fr)}.workspace-tree,.workspace-center,.workspace-bottom{grid-column:1}.workspace-tree{grid-row:1;max-height:180px}.workspace-center{grid-row:2}.workspace-bottom{grid-row:4}.workspace.is-tree-hidden{grid-template-rows:0 minmax(320px,1fr) 4px 180px}.workspace-toolbar{gap:4px}.workspace-toolbar .workspace-file-title{max-width:100px}}.workspace-dual-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding:8px 12px;display:flex}.workspace-mode-group{gap:6px;display:flex}.workspace-mode-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.workspace-mode-btn:hover{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--text)}.workspace-mode-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.workspace-actions-group{align-items:center;gap:8px;display:flex}.workspace-vscode-frame-wrap{border:1px solid var(--border);border-radius:var(--radius);background:#1e1e1e;width:100%;height:calc(100vh - 145px);min-height:550px;position:relative;overflow:hidden}.workspace-vscode-frame-wrap iframe{border:none;width:100%;height:100%;display:block}.module-storage,.module-sandbox{min-height:100%}.texxa-studio-container{color:#f4f4f5;background:#09090b;border:1px solid #27272a;border-radius:12px;flex-direction:column;height:calc(100vh - 75px);font-family:inherit;display:flex;overflow:hidden}.texxa-studio-nav{background:#18181b;border-bottom:1px solid #27272a;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.texxa-studio-tabs{gap:6px;display:flex}.texxa-tab-btn{color:#a1a1aa;cursor:pointer;background:#27272a;border:1px solid #3f3f46;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500}.texxa-tab-btn.active{color:#fff;background:#4f46e5;border-color:#6366f1}.texxa-member-bar{background:#121215;border-bottom:1px solid #27272a;gap:10px;padding:12px 20px;display:flex;overflow-x:auto}.texxa-member-item{background:#18181b;border:1px solid #27272a;border-radius:8px;flex-direction:column;flex:1;gap:3px;min-width:140px;padding:8px 12px;display:flex}.texxa-member-name{align-items:gap: 6px;font-size:13px;font-weight:600;display:flex}.texxa-member-desc{color:#a1a1aa;font-size:11px}.texxa-tab-content{flex-direction:column;flex:1;display:none;overflow-y:auto}.texxa-tab-content.active{display:flex}.texxa-chat-list{flex-direction:column;flex:1;gap:14px;padding:20px;display:flex;overflow-y:auto}.texxa-chat-bubble{gap:12px;max-width:85%;display:flex}.texxa-chat-bubble.is-me{flex-direction:row-reverse;align-self:flex-end}.texxa-bubble-avatar-lg{background:#27272a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.texxa-bubble-body{background:#18181b;border:1px solid #27272a;border-radius:12px;padding:12px 16px;font-size:13px;line-height:1.5}.texxa-chat-bubble.is-me .texxa-bubble-body{color:#fff;background:#4f46e5;border-color:#6366f1}.texxa-studio-footer{background:#18181b;border-top:1px solid #27272a;flex-direction:column;gap:10px;padding:14px 20px;display:flex}.texxa-key-panel{flex-direction:column;gap:16px;width:100%;max-width:650px;margin:0 auto;padding:24px;display:flex}.texxa-key-group{flex-direction:column;gap:6px;display:flex}.texxa-key-group label{color:#d4d4d8;font-size:13px;font-weight:500}.texxa-key-group input{color:#f4f4f5;background:#09090b;border:1px solid #3f3f46;border-radius:8px;padding:10px 14px;font-size:13px}.texxa-history-panel{flex-direction:column;gap:12px;padding:20px;display:flex}.texxa-history-item{background:#18181b;border:1px solid #27272a;border-radius:8px;flex-direction:column;gap:8px;padding:14px;display:flex}.texxa-btn-act{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600}.module-database,.module-vps-lite,.module-users,.module-notifications,.module-settings{min-height:100%}.btn{border:2px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius);min-height:calc(34px * var(--bad-zoom));padding:0 var(--space-3);cursor:pointer;font-weight:650}.btn:hover{background:var(--status-bg)}.btn:focus-visible,.input:focus-visible,.sidebar__link:focus-visible,.icon-button:focus-visible,.zoom-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn--danger{border-color:var(--danger);color:var(--danger)}.btn--ghost{background:0 0}.input{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:var(--space-2) var(--space-3);min-height:calc(36px * var(--bad-zoom))}textarea.input{min-height:calc(88px * var(--bad-zoom));resize:vertical;font-family:inherit}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-error{color:var(--danger);min-height:1.1em}.form-grid{grid-template-columns:repeat(auto-fit, minmax(calc(220px * var(--bad-zoom)), 1fr));gap:var(--space-3);display:grid}.form-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.table-wrap{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);vertical-align:top}.table th{background:color-mix(in srgb, var(--accent) 10%, var(--surface));font-weight:750}.badge{border:2px solid var(--border);border-radius:var(--radius);padding:0 var(--space-2);font-size:var(--font-size-sm);background:var(--status-bg);align-items:center;font-weight:700;display:inline-flex}.badge--success{color:var(--success);border-color:var(--success);background:color-mix(in srgb, var(--success) 14%, var(--surface))}.badge--warning{color:var(--warning);border-color:var(--warning);background:color-mix(in srgb, var(--warning) 16%, var(--surface))}.badge--error{color:var(--danger);border-color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, var(--surface))}.badge--info{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.banner{border:2px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--accent) 10%, var(--surface));font-weight:600}.banner--info{border-color:var(--accent)}.banner--warning{border-color:var(--warning);background:color-mix(in srgb, var(--warning) 14%, var(--surface))}.banner--error{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--surface))}.cards{grid-template-columns:repeat(auto-fit, minmax(calc(180px * var(--bad-zoom)), 1fr));gap:var(--space-3);display:grid}.card{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:var(--space-4);border-top-width:6px;border-top-color:var(--accent)}.card--teal{border-top-color:var(--accent-2)}.card--violet{border-top-color:var(--accent-3)}.card--orange{border-top-color:var(--accent-4)}.card--rose{border-top-color:var(--nav-sandbox)}.card--cyan{border-top-color:var(--nav-ai)}.muted{color:var(--muted)}.page{gap:var(--space-4);flex-direction:column;display:flex}.toolbar{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.row-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.breadcrumbs a{color:var(--accent);text-decoration:none}.state-card{border:2px solid var(--border);border-radius:var(--radius);padding:var(--space-4);background:var(--surface);border-left:8px solid var(--accent)}.state-card--error{border-color:var(--danger);border-left-color:var(--danger)}.modal-overlay{z-index:40;background:#14181c66;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(520px,100% - 24px);color:var(--text);border:2px solid var(--border);border-top:8px solid var(--accent);border-radius:var(--radius);padding:var(--space-4)}.toast-host{right:var(--space-4);bottom:var(--space-4);gap:var(--space-2);z-index:50;flex-direction:column;display:flex;position:fixed}.toast{border:2px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:var(--space-2) var(--space-3);max-width:360px;font-weight:650}.toast--warning{border-color:var(--warning)}.toast--error{border-color:var(--danger)}.toast--success{border-color:var(--success)}.tok-kw{color:var(--accent-3);font-weight:750}.tok-str{color:var(--accent-2)}.tok-num{color:var(--accent-4)}:root,:root[data-theme=dark]{--bg:#0d1117;--surface:#161b22;--surface-hover:#1f242c;--border:#30363d;--text:#c9d1d9;--heading:#f0f6fc;--muted:#8b949e;--accent:#58a6ff;--success:#238636;--danger:#da3633}:root[data-theme=light]{--bg:#f6f8fa;--surface:#fff;--surface-hover:#f3f4f6;--border:#d0d7de;--text:#1f2328;--heading:#1f2328;--muted:#656d76;--accent:#0969da;--success:#1a7f37;--danger:#cf222e}html,body{background:var(--bg)!important;width:100vw!important;height:100vh!important;color:var(--text)!important;margin:0!important;padding:0!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif!important;overflow:hidden!important}.shell{width:100vw!important;height:100vh!important;display:flex!important;position:relative!important;overflow:hidden!important}.sidebar{background:var(--surface)!important;border-right:1px solid var(--border)!important;z-index:50!important;flex-direction:column!important;flex-shrink:0!important;width:230px!important;height:100vh!important;transition:width .2s,transform .2s!important;display:flex!important;overflow:hidden auto!important}.shell.is-sidebar-hidden .sidebar{visibility:hidden!important;border-right:none!important;width:0!important;transform:translate(-100%)!important}.sidebar__brand{border-bottom:1px solid var(--border)!important;height:50px!important;color:var(--heading)!important;background:var(--surface)!important;flex-shrink:0!important;align-items:center!important;padding:0 16px!important;font-size:14px!important;font-weight:700!important;display:flex!important}.sidebar__nav{flex-direction:column!important;flex:1!important;gap:2px!important;padding:8px 6px!important;display:flex!important}.sidebar__link{color:var(--text)!important;border-radius:6px!important;align-items:center!important;padding:7px 10px!important;font-size:12px!important;font-weight:500!important;text-decoration:none!important;transition:all .15s!important;display:flex!important}.sidebar__link:hover{background:var(--surface-hover)!important;color:var(--heading)!important}.sidebar__link.is-active{color:var(--accent)!important;border-left:3px solid var(--accent)!important;background:#58a6ff26!important;font-weight:600!important}.main{background:var(--bg)!important;flex-direction:column!important;flex:1!important;min-width:0!important;height:100vh!important;display:flex!important;overflow:hidden!important}.topbar{background:var(--surface)!important;border-bottom:1px solid var(--border)!important;z-index:40!important;flex-shrink:0!important;justify-content:space-between!important;align-items:center!important;height:50px!important;padding:0 14px!important;display:flex!important}.content{box-sizing:border-box!important;background:var(--bg)!important;flex:1!important;min-height:0!important;padding:16px 20px!important;overflow:hidden auto!important}.content.module-workspace,.module-workspace{height:100%!important;padding:0!important;overflow:hidden!important}button,.btn{background:var(--surface)!important;height:28px!important;color:var(--text)!important;border:1px solid var(--border)!important;cursor:pointer!important;border-radius:6px!important;justify-content:center!important;align-items:center!important;gap:4px!important;padding:0 10px!important;font-size:12px!important;font-weight:500!important;display:inline-flex!important}button:hover,.btn:hover{background:var(--surface-hover)!important;color:var(--heading)!important}.btn-primary,[data-action=create],#btn-unified-run{background:var(--success)!important;color:#fff!important;border:1px solid #f0f6fc1a!important}.btn-danger,[data-action=delete],[data-auth-logout]{background:var(--surface)!important;color:#f85149!important;border:1px solid var(--danger)!important}.sidebar__link[data-nav=dashboard]:before{content:"📊 "}.sidebar__link[data-nav=projects]:before{content:"📁 "}.sidebar__link[data-nav=workspace]:before{content:"💻 "}.sidebar__link[data-nav=storage]:before{content:"💾 "}.sidebar__link[data-nav=sandbox]:before{content:"🧪 "}.sidebar__link[data-nav=ai]:before{content:"🤖 "}.sidebar__link[data-nav=database]:before{content:"🗄️ "}.sidebar__link[data-nav=vps]:before{content:"⚡ "}.sidebar__link[data-nav=users]:before{content:"👥 "}.sidebar__link[data-nav=notifications]:before{content:"🔔 "}.sidebar__link[data-nav=settings]:before{content:"⚙️ "}.sidebar__link[data-nav=admin]:before{content:"🛡️ "}.card,.cards .card,.state-card{border:1px solid var(--border)!important;border-top:1px solid var(--border)!important;background:var(--surface)!important;border-radius:8px!important;margin-bottom:14px!important;padding:16px 20px!important;box-shadow:0 1px 3px #0000000f!important}.cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;gap:12px!important;margin-bottom:14px!important;display:grid!important}.cards .card{flex-direction:column!important;justify-content:space-between!important;margin-bottom:0!important;padding:14px 16px!important;display:flex!important}.cards .card strong,.cards .card .muted{color:var(--muted)!important;text-transform:uppercase!important;letter-spacing:.5px!important;font-size:12px!important;font-weight:600!important}.cards .card h2{color:var(--heading)!important;margin:6px 0!important;font-size:26px!important;font-weight:700!important;line-height:1.2!important}.banner{border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--muted)!important;border-radius:6px!important;margin-bottom:12px!important;padding:10px 14px!important;font-size:12px!important;font-weight:500!important}.quick-actions{flex-wrap:wrap!important;gap:8px!important;margin-top:8px!important;display:flex!important}.module-dashboard li,.content li{background:var(--surface-hover)!important;border:1px solid var(--border)!important;color:var(--text)!important;border-radius:6px!important;justify-content:space-between!important;align-items:center!important;padding:10px 14px!important;font-size:13px!important;transition:all .15s!important;display:flex!important}.module-dashboard li:hover,.content li:hover{border-color:var(--accent)!important;transform:translate(2px)!important}.badge{border:1px solid var(--border)!important;border-radius:2em!important;padding:2px 10px!important;font-size:11px!important;font-weight:700!important}.badge--success,[class*=active]{color:var(--success)!important;background:#23863626!important;border-color:#23863666!important}.badge--warning,[class*=warning]{color:#d29922!important;background:#d2992226!important;border-color:#d2992266!important}.badge--info,[class*=LOCAL],[class*=MOCK]{color:var(--accent)!important;background:#58a6ff1f!important;border-color:#58a6ff4d!important}.inspector{background:var(--surface)!important;border-left:1px solid var(--border)!important;box-shadow:-2px 0 8px #0000000d!important}.inspector__head{border-bottom:1px solid var(--border)!important;color:var(--heading)!important;padding:14px 16px!important;font-size:13px!important;font-weight:700!important}.inspector__body{color:var(--text)!important;padding:16px!important;font-size:12px!important;line-height:1.6!important}.cards .card h2{color:var(--heading)!important;margin:6px 0!important;font-size:26px!important;font-weight:700!important}.quick-actions button,.quick-actions .btn{border-radius:6px!important;height:32px!important;padding:0 14px!important;font-size:12px!important;font-weight:600!important}.module-dashboard ul,.content ul{flex-direction:column!important;gap:6px!important;margin:8px 0 0!important;padding-left:0!important;list-style:none!important;display:flex!important}.module-dashboard li,.content li{background:var(--surface-hover)!important;border:1px solid var(--border)!important;color:var(--text)!important;border-radius:6px!important;justify-content:space-between!important;align-items:center!important;padding:10px 14px!important;font-size:13px!important;display:flex!important}.inspector{background:var(--surface)!important;border-left:1px solid var(--border)!important}.auth-page{min-height:100vh;padding:var(--space-4,24px);color:var(--text,#17212b);background:var(--bg,#eef3f5);place-items:center;display:grid}.auth-card{gap:var(--space-3,16px);width:min(100%,440px);padding:var(--space-4,24px);border:2px solid var(--border,#c7d2d8);border-radius:var(--radius,10px);background:var(--surface,#fff);flex-direction:column;display:flex;box-shadow:0 16px 48px #122b361f}.auth-card h1,.auth-card p{margin:0}.auth-brand{color:var(--accent,#087e8b);font-weight:800}.auth-form{gap:var(--space-3,16px);display:grid}.auth-message{padding:var(--space-2,10px);border:1px solid var(--border,#c7d2d8);border-radius:var(--radius,10px)}.auth-message--error{color:var(--danger,#a11)}.auth-message--info,.auth-help{color:var(--muted,#53636c)}.auth-links{gap:var(--space-2,10px);flex-wrap:wrap;display:flex}.auth-card a{color:var(--accent,#087e8b)}
