:root{--tg-bg:var(--tg-theme-bg-color,#0f1115);--tg-text:var(--tg-theme-text-color,#f2f3f5);--tg-hint:var(--tg-theme-hint-color,#9aa0ae);--tg-link:var(--tg-theme-link-color,#a084ff);--tg-button-bg:var(--tg-theme-button-color,#a084ff);--tg-button-text:var(--tg-theme-button-text-color,#fff);--app-viewport-height:100vh;--app-safe-area-bottom:var(--tg-viewport-safe-area-inset-bottom,env(safe-area-inset-bottom));--app-tabbar-height:64px}*{box-sizing:border-box}.page h1{margin-bottom:12px;font-size:22px}.empty{color:var(--tg-hint)}.error{color:#ff5c5c}.conflict-banner{color:var(--tg-text);background:#d4a24a1f;border-left:4px solid #d4a24a;border-radius:8px;margin:12px 0;padding:12px}.conflict-banner button{margin-right:8px}.project-list{gap:12px;display:grid}.project-card{color:inherit;background:#ffffff0a;border-radius:12px;padding:16px;text-decoration:none;display:block}.project-card h3{margin:0 0 4px}.project-card .meta{color:var(--tg-hint);font-size:13px}.workspace-head{border-bottom:1px solid #ffffff0f;padding:12px 0}.workspace-tabs{border-bottom:1px solid #ffffff0f;grid-template-columns:repeat(4,1fr);margin-bottom:16px;display:grid}.workspace-tabs a{text-align:center;color:var(--tg-hint);border-bottom:2px solid #0000;padding:12px 8px;text-decoration:none}.workspace-tabs a.active{color:var(--tg-text);border-bottom-color:var(--tg-button-bg)}.scene-list{gap:8px;display:grid}.scene-row{cursor:pointer;background:#ffffff0a;border-radius:8px;align-items:center;padding:12px;display:flex}.scene-row.dragging{opacity:.4}.scene-row .order{text-align:center;width:32px;color:var(--tg-hint)}.scene-row .prompt{flex:1}.scene-row .badges{gap:4px;display:flex}.scene-row .badge{background:#ffffff0f;border-radius:4px;padding:2px 6px;font-size:11px}.modal-backdrop{z-index:50;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--tg-bg);border-radius:12px;flex-direction:column;width:100%;max-width:420px;max-height:85vh;display:flex;overflow:hidden}.modal-head{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.modal-close{cursor:pointer;color:inherit;background:0 0;border:0;font-size:24px}.modal-body{padding:16px;overflow-y:auto}.drawer-backdrop{z-index:60;background:#00000080;position:fixed;inset:0}.drawer{background:var(--tg-bg);z-index:61;width:100%;max-width:420px;padding:16px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.field{margin-bottom:12px;display:block}.field label{color:var(--tg-hint);margin-bottom:4px;font-size:13px;display:block}.field input,.field select,.field textarea{width:100%;color:var(--tg-text);font:inherit;background:#ffffff08;border:1px solid #ffffff1a;border-radius:6px;padding:8px}.field textarea{min-height:80px}button.primary{background:var(--tg-button-bg);color:var(--tg-button-text);cursor:pointer;font:inherit;border:0;border-radius:8px;padding:10px 16px}button.danger{color:#ff5c5c;cursor:pointer;background:0 0;border:0;padding:8px}.send-box{flex-direction:column;gap:8px;padding:8px 0;display:flex}.send-box .autocomplete-refs{flex:1}.send-box-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.asset-picker-button{cursor:pointer;color:inherit;background:#ffffff0f;border:0;border-radius:8px;padding:6px 10px;font-size:18px}.chat-back{cursor:pointer;color:inherit;background:0 0;border:0;padding:4px 8px;font-size:20px}
