/* KullBrowser — branded Chrome/Firefox/Edge-style web browser chrome.
   Link AFTER ../../styles.css. Shared across all 10 browser showcase pages. */
* { box-sizing: border-box; }
body { margin: 0; background: var(--surface-page); color: var(--text); font-family: var(--font-sans); }
a { color: inherit; text-decoration: none; }

.kb { position: fixed; inset: 0; display: flex; flex-direction: column; background: var(--surface-page); }
/* ---- tab strip ---- */
.kb-tabs { display: flex; align-items: flex-end; gap: 2px; padding: 8px 10px 0; background: var(--kg-ink); }
.kb-tab { display: flex; align-items: center; gap: 8px; max-width: 220px; padding: 9px 13px; border-radius: 9px 9px 0 0; font-size: 13px; color: #cdbfe6; background: rgba(255,255,255,.06); cursor: pointer; white-space: nowrap; overflow: hidden; }
.kb-tab .fav { width: 15px; height: 15px; border-radius: 4px; flex: none; display: grid; place-items: center; font-size: 9px; }
.kb-tab .x { margin-left: 4px; opacity: .6; font-size: 12px; }
.kb-tab.on { background: var(--surface-page); color: var(--kg-ink); font-weight: 600; }
.kb-tab.on .x:hover { opacity: 1; }
.kb-newtab { color: #cdbfe6; padding: 8px 12px; font-size: 14px; cursor: pointer; align-self: center; }
.kb-winbtns { margin-left: auto; display: flex; gap: 16px; align-items: center; color: #cdbfe6; padding: 0 8px; font-size: 12px; }
/* ---- toolbar ---- */
.kb-toolbar { display: flex; align-items: center; gap: 8px; padding: 8px 12px; background: var(--surface-card); border-bottom: 1px solid var(--border); }
.kb-nav { display: flex; gap: 2px; }
.kb-ico { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; color: var(--kg-ink); cursor: pointer; font-size: 14px; }
.kb-ico:hover { background: var(--surface-sunken); }
.kb-ico.dim { color: var(--text-faint); }
.kb-omni { flex: 1; display: flex; align-items: center; gap: 10px; height: 38px; padding: 0 14px; border-radius: 999px; background: var(--surface-sunken); border: 1px solid var(--border); font-size: 14px; color: var(--text); }
.kb-omni .lock { color: var(--kg-live); font-size: 12px; }
.kb-omni .url { color: var(--text); }
.kb-omni .url b { color: var(--kg-ink); }
.kb-omni .star { margin-left: auto; color: var(--text-faint); }
.kb-profile { width: 30px; height: 30px; border-radius: 50%; background: var(--kg-gold); color: var(--kg-ink); display: grid; place-items: center; font-weight: 800; font-size: 12px; }
/* ---- bookmarks bar ---- */
.kb-marks { display: flex; align-items: center; gap: 4px; padding: 5px 12px; background: var(--surface-card); border-bottom: 1px solid var(--border); font-size: 12.5px; color: var(--text-muted); overflow: hidden; }
.kb-marks a { display: flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: var(--r-sm); white-space: nowrap; }
.kb-marks a:hover { background: var(--surface-sunken); }
.kb-marks .dot { width: 14px; height: 14px; border-radius: 4px; display: grid; place-items: center; font-size: 8px; color: #fff; }
/* ---- viewport ---- */
.kb-view { flex: 1; overflow: auto; background: #fff; position: relative; }
.kb-page { max-width: 920px; margin: 0 auto; padding: 40px 28px 80px; }
