.launcher-screen { position:fixed; inset:0; z-index:99999; overflow:auto; display:flex; padding:24px; background:var(--bg,#f5f5f5); color:var(--text,#171717); box-sizing:border-box; }
.launcher-panel { width:min(760px,100%); margin:auto; text-align:center; }
.launcher-panel h1 { font-size:28px; margin:16px 0 8px; }
.launcher-panel p { color:var(--muted,#666); margin:0 0 24px; }
.launcher-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:28px 0; }
.launcher-category { min-height:180px; padding:24px 14px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; border:1px solid var(--line,#ddd); border-radius:16px; background:var(--panel,#fff); color:inherit; cursor:pointer; }
.launcher-category:hover { border-color:var(--text,#171717); transform:translateY(-2px); }
.launcher-category span { font-size:36px; }
.launcher-category strong { font-size:16px; }
.launcher-category small { color:var(--muted,#666); line-height:1.5; }
.launcher-link { font-size:13px; color:var(--muted,#666); background:none; border:0; cursor:pointer; text-underline-offset:4px; }
.launcher-panel footer { margin:24px 0 8px; }
#launcherError { color:var(--danger,#b42318); margin:16px 0; }
.launcher-panel [hidden] { display:none !important; }
.launcher-panel button:focus-visible,.launcher-panel a:focus-visible { outline:3px solid var(--text,#171717); outline-offset:3px; }
.launcher-panel button:disabled { opacity:.55; cursor:wait; }
@media(max-width:600px) { .launcher-screen { padding:20px 16px; } .launcher-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .launcher-category { min-height:155px; padding:18px 10px; } .launcher-category small { display:none; } }
