/* KStudio para navegador (beta): o que não existe no navegador some da tela */
.ks-web #btnVcam, .ks-web #btnLive { display: none !important; }
.ks-web .sb-live, .ks-web #stats > .sb-div:first-child { display: none !important; }
.ks-web #titlebar .tb-brand::after { content: 'NAVEGADOR · BETA'; margin-left: 8px; padding: 2px 7px; border-radius: 99px; font: 700 9.5px/1.6 system-ui, sans-serif; letter-spacing: .06em; color: #fff; background: linear-gradient(90deg, #7c3aed, #06b6d4); white-space: nowrap; }
.ksweb-msg { max-width: 560px; margin: 14vh auto; padding: 32px; font-family: system-ui, sans-serif; text-align: center; color: #1b1f2a; }
.ksweb-msg h1 { font-size: 24px; margin: 0 0 12px; }
.ksweb-msg p { font-size: 15px; line-height: 1.6; color: #4b5563; }
.ksweb-ask { position: fixed; inset: 0; z-index: 200000; display: grid; place-items: center; background: rgba(8,10,16,.55); backdrop-filter: blur(3px); }
.ksweb-card { width: min(520px, calc(100vw - 32px)); padding: 24px; border-radius: 16px; background: var(--bg1, #fff); color: var(--text, #1b1f2a); box-shadow: 0 24px 60px rgba(0,0,0,.35); font-family: system-ui, sans-serif; }
.ksweb-card h2 { margin: 0 0 8px; font-size: 19px; }
.ksweb-card p { margin: 0 0 16px; font-size: 14px; line-height: 1.55; color: var(--text2, #4b5563); }
.ksweb-card small { display: block; margin-top: 12px; font-size: 12px; color: var(--text3, #6b7280); line-height: 1.5; }
.ksweb-row { display: flex; flex-wrap: wrap; gap: 8px; }
.ksweb-btn { height: 34px; padding: 0 14px; border-radius: 9px; border: 1px solid var(--line2, #d1d5db); background: var(--bg2, #f3f4f6); color: var(--text, #111); font: 600 13px system-ui, sans-serif; cursor: pointer; }
.ksweb-btn.primary { background: #2563eb; border-color: #2563eb; color: #fff; }
.ksweb-btn.ghost { background: transparent; border-color: transparent; }
/* o navegador não informa uso de processador e memória do KStudio */
.ks-web .sb-cpu, .ks-web .sb-mem, .ks-web .sb-div:has(+ .sb-cpu), .ks-web .sb-div:has(+ .sb-mem) { display: none !important; }
/* tela de entrar: o próprio login.css vira um cartão no meio quando a tela é grande */
/* Primeiros passos (câmera, microfone, downloads) */
.kspp { position: fixed; inset: 0; z-index: 200001; display: grid; place-items: center; background: rgba(8,10,16,.55); backdrop-filter: blur(3px); font-family: system-ui, sans-serif; }
.kspp-card { width: min(560px, calc(100vw - 32px)); padding: 26px; border-radius: 18px; background: var(--bg1, #fff); color: var(--text, #1b1f2a); box-shadow: 0 24px 60px rgba(0,0,0,.35); }
.kspp-head h2 { margin: 0 0 6px; font-size: 21px; }
.kspp-head p { margin: 0 0 16px; font-size: 14px; color: var(--text2, #4b5563); line-height: 1.5; }
.kspp-list { display: grid; gap: 10px; }
.kspp-item { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--line2, #e5e7eb); background: var(--bg2, #f9fafb); }
.kspp-item.ok { border-color: color-mix(in srgb, #10b981 45%, transparent); background: color-mix(in srgb, #10b981 8%, var(--bg2, #f9fafb)); }
.kspp-item.bad { border-color: color-mix(in srgb, #ef4444 45%, transparent); }
.kspp-ico { font-size: 22px; text-align: center; }
.kspp-txt b { display: block; font-size: 14.5px; }
.kspp-txt small { display: block; font-size: 12.5px; color: var(--text2, #6b7280); line-height: 1.45; margin-top: 2px; }
.kspp-check { font: 700 13px system-ui, sans-serif; color: #059669; white-space: nowrap; }
.kspp-btn { height: 34px; padding: 0 14px; border-radius: 9px; border: 1px solid var(--line2, #d1d5db); background: var(--bg1, #fff); color: var(--text, #111); font: 600 13px system-ui, sans-serif; cursor: pointer; white-space: nowrap; }
.kspp-btn.primary { background: #2563eb; border-color: #2563eb; color: #fff; }
.kspp-btn:disabled { opacity: .6; cursor: default; }
.kspp-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 18px; }
.kspp-foot small { font-size: 12px; color: var(--text3, #6b7280); }
.kspp-fab { position: fixed; left: 14px; bottom: 54px; z-index: 9000; height: 34px; padding: 0 14px; border-radius: 99px; border: 0; background: linear-gradient(90deg, #7c3aed, #2563eb); color: #fff; font: 700 12.5px system-ui, sans-serif; box-shadow: 0 8px 24px rgba(37,99,235,.35); cursor: pointer; }
