:root{color:#182622;background:#f8faf8;font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.shell{flex-direction:column;min-height:100vh;display:flex}header{border-bottom:1px solid #b7c9bf;align-items:center;gap:24px;padding:24px 6vw;display:flex}nav{flex:1;gap:20px;display:flex}a{color:inherit;text-underline-offset:4px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:6px;padding:10px 16px}button:disabled{cursor:wait;opacity:.7}:focus-visible{outline-offset:4px;outline:3px solid #28725b}main{flex:1;width:min(960px,88vw);margin:48px auto}main:has(.project-workspace){width:min(1500px,96vw);margin:24px auto}main:has(.home-hub){width:min(1200px,92vw)}h1{letter-spacing:-.04em;max-width:700px;font-size:clamp(32px,6vw,54px)}p{max-width:680px;line-height:1.6}section{border-top:1px solid #b7c9bf;margin-top:40px;padding:24px 0}.auth-card{width:min(560px,100%);margin:0 auto;padding:0 0 36px}.auth-card form{gap:18px;margin-top:28px;display:grid}.auth-card label{gap:7px;font-weight:600;display:grid}.auth-card input{color:#182622;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #6c887b;border-radius:6px;padding:10px 12px}.auth-card form button{justify-self:start;margin-top:6px}.auth-helper-row{justify-content:flex-end;margin-top:-6px;font-size:14px;display:flex}.auth-helper-row a{color:#28725b;text-decoration:underline}.dark .auth-helper-row a{color:#6ed2a8}.account-card{width:min(680px,100%);margin:0 auto}.account-card form{gap:16px;margin:30px 0;display:grid}.account-card label{gap:7px;font-weight:600;display:grid}.account-card input,.account-card select{color:#182622;min-height:44px;font:inherit;background:#fff;border:1px solid #6c887b;border-radius:6px;padding:10px 12px}.account-card form button{justify-self:start}.account-card li{margin:12px 0;line-height:1.6}.account-card li button{margin-left:12px}.form-message{color:#182622;background:#eaf4ee;border-left:4px solid #28725b;padding:12px 16px}.form-message.error{background:#fff0f1;border-left-color:#9c2539}.auth-links{flex-wrap:wrap;gap:12px 20px;margin-top:28px;display:flex}footer{border-top:1px solid #b7c9bf;padding:24px 6vw}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px}.notice{font-size:14px}.dark{color:#f3f7f4;background:#14261f}.dark :focus-visible{outline-color:#9bdac2}.dark .auth-card input,.dark .account-card input,.dark .account-card select{color:#f3f7f4;background:#203a30;border-color:#a4bcaf}.skip{position:absolute;left:-10000px}.skip:focus{color:#182622;background:#fff;padding:8px;top:8px;left:12px}@media (width<=600px){header{flex-wrap:wrap;gap:16px}nav{flex-basis:100%;order:3}main{margin-top:24px}}.avatar-preview{object-fit:cover;border-radius:50%;width:6rem;height:6rem;display:block}.file-uploader{border-top:0;border-bottom:1px solid #b7c9bf;gap:8px;margin:0;padding:12px;display:grid}.file-uploader>label{font-weight:650}.file-uploader input[type=file]{max-width:100%}.file-uploader-drop{cursor:pointer;text-align:center;border:2px dashed #6b8d7a;border-radius:6px;padding:14px}.file-uploader-list{overflow-wrap:anywhere;gap:8px;margin:0;padding-left:20px;display:grid}.file-uploader-list li{gap:4px;display:grid}.file-uploader-list progress{max-width:100%}.file-uploader-list button{justify-self:start;padding:4px 8px}.share-overlay{z-index:1100;background:#0000008c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.share-dialog{color:#182622;background:#fff;border:1px solid #b7c9bf;border-radius:10px;width:min(760px,100%);max-height:min(90vh,900px);margin:0;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #00000040}.share-dialog-header{justify-content:space-between;padding:0 0 16px}.share-dialog-header h2{margin:0}.share-sections section{margin-top:16px;padding:16px 0}.share-sections ul{overflow-wrap:anywhere;padding-left:20px}.share-sections li{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.share-sections form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.share-sections label{gap:4px;display:grid}.share-sections input,.share-sections select{color:#182622;background:#fff;border:1px solid #6c887b;border-radius:6px;max-width:100%;min-height:40px;padding:8px}.share-sections input[readonly]{width:min(600px,75vw)}.dark .share-dialog{color:#f3f7f4;background:#203a30}.shell-logo{letter-spacing:-.02em;font-size:1.25rem;font-weight:700;text-decoration:none}.user-auth-indicator{align-items:center;gap:.75rem;display:inline-flex}.user-display-name{font-size:.95rem;font-weight:600}.btn-signout{color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-size:.9rem;text-decoration:underline}.guest-auth-links{align-items:center;gap:1rem;display:inline-flex}.btn-register-link{background:#28725b;border-radius:6px;padding:6px 14px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s;color:#fff!important}.btn-register-link:hover{background:#205c49}.dark .btn-register-link{background:#349c7d;color:#0f1c17!important}.dark .btn-register-link:hover{background:#42b290}.shell-footer{border-top:1px solid #b7c9bf;margin-top:auto;padding:24px 6vw}.dark .shell-footer{border-top-color:#2b453a}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:min(1200px,100%);margin:0 auto;display:flex}.footer-content p{color:#536961;margin:0;font-size:14px}.dark .footer-content p{color:#9ab7aa}.footer-links{flex-wrap:wrap;gap:16px;display:flex}.footer-links a{font-size:14px;text-decoration:none}.footer-links a:hover{text-decoration:underline}.btn{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn-primary{color:#fff;background:#28725b;border:1px solid #28725b}.btn-primary:hover{background:#205c49;border-color:#205c49}.dark .btn-primary{color:#0f1c17;background:#349c7d;border-color:#349c7d}.dark .btn-primary:hover{background:#42b290}.btn-secondary{color:inherit;background:0 0;border:1px solid #6c887b}.btn-secondary:hover{background:#28725b14}.dark .btn-secondary{border-color:#5d8373}.dark .btn-secondary:hover{background:#ffffff0f}.btn-sm{padding:4px 10px;font-size:13px}.home-hub{width:100%;max-width:1200px;margin:0 auto}.hub-hero,.hub-welcome-header{margin-bottom:40px}.hub-lead,.hub-welcome-lead{color:#3c544b;max-width:750px;margin:16px 0 24px;font-size:1.15rem;line-height:1.6}.dark .hub-lead,.dark .hub-welcome-lead{color:#a8c2b5}.hub-action-buttons{flex-wrap:wrap;gap:12px;margin-bottom:32px;display:flex}.hub-section{border-top:1px solid #b7c9bf;margin:48px 0;padding-top:32px}.dark .hub-section{border-top-color:#2b453a}.hub-section-header{justify-content:space-between;align-items:baseline;margin-bottom:20px;display:flex}.hub-section-header h2{margin:0;font-size:1.5rem}.hub-subtext{color:#536961;margin-bottom:16px;font-size:.95rem}.dark .hub-subtext{color:#9ab7aa}.features-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin:36px 0;display:grid}.feature-card{background:#fff;border:1px solid #b7c9bf;border-radius:8px;padding:24px}.dark .feature-card{background:#1c332a;border-color:#2e4d40}.feature-card h3{color:#28725b;margin-top:0;margin-bottom:10px;font-size:1.15rem}.dark .feature-card h3{color:#5fe2b4}.feature-card p{color:#445951;margin:0;font-size:.95rem;line-height:1.5}.dark .feature-card p{color:#b2cbbf}[data-testid=template-catalogue] ul{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px;padding:0;list-style:none;display:grid}[data-testid=template-card]{background:#fff;border:1px solid #b7c9bf;border-radius:8px;flex-direction:column;justify-content:space-between;padding:20px;display:flex}.dark [data-testid=template-card]{background:#1c332a;border-color:#2e4d40}[data-testid=template-card] h3{margin:0 0 8px;font-size:1.2rem}[data-testid=template-title-input]{border:1px solid #6c887b;border-radius:6px;width:100%;margin:12px 0 8px;padding:8px 10px;font-size:14px}.dark [data-testid=template-title-input]{color:#f3f7f4;background:#203a30;border-color:#a4bcaf}.project-workspace{flex-direction:column;width:100%;min-height:80vh;display:flex}.workspace-header{border-bottom:1px solid #b7c9bf;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:12px 0;display:flex}.workspace-actions{flex-wrap:wrap;gap:8px;display:flex}.workspace-layout{grid-template-columns:260px 1.2fr 1.2fr;gap:20px;min-height:700px;display:grid}@media (width<=1200px){.workspace-layout{grid-template-columns:240px 1fr}}@media (width<=768px){.workspace-layout{grid-template-columns:1fr}}.workspace-sidebar{background:#fff;border:1px solid #b7c9bf;border-radius:8px;padding:12px;overflow-y:auto}.dark .workspace-sidebar{background:#1a2f26;border-color:#2b453a}.workspace-content{background:#fff;border:1px solid #b7c9bf;border-radius:8px;flex-direction:column;padding:16px;display:flex;overflow-y:auto}.dark .workspace-content{background:#1a2f26;border-color:#2b453a}.workspace-pdf-pane{background:#fff;border:1px solid #b7c9bf;border-radius:8px;flex-direction:column;padding:16px;display:flex;overflow-y:auto}.dark .workspace-pdf-pane{background:#1a2f26;border-color:#2b453a}.pdf-pane-header{border-bottom:1px solid #b7c9bf;margin-bottom:12px;padding-bottom:12px}.dark .pdf-pane-header{border-bottom-color:#2b453a}.pdf-pane-body{flex:1}.node-panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.workspace-modal-overlay{z-index:1200;background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.workspace-modal-card{background:#fff;border-radius:8px;width:100%;max-width:640px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.workspace-modal-card.wide{max-width:900px}.dark .workspace-modal-card{color:#f3f7f4;background:#1a2f26}.workspace-modal-header{border-bottom:1px solid #b7c9bf;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.dark .workspace-modal-header{border-bottom-color:#2b453a}.section-header{margin-bottom:28px}.section-lead{color:#3c544b;max-width:700px;font-size:1.1rem;line-height:1.5}.dark .section-lead{color:#a8c2b5}.shell.workspace-shell{background:#0a120e;height:100dvh;min-height:0;overflow:hidden}.shell.workspace-shell main#main{width:100%;height:100dvh;margin:0;padding:0;overflow:hidden}.shell.workspace-shell main:has(.project-workspace){width:100%;height:100dvh;margin:0;padding:0;overflow:hidden}.project-workspace{--ws-bg:#0b1410;--ws-panel:#13211a;--ws-panel-soft:#17291f;--ws-border:#274437;--ws-border-soft:#1c352a;--ws-text:#e3efe8;--ws-muted:#89a497;--ws-accent:#3ecf8e;--ws-accent-soft:#3ecf8e24;background:radial-gradient(1200px 500px at 15% -10%, #256f5038, transparent 60%), var(--ws-bg);height:100%;min-height:0;max-height:100dvh;color:var(--ws-text);flex-direction:column;margin:0;padding:0;font-size:13px;display:flex;overflow:hidden}.workspace-header{border-bottom:1px solid var(--ws-border);background:linear-gradient(#14251d 0%,#101d17 100%);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px;min-height:52px;margin:0;padding:8px 14px;display:flex}.workspace-header nav[aria-label=Workspace\ breadcrumbs]{min-width:0;max-width:46%;color:var(--ws-muted);white-space:nowrap;flex:0 auto;align-items:center;gap:6px;font-size:13px;display:flex;overflow:hidden}.workspace-header nav[aria-label=Workspace\ breadcrumbs] a{color:#9fd9be;border-radius:5px;padding:4px 6px;text-decoration:none}.workspace-header nav[aria-label=Workspace\ breadcrumbs] a:hover{color:#d6f5e6;background:#ffffff0f}.workspace-header nav[aria-label=Workspace\ breadcrumbs]>span:last-child{text-overflow:ellipsis;color:#eaf6ef;font-weight:600;overflow:hidden}.workspace-actions{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:5px;display:flex}.ws-action{border:1px solid var(--ws-border);color:#d5e7dd;white-space:nowrap;cursor:pointer;background:#ffffff06;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;line-height:1.1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.ws-action:hover{color:#f0fbf4;background:#3ecf8e1a;border-color:#356b52}.ws-action:disabled{opacity:.6;cursor:wait}.ws-action.active,.ws-chat-toggle[aria-expanded=true]{background:var(--ws-accent-soft);color:#d9fbe9;border-color:#3c8a64}.ws-chat-count{background:var(--ws-accent);color:#06180f;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:800;display:inline-flex}.ws-download-zip{color:#e8fff3;background:linear-gradient(#2e94665c,#1f64455c);border-color:#2f6b4f}.workspace-status-stack{z-index:1250;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,90vw);display:flex;position:fixed;bottom:18px;right:18px}.workspace-toast{color:#d9f7e7;background:#163326;border:1px solid #2f6b4f;border-radius:8px;max-width:none;margin:0;padding:10px 13px;font-size:12px;line-height:1.4;box-shadow:0 16px 40px #0006}.workspace-toast.error{color:#ffdada;background:#3a1d1d;border-color:#7f3b3b}.workspace-layout{flex:auto;grid-template-columns:248px minmax(0,1fr) minmax(0,.82fr);align-items:stretch;gap:10px;min-height:0;margin:0;padding:10px 12px 12px;display:grid;overflow:hidden}.workspace-layout.no-pdf{grid-template-columns:248px minmax(0,1fr)}.workspace-sidebar,.workspace-editor,.workspace-pdf-pane{border:1px solid var(--ws-border);background:var(--ws-panel);min-width:0;min-height:0;color:var(--ws-text);border-radius:10px;flex-direction:column;margin:0;padding:0;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.workspace-editor{background:#0e1a14}.workspace-pdf-pane{background:#101d17}.pdf-pane-header{border-bottom:1px solid var(--ws-border);background:#14251d;flex:none;margin:0;padding:0}.pdf-pane-body{flex:auto;min-height:0;display:flex;overflow:hidden}.pdf-viewer-container{flex:auto;min-width:0;min-height:0}.pdf-viewport{min-height:0}.pdf-canvas-wrapper object,.pdf-canvas-wrapper embed{max-width:100%;height:auto}.node-panel-header{border-bottom:1px solid var(--ws-border);background:#ffffff05;flex:none;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:8px 12px;display:flex}.node-panel-header h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:600;overflow:hidden}.node-panel-actions{flex:none;gap:6px;display:flex}.selected-node-panel{flex-direction:column;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.selected-node-panel>h2{border-bottom:1px solid var(--ws-border);margin:0;padding:10px 12px;font-size:13px}.selected-node-panel>[role=region][aria-label=Read-only\ document]{flex:auto;min-height:0;padding:10px 12px;overflow:auto}.selected-node-panel>section[aria-label=Live\ document]{border:0;flex-direction:column;flex:auto;gap:8px;min-height:0;margin:0;padding:10px 12px;display:flex;overflow:auto}.latex-editor-shell{border:1px solid var(--ws-border);color:#dfeee6;background:#0a1410;border-radius:8px;flex-direction:column;flex:auto;height:100%;min-height:280px;display:flex;overflow:hidden}.latex-editor-shell .cm-editor{flex:auto;height:100%;min-height:0}.selected-node-panel pre[data-testid=source-code]{border:1px solid var(--ws-border);color:#d6ebe0;background:#0a1410;border-radius:8px;max-height:none;margin:8px 0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55;overflow:auto}.comment-anchors{border-top:1px solid var(--ws-border);max-height:40%;color:var(--ws-text);background:#111f18;flex:0 auto;margin:0;padding:10px 12px;overflow-y:auto}.comment-anchors h2{text-transform:uppercase;letter-spacing:.1em;color:var(--ws-muted);margin:0 0 6px;font-size:12px}.comment-anchors p,.comment-anchors textarea{font-size:12px}.comment-anchors textarea{width:100%;color:var(--ws-text);border:1px solid var(--ws-border);background:#0b1410;border-radius:6px}.empty-selection{text-align:center;color:var(--ws-muted);flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:7px;padding:24px;display:flex}.empty-selection p{max-width:360px;margin:0;line-height:1.5}.empty-selection-mark{letter-spacing:.08em;color:var(--ws-accent);opacity:.65;font-family:ui-monospace,monospace;font-size:22px}.empty-selection-hint{color:#8fa89a;font-size:11.5px}.file-tree{width:100%;height:100%;min-height:0;color:var(--ws-text);background:0 0;border:0;flex-direction:column;margin:0;padding:0;display:flex}.file-tree-header{border-bottom:1px solid var(--ws-border);flex-direction:column;flex:none;gap:8px;padding:10px 10px 8px;display:flex}.file-tree-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.file-tree-title-row h2{letter-spacing:.14em;text-transform:uppercase;color:var(--ws-muted);margin:0;font-size:10.5px;font-weight:700}.file-tree-count{border:1px solid var(--ws-border);min-width:18px;color:var(--ws-muted);text-align:center;background:#ffffff08;border-radius:999px;padding:0 6px;font-size:10px}.file-tree-toolbar{gap:4px;display:flex}.tree-tool-btn{border:1px solid var(--ws-border);width:30px;height:28px;color:var(--ws-muted);cursor:pointer;background:#ffffff08;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tree-tool-btn:hover:not(:disabled){color:#d9fbe9;background:#3ecf8e1f;border-color:#3c8a64}.tree-tool-btn:disabled{opacity:.5;cursor:wait}.tree-tool-btn .tree-icon{width:14px;height:14px}.file-tree-breadcrumb{border-bottom:1px solid var(--ws-border-soft);color:var(--ws-muted);white-space:nowrap;flex:none;align-items:center;gap:5px;margin:0;padding:6px 10px;font-size:11px;display:flex;overflow:hidden}.file-tree-breadcrumb .tree-icon{flex:none;width:12px;height:12px}.file-tree-breadcrumb-current{text-overflow:ellipsis;overflow:hidden}.file-tree-scroll{outline:none;flex:auto;min-height:0;padding:6px 4px 10px;overflow:hidden auto}.file-tree-scroll:focus-visible{outline-offset:-2px;outline:2px solid #2f6b4f}.file-tree-row{cursor:pointer;color:#d5e7dd;border-radius:6px;justify-content:space-between;align-items:center;gap:5px;min-height:32px;padding-right:4px;display:flex}.file-tree-row:hover{background:#3ecf8e12}.file-tree-row.selected{box-shadow:inset 2px 0 0 var(--ws-accent);background:#3ecf8e29}.file-tree-label{flex:auto;align-items:center;gap:5px;min-width:0;display:flex}.tree-chevron{color:#6e8c7d;flex:none;width:12px;height:12px}.tree-chevron-spacer{flex:0 0 12px;width:12px}.tree-icon{color:#7f9e8f;flex:none;width:14px;height:14px}.tree-icon.folder{color:#d8b26a}.file-tree-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12.5px;overflow:hidden}.file-tree-row.is-folder .file-tree-name{font-weight:600}.file-tree-actions{opacity:.6;flex:none;grid-template-columns:repeat(3,24px);align-content:center;justify-items:end;gap:2px;transition:opacity .12s;display:grid}.file-tree-row:hover .file-tree-actions,.file-tree-row:focus-within .file-tree-actions,.file-tree-row.selected .file-tree-actions{opacity:1}.tree-row-action{color:#8aa697;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.tree-row-action svg{width:13px;height:13px}.tree-row-action:hover{color:#f0fbf4;background:#ffffff17}.tree-row-action.danger:hover{color:#fca5a5;background:#ef444433}.file-tree-empty{color:var(--ws-muted);padding:12px;font-size:12px}.file-tree-error{color:#fca5a5;padding:10px 12px;font-size:12px}@media (hover:none){.file-tree-actions{opacity:1}}.file-tree-row.is-folder{align-items:flex-start;padding-top:4px;padding-bottom:4px}.file-tree-row.is-folder .file-tree-label{min-height:32px}.tree-dialog-overlay{z-index:1400;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#020805ad;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tree-dialog-card{color:#e3efe8;background:#15231d;border:1px solid #274437;border-radius:10px;width:min(380px,100%);padding:18px;box-shadow:0 24px 80px #00000080}.tree-dialog-card h3{margin:0 0 14px;font-size:15px}.tree-dialog-field{gap:6px;margin-bottom:12px;display:grid}.tree-dialog-field label{color:#89a497;font-size:12px}.tree-dialog-field input,.tree-dialog-field select{color:#e3efe8;width:100%;font:inherit;background:#0f1a15;border:1px solid #274437;border-radius:6px;padding:8px 10px}.tree-dialog-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef444459;border-radius:6px;margin-bottom:12px;padding:8px 10px;font-size:12px}.tree-dialog-note{color:#a9c3b5;margin:0 0 14px;font-size:12px;line-height:1.5}.tree-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.tree-dialog-card button{color:#e3efe8;cursor:pointer;background:#ffffff0a;border:1px solid #274437;border-radius:6px;padding:7px 12px;font-size:12.5px}.tree-dialog-card button:hover{background:#ffffff14}.tree-dialog-card button[type=submit]{color:#06180f;background:#2aa876;border-color:#3ecf8e;font-weight:700}.tree-dialog-card button.tree-dialog-danger{color:#fff;background:#b91c1c;border-color:#b91c1c}.compile-controls-bar{color:var(--ws-text);background:#14251d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.compile-group{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.compile-group-actions{margin-left:auto}.compile-controls-bar select{color:#e3efe8;background:#0d1a15;border:1px solid #274437;border-radius:6px;max-width:140px;padding:4px 8px;font-size:12px}.compile-clean-toggle{color:#a9c3b5;white-space:nowrap;cursor:pointer;align-items:center;gap:5px;display:flex}.compile-submit-btn{color:#fff;white-space:nowrap;cursor:pointer;background:#157a4d;border:1px solid #2fbf7d;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.compile-submit-btn:hover:not(:disabled){background:#1a8c58}.compile-submit-btn:disabled{opacity:.8;cursor:wait}.compile-cancel-btn{color:#e3efe8;cursor:pointer;background:#ffffff0d;border:1px solid #274437;border-radius:6px;padding:6px 10px;font-size:12px}.workspace-modal-overlay{z-index:1400}.workspace-modal-card{border:1px solid var(--ws-border);color:var(--ws-text);background:#15231d;border-radius:12px;max-height:min(88vh,820px)}.workspace-modal-header{border-bottom-color:var(--ws-border);align-items:flex-start;gap:12px}.workspace-modal-header h2{margin:0;font-size:16px}.modal-subtitle{color:#a9c3b5;max-width:none;margin:5px 0 0;font-size:12px;line-height:1.5}.upload-modal{max-width:540px}.workspace-drawer-close{border:1px solid var(--ws-border);width:28px;height:28px;color:var(--ws-muted);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:0;font-size:18px;line-height:1}.workspace-drawer-close:hover{color:var(--ws-text);background:#ffffff14}.file-uploader{border:0;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.file-uploader>label{letter-spacing:.08em;text-transform:uppercase;color:var(--ws-muted);font-size:11px;font-weight:700}.file-uploader input[type=file]{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-uploader-drop{color:#a9c3b5;text-align:center;cursor:pointer;background:#3ecf8e0a;border:1.5px dashed #2f5b47;border-radius:10px;padding:26px 18px;font-size:12.5px;transition:border-color .15s,background .15s,color .15s}.file-uploader-drop:before{content:"⇪";color:var(--ws-accent);margin-bottom:6px;font-size:20px;display:block}.file-uploader-drop:hover,.file-uploader-drop:focus-visible{border-color:var(--ws-accent);color:#d9fbe9;background:#3ecf8e17}.file-uploader-list{flex-direction:column;gap:6px;max-height:260px;margin:0;padding:2px;list-style:none;display:flex;overflow-y:auto}.file-uploader-list li{border:1px solid var(--ws-border);background:#0f1a15;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px 10px;font-size:12px;display:grid}.file-uploader-list li>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-uploader-list progress{width:100%;accent-color:var(--ws-accent)}.file-uploader-list button{border:1px solid var(--ws-border);min-height:24px;color:var(--ws-text);cursor:pointer;background:#ffffff0a;border-radius:5px;padding:3px 10px;font-size:11px}.upload-row-status{color:var(--ws-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.upload-row.zip.error .upload-row-status{color:#fca5a5}.upload-row.zip.complete .upload-row-status{color:#8fe3ba}.workspace-drawer-backdrop{z-index:1300;opacity:0;visibility:hidden;background:#030a0794;transition:opacity .2s,visibility .2s;position:fixed;inset:0}.workspace-drawer-backdrop.open{opacity:1;visibility:visible}.workspace-side-drawer{z-index:1310;width:min(400px,92vw);color:var(--ws-text);border-left:1px solid var(--ws-border);visibility:hidden;background:#122019;flex-direction:column;transition:transform .22s,visibility .22s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(102%);box-shadow:-24px 0 80px #00000073}.workspace-side-drawer.open{visibility:visible;transform:translate(0)}.workspace-side-drawer.workspace-chat-drawer{width:min(390px,92vw)}.workspace-side-drawer.github-drawer{width:min(560px,94vw)}.workspace-drawer-header{border-bottom:1px solid var(--ws-border);background:linear-gradient(#16281f,#122019);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.workspace-drawer-header h2{margin:0;font-size:14px}.workspace-drawer-scroll{flex:auto;min-height:0;padding:12px 14px;overflow-y:auto}.project-chat{height:100%;min-height:0;color:var(--ws-text);background:0 0;border:0;flex-direction:column;margin:0;padding:0;display:flex}.project-chat-header{border-bottom:1px solid var(--ws-border);background:linear-gradient(#172a21,#122019);flex:none;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.project-chat-heading h2{letter-spacing:.01em;margin:0;font-size:14px}.project-chat-status{max-width:none;color:var(--ws-muted);align-items:center;gap:6px;margin:4px 0 0;font-size:11px;line-height:1.3;display:flex}.chat-status-dot{background:#b45309;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #b4530929}.chat-status-dot.online{background:var(--ws-accent);box-shadow:0 0 0 3px #3ecf8e29}.chat-close-btn{border:1px solid var(--ws-border);width:28px;height:28px;color:var(--ws-muted);cursor:pointer;background:0 0;border-radius:6px;flex:none;padding:0;font-size:18px;line-height:1}.chat-close-btn:hover{color:var(--ws-text);background:#ffffff14}.project-chat-body{flex-direction:column;flex:auto;min-height:0;padding:0 12px;display:flex;overflow:hidden}.project-chat-tools{color:var(--ws-muted);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 2px;font-size:11px;display:flex}.btn-chat-ghost{border:1px solid var(--ws-border);color:#a9c3b5;cursor:pointer;background:#ffffff08;border-radius:5px;padding:4px 8px;font-size:11px}.btn-chat-ghost:hover:not(:disabled){color:#d9fbe9;border-color:#3c8a64}.project-chat-messages{flex-direction:column;flex:auto;gap:10px;min-height:0;margin:0;padding:0 0 8px;list-style:none;display:flex;overflow-y:auto}.project-chat-message{align-items:flex-start;gap:8px;display:flex}.chat-avatar{color:#7fe3b5;background:#3ecf8e29;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:inline-flex}.chat-message-content{border:1px solid var(--ws-border);background:#17291f;border-radius:10px;min-width:0;padding:7px 10px}.chat-message-meta{color:var(--ws-muted);align-items:baseline;gap:8px;font-size:10.5px;display:flex}.chat-message-meta strong{color:#d8f3e5;font-size:11.5px}.chat-message-content p{color:#dcece4;white-space:pre-wrap;overflow-wrap:anywhere;max-width:none;margin:4px 0 0;font-size:12.5px;line-height:1.45}.project-chat-empty{color:var(--ws-muted);text-align:center;padding:24px 6px;font-size:12px}.project-chat-error{color:#fca5a5;margin:0 0 8px;font-size:12px}.project-chat-older{flex:none;align-self:center;margin:0 0 8px}.project-chat-composer{border-top:1px solid var(--ws-border);background:#101d17;flex:none;align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.project-chat-composer textarea{border:1px solid var(--ws-border);min-width:0;min-height:38px;max-height:120px;color:var(--ws-text);font:inherit;resize:none;background:#0b1410;border-radius:8px;flex:auto;padding:9px 11px;font-size:12.5px}.project-chat-composer textarea::placeholder{color:#6e8c7d}.project-chat-composer button{color:#fff;white-space:nowrap;cursor:pointer;background:#1f9d63;border:1px solid #2fbf7d;border-radius:8px;flex:none;padding:9px 12px;font-size:12px;font-weight:700}.project-chat-composer button:disabled{opacity:.6;cursor:not-allowed}.dashboard-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.import-modal{max-width:520px}.import-modal input[type=file]{background:0 0;border:1px dashed #6c887b;border-radius:8px;padding:10px}.import-progress{color:#285844;background:#eef6f1;border-radius:6px;max-width:none;margin:0 0 12px;padding:8px 10px;font-size:12.5px}.dark .import-progress{color:#b7e6d1;background:#203a30}@media (width<=1280px){.workspace-layout{grid-template-columns:224px minmax(0,1fr) minmax(0,.9fr)}}@media (width<=980px){.workspace-layout,.workspace-layout.no-pdf{grid-template-columns:210px minmax(0,1fr)}.workspace-pdf-pane{display:none}.workspace-header nav[aria-label=Workspace\ breadcrumbs]{max-width:100%}}.shell{--brand:#1f6f52;--brand-strong:#185a43;--brand-soft:#1f6f521f;--ink:#12211b;--ink-muted:#5c7269;--surface:#fff;--surface-alt:#f5f8f6;--surface-raised:#fff;--line:#d7e3dc;--line-strong:#b9cdc2;--sidebar:#f2f6f3;background:var(--surface-alt);color:var(--ink);font-family:Inter,Segoe UI,system-ui,-apple-system,Helvetica Neue,sans-serif}.shell.dark{--brand:#46bd93;--brand-strong:#5fd0a7;--brand-soft:#46bd9329;--ink:#e9f4ee;--ink-muted:#9db9ab;--surface:#10201a;--surface-alt:#0b1712;--surface-raised:#16281f;--line:#24402f;--line-strong:#2f5340;--sidebar:#0e1c16;background:var(--surface-alt);color:var(--ink)}.shell a{color:inherit}main#main{width:min(1200px,92vw);margin:32px auto 56px}.shell.workspace-shell main#main{width:100%;margin:0}.app-header{z-index:900;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:28px;padding:12px clamp(16px,4vw,40px);display:flex;position:sticky;top:0}.shell-logo{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.logo-mark{background:linear-gradient(145deg, var(--brand), #0f3d2d);color:#eafff5;border-radius:9px;place-items:center;width:34px;height:34px;font-size:18px;font-weight:800;display:grid}.logo-text{flex-direction:column;font-size:15px;line-height:1.15;display:flex}.logo-tagline{letter-spacing:.02em;color:var(--ink-muted);font-size:11px;font-weight:500}.main-nav{flex:1;align-items:center;gap:4px;display:flex}.nav-pill{color:var(--ink-muted);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:550;text-decoration:none;transition:background .15s,color .15s}.nav-pill:hover{background:var(--brand-soft);color:var(--ink)}.nav-pill.active{background:var(--brand-soft);color:var(--brand);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand) 35%, transparent)}.header-tools{align-items:center;gap:10px;display:flex}.user-menu{position:relative}.user-menu>summary{border:1px solid var(--line);cursor:pointer;background:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:5px 10px 5px 5px;list-style:none;display:inline-flex}.user-menu>summary::-webkit-details-marker{display:none}.user-menu>summary:hover{border-color:var(--line-strong)}.user-avatar{background:var(--brand);color:#04160f;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.user-menu .user-display-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:13px;font-weight:600;overflow:hidden}.chevron{color:var(--ink-muted);font-size:10px}.user-menu-panel{background:var(--surface-raised);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;min-width:200px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 40px #00000047}.user-menu-panel a,.user-menu-panel button{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:6px;padding:8px 10px;font-size:13.5px;text-decoration:none}.user-menu-panel a:hover,.user-menu-panel button:hover{background:var(--brand-soft)}.theme-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:550;display:inline-flex}.theme-toggle:hover{border-color:var(--brand);color:var(--brand)}.guest-auth-links a{font-size:14px;font-weight:550;text-decoration:none}@media (width<=860px){.app-header{flex-wrap:wrap;gap:10px}.main-nav{flex-basis:100%;order:3;padding-bottom:2px;overflow-x:auto}.logo-tagline,.user-menu .user-display-name,.theme-toggle span{display:none}}.page-column,.dashboard-container{flex-direction:column;gap:22px;display:flex}.page-header,.dashboard-header{margin:0}.section-header{max-width:760px}.eyebrow{letter-spacing:.16em;color:var(--brand);margin:0 0 6px;font-size:11px;font-weight:700}.page-header h1,.dashboard-header h1{letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(26px,3vw,36px)}.section-lead,.dashboard-header .section-lead{max-width:760px;color:var(--ink-muted);margin:0;font-size:15px}.page-column section,.dashboard-container section{border-top:0;margin:0;padding:0}.status-banner{border:1px solid color-mix(in srgb, var(--brand) 45%, transparent);background:var(--brand-soft);color:var(--ink);border-radius:8px;padding:10px 14px;font-size:14px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.link-quiet{color:var(--brand);font-size:13.5px;text-decoration:none}.link-quiet:hover{text-decoration:underline}.shell .btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:9px 15px;font-size:13.5px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.shell .btn:hover{border-color:var(--brand);color:var(--brand)}.shell .btn:active{transform:translateY(1px)}.shell .btn-primary{background:var(--brand);border-color:var(--brand);color:#f3fff9}.shell .btn-primary:hover{background:var(--brand-strong);border-color:var(--brand-strong);color:#f3fff9}.shell .btn-secondary{background:0 0}.shell .btn-danger{color:#b34a42;background:0 0;border-color:#a8433c}.shell.dark .btn-danger{color:#f2a29b;border-color:#7d3a34}.shell .btn-sm{border-radius:6px;padding:6px 10px;font-size:12.5px}.btn-block{width:100%}.shell button:disabled{cursor:not-allowed;opacity:.55}.shell input,.shell select,.shell textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:7px;padding:9px 11px;font-size:14px}.shell input::placeholder,.shell textarea::placeholder{color:color-mix(in srgb, var(--ink-muted) 80%, transparent)}.shell input:focus,.shell select:focus,.shell textarea:focus{border-color:var(--brand);outline:2px solid var(--brand-soft);outline-offset:1px}.shell select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.dashboard-layout{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:22px;display:grid}@media (width<=900px){.dashboard-layout{grid-template-columns:1fr}}.dashboard-sidebar{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:16px;padding:16px;display:flex;position:sticky;top:78px}.sidebar-actions{flex-direction:column;gap:8px;display:flex}.filter-tabs{flex-direction:column;gap:2px;display:flex}.filter-tabs .tab-btn{width:100%;color:var(--ink-muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 11px;font-size:13.5px;font-weight:550}.filter-tabs .tab-btn:hover{background:var(--brand-soft);color:var(--ink)}.filter-tabs .tab-btn.active{background:var(--brand-soft);color:var(--brand);font-weight:700}.sidebar-notifications{border-top:1px solid var(--line);padding-top:12px}.sidebar-notifications>summary{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-size:11px;font-weight:700}.sidebar-notifications-body{max-height:280px;margin-top:10px;font-size:13px;overflow-y:auto}.projects-content{flex-direction:column;gap:14px;min-width:0;display:flex}.projects-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.projects-toolbar .search-field{flex:260px}.projects-toolbar .search-field input{border-radius:8px;width:100%;padding:10px 14px}.projects-toolbar .sort-field{color:var(--ink-muted);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex}.projects-toolbar .sort-field select{min-width:160px}.loading-state,.empty-state,.error-state{border:1px dashed var(--line-strong);color:var(--ink-muted);background:var(--surface);border-radius:10px;padding:26px}.error-state{color:#b4554d;border-style:solid;border-color:#b4554d}.table-responsive{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow-x:auto}.projects-table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}.projects-table th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);background:var(--surface-alt);border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:700}.projects-table th:first-child{border-top-left-radius:12px}.projects-table th:last-child{border-top-right-radius:12px}.projects-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 16px}.projects-table tbody tr:last-child td{border-bottom:0}.projects-table tbody tr:hover{background:color-mix(in srgb, var(--brand-soft) 60%, transparent)}.project-title-link{color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:650;text-decoration:none;display:inline-flex}.project-title-link svg{color:var(--brand);flex:none}.project-title-link:hover{color:var(--brand);text-decoration:underline}.project-desc{color:var(--ink-muted);max-width:420px;margin:4px 0 0 26px;font-size:12.5px}.project-date{color:var(--ink-muted);white-space:nowrap;font-size:13px}.project-actions{flex-wrap:wrap;gap:6px;display:flex}.badge{border:1px solid var(--line-strong);background:var(--surface-alt);color:var(--ink-muted);white-space:nowrap;text-transform:capitalize;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:650;display:inline-flex}.badge-compiler{text-transform:none;color:var(--brand);border-color:color-mix(in srgb, var(--brand) 40%, transparent);background:var(--brand-soft);font-family:JetBrains Mono,Cascadia Code,ui-monospace,monospace;font-size:11.5px}.badge-status .status-dot{background:#2f9e6f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 2px #2f9e6f40}.badge-status.archived .status-dot,.badge-status.trashed .status-dot{background:#b0793a}.badge-version{font-family:ui-monospace,monospace;font-size:11px}.pagination-nav{justify-content:flex-end;align-items:center;gap:10px;padding-top:4px;display:flex}.pagination-page{color:var(--ink-muted);font-size:13px}.modal-backdrop{z-index:1400;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#030c089e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-dialog{border:1px solid var(--line-strong);background:var(--surface-raised);width:min(560px,100%);max-height:90vh;color:var(--ink);border-radius:14px;padding:24px;overflow-y:auto;box-shadow:0 28px 80px #00000073}.modal-dialog h2{margin:0 0 6px;font-size:20px}.modal-subtitle{color:var(--ink-muted);margin:0 0 18px;font-size:13.5px}.modal-dialog form{flex-direction:column;gap:14px;display:flex}.form-group{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.form-group input,.form-group select,.form-group textarea{width:100%}.form-group textarea{resize:vertical;min-height:84px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-error{color:#d2685f;overflow-wrap:anywhere;background:#a8433c24;border:1px solid #a8433c;border-radius:8px;padding:10px 12px;font-size:13px}.file-drop{border:1.5px dashed var(--line-strong);background:var(--surface-alt);text-align:center;cursor:pointer;border-radius:10px;flex-direction:column;gap:4px;padding:20px;transition:border-color .15s,background .15s;display:flex}.file-drop:hover,.file-drop:focus-within{border-color:var(--brand);background:var(--brand-soft)}.file-drop-title{font-size:14px;font-weight:650}.file-drop-hint{color:var(--ink-muted);font-size:12px;font-weight:400}.file-drop input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.import-progress{border:1px solid var(--line);background:var(--surface-alt);border-radius:9px;flex-direction:column;gap:8px;padding:12px;display:flex}.import-progress p{color:var(--ink-muted);overflow-wrap:anywhere;margin:0;font-size:12.5px}.progress-track{background:color-mix(in srgb, var(--line-strong) 55%, transparent);border-radius:999px;height:7px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--brand), #69d7b1);height:100%;transition:width .2s}.catalogue-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.category-pills{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1px solid var(--line-strong);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.pill:hover{border-color:var(--brand);color:var(--brand)}.pill.active{background:var(--brand-soft);border-color:color-mix(in srgb, var(--brand) 55%, transparent);color:var(--brand)}.catalogue-select{color:var(--ink-muted);align-items:center;gap:8px;font-size:13px;display:flex}.template-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.template-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:10px;padding:18px;transition:border-color .15s,transform .15s;display:flex;box-shadow:0 1px #0000000a}.template-card:hover{border-color:color-mix(in srgb, var(--brand) 55%, transparent);transform:translateY(-2px)}.template-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.template-card-head h3{letter-spacing:-.01em;margin:0;font-size:17px}.template-description{color:var(--ink-muted);margin:0;font-size:13.5px;line-height:1.55}.template-meta{color:var(--ink-muted);margin:0;font-size:12.5px}.template-meta code{font-family:ui-monospace,monospace;font-size:11.5px}.template-card-actions{gap:8px;margin-top:auto;padding-top:6px;display:flex}.template-card-actions input{flex:1;min-width:0}.engine-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.engine-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:14px 16px}.engine-card p{color:var(--ink-muted);margin:8px 0 0;font-size:13px}.compilation-list{flex-direction:column;gap:12px;display:flex}.section-title-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-title-row h2{margin:0;font-size:17px}.compilation-items{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.compilation-item{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.compilation-item-main{min-width:0}.project-meta{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 0;display:flex}.account-card{width:100%;max-width:860px;margin:0 auto}.account-card form,.account-card section{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:18px}.account-card h2{margin-top:0;font-size:17px}.account-card ul{flex-direction:column;gap:8px;padding-left:18px;display:flex}.shell-footer{border-top:1px solid var(--line);background:var(--surface);padding:22px clamp(16px,4vw,40px)}.footer-content p,.footer-links a{color:var(--ink-muted)}.footer-links a:hover{color:var(--brand)}.shell.dark .btn-primary,.shell.dark .btn-primary:hover{color:#04231a}.user-avatar{color:#eafff5}.shell.dark .user-avatar{color:#04231a}.account-card{border-top:0}.dashboard-layout.is-compact{grid-template-columns:minmax(0,1fr)}.hub-section .dashboard-container{gap:12px}.compilation-item-actions{align-items:center;gap:12px;display:flex}.badge-status.build-completed .status-dot,.badge-status.build-running .status-dot{background:#2f9e6f}.badge-status.build-failed .status-dot{background:#cf5a4f;box-shadow:0 0 0 2px #cf5a4f40}.badge-status.build-queued .status-dot{background:#c39a3f}.badge-status.build-none .status-dot{background:#7a8f85}.workspace-modal-card .modal-subtitle{color:#a9c3b5}.shell.dark .error-state{color:#f2a29b;border-color:#7d3a34}
