/* RS Bayi premium layer: loaded after app.css. Tokens first, then component polish. */

@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("/fonts/geist-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("/fonts/geist-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/geist-mono-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/geist-mono-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Near-black (dark) — original rsbayi graphite, not blue-slate */
:root {
  --bg: #0e0e0e;
  --bg-2: #090909;
  --elev: #1c1c1c;
  --card: #141414;
  --paper: #141414;
  --paper-2: #111111;
  --head: #121212;
  --input: #101010;
  --line: #2a2a2a;
  --line-2: #3a3a3a;
  --text: #ededed;
  --muted: #8d8d8d;
  --faint: #6e6e6e;
  --red: #8d3d43;
  --red-2: #753338;
  --red-border: #a34d54;
  --red-glow: rgba(141,61,67,.22);
  --gold: #9a7b3c;
  --gold-2: #b08d4a;
  --gold-soft: rgba(141,61,67,.1);
  --ok: #3d8f68;
  --ok-bg: rgba(61,143,104,.12);
  --warn: #c4a03a;
  --note: #c9864a;
  --shadow: none;
  --radius: 10px;
  --font: "Geist", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --display: "Geist", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --mono: "Geist Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --side: #0a0a0a;
  --side-text: #ededed;
  --side-muted: #8a8a8a;
  --side-line: #242424;
  --side-hover: #1a1a1a;
  --side-active: #2a1618;
  --side-nav: #c8c8c8;
  --fam: #1c1c1c;
  --thumb: #0c0c0c;
  --badge-bg: rgba(255,255,255,.045);
  --focus: #c45a60;
  --search-icon: %238d8d8d;

  --surface-0: var(--bg);
  --surface-1: var(--card);
  --surface-2: var(--elev);
  --ink: #f2f2f2;
  --ink-on: #0e0e0e;
  --accent: var(--red);
  --accent-hover: #9b474e;
  --accent-press: var(--red-2);
  --accent-soft: rgba(141,61,67,.16);
  --accent-line: rgba(163,77,84,.42);
  --on-accent: #fff6f6;
  --danger: #e07070;
  --danger-soft: rgba(224,112,112,.12);
  --ok-soft: rgba(61,143,104,.14);
  --warn-soft: rgba(196,160,58,.13);
  --info: #6a9bb8;
  --info-soft: rgba(106,155,184,.12);
  --hl: rgba(255,255,255,.035);
  --hl-2: rgba(255,255,255,.06);
  --ring: 0 0 0 3px rgba(141,61,67,.34);
  --r-xs: 6px;
  --r-sm: 8px;
  --r-md: 10px;
  --r-lg: 14px;
  --r-xl: 20px;
  --elev-1: inset 0 1px 0 var(--hl);
  --elev-2: 0 1px 0 rgba(255,255,255,.04) inset, 0 12px 32px -12px rgba(0,0,0,.55);
  --elev-3: 0 1px 0 rgba(255,255,255,.05) inset, 0 28px 70px -20px rgba(0,0,0,.7);
  --ease: cubic-bezier(.2,.7,.2,1);
  --ease-out: cubic-bezier(.16,1,.3,1);
  --t-fast: 140ms;
  --t-med: 220ms;
  --btn-sheen: inset 0 1px 0 rgba(255,255,255,.1);
  --btn-press: none;
  --glass: rgba(255,255,255,.08);
  --glass-2: rgba(255,255,255,.13);
  --glass-line: rgba(255,255,255,.16);
  --glass-blur: saturate(1.15) blur(16px);
  --q-fill: rgba(132,156,178,.32);
  --q-line: rgba(186,208,226,.42);
  --q-ink: #f2f6fa;
  --c-fill: rgba(42,158,136,.34);
  --c-line: rgba(118,204,180,.46);
  --c-ink: #e8faf4;

  --bs-radius: 15px;
  --bs-height: 32px;
  --bs-weight: 500;
  --bs-action-bg: #2a1618;
  --bs-action-fg: #fff6f6;
  --bs-action-bd: #961320;
  --bs-action-ico: #fff6f6;
  --bs-action-bg-h: transparent;
  --bs-action-fg-h: #fff6f6;
  --bs-action-bd-h: #b83340;
  --bs-primary-bg: #8d3d43;
  --bs-primary-fg: #ffffff;
  --bs-primary-bd: #a34d54;
  --bs-primary-ico: #ffffff;
  --bs-primary-bg-h: #753338;
  --bs-primary-fg-h: #ffffff;
  --bs-primary-bd-h: #753338;
  --bs-ghost-bg: transparent;
  --bs-ghost-fg: #ededed;
  --bs-ghost-bd: #2a2a2a;
  --bs-ghost-ico: #3d8f68;
  --bs-ghost-bg-h: #1c1c1c;
  --bs-ghost-fg-h: #ededed;
  --bs-ghost-bd-h: #3a3a3a;
  --bs-danger-bg: transparent;
  --bs-danger-fg: #df7777;
  --bs-danger-bd: #671818;
  --bs-danger-ico: #a94242;
  --bs-danger-bg-h: rgba(196,43,53,.2);
  --bs-danger-fg-h: #ffd0d3;
  --bs-danger-bd-h: #c42b35;
  --bs-stop-bg: #3a1818;
  --bs-stop-fg: #fff5f5;
  --bs-stop-bd: #5a2a2a;
  --bs-stop-ico: #fff5f5;
  --bs-stop-bg-h: #4a2020;
  --bs-stop-fg-h: #fff5f5;
  --bs-stop-bd-h: #6b3838;
  --bs-give-bg: #5c151c;
  --bs-give-fg: #fff6f6;
  --bs-give-bd: #8f2834;
  --bs-give-ico: #fff6f6;
  --bs-give-bg-h: #741c26;
  --bs-give-fg-h: #fff6f6;
  --bs-give-bd-h: #b83340;
}

/* Light: white room (same white as cards). Cards lift with hairline + soft shade. */
html[data-theme="light"] {
  --bg: #ffffff;
  --bg-2: #f7f7f7;
  --elev: #ffffff;
  --card: #ffffff;
  --paper: #ffffff;
  --paper-2: #f7f7f7;
  --head: #fafafa;
  --input: #ffffff;
  --line: #ebebeb;
  --line-2: #e0e0e0;
  --text: #15181d;
  --muted: #4d5562;
  --faint: #5f6774;
  --red: #8b3038;
  --red-2: #72262d;
  --red-border: #8b3038;
  --red-glow: rgba(139,48,56,.12);
  --gold: #8a6a22;
  --gold-2: #9a7728;
  --gold-soft: rgba(179,32,45,.07);
  --ok: #17784b;
  --ok-bg: rgba(23,120,75,.1);
  --warn: #8a6106;
  --note: #9a4d14;
  --shadow: 0 0 0 1px rgba(0,0,0,.04), 0 8px 24px -16px rgba(0,0,0,.1);
  --side: #ffffff;
  --side-text: #15181d;
  --side-muted: #545c69;
  --side-line: #f0f0f0;
  --side-hover: #f7f7f8;
  --side-active: #f1f1f3;
  --lift: 0 1px 2px rgba(16,24,40,.06), 0 1px 1px rgba(16,24,40,.03);
  --lift-h: 0 3px 8px -2px rgba(16,24,40,.10), 0 1px 2px rgba(16,24,40,.06);
  --lift-press: 0 0 0 rgba(16,24,40,0), inset 0 1px 2px rgba(16,24,40,.06);
  --side-nav: #5c6370;
  --fam: #f7f7f7;
  --thumb: #f3f3f3;
  --badge-bg: #f3f3f3;
  --focus: #8b3038;
  --search-icon: %234d5562;

  --ink: #15181d;
  --ink-on: #f4f5f7;
  --accent-hover: #9c3840;
  --accent-soft: rgba(139,48,56,.1);
  --accent-line: rgba(139,48,56,.32);
  --danger: #c0262d;
  --danger-soft: rgba(192,38,45,.09);
  --ok-soft: rgba(23,120,75,.1);
  --warn-soft: rgba(138,97,6,.1);
  --info: #2a6288;
  --info-soft: rgba(42,98,136,.1);
  --hl: rgba(255,255,255,.55);
  --hl-2: rgba(255,255,255,.75);
  --ring: 0 0 0 3px rgba(139,48,56,.26);
  --glass: rgba(255,255,255,.72);
  --glass-2: rgba(255,255,255,.9);
  --glass-line: rgba(20,26,36,.12);
  --q-fill: rgba(48,72,96,.16);
  --q-line: rgba(48,72,96,.3);
  --q-ink: #1e2c3c;
  --c-fill: rgba(16,108,86,.16);
  --c-line: rgba(16,108,86,.3);
  --c-ink: #134034;
  --elev-1: 0 1px 0 rgba(255,255,255,.6) inset, 0 1px 2px rgba(20,26,36,.05);
  --elev-2: 0 1px 0 rgba(255,255,255,.7) inset, 0 1px 2px rgba(20,26,36,.05), 0 12px 30px -14px rgba(20,26,36,.22);
  --elev-3: 0 1px 0 rgba(255,255,255,.7) inset, 0 30px 70px -24px rgba(20,26,36,.32);

  --bs-action-bg: #f7f7f8;
  --bs-action-fg: #303030;
  --bs-action-bd: #ededed;
  --bs-action-ico: #bb1026;
  --bs-action-bg-h: #ebebeb;
  --bs-action-fg-h: #000000;
  --bs-action-bd-h: #d6d6d6;
  --bs-primary-bg: #8b3038;
  --bs-primary-fg: #ffffff;
  --bs-primary-bd: #8b3038;
  --bs-primary-ico: #ffffff;
  --bs-primary-bg-h: #72262d;
  --bs-primary-fg-h: #ffffff;
  --bs-primary-bd-h: #72262d;
  --bs-ghost-bg: transparent;
  --bs-ghost-fg: #15181d;
  --bs-ghost-bd: #d2d6dc;
  --bs-ghost-ico: #17784b;
  --bs-ghost-bg-h: #f1f3f5;
  --bs-ghost-fg-h: #15181d;
  --bs-ghost-bd-h: #bfc5cd;
  --bs-danger-bg: transparent;
  --bs-danger-fg: #b4232c;
  --bs-danger-bd: #e0b4b6;
  --bs-danger-ico: #b4232c;
  --bs-danger-bg-h: #f8eaea;
  --bs-danger-fg-h: #8f1b23;
  --bs-danger-bd-h: #b4232c;
  --bs-stop-bg: #6a2a2a;
  --bs-stop-fg: #fff8f8;
  --bs-stop-bd: #8a4040;
  --bs-stop-ico: #fff8f8;
  --bs-stop-bg-h: #7a3434;
  --bs-stop-fg-h: #fff8f8;
  --bs-stop-bd-h: #9a5050;
  --bs-give-bg: #8a2030;
  --bs-give-fg: #fff8f8;
  --bs-give-bd: #b03040;
  --bs-give-ico: #fff8f8;
  --bs-give-bg-h: #9c2838;
  --bs-give-fg-h: #fff8f8;
  --bs-give-bd-h: #c43848;
}

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
  font-family: var(--font);
  font-feature-settings: "ss01" 0, "cv11" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
::selection { background: var(--accent-soft); color: var(--text); }
b, strong { font-weight: 650; }
.money, .td-amt, .stat-card b, .cari-hero b, .cari-chip strong, .pill b, .plan-price { font-variant-numeric: tabular-nums; }

/* ───────── focus ───────── */
:where(button, a, [role="button"], summary, .nav-btn, .chip, .cln-tab, .tls-btn, .cln-btn, .fw-seg-btn, .log-seg-btn, .fw-sec-btn, .os-tile, .brand-card, .rail-act):focus { outline: none; }
:where(button, a, [role="button"], summary, .nav-btn, .chip, .cln-tab, .tls-btn, .cln-btn, .fw-seg-btn, .log-seg-btn, .fw-sec-btn, .os-tile, .brand-card, .rail-act):focus-visible {
  outline: none; box-shadow: var(--ring); position: relative; z-index: 1;
}
:where(.input, .select, .textarea, .tls-combo):focus-visible { box-shadow: var(--ring); }

/* ───────── buttons: original look ───────── */
html[data-theme] .job-fab,
html[data-theme] .chip,
html[data-theme] .fw-sec-btn,
html[data-theme] .os-tile,
html[data-theme] .rail-act {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
html[data-theme] .btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  border: 0; border-radius: 6px; padding: 9px 13px;
  font-weight: 600; font-size: 13px;
  white-space: nowrap; user-select: none; cursor: pointer;
  transition: background .12s, opacity .12s, border-color .12s;
}
html[data-theme] .btn:disabled { opacity: .55; cursor: not-allowed; }
html[data-theme] .btn .ico { width: 16px; height: 16px; flex: 0 0 auto; }
html[data-theme] .btn-sm { padding: 6px 9px; font-size: 12px; border-radius: 6px; }
html[data-theme] .btn-sm .ico { width: 15px; height: 15px; }
html[data-theme] .btn-full { width: 100%; }

/* primary — Kaydet / Ekle */
html[data-theme] .btn-primary {
  color: var(--bs-primary-fg); background: var(--bs-primary-bg); border: 1px solid var(--bs-primary-bd);
  border-radius: var(--bs-radius); font-weight: var(--bs-weight);
}
html[data-theme] .btn-primary .ico { color: var(--bs-primary-ico); }
html[data-theme] .btn-primary:hover:not(:disabled) {
  background: var(--bs-primary-bg-h); border-color: var(--bs-primary-bd-h); color: var(--bs-primary-fg-h);
}

/* action — Sorgula / Cihaza bağlan / Uygula / Listele / İndir */
html[data-theme] .imei-go.btn-ghost,
html[data-theme] .btn-action,
html[data-theme] .btn-connect,
html[data-theme] .tls-btn.tls-accent {
  color: var(--bs-action-fg);
  background: var(--bs-action-bg);
  border: 1px solid var(--bs-action-bd);
  box-shadow: none;
  font-weight: var(--bs-weight);
  border-radius: var(--bs-radius);
}
html[data-theme] .btn-action,
html[data-theme] .btn-connect {
  min-height: var(--bs-height);
  padding: 7px 14px;
  letter-spacing: .01em;
}
html[data-theme] .imei-go.btn-ghost .ico,
html[data-theme] .btn-action .ico,
html[data-theme] .btn-connect .ico,
html[data-theme] .tls-btn.tls-accent .ico {
  color: var(--bs-action-ico);
}
html[data-theme] .imei-go.btn-ghost:hover:not(:disabled),
html[data-theme] .btn-action:hover:not(:disabled),
html[data-theme] .btn-connect:hover:not(:disabled),
html[data-theme] .tls-btn.tls-accent:hover:not(:disabled) {
  background: var(--bs-action-bg-h);
  border-color: var(--bs-action-bd-h);
  color: var(--bs-action-fg-h);
}

/* give */
html[data-theme] .btn-give {
  color: var(--bs-give-fg);
  background: var(--bs-give-bg);
  border: 1px solid var(--bs-give-bd);
  box-shadow: none;
  min-height: var(--bs-height); padding: 7px 14px;
  font-weight: var(--bs-weight);
  letter-spacing: .01em;
  border-radius: var(--bs-radius);
}
html[data-theme] .btn-give .ico { color: var(--bs-give-ico); }
html[data-theme] .btn-give:hover:not(:disabled) {
  background: var(--bs-give-bg-h);
  border-color: var(--bs-give-bd-h);
  color: var(--bs-give-fg-h);
}

/* ghost — Ödeme al / Vazgeç */
html[data-theme] .btn-ghost {
  color: var(--bs-ghost-fg); background: var(--bs-ghost-bg); border: 1px solid var(--bs-ghost-bd);
  border-radius: var(--bs-radius); font-weight: var(--bs-weight);
}
html[data-theme] .btn-ghost:hover:not(:disabled) {
  background: var(--bs-ghost-bg-h); border-color: var(--bs-ghost-bd-h); color: var(--bs-ghost-fg-h);
}
html[data-theme] .btn-ghost .ico { color: currentColor; }
html[data-theme] .btn-ghost.btn-pay .ico { color: var(--bs-ghost-ico); }

/* success: original */
html[data-theme] .btn-ok {
  color: #fff; background: #3d5c4c; border: 1px solid #4d735f;
}
html[data-theme] .btn-ok:hover:not(:disabled) { background: #334e41; border-color: #334e41; }
html[data-theme="light"] .btn-ok { background: #3a6b52; border-color: #3a6b52; }
html[data-theme="light"] .btn-ok:hover:not(:disabled) { background: #2f5744; border-color: #2f5744; }

/* stop */
html[data-theme] .btn-stop {
  color: var(--bs-stop-fg);
  background: var(--bs-stop-bg);
  border: 1px solid var(--bs-stop-bd);
  box-shadow: none;
  min-height: var(--bs-height); padding: 7px 14px;
  font-weight: var(--bs-weight);
  letter-spacing: .01em;
  border-radius: var(--bs-radius);
}
html[data-theme] .btn-stop .ico { color: var(--bs-stop-ico); }
html[data-theme] .btn-stop:hover:not(:disabled) {
  background: var(--bs-stop-bg-h);
  border-color: var(--bs-stop-bd-h);
  color: var(--bs-stop-fg-h);
}

/* danger */
html[data-theme] .btn-danger {
  background: var(--bs-danger-bg); color: var(--bs-danger-fg); border: 1px solid var(--bs-danger-bd);
  border-radius: var(--bs-radius);
}
html[data-theme] .btn-danger .ico { color: var(--bs-danger-ico); }
html[data-theme] .btn-danger:hover:not(:disabled) {
  background: var(--bs-danger-bg-h); border-color: var(--bs-danger-bd-h); color: var(--bs-danger-fg-h);
}

/* icon-only buttons: original */
html[data-theme] .icon-btn { min-width: 32px; min-height: 28px; padding-left: 8px; padding-right: 8px; }

/* ───────── tool buttons (adb/fastboot/extract/firmware): original shape, bronze fixed to wine ───────── */
html[data-theme] .tls-btn {
  height: 30px;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 12px;
  border: 1px solid #3a3a3a;
  background: #2a2a2a;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
}
html[data-theme] .tls-btn .ico { flex: 0 0 auto; color: #ececec; }
html[data-theme] .tls-btn span { color: inherit; font-size: inherit; }
html[data-theme] .tls-btn:hover:not(:disabled) { background: #353535; }
html[data-theme] .tls-btn:disabled { opacity: .38; cursor: not-allowed; }
html[data-theme] .tls-btn.tls-danger { background: #3a1818; border-color: #5a2a2a; }
html[data-theme] .tls-btn.tls-danger .ico { color: currentColor; }
html[data-theme] .tls-btn.tls-danger:hover:not(:disabled) { background: #4a2020; }
html[data-theme="light"] .tls-btn { background: #fff; border-color: var(--line-2); color: #12141a; }
html[data-theme="light"] .tls-btn .ico { color: #3a404c; }
html[data-theme="light"] .tls-btn:hover:not(:disabled) { background: #f4f5f7; }
html[data-theme="light"] .tls-btn.tls-danger { background: #fdecec; border-color: #f0c4c4; color: #9a2430; }
html[data-theme="light"] .tls-btn.tls-danger:hover:not(:disabled) { background: #f8dede; }

/* light: neutral buttons sit slightly above the white page */
html[data-theme="light"] :is(.btn-ghost, .btn-action, .btn-connect, .tls-btn:not(.tls-danger)) {
  box-shadow: var(--lift);
  transition: background .12s, border-color .12s, box-shadow .14s, opacity .12s;
}
html[data-theme="light"] :is(.btn-ghost, .btn-action, .btn-connect, .tls-btn:not(.tls-danger)):hover:not(:disabled) {
  box-shadow: var(--lift-h);
}
html[data-theme="light"] :is(.btn-ghost, .btn-action, .btn-connect, .tls-btn:not(.tls-danger)):active:not(:disabled) {
  box-shadow: var(--lift-press) !important;
}
html[data-theme="light"] :is(.btn-ghost, .btn-action, .btn-connect, .tls-btn):disabled { box-shadow: none !important; }

/* cleaner: original semantic pills */
html[data-theme] .cln-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  min-height: 34px; padding: 8px 16px; border: 0; border-radius: 999px;
  color: #fff; font: 500 12px/1 "Segoe UI", sans-serif; cursor: pointer;
  transition: transform .08s ease-out, opacity .08s ease-out, filter .08s ease-out;
}
html[data-theme] .cln-btn .ico { flex: 0 0 auto; }
html[data-theme] .cln-btn:hover:not(:disabled) { transform: none; opacity: 1; }
html[data-theme] .cln-btn:active:not(:disabled) { transform: none; }
html[data-theme] .cln-btn:disabled { opacity: .38; cursor: not-allowed; transform: none; }
html[data-theme] .cln-btn.c-info { background: #1a5d78; min-width: 105px; }
html[data-theme] .cln-btn.c-scan { background: #60781a; min-width: 115px; }
html[data-theme] .cln-btn.c-anal { background: #9c5027; min-width: 105px; }
html[data-theme] .cln-btn.c-del { background: #C62828; min-width: 75px; }
html[data-theme] .cln-btn.c-off { background: #EF6C00; min-width: 110px; }
html[data-theme] .cln-btn.c-on { background: #388E3C; min-width: 110px; }
html[data-theme] .cln-btn.c-sys { background: #5C4320; min-width: 180px; }
html[data-theme] .cln-btn.c-sys-stop { background: #5A2A2A; min-width: 110px; }
html[data-theme] .cln-btn.c-reco {
  background: #3d4a3a;
  min-width: 0;
  min-height: 28px;
  padding: 5px 10px;
  font-size: 11px;
  gap: 5px;
}
html[data-theme] .cln-btn.c-reco:hover:not(:disabled) { background: #4d5e48; }
html[data-theme] .cln-btn.c-reco:disabled {
  opacity: 1;
  background: #1c1c1c;
  color: #5a5a5a;
}
html[data-theme="light"] .cln-btn.c-reco { background: #5a6a54; }
html[data-theme="light"] .cln-btn.c-reco:hover:not(:disabled) { background: #6a7c64; }
html[data-theme="light"] .cln-btn.c-reco:disabled {
  background: #e4e6ea;
  color: #9aa0aa;
}
html[data-theme] .cln-btn.c-del:hover:not(:disabled) { background: #E53935; }
html[data-theme] .cln-btn.c-off:hover:not(:disabled) { background: #FB8C00; }
html[data-theme] .cln-btn.c-on:hover:not(:disabled) { background: #4CAF50; }
html[data-theme] .cln-sep { width: 1px; height: 22px; background: var(--line); margin: 0 6px; opacity: .4; }

/* tabs: underline tabs, accent indicator */
html[data-theme] .cln-tabs { gap: 4px; border-bottom: 1px solid var(--line); }
html[data-theme] .cln-tab {
  position: relative; min-height: 42px; padding: 0 12px; margin-bottom: -1px;
  border: 0; border-bottom: 2px solid transparent; border-radius: var(--r-sm) var(--r-sm) 0 0;
  background: transparent; color: var(--muted); font: 600 13.5px/1 var(--font);
  display: inline-flex; align-items: center; gap: 8px;
  transition: color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);
}
html[data-theme] .cln-tab:hover { color: var(--text); background: var(--hl); }
html[data-theme] .cln-tab.on { color: var(--text); border-bottom-color: var(--accent); background: transparent; }
html[data-theme] .cln-tab .ico { color: currentColor; }

/* segmented controls */
html[data-theme] .fw-seg, html[data-theme] .log-seg {
  display: inline-flex; gap: 2px; padding: 3px; border-radius: var(--r-md);
  background: var(--input); border: 1px solid var(--line);
}
html[data-theme] .fw-seg-btn, html[data-theme] .log-seg-btn {
  min-height: 32px; padding: 0 12px; border: 0; border-radius: 7px;
  background: transparent; color: var(--muted); font: 600 13px/1 var(--font);
}
html[data-theme] .fw-seg-btn:hover, html[data-theme] .log-seg-btn:hover { color: var(--text); }
html[data-theme] .fw-seg-btn.on, html[data-theme] .log-seg-btn.on {
  background: var(--surface-2); color: var(--text); border: 0; box-shadow: 0 0 0 1px var(--line-2), 0 1px 2px rgba(0,0,0,.18);
}
html[data-theme] .fw-sec-btn {
  min-height: 34px; height: auto; border-radius: var(--r-sm); background: var(--surface-2); border: 1px solid var(--line-2); color: var(--text);
}

/* chips / filter pills */
html[data-theme] .chip {
  min-height: 34px; padding: 0 13px; border-radius: 999px;
  border: 1px solid var(--line-2); background: transparent; color: var(--muted);
  font: 550 13px/1 var(--font);
  transition: color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);
}
html[data-theme] .chip:hover { color: var(--text); border-color: color-mix(in srgb, var(--text) 26%, var(--line-2)); }
html[data-theme] .chip.on {
  color: var(--text); background: var(--accent-soft); border-color: var(--accent-line); box-shadow: none;
}
html[data-theme] .os-tile.on { border-color: var(--accent-line); background: var(--accent-soft); }

/* theme switch */
html[data-theme] .theme-sw {
  display: flex; padding: 3px; gap: 2px; border-radius: var(--r-md);
  border: 1px solid var(--line); background: var(--input); overflow: visible;
}
html[data-theme] .theme-sw button {
  flex: 1; min-height: 32px; padding: 0 10px; border: 0; border-radius: 7px;
  background: transparent; color: var(--muted); font: 600 13px/1 var(--font); box-shadow: none;
}
html[data-theme] .theme-sw button:hover { color: var(--text); }
html[data-theme] .theme-sw button.on { background: var(--surface-2); color: var(--text); box-shadow: 0 0 0 1px var(--line-2), 0 1px 2px rgba(0,0,0,.2); }

/* ───────── inputs ───────── */
html[data-theme] .input, html[data-theme] .select, html[data-theme] .textarea {
  min-height: 42px; padding: 0 12px; border-radius: var(--r-md);
  background: var(--input); border: 1px solid var(--line-2); color: var(--text);
  font: 500 14.5px/1.3 var(--font);
  transition: border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);
}
html[data-theme] .textarea { padding: 10px 12px; min-height: 96px; line-height: 1.5; }
html[data-theme] .input::placeholder, html[data-theme] .textarea::placeholder { color: var(--faint); }
html[data-theme] .input:hover:not(:focus):not(:disabled), html[data-theme] .select:hover:not(:focus):not(:disabled), html[data-theme] .textarea:hover:not(:focus):not(:disabled) {
  border-color: color-mix(in srgb, var(--text) 20%, var(--line-2));
}
html[data-theme] .input:focus, html[data-theme] .select:focus, html[data-theme] .textarea:focus {
  border-color: var(--accent); box-shadow: var(--ring); outline: none;
}
html[data-theme] .input:disabled, html[data-theme] .select:disabled { opacity: .6; cursor: not-allowed; }
html[data-theme] .search {
  padding-left: 42px;
  background: var(--input) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%239aa1ad' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><circle cx='8' cy='8' r='6'/><path d='m14 14 3 3'/></svg>") no-repeat 14px 50%;
}
html[data-theme="light"] .search {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%234d5562' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><circle cx='8' cy='8' r='6'/><path d='m14 14 3 3'/></svg>");
}
html[data-theme] .field { gap: 7px; }
html[data-theme] .field label { font-size: 13px; font-weight: 600; color: var(--text); letter-spacing: 0; }
html[data-theme] select option { background: var(--card); color: var(--text); }
html[data-theme] .tls-combo { min-height: 40px; border-radius: var(--r-md); background-color: var(--input); border-color: var(--line-2); color: var(--text); }
html[data-theme] .tls-combo:focus { border-color: var(--accent); }

/* custom dropdown (rs-dd) */
html[data-theme] .bulk-row .rs-dd { width: auto; flex: 1 1 170px; max-width: 230px; }
html[data-theme] .ledger-tools .rs-dd { width: auto; flex: 0 1 280px; min-width: 200px; }
html[data-theme] .rs-dd-select .rs-dd-btn {
  min-height: 42px; padding: 0 36px 0 12px; line-height: 40px; border-radius: var(--r-md);
  background-color: var(--input); border: 1px solid var(--line-2); color: var(--text); font: 500 14.5px/40px var(--font);
  transition: border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);
}
html[data-theme] .rs-dd-combo .rs-dd-btn {
  height: 40px; min-height: 40px; line-height: 38px; padding: 0 32px 0 12px; border-radius: var(--r-md);
  background-color: var(--input); border: 1px solid var(--line-2); color: var(--text); font: 500 13.5px/38px var(--font);
}
html[data-theme] .rs-dd-btn:hover { border-color: color-mix(in srgb, var(--text) 20%, var(--line-2)); }
html[data-theme] .rs-dd.open .rs-dd-btn, html[data-theme] .rs-dd-btn:focus-visible { border-color: var(--accent); box-shadow: var(--ring); }
html[data-theme] .rs-dd-menu {
  background: var(--elev); border: 1px solid var(--line-2); border-radius: var(--r-md);
  box-shadow: var(--elev-3); padding: 4px;
}
html[data-theme] .rs-dd-item { border-radius: 7px; min-height: 36px; padding: 9px 10px; color: var(--text); font: 500 14px/1.25 var(--font); }
html[data-theme] .rs-dd-item:hover, html[data-theme] .rs-dd-item.on { background: var(--hl-2); }
html[data-theme="light"] .rs-dd-item:hover, html[data-theme="light"] .rs-dd-item.on { background: rgba(20,26,36,.06); }
html[data-theme] .rs-dd-item.on { font-weight: 620; }

/* ───────── shell ───────── */
.shell { grid-template-columns: 252px minmax(0, 1fr); }
html[data-theme] .side {
  height: 100vh; height: 100dvh;
  background: var(--side); border-right: 1px solid var(--side-line); box-shadow: none;
  padding: 18px 12px 14px; gap: 14px; overflow-y: auto; overscroll-behavior: contain;
  scrollbar-width: thin; scrollbar-color: var(--line-2) transparent;
}
html[data-theme="light"] .side {
  z-index: 2;
  border-right-color: #ebebed;
  box-shadow: 4px 0 14px -8px rgba(16,24,40,.10), 16px 0 36px -26px rgba(16,24,40,.16);
}
html[data-theme] .side-brand { padding: 6px 8px 12px; border-radius: var(--r-md); gap: 11px; flex-shrink: 0; }
html[data-theme] .side-brand:hover { background: var(--side-hover); }
html[data-theme] .side-brand img { width: 30px; height: 30px; }
html[data-theme] .side-brand b { font-size: 15px; font-weight: 700; letter-spacing: -.02em; }
html[data-theme] .side-brand span { font-size: 12px; font-weight: 500; color: var(--side-muted); margin-top: 1px; }
html[data-theme] .nav { gap: 2px; flex-shrink: 0; }
html[data-theme] .nav-btn {
  position: relative; min-height: 40px; padding: 0 12px; gap: 12px;
  border-radius: var(--r-md); color: var(--side-nav);
  font: 550 14px/1.2 var(--font); letter-spacing: -.005em;
  box-shadow: none; background: transparent;
  transition: background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
}
html[data-theme] .nav-btn .ni { width: 20px; height: 20px; flex: 0 0 20px; color: var(--side-muted); transition: color var(--t-fast) var(--ease); }
html[data-theme] .nav-btn .ni .ico { width: 18px; height: 18px; }
html[data-theme] .nav-btn:hover { background: var(--side-hover); color: var(--side-text); }
html[data-theme] .nav-btn:hover .ni { color: var(--side-text); }
html[data-theme] .nav-btn.active {
  background: var(--side-active); color: var(--side-text);
  box-shadow: none;
}
html[data-theme] .nav-btn.active .ni { color: #f0b4b6; }
html[data-theme] .nav-btn.active::before {
  content: ""; position: absolute; left: -12px; top: 10px; bottom: 10px; width: 3px;
  border-radius: 0 3px 3px 0; background: var(--accent);
}
html[data-theme="light"] .nav-btn {
  border-radius: 12px;
  color: var(--side-nav);
  font-weight: 500;
}
html[data-theme="light"] .nav-btn .ni { color: #8a919c; }
html[data-theme="light"] .nav-btn:hover {
  background: var(--side-hover);
  color: #15181d;
}
html[data-theme="light"] .nav-btn:hover .ni { color: #15181d; }
html[data-theme="light"] .nav-btn.active {
  background: var(--side-active);
  color: #0f1115;
  font-weight: 600;
  box-shadow: inset 0 0 0 1px rgba(16,24,40,.05), 0 1px 2px rgba(16,24,40,.05);
}
html[data-theme="light"] .nav-btn.active .ni { color: #0f1115; }
html[data-theme="light"] .nav-btn.active:hover {
  background: #ececef;
  color: #0f1115;
}
html[data-theme="light"] .nav-btn.active:hover .ni { color: #0f1115; }
html[data-theme="light"] .nav-btn.active::before { display: none; }
html[data-theme="light"] .nav-btn .ni img.nav-svg {
  filter: grayscale(1) saturate(0) opacity(.48);
}
html[data-theme="light"] .nav-btn:hover .ni img.nav-svg {
  filter: grayscale(1) saturate(0) opacity(.72);
}
html[data-theme="light"] .nav-btn.active .ni img.nav-svg,
html[data-theme="light"] .nav-btn.active:hover .ni img.nav-svg {
  filter: none;
}
html[data-theme="dark"] .nav-btn .ni img.nav-svg {
  filter: grayscale(1) brightness(0) invert(1);
  opacity: .5;
}
html[data-theme="dark"] .nav-btn:hover .ni img.nav-svg {
  filter: grayscale(1) brightness(0) invert(1);
  opacity: .82;
}
html[data-theme="dark"] .nav-btn.active .ni img.nav-svg,
html[data-theme="dark"] .nav-btn.active:hover .ni img.nav-svg {
  filter: none;
  opacity: 1;
}
html[data-theme] .side-foot { padding: 14px 6px 4px; border-top: 1px solid var(--side-line); display: grid; gap: 10px; flex-shrink: 0; }
html[data-theme] .side-foot .theme-sw { margin: 0; }
html[data-theme] .who { font-size: 14px; font-weight: 650; color: var(--side-text); letter-spacing: -.01em; line-height: 1.3; }
html[data-theme] .who small { font-size: 12.5px; font-weight: 500; color: var(--side-muted); margin-top: 2px; }
html[data-theme] .side-mem { font-size: 12.5px; color: var(--side-muted); }
html[data-theme] .logout-btn { margin-top: 0; justify-content: center; color: var(--side-nav); border-color: var(--side-line); }
html[data-theme] .logout-btn:hover:not(:disabled) { color: var(--danger); border-color: color-mix(in srgb, var(--danger) 40%, transparent); background: var(--danger-soft); }

html[data-theme] .main { padding-top: 22px; }
html[data-theme] .topbar { gap: 12px; margin-bottom: 20px; min-height: 44px; }
html[data-theme] .topbar .page-heading { font: 680 22px/1.2 var(--font); letter-spacing: -.025em; gap: 12px; }
.page-ico {
  width: 36px; height: 36px; flex: 0 0 36px; display: grid; place-items: center;
  border-radius: var(--r-md); background: var(--surface-2); border: 1px solid var(--line); color: var(--accent);
  box-shadow: var(--elev-1);
}
.page-ico .ico { width: 18px; height: 18px; }
html[data-theme] .topbar .page-sub { font-size: .66em; font-weight: 500; color: var(--faint); letter-spacing: 0; }
html[data-theme] .top-actions { display: flex; flex-wrap: wrap; gap: 8px; }
html[data-theme] .topbar .grow:empty { max-width: none; }
/* .btn { display:inline-flex } specificity'sini ez — PC'de sidebar varken Menü gizli */
html[data-theme] .menu-btn { display: none; min-width: 40px; min-height: 40px; padding: 0 12px; }
html[data-theme] .menu-btn .ico { width: 20px; height: 20px; }

@media (max-width: 1180px) {
  .shell { grid-template-columns: minmax(0, 1fr); }
  html[data-theme] .menu-btn { display: inline-flex; }
  html[data-theme] .side {
    top: 0; bottom: 0; height: 100dvh; max-height: 100dvh;
    width: min(300px, 86vw); z-index: 50; box-shadow: var(--elev-3);
    padding-top: max(16px, env(safe-area-inset-top, 0px));
    padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px));
    -webkit-overflow-scrolling: touch;
    transition: transform .26s var(--ease-out);
  }
  html[data-theme] .nav-btn { min-height: 44px; }
  html[data-theme] .side-mask {
    display: block; position: fixed; inset: 0; z-index: 45;
    background: rgba(8,10,14,.5); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
    opacity: 0; pointer-events: none; transition: opacity .22s var(--ease);
  }
  html[data-theme] .side-mask.on { opacity: 1; pointer-events: auto; }
  body.side-on { overflow: hidden; }
  html[data-theme] .main { padding-top: 0; padding-bottom: calc(32px + env(safe-area-inset-bottom, 0px)); }
  html[data-theme] .topbar {
    position: sticky; top: 0; z-index: 20;
    margin: 0 calc(-1 * max(14px, env(safe-area-inset-right, 0px))) 16px calc(-1 * max(14px, env(safe-area-inset-left, 0px)));
    padding: calc(10px + env(safe-area-inset-top, 0px)) max(14px, env(safe-area-inset-right, 0px)) 10px max(14px, env(safe-area-inset-left, 0px));
    background: color-mix(in srgb, var(--bg) 86%, transparent);
    -webkit-backdrop-filter: saturate(1.3) blur(12px); backdrop-filter: saturate(1.3) blur(12px);
    border-bottom: 1px solid var(--line);
  }
  html[data-theme] .topbar .page-heading { font-size: 18px; }
  .page-ico { width: 32px; height: 32px; flex-basis: 32px; }
}
@media (max-width: 760px) {
  html[data-theme] .menu-btn { padding: 0; width: 40px; justify-content: center; }
  .menu-btn-label { display: none; }
  html[data-theme] .topbar { flex-wrap: wrap; row-gap: 10px; }
  html[data-theme] .topbar .grow { order: 10; flex: 1 1 100%; max-width: none; }
  html[data-theme] .topbar .page-heading { flex: 1 1 0; }
  html[data-theme] .topbar .page-ico { display: none; }
  html[data-theme] .topbar:has(.top-actions) { position: relative; }
  html[data-theme] .top-actions { order: 11; width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  html[data-theme] .top-actions .btn { width: 100%; padding: 0 8px; font-size: 13.5px; }
  html[data-theme] .top-actions .btn-primary { grid-column: 1 / -1; order: -1; }
  html[data-theme] .topbar > .btn-primary:not(.menu-btn), html[data-theme] .topbar > .btn-danger { order: 11; flex: 1 1 100%; }
}

/* ───────── surfaces ───────── */
html[data-theme] .card {
  background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: var(--shadow);
}
html[data-theme] .stat-card {
  background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 16px; box-shadow: var(--shadow);
}
html[data-theme] .stat-card span { font-size: 13px; font-weight: 500; color: var(--muted); }
html[data-theme] .stat-card b { margin-top: 6px; font-size: 24px; font-weight: 680; letter-spacing: -.025em; line-height: 1.1; }
html[data-theme] .stat-card small { font-size: 12.5px; color: var(--faint); }
html[data-theme] .table-wrap { border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--card); box-shadow: var(--shadow); }
html[data-theme] table { font-size: 14px; }
html[data-theme] th {
  font: 600 12.5px/1.2 var(--font); letter-spacing: 0; text-transform: none;
  color: var(--muted); background: var(--head); padding: 11px 14px; white-space: nowrap;
}
html[data-theme] td { padding: 12px 14px; border-bottom-color: var(--line); }
html[data-theme] tbody tr { transition: background-color var(--t-fast) var(--ease); }
html[data-theme] tbody tr:hover { background: var(--hl); }
html[data-theme="light"] tbody tr:hover { background: rgba(22,28,40,.04); }
html[data-theme] .td-sub { font-size: 12.5px; color: var(--faint); }
html[data-theme] td.td-act:not(:has(.td-act-in)) { display: table-cell; white-space: nowrap; text-align: right; }
html[data-theme] td.td-act:not(:has(.td-act-in)) > * { vertical-align: middle; }
html[data-theme] td.td-act:not(:has(.td-act-in)) > * + * { margin-left: 6px; }

html[data-theme] .modal-back {
  background: rgba(8,10,14,.62);
  animation: none;
}
html[data-theme="light"] .modal-back,
html[data-theme="light"] .side-mask,
html[data-theme="light"] .plan-pick-overlay,
html[data-theme="light"] .fb-pick-overlay,
html[data-theme="light"] .lk-slot-overlay {
  background: rgba(17,19,24,.2);
  -webkit-backdrop-filter: blur(8px) saturate(1.15);
  backdrop-filter: blur(8px) saturate(1.15);
}
html[data-theme="light"] .fw-overlay {
  background: rgba(255,255,255,.6);
  -webkit-backdrop-filter: blur(8px) saturate(1.2);
  backdrop-filter: blur(8px) saturate(1.2);
  color: var(--muted);
  font-weight: 550;
}
html[data-theme="light"] .fw-overlay-page { background: rgba(255,255,255,.58); }
html[data-theme="light"] .fw-overlay .fw-spin {
  width: 30px; height: 30px; border-width: 2.5px;
  border-color: #e6e6e9; border-top-color: var(--accent);
}
html[data-theme] .modal {
  background: var(--card); border: 1px solid var(--line-2); border-radius: var(--r-xl);
  padding: 24px; box-shadow: var(--elev-3);
  animation: rs-rise .12s var(--ease-out) both;
}
html[data-theme] .modal h3, html[data-theme] .modal-head h3 { font: 680 19px/1.25 var(--font); letter-spacing: -.02em; }
html[data-theme] .modal-actions { gap: 10px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--line); }
@keyframes rs-fade { from { opacity: 0; } }
@keyframes rs-rise { from { opacity: 0; } }
@media (max-width: 640px) {
  html[data-theme] .modal-back { align-items: flex-end; padding: 0; }
  html[data-theme] .modal {
    width: 100%; max-height: 92dvh; border-radius: var(--r-xl) var(--r-xl) 0 0; border-bottom: 0;
    padding: 20px 16px calc(16px + env(safe-area-inset-bottom, 0px));
    animation-name: rs-sheet;
  }
  html[data-theme] .modal-actions { position: sticky; bottom: calc(-16px - env(safe-area-inset-bottom, 0px)); background: var(--card); margin-inline: -16px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); }
  html[data-theme] .modal-actions .btn { flex: 1; }
  html[data-theme] .form-grid { grid-template-columns: minmax(0, 1fr); }
}
@keyframes rs-sheet { from { opacity: 0; } }

html[data-theme] .toasts { right: 18px; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); gap: 10px; }
html[data-theme] .toast {
  display: flex; align-items: center; gap: 10px; min-width: 240px; max-width: min(380px, calc(100vw - 32px));
  padding: 12px 14px 12px 12px; border-radius: var(--r-md);
  background: var(--elev); border: 1px solid var(--line-2); color: var(--text);
  font: 550 14px/1.4 var(--font); box-shadow: var(--elev-2);
  animation: rs-rise .22s var(--ease-out) both;
}
html[data-theme] .toast::before { content: ""; width: 8px; height: 8px; border-radius: 50%; flex: 0 0 auto; background: var(--ok); box-shadow: 0 0 0 3px var(--ok-soft); }
html[data-theme] .toast.err { color: var(--text); border-color: color-mix(in srgb, var(--danger) 40%, var(--line-2)); }
html[data-theme] .toast.err::before { background: var(--danger); box-shadow: 0 0 0 3px var(--danger-soft); }
@media (max-width: 640px) {
  html[data-theme] .toasts { left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); }
  html[data-theme] .toast { min-width: 0; max-width: none; }
}
html[data-theme] .hover-tip { background: var(--ink); color: var(--ink-on); border: 0; border-radius: var(--r-sm); padding: 6px 9px; font: 600 12.5px/1.3 var(--font); box-shadow: var(--elev-2); }

html[data-theme] .empty { color: var(--muted); }
html[data-theme] .hint { color: var(--muted); }

/* ───────── IMEI ───────── */
html[data-theme] .imei-composer { border-radius: var(--r-md); border-color: var(--line-2); }
html[data-theme] .imei-composer:focus-within { border-color: var(--accent); box-shadow: var(--ring); }

/* ───────── checkboxes ───────── */
input[type="checkbox"], input[type="radio"], progress { accent-color: var(--accent); }
html[data-theme] .pm-radio input, html[data-theme] .fw-download-progress progress { accent-color: var(--accent); }
html[data-theme] .pm-radios {
  display: flex; flex-wrap: wrap; align-items: center; gap: 2px 4px;
}
html[data-theme] .pm-radio {
  position: relative;
  display: inline-flex; align-items: center; justify-content: flex-start; gap: 8px;
  min-height: 36px; margin: 0 16px 4px 0; padding: 4px 0;
  border: 0; border-radius: 0; background: none; box-shadow: none;
  color: var(--muted); font: 500 14px/1.2 var(--font);
  cursor: pointer; user-select: none;
}
html[data-theme] .pm-radio input {
  appearance: none; -webkit-appearance: none;
  position: static; opacity: 1; pointer-events: auto;
  width: 18px; height: 18px; flex: 0 0 18px; margin: 0;
  border: 1.5px solid var(--line-2); border-radius: 50%;
  background: var(--input);
  display: grid; place-content: center;
  cursor: pointer;
  transition: border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);
}
html[data-theme] .pm-radio input::after {
  content: "";
  width: 8px; height: 8px; border-radius: 50%;
  background: transparent;
}
html[data-theme] .pm-radio .ico { flex: 0 0 auto; color: var(--muted); }
html[data-theme] .pm-op-wipe .ico { color: #d60422; }
html[data-theme] .pm-op-clear .ico { color: #c4a03a; }
html[data-theme] .pm-op-backup .ico { color: #31710f; }
html[data-theme] .pm-op-write .ico { color: #31710f; }
html[data-theme] .pm-radio:hover { background: none; border: 0; color: var(--text); }
html[data-theme] .pm-radio:hover input { border-color: color-mix(in srgb, var(--text) 35%, var(--line-2)); }
html[data-theme] .pm-radio:has(input:checked) {
  background: none; border: 0; color: var(--text); font-weight: 600;
}
html[data-theme] .pm-radio input:checked {
  border-color: var(--accent); background: var(--input);
  box-shadow: 0 0 0 3px var(--accent-soft);
}
html[data-theme] .pm-radio input:checked::after { background: var(--accent); }
html[data-theme] .pm-radio input:focus-visible { box-shadow: var(--ring); }
html[data-theme="light"] .pm-radio,
html[data-theme="light"] .pm-radio:hover,
html[data-theme="light"] .pm-radio:has(input:checked) {
  background: none; border: 0;
}
html[data-theme="light"] .pm-radio { color: var(--muted); }
html[data-theme="light"] .pm-radio:hover,
html[data-theme="light"] .pm-radio:has(input:checked) { color: var(--text); }
html[data-theme="light"] .pm-radio input { background: var(--input); border-color: var(--line-2); }
html[data-theme="light"] .pm-op-wipe .ico { color: #b4232c; }
html[data-theme="light"] .pm-op-clear .ico { color: #8a5800; }
html[data-theme="light"] .pm-op-backup .ico,
html[data-theme="light"] .pm-op-write .ico { color: #0d6840; }
html[data-theme] .cln-check i { border: 1.5px solid var(--line-2); background: var(--input); box-shadow: none; border-radius: 5px; transition: background-color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease); }
html[data-theme] .cln-check input:hover + i { border-color: color-mix(in srgb, var(--text) 40%, var(--line-2)); }
html[data-theme] .cln-check input:checked + i { background: var(--accent); border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
html[data-theme] .cln-check input:focus-visible + i { box-shadow: var(--ring); }

/* ───────── radio chips ───────── */
html[data-theme] .root-chip { min-height: 36px; color: var(--muted); font: 500 14px/1.2 var(--font); gap: 10px; }
html[data-theme] .root-chip:hover { color: var(--text); }
html[data-theme] .root-chip:has(input:checked) { color: var(--text); font-weight: 600; }
html[data-theme] .root-chip input { width: 18px; height: 18px; flex-basis: 18px; border: 1.5px solid var(--line-2); background: var(--input); accent-color: var(--accent); transition: border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease); }
html[data-theme] .root-chip:hover input { border-color: color-mix(in srgb, var(--text) 35%, var(--line-2)); }
html[data-theme] .root-chip input:checked { border-color: var(--accent); background: var(--input); box-shadow: 0 0 0 3px var(--accent-soft); }
html[data-theme] .root-chip input:checked::after { background: var(--accent); }
html[data-theme] .root-chip input:focus-visible { box-shadow: var(--ring); }
html[data-theme] .root-page .root-hint { color: var(--muted); font-size: 12.5px; }
html[data-theme] .root-page .root-hint b { color: var(--text); }

/* ───────── plan ───────── */
html[data-theme] .plan-note, html[data-theme] .plan-admin { padding: 18px 20px; }
html[data-theme] .plan-card { border-radius: var(--r-xl); box-shadow: var(--shadow); }
html[data-theme] .plan-card.best { border-color: var(--accent-line); box-shadow: 0 0 0 1px var(--accent-line), var(--shadow); }
html[data-theme] .plan-price { font-weight: 700; letter-spacing: -.035em; }

/* ───────── price list + OS versions ───────── */
html[data-theme] .plist { border-radius: var(--r-lg); box-shadow: var(--shadow); }
html[data-theme] .plist-head { font: 600 12.5px/1.2 var(--font); letter-spacing: 0; text-transform: none; color: var(--muted); padding: 10px 16px; }
html[data-theme] .plist-head-rest {
  display: grid; grid-template-columns: minmax(72px, 96px) minmax(0, 1fr);
  align-items: center; gap: 8px 12px;
}
html[data-theme] .plist-head-prices {
  display: grid; grid-template-columns: repeat(4, 78px); justify-content: end; gap: 6px;
}
html[data-theme] .prow { padding: 12px 16px; }
html[data-theme] .prow:hover { background: color-mix(in srgb, var(--paper) 92%, var(--text) 3%); }
html[data-theme] .prow-id b {
  font-size: 15px; font-weight: 620; letter-spacing: -.015em; line-height: 1.25;
  white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2;
}
html[data-theme] .prow-title { align-items: flex-start; flex-wrap: wrap; row-gap: 4px; }
html[data-theme] .gline,
html[data-theme] .models-table .gline {
  display: grid;
  grid-template-columns: minmax(72px, 96px) minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
  padding: 8px 0;
}
html[data-theme] .gline + .gline { border-top: 1px solid var(--line); }
html[data-theme] .os-inline {
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0;
}
html[data-theme] .os-pills {
  display: flex; flex-direction: column; flex-wrap: nowrap; gap: 4px; align-items: flex-start;
}
/* OS version marks: neutral chip + gradient version tile (one hue per release) */
html[data-theme] {
  --os-1: linear-gradient(160deg, #6f93bd 0%, #3f6391 100%);
  --os-2: linear-gradient(160deg, #8e80c4 0%, #5b4c97 100%);
  --os-3: linear-gradient(160deg, #c99a5e 0%, #93652f 100%);
  --os-4: linear-gradient(160deg, #c47a7a 0%, #8e4646 100%);
  --os-x: linear-gradient(160deg, #8f9399 0%, #5d6167 100%);
  --os-mi: linear-gradient(160deg, #cf8a52 0%, #9a5a28 100%);
  --os-tile-sh: inset 0 1px 0 rgba(255,255,255,.22), inset 0 -1px 0 rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.35);
}
html[data-theme="light"] {
  --os-1: linear-gradient(160deg, #5b8fd0 0%, #2f62a8 100%);
  --os-2: linear-gradient(160deg, #8a70d6 0%, #5638ad 100%);
  --os-3: linear-gradient(160deg, #e0a050 0%, #b06a1c 100%);
  --os-4: linear-gradient(160deg, #df7272 0%, #b03c3c 100%);
  --os-x: linear-gradient(160deg, #a2a7ae 0%, #6c7179 100%);
  --os-mi: linear-gradient(160deg, #ee9050 0%, #c25a1c 100%);
  --os-tile-sh: inset 0 1px 0 rgba(255,255,255,.32), inset 0 -1px 0 rgba(0,0,0,.1), 0 1px 2px rgba(16,24,40,.18);
}
html[data-theme] .osp {
  display: inline-flex; align-items: center; gap: 6px;
  height: 22px; padding: 0 3px 0 8px; border-radius: 7px;
  color: var(--text); background: var(--paper-2); border: 1px solid var(--line);
  box-shadow: none;
}
html[data-theme] .osp-n {
  font: 650 10.5px/1 var(--font); letter-spacing: .07em; text-transform: uppercase;
  color: var(--muted);
}
html[data-theme] .osp-v {
  min-width: 16px; height: 16px; padding: 0 4px; border-radius: 5px;
  display: inline-grid; place-items: center;
  font: 700 10.5px/1 var(--font); letter-spacing: 0; color: #fff;
  font-variant-numeric: tabular-nums;
  background: var(--os-x); box-shadow: var(--os-tile-sh);
  text-shadow: 0 1px 0 rgba(0,0,0,.18);
}
html[data-theme] .osp-hos-1 .osp-v { background: var(--os-1); }
html[data-theme] .osp-hos-2 .osp-v { background: var(--os-2); }
html[data-theme] .osp-hos-3 .osp-v { background: var(--os-3); }
html[data-theme] .osp-hos-4 .osp-v { background: var(--os-4); }
html[data-theme] .osp-miui .osp-v { background: var(--os-mi); }
html[data-theme] .osp-other { padding-right: 8px; }
html[data-theme] .osp-other .osp-n { text-transform: none; letter-spacing: 0; }
html[data-theme="light"] .osp { background: #ffffff; border-color: #e6e6e9; box-shadow: var(--lift); }
html[data-theme="light"] .osp-n { color: #4d5562; }

html[data-theme] .osb {
  background: var(--paper-2); border-color: var(--line);
  box-shadow: none;
}
html[data-theme] .osb-mark,
html[data-theme] .os-ver { background: var(--os-x); box-shadow: var(--os-tile-sh); }
html[data-theme] .osb-mark::after { display: none; }
html[data-theme] .osb-mark b { text-shadow: 0 1px 0 rgba(0,0,0,.18); font-weight: 700; }
html[data-theme] .os-hos-1 .osb-mark, html[data-theme] .os-ver.os-hos-1 { background: var(--os-1); }
html[data-theme] .os-hos-2 .osb-mark, html[data-theme] .os-ver.os-hos-2 { background: var(--os-2); }
html[data-theme] .os-hos-3 .osb-mark, html[data-theme] .os-ver.os-hos-3 { background: var(--os-3); }
html[data-theme] .os-hos-4 .osb-mark, html[data-theme] .os-ver.os-hos-4 { background: var(--os-4); }
html[data-theme] .os-miui .osb-mark, html[data-theme] .os-ver.os-miui { background: var(--os-mi); }
html[data-theme="light"] .osb { background: #ffffff; border-color: #e6e6e9; box-shadow: var(--lift); }
html[data-theme="light"] .os-tile.on .osb { border-color: transparent; box-shadow: none; }
html[data-theme] .osb.os-hos-1,
html[data-theme] .osb.os-hos-2,
html[data-theme] .osb.os-hos-3,
html[data-theme] .osb.os-hos-4,
html[data-theme] .osb.os-miui {
  background: var(--paper-2); border-color: var(--line);
}
html[data-theme="light"] .osb.os-hos-1,
html[data-theme="light"] .osb.os-hos-2,
html[data-theme="light"] .osb.os-hos-3,
html[data-theme="light"] .osb.os-hos-4,
html[data-theme="light"] .osb.os-miui { background: #ffffff; border-color: #e6e6e9; }
html[data-theme] .osb-txt small { opacity: .62; letter-spacing: .01em; text-transform: none; font-size: 10px; font-weight: 600; }

html[data-theme] .prow .prices-row,
html[data-theme] .gline .prices-row,
html[data-theme] .models-table .prices-row {
  display: grid;
  grid-template-columns: repeat(4, 78px);
  justify-content: end;
  align-items: stretch;
  gap: 6px; margin: 0; width: auto;
}
html[data-theme] .prices-row .pill.svc-imei { grid-column: 1; }
html[data-theme] .prices-row .pill.svc-sifre { grid-column: 2; }
html[data-theme] .prices-row .pill.svc-yazilim { grid-column: 3; }
html[data-theme] .prices-row .pill.svc-frp { grid-column: 4; }
html[data-theme] .prices-row .pill {
  flex-direction: column; align-items: flex-start; justify-content: center;
  min-width: 0; min-height: 44px; padding: 5px 8px; gap: 2px;
  border-radius: 8px;
}
html[data-theme] .prices-row .pill-ico { display: none; }
html[data-theme] .pill-lab { font: 550 11px/1 var(--font); letter-spacing: 0; text-transform: none; color: var(--muted); }
html[data-theme] .prices-row .pill b { font-size: 13.5px; font-weight: 680; letter-spacing: -.02em; }
/* "+ İşlem": neutral chip, brand-red plus disc; hover tints the chip, text never goes white-on-pale */
html[data-theme] .job-fab {
  min-height: 26px; padding: 0 11px 0 4px; gap: 6px; border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.045);
  color: #ececec;
  font: 600 12.5px/1 var(--font); letter-spacing: 0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: none;
  transition: background-color .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease);
}
html[data-theme] .job-fab .ico {
  width: 18px; height: 18px; padding: 3.5px; box-sizing: border-box; border-radius: 50%;
  background: linear-gradient(180deg, #b0454e, #8d3d43); color: #fff;
  box-shadow: 0 1px 2px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.18);
  stroke-width: 2.6;
  transition: transform .18s var(--ease);
}
html[data-theme] .job-fab:hover {
  color: #fff; filter: none;
  border-color: rgba(196,90,96,.55);
  background: rgba(141,61,67,.22);
}
html[data-theme] .job-fab:hover .ico { transform: rotate(90deg); }
html[data-theme] .job-fab:active { background: rgba(141,61,67,.3); }
html[data-theme="light"] .job-fab {
  color: #1f2329; border-color: #e3e3e7;
  background: #ffffff;
  box-shadow: var(--lift);
}
html[data-theme="light"] .job-fab .ico {
  background: linear-gradient(180deg, #a63c45, #8b3038);
  box-shadow: 0 1px 2px rgba(139,48,56,.3), inset 0 1px 0 rgba(255,255,255,.2);
}
html[data-theme="light"] .job-fab:hover {
  color: #8b3038; border-color: rgba(139,48,56,.3);
  background: #fbf4f5;
  box-shadow: var(--lift-h);
}
html[data-theme="light"] .job-fab:active { background: #f6e9eb; box-shadow: var(--lift-press); }
@media (prefers-reduced-motion: reduce) { html[data-theme] .job-fab:hover .ico { transform: none; } }
@media (max-width: 760px) {
  html[data-theme] .gline,
  html[data-theme] .models-table .gline {
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    padding: 10px 0;
  }
  html[data-theme] .prow .prices-row,
  html[data-theme] .gline .prices-row,
  html[data-theme] .models-table .prices-row {
    justify-content: stretch;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
  html[data-theme] .prices-row .pill.svc-imei { grid-column: 1; }
  html[data-theme] .prices-row .pill.svc-sifre { grid-column: 2; }
  html[data-theme] .prices-row .pill.svc-yazilim { grid-column: 1; }
  html[data-theme] .prices-row .pill.svc-frp { grid-column: 2; }
  html[data-theme] .prices-row .pill { min-width: 0; }
}

/* ───────── catalog rail ───────── */
html[data-theme] .rail-panel { background: var(--card); border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: var(--shadow); overflow: hidden; }
html[data-theme] .rail-well { border-radius: 8px; }
html[data-theme] .rail-well.tone-rose { color: #ff8f96; background: #3a181c; border-color: #6a3036; }
html[data-theme] .rail-well.tone-sky { color: #7eb6ff; background: #142032; border-color: #2a4466; }
html[data-theme] .rail-well.tone-mint { color: #4ee0a0; background: #0e2418; border-color: #2a5a40; }
html[data-theme] .rail-well.tone-amber { color: #f0c14a; background: #2a1e0a; border-color: #5a4818; }
html[data-theme] .rail-well.tone-orange { color: #ff8a3a; background: #2a1608; border-color: #6a3c18; }
html[data-theme] .rail-well.ok { color: #3ee08a; background: #0e2418; border-color: #2a5a40; }
html[data-theme] .rail-well.wait { color: #f0c14a; background: #2a1e0a; border-color: #5a4818; }
html[data-theme] .rail-well.bad { color: #ff7a82; background: #3a181c; border-color: #6a3036; }
html[data-theme="light"] .rail-well.tone-rose { color: #c23a44; background: #f8e8e9; border-color: #e8c4c6; }
html[data-theme="light"] .rail-well.tone-sky { color: #1d5fad; background: #e6eef8; border-color: #c4d4e8; }
html[data-theme="light"] .rail-well.tone-mint { color: #1a7a4c; background: #e6f5ec; border-color: #b8ddc6; }
html[data-theme="light"] .rail-well.tone-amber { color: #9a6e08; background: #f8f0d8; border-color: #e4d4a0; }
html[data-theme="light"] .rail-well.tone-orange { color: #c45a12; background: #f8ebe0; border-color: #e8c8b0; }
html[data-theme="light"] .rail-well.ok { color: #1a7a4c; background: #e6f5ec; border-color: #b8ddc6; }
html[data-theme="light"] .rail-well.wait { color: #9a6e08; background: #f8f0d8; border-color: #e4d4a0; }
html[data-theme="light"] .rail-well.bad { color: #c23a44; background: #f8e8e9; border-color: #e8c4c6; }
html[data-theme] .rail-kpi small { font-size: 12.5px; font-weight: 500; color: var(--muted); letter-spacing: 0; text-transform: none; }
html[data-theme] .rail-kpi b { font-size: 22px; font-weight: 680; letter-spacing: -.02em; }
html[data-theme] .rail-kpi.is-hot b { color: var(--warn); }
html[data-theme] .rail-sec h3 { font: 650 13px/1.2 var(--font); letter-spacing: 0; text-transform: none; color: var(--muted); }
html[data-theme] .rail-act { min-height: 56px; transition: background-color var(--t-fast) var(--ease); }
html[data-theme] .rail-act b { font-size: 14px; font-weight: 620; }
html[data-theme] .rail-act small { font-size: 12.5px; font-weight: 500; color: var(--faint); }
html[data-theme] .rail-act:hover { background: var(--elev); }
html[data-theme] .rail-act:hover .rail-well { filter: brightness(1.08); }
html[data-theme] .brand-card { border-radius: var(--r-lg); }

/* ───────── tools surfaces ───────── */
html[data-theme] .tls-card { background: var(--paper-2); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px; margin-bottom: 10px; }
html[data-theme] .tls-inner { background: var(--input); }
html[data-theme] .tls-sec { font: 650 12.5px/1.2 var(--font); color: var(--muted); letter-spacing: 0; margin: 0 0 10px 2px; }
html[data-theme] .pm-ops .tls-sec { color: var(--muted); }
html[data-theme] .pm-subtabs {
  gap: 14px;
  border-bottom: 0;
  padding: 0 2px;
}
html[data-theme] .pm-subtab {
  position: relative;
  min-height: 36px;
  padding: 0 8px 6px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  font: 600 13px/1 var(--font);
}
html[data-theme] .pm-subtab:hover:not(.on) {
  color: var(--text);
  background: transparent;
}
html[data-theme] .pm-subtab.on {
  color: var(--text);
  background: transparent;
  border: 0;
  border-bottom: 2px solid var(--accent);
}
html[data-theme] .pm-subtab .ico { color: currentColor; opacity: .65; }
html[data-theme] .pm-subtab.on .ico { color: var(--accent); opacity: 1; }
html[data-theme] .pm-pill {
  color: var(--muted);
  background: var(--elev);
  border-color: var(--line);
}
html[data-theme] .pm-pill b { color: var(--text); }
html[data-theme] .pm-pill #fbFlashProd { color: #4CBB17; }
html[data-theme] #pmSlotPill,
html[data-theme] #pmSlotPill b,
html[data-theme] #pmSlotPill .pm-ico-swap { color: #2d9a48; }
html[data-theme="light"] #pmSlotPill,
html[data-theme="light"] #pmSlotPill b,
html[data-theme="light"] #pmSlotPill .pm-ico-swap { color: #1e7a36; }
html[data-theme] .pm-ico-chip,
html[data-theme] .pm-ico-swap { color: var(--muted); }
html[data-theme] .pm-prog b { color: var(--muted); }
html[data-theme] .pm-prog-track i { background: var(--text); opacity: .45; }
html[data-theme] .pm-row.is-on { background: var(--elev); border-color: var(--line-2); }
html[data-theme="light"] .pm-pill {
  background: var(--elev);
  border-color: var(--line);
  color: var(--muted);
}
html[data-theme="light"] .pm-row.is-on { background: var(--elev); border-color: var(--line-2); }

html[data-theme] .imei-hero-ico,
html[data-theme] .fw-head-ico,
html[data-theme] .fw-mini-ico {
  background: var(--elev);
  border-color: var(--line);
  color: var(--muted);
}
html[data-theme] .imei-luhn-badge {
  background: var(--elev);
  border-color: var(--line);
}
html[data-theme] .imei-luhn-badge span { color: var(--muted); }
html[data-theme] .imei-luhn-badge b { color: var(--text); }
html[data-theme] .fw-head-txt b,
html[data-theme] .fw-left-h,
html[data-theme] .fw-sel b { color: var(--text); }
html[data-theme] .fw-card span,
html[data-theme] .fw-sel span,
html[data-theme] .fw-table .fw-and { color: var(--muted); }
html[data-theme] .fw-card.on,
html[data-theme] .fw-region.on {
  background: var(--elev);
  border-color: var(--line-2);
}
html[data-theme] .fw-card:hover,
html[data-theme] .fw-page .fw-card:hover,
html[data-theme] .fw-region:hover { border-color: var(--line-2); }
html[data-theme] .fw-seg-btn.on {
  background: var(--elev);
  color: var(--text);
  box-shadow: inset 0 0 0 1px var(--line-2);
}
html[data-theme] .fw-seg-btn.on .ico { color: var(--text); opacity: 1; }
html[data-theme] .fw-spin {
  border-color: var(--line-2);
  border-top-color: var(--text);
}
html[data-theme] .fw-download-progress progress { accent-color: var(--accent); }
html[data-theme] .fw-download-progress progress::-webkit-progress-bar { background: var(--line); }
html[data-theme] .fw-download-progress progress::-webkit-progress-value { background: var(--accent); }
html[data-theme="light"] .imei-hero-ico,
html[data-theme="light"] .fw-head-ico,
html[data-theme="light"] .fw-mini-ico {
  background: var(--elev);
  border-color: var(--line);
  color: var(--muted);
}
html[data-theme="light"] .imei-luhn-badge { background: var(--elev); border-color: var(--line); }
html[data-theme="light"] .imei-luhn-badge b { color: var(--text); }
html[data-theme="light"] .fw-card.on,
html[data-theme="light"] .fw-region.on {
  background: var(--elev);
  border-color: var(--line-2);
}
html[data-theme="light"] .fw-seg-btn.on {
  background: var(--elev);
  color: var(--text);
  box-shadow: inset 0 0 0 1px var(--line-2);
}
html[data-theme="light"] .fw-seg-btn.on .ico { color: var(--text); }

html[data-theme] .tls-row-2, html[data-theme] .tls-row-3, html[data-theme] .tls-row-4, html[data-theme] .tls-row-mi { gap: 8px; }
html[data-theme] .cln-status { font: 600 13px/1 var(--font); }
html[data-theme] .imei-log-kicker { font: 650 12.5px/1.2 var(--font); letter-spacing: 0; text-transform: none; color: var(--muted); }
html[data-theme] .imei-log,
html[data-theme] .cln-log,
html[data-theme] .tls-log {
  font-family: "Segoe UI", "Noto Sans", sans-serif;
  font-size: 13.5px;
  line-height: 1.35;
  letter-spacing: 0;
}
html[data-theme] .imei-log-body,
html[data-theme] .cln-log .imei-log-body,
html[data-theme] .tls-log .imei-log-body {
  font-family: "Segoe UI", "Noto Sans", sans-serif;
  letter-spacing: 0;
}
html[data-theme] .imei-log .log-line,
html[data-theme] .cln-log .log-line,
html[data-theme] .tls-log .log-line {
  line-height: 1.35;
  letter-spacing: 0;
}
html[data-theme] .imei-log .log-sep,
html[data-theme] .cln-log .log-sep,
html[data-theme] .tls-log .log-sep,
html[data-theme] .extract-page .tls-log .log-sep {
  margin: 0;
  letter-spacing: 0;
}

/* ───────── light theme: replace hardcoded white patches with grey surfaces ───────── */
html[data-theme="light"] .pill { background: var(--elev); }
html[data-theme="light"] .pill.svc-imei { background: #f0f8fa; border-color: #cfe5eb; }
html[data-theme="light"] .pill.svc-sifre { background: #fbf6ea; border-color: #ecdcb6; }
html[data-theme="light"] .pill.svc-yazilim { background: #f5f2fb; border-color: #ded6f0; }
html[data-theme="light"] .pill.svc-frp { background: #eff8f3; border-color: #cce6d7; }
html[data-theme="light"] .pill.svc-imei .pill-lab { color: #2a6f7d; }
html[data-theme="light"] .pill.svc-sifre .pill-lab { color: #8a6418; }
html[data-theme="light"] .pill.svc-yazilim .pill-lab { color: #5f4f94; }
html[data-theme="light"] .pill.svc-frp .pill-lab { color: #23704b; }
html[data-theme="light"] .imei-composer { background: var(--input); }
html[data-theme="light"] .region-hero:has(.region-flag-soft) { background: var(--card); }
html[data-theme="light"] .tls-card { background: var(--card); border-color: var(--line); box-shadow: var(--shadow); }
html[data-theme="light"] .fw-dl { background: var(--card); }
html[data-theme="light"] .brand-menu { background: var(--elev); }
html[data-theme="light"] .root-chip input { background: var(--input); border-color: var(--line-2); }
html[data-theme="light"] .login-acc { background: var(--card); }

/* ───────── mobile: restore device connect and enlarge targets ───────── */
@media (max-width: 760px) {
  html[data-theme] .cln-box #clnConnect { display: inline-flex; width: 100%; min-height: 46px; }
  html[data-theme] .tls-box #tlsConnect { display: inline-flex !important; width: 100%; min-height: 46px; }
  html[data-theme] .tls-usb-connect { display: none; }
  html[data-theme] .tls-btn, html[data-theme] .cln-btn { min-height: 44px; }
  html[data-theme] .chip { min-height: 38px; }
  html[data-theme] .input, html[data-theme] .select, html[data-theme] .textarea { font-size: 16px; min-height: 46px; }
  html[data-theme] .btn { min-height: 44px; }
  html[data-theme] .btn-sm { min-height: 38px; }
  html[data-theme] .stat-card b { font-size: 20px; }
  html[data-theme] .pm-radios {
    display: flex; flex-wrap: wrap; gap: 4px 8px;
    grid-template-columns: none;
  }
  html[data-theme] .pm-radio {
    justify-content: flex-start; gap: 8px; padding: 6px 0; min-width: 0; min-height: 40px;
  }
  html[data-theme] .pm-radio input {
    position: static; opacity: 1; width: 18px; height: 18px; pointer-events: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-theme] .modal, html[data-theme] .modal-back, html[data-theme] .toast { animation: none; }
  html[data-theme] .side { transition: none; }
  html[data-theme] .btn,
  html[data-theme] .tls-btn,
  html[data-theme] .cln-btn,
  html[data-theme] .job-fab,
  html[data-theme] .chip,
  html[data-theme] .lp-btn {
    transition: background-color .12s, border-color .12s, color .12s, opacity .12s;
  }
  html[data-theme] .btn:hover:not(:disabled),
  html[data-theme] .tls-btn:hover:not(:disabled),
  html[data-theme] .cln-btn:hover:not(:disabled),
  html[data-theme] .btn:active:not(:disabled),
  html[data-theme] .tls-btn:active:not(:disabled),
  html[data-theme] .cln-btn:active:not(:disabled) {
    transform: none; filter: none;
  }
}

/* ───────── account & settings layout + GhostLock file picker ───────── */
html[data-theme] .acc-page,
html[data-theme] .settings-page {
  max-width: 1040px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
html[data-theme] .acc-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
}
html[data-theme] .acc-span-2 {
  grid-column: 1 / -1;
}
html[data-theme] .acc-card,
html[data-theme] .settings-card,
html[data-theme] .sale-settings {
  padding: 20px 22px;
  margin: 0;
  max-width: none;
  display: flex;
  flex-direction: column;
}
html[data-theme] .acc-card .modal-actions,
html[data-theme] .settings-card .modal-actions,
html[data-theme] .sale-settings .modal-actions {
  margin-top: auto;
  padding-top: 14px;
}
html[data-theme] .acc-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
html[data-theme] .acc-card-head .card-title { margin: 0 0 4px; font-size: 15px; font-weight: 650; }
html[data-theme] .acc-card-head .hint { margin: 0; line-height: 1.45; }
html[data-theme] .acc-pw-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
html[data-theme] .acc-card .theme-sw {
  margin-top: auto;
  border-radius: 8px;
}
html[data-theme] .glk-head-acts {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
html[data-theme] .glk-meta-box {
  padding: 10px 13px;
  margin-bottom: 14px;
  border-radius: 9px;
  background: var(--paper-2);
  border: 1px solid var(--line);
  font-size: 12.5px;
  color: var(--muted);
}
html[data-theme] .glk-meta-box b { color: var(--text); }
html[data-theme] .glk-file-picker {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 10px 6px 6px;
  border-radius: 10px;
  background: var(--input);
  border: 1px dashed var(--line-2);
  transition: border-color .15s ease, background-color .15s ease;
}
html[data-theme] .glk-file-picker:hover {
  border-color: var(--muted);
}
html[data-theme] .glk-file-picker.is-picked {
  border-style: solid;
  border-color: rgba(61, 143, 104, .45);
  background: rgba(61, 143, 104, .05);
}
html[data-theme] .glk-file-info {
  flex: 1;
  min-width: 0;
  font-size: 12.5px;
  color: var(--muted);
  display: flex;
  align-items: baseline;
  gap: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
html[data-theme] .glk-file-info b {
  color: var(--text);
  font-weight: 620;
  overflow: hidden;
  text-overflow: ellipsis;
}
html[data-theme] .glk-file-info span {
  font-family: var(--mono);
  font-size: 11.5px;
  color: var(--ok);
  flex-shrink: 0;
}
html[data-theme] .glk-textarea {
  font-family: var(--mono);
  font-size: 12px;
}
html[data-theme] .glk-actions {
  justify-content: flex-end;
  gap: 8px;
}

/* ───────── button studio (admin / demo account) ───────── */
html[data-theme] .btn-studio-card {
  max-width: 1040px;
  padding: 20px 22px;
  margin: 0;
  overflow: visible;
}
html[data-theme] .bs-launcher {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
html[data-theme] .bs-launcher-txt { min-width: 0; flex: 1 1 320px; }
html[data-theme] .bs-launcher-title {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
html[data-theme] .bs-launcher-title .card-title { margin: 0; font-size: 15px; font-weight: 650; }
html[data-theme] .bs-launcher-txt .hint { margin: 0; }
html[data-theme] .bs-theme-pill {
  font: 600 11px/1 var(--font);
  color: var(--muted);
  background: var(--elev);
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 4px 9px;
}
html[data-theme] .bs-body {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
html[data-theme] .bs-body[hidden] { display: none !important; }
html[data-theme] .bs-dock,
html[data-theme] .bs-modes,
html[data-theme] .bs-shadows,
html[data-theme] .bs-scope,
html[data-theme] .bs-actions {
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
}
html[data-theme] .bs-chip {
  appearance: none; border: 1px solid var(--line-2); background: var(--elev);
  color: var(--text); border-radius: 8px; padding: 6px 10px;
  font: 580 12px/1 var(--font); cursor: pointer;
  display: inline-flex; align-items: center; gap: 7px;
  transition: border-color .14s ease, background-color .14s ease;
}
html[data-theme] .bs-chip i {
  width: 12px; height: 12px; border-radius: 4px; border: 1px solid currentColor; display: block;
}
html[data-theme] .bs-chip:hover, html[data-theme] .bs-chip.on {
  border-color: var(--muted);
  background: var(--card);
}
html[data-theme] .bs-dock-slot { margin: 0 0 16px; min-height: 68px; }
html[data-theme] .bs-dock {
  padding: 12px 16px; border-radius: 11px; border: 1px solid var(--line);
  background: var(--paper-2); gap: 14px 20px; align-items: center;
}
html[data-theme] .bs-dock-previews {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
html[data-theme] .bs-dock.is-pinned {
  position: fixed; z-index: 45;
  background: var(--card);
  border-color: var(--line-2);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .5);
}
html[data-theme="light"] .bs-dock.is-pinned {
  box-shadow: 0 12px 28px rgba(20, 24, 30, .12);
}
html[data-theme] .bs-dock-stage { display: grid; gap: 5px; justify-items: start; }
html[data-theme] .bs-dock-lab {
  font: 620 10px/1 var(--font); color: var(--faint);
  letter-spacing: .05em; text-transform: uppercase;
}
html[data-theme] .bs-dock-meta { display: grid; gap: 3px; min-width: 0; }
html[data-theme] .bs-dock-meta b { font-size: 13.5px; font-weight: 650; }
html[data-theme] .bs-dock-meta small { color: var(--muted); font-size: 11.5px; }
html[data-theme] .bs-shell {
  display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 18px;
  align-items: start;
}
html[data-theme] .bs-side {
  min-width: 0;
  background: var(--paper-2);
  border: 1px solid var(--line);
  border-radius: 11px;
  padding: 12px;
}
html[data-theme] .bs-side-search { margin-bottom: 10px; }
html[data-theme] .bs-side-search .input { min-height: 34px; font-size: 12.5px; }
html[data-theme] .bs-tabs-title {
  font: 650 10.5px/1 var(--font);
  color: var(--faint);
  text-transform: uppercase;
  letter-spacing: .05em;
  margin: 8px 2px 6px;
}
html[data-theme] .bs-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
  margin-bottom: 12px;
}
html[data-theme] .bs-tab {
  appearance: none; border: 1px solid var(--line); background: transparent;
  color: var(--muted); border-radius: 7px; padding: 6px 8px;
  font: 580 11.5px/1.15 var(--font); cursor: pointer;
  display: flex; align-items: center; justify-content: space-between; gap: 4px;
  text-align: left;
}
html[data-theme] .bs-tab span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html[data-theme] .bs-tab small { font-size: 10px; color: var(--faint); font-variant-numeric: tabular-nums; }
html[data-theme] .bs-tab:hover { border-color: var(--line-2); color: var(--text); }
html[data-theme] .bs-tab.on { background: var(--elev); color: var(--text); border-color: var(--line-2); }
html[data-theme] .bs-list {
  display: flex; flex-direction: column; gap: 3px;
  max-height: 360px; overflow: auto; padding-right: 2px;
}
html[data-theme] .bs-empty {
  padding: 16px 8px; text-align: center; color: var(--muted); font-size: 12px;
}
html[data-theme] .bs-item {
  appearance: none; width: 100%; text-align: left;
  display: grid; grid-template-columns: 14px 1fr auto; gap: 8px; align-items: center;
  border: 1px solid transparent; background: transparent; color: var(--text);
  border-radius: 7px; padding: 7px 8px; cursor: pointer; font: 580 12px/1.2 var(--font);
}
html[data-theme] .bs-item i { width: 12px; height: 12px; border-radius: 4px; border: 1px solid var(--line-2); }
html[data-theme] .bs-item em { font-style: normal; color: var(--faint); font-size: 10.5px; font-weight: 560; }
html[data-theme] .bs-item:hover, html[data-theme] .bs-item.on { background: var(--elev); border-color: var(--line); }
html[data-theme] .bs-editor {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
html[data-theme] .bs-sec {
  padding: 14px 16px;
  border-radius: 11px;
  background: var(--paper-2);
  border: 1px solid var(--line);
}
html[data-theme] .bs-sec-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
}
html[data-theme] .bs-sec-head b { display: block; font-size: 13.5px; font-weight: 650; margin-bottom: 2px; }
html[data-theme] .bs-sec-head span { display: block; font-size: 12px; color: var(--muted); }
html[data-theme] .bs-scope {
  padding: 8px 10px;
  border-radius: 8px;
  background: var(--card);
  border: 1px solid var(--line);
  margin-bottom: 10px;
}
html[data-theme] .bs-scope-lbl,
html[data-theme] .bs-sub-lbl {
  font: 620 11.5px/1 var(--font);
  color: var(--muted);
  margin-right: 4px;
}
html[data-theme] .bs-pal-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
html[data-theme] .bs-mode-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  margin-bottom: 12px;
}
html[data-theme] .bs-clip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
html[data-theme] .bs-dock .bs-clip { margin-left: auto; }
html[data-theme] .bs-clip-from { color: var(--faint); font-size: 11.5px; font-weight: 560; }
html[data-theme] .bs-ghost:disabled { opacity: .4; cursor: not-allowed; }
html[data-theme] .bs-pill { font: 600 11px/1 var(--font); color: var(--muted); border: 1px solid var(--line); border-radius: 99px; padding: 5px 9px; }
html[data-theme] .bs-shape {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;
}
html[data-theme] .bs-shape label {
  display: flex; flex-direction: column; gap: 6px;
  padding: 8px 10px; border-radius: 8px; background: var(--card); border: 1px solid var(--line);
  font-size: 12px; color: var(--muted); font-weight: 580;
}
html[data-theme] .bs-shape label > span { display: flex; justify-content: space-between; align-items: center; }
html[data-theme] .bs-shape b { color: var(--text); font-weight: 660; font-family: var(--mono); }
html[data-theme] .bs-shape input[type="range"] { width: 100%; accent-color: var(--red); }
html[data-theme] .bs-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px;
}
html[data-theme] .bs-field { display: flex; flex-direction: column; gap: 5px; font-size: 12px; color: var(--muted); font-weight: 580; }
html[data-theme] .bs-color { display: flex; align-items: center; gap: 6px; }
html[data-theme] .bs-color input[type="color"] {
  width: 34px; height: 34px; padding: 0; border: 1px solid var(--line-2);
  border-radius: 7px; background: var(--input); cursor: pointer; flex-shrink: 0;
}
html[data-theme] .bs-hex { flex: 1; min-width: 0; font-family: var(--mono); font-size: 12px; min-height: 34px; }
html[data-theme] .bs-ghost {
  appearance: none; border: 1px solid var(--line); background: var(--card);
  color: var(--muted); border-radius: 7px; padding: 6px 9px;
  font: 600 11.5px/1 var(--font); cursor: pointer; white-space: nowrap;
}
html[data-theme] .bs-ghost:hover:not(:disabled) { color: var(--text); border-color: var(--line-2); }
html[data-theme] .bs-ghost[aria-pressed="true"] { color: var(--text); border-color: var(--line-2); background: var(--elev); }
html[data-theme] .bs-actions {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  justify-content: flex-end;
}
@media (max-width: 860px) {
  html[data-theme] .acc-grid,
  html[data-theme] .acc-pw-fields,
  html[data-theme] .bs-shell,
  html[data-theme] .bs-shape,
  html[data-theme] .bs-grid { grid-template-columns: 1fr; }
  html[data-theme] .bs-list { max-height: 220px; }
}


/* Compact, subtle HyperOS / MIUI release chips (no Xiaomi prefix, dark-graphite native) */
html[data-theme] .os-release {
  --release-rgb: 118, 165, 230;
  display: inline-flex; align-items: center; justify-content: space-between;
  flex: 0 0 auto; gap: 5px; height: 21px; min-height: 21px; padding: 0 3px 0 7px;
  border: 1px solid rgba(255, 255, 255, .075); border-radius: 6px;
  background: rgba(255, 255, 255, .03);
  color: #b4b8c0; white-space: nowrap; vertical-align: middle; box-sizing: border-box;
  box-shadow: none;
}
html[data-theme] .os-release-hos-2 { --release-rgb: 156, 136, 226; }
html[data-theme] .os-release-hos-3 { --release-rgb: 108, 182, 198; }
html[data-theme] .os-release-hos-4 { --release-rgb: 214, 132, 152; }
html[data-theme] .os-release-miui { --release-rgb: 220, 154, 100; }
html[data-theme] .os-release-other { --release-rgb: 160, 168, 180; padding-right: 7px; }
.os-brand-name {
  font: 520 11px/1 var(--font); letter-spacing: -.01em; color: #a6aab2;
}
.os-brand-name b {
  font-weight: 660; color: #d4d7de; margin-left: .5px;
}
html[data-theme] .os-release-number {
  display: inline-grid; place-items: center; min-width: 15px; height: 15px; padding: 0 3.5px;
  box-sizing: border-box; border-radius: 4px; font: 680 10px/1 var(--font);
  font-variant-numeric: tabular-nums; color: rgb(var(--release-rgb));
  background: rgba(var(--release-rgb), .13);
}
html[data-theme="light"] .os-release {
  --release-rgb: 45, 104, 196;
  background: #f5f6f8; border-color: rgba(15, 23, 42, .09); color: #4b5260;
}
html[data-theme="light"] .os-release-hos-2 { --release-rgb: 98, 68, 190; }
html[data-theme="light"] .os-release-hos-3 { --release-rgb: 28, 126, 148; }
html[data-theme="light"] .os-release-hos-4 { --release-rgb: 180, 62, 92; }
html[data-theme="light"] .os-release-miui { --release-rgb: 192, 98, 28; }
html[data-theme="light"] .os-release-other { --release-rgb: 90, 100, 116; }
html[data-theme="light"] .os-brand-name { color: #555c6b; }
html[data-theme="light"] .os-brand-name b { color: #1e232d; }
html[data-theme="light"] .os-release-number { background: rgba(var(--release-rgb), .11); }
html[data-theme] .os-pills { gap: 3px; }
html[data-theme] .os-inline { gap: 4px; }
html[data-theme] .os-row:has(.os-toggle) {
  display: flex; flex-wrap: wrap; gap: 6px;
}
html[data-theme] .os-toggle {
  position: relative; min-height: 28px; min-width: 0; padding: 0;
  border-radius: 7px; border: 1px solid var(--line); overflow: visible;
  background: var(--paper-2); transition: border-color .15s ease, background-color .15s ease;
}
html[data-theme] .os-toggle .os-release {
  width: 100%; height: 26px; min-height: 26px; padding: 0 5px 0 8px; border: 0; border-radius: 6px;
  background: transparent; box-shadow: none; gap: 6px;
}
html[data-theme] .os-toggle:hover { border-color: var(--line-2); }
html[data-theme] .os-toggle.on {
  border-color: rgba(255, 255, 255, .32); background: rgba(255, 255, 255, .05);
  box-shadow: none;
}
html[data-theme] .os-toggle.on::after {
  content: '✓'; position: absolute; top: -5px; right: -4px; display: grid; place-items: center;
  width: 14px; height: 14px; border-radius: 50%; background: #d4d7de; color: #111318;
  border: 1.5px solid var(--paper); font: 800 9px/1 var(--font);
}
html[data-theme] .os-toggle:focus-visible { outline: 2px solid var(--line-2); outline-offset: 2px; }
html[data-theme='light'] .os-toggle.on {
  border-color: #1e232d; background: #eef0f4; box-shadow: none;
}
html[data-theme='light'] .os-toggle.on::after {
  background: #1e232d; color: #fff; border-color: #fff;
}
@media (prefers-reduced-motion: reduce) {
  html[data-theme] .os-toggle { transition: none; }
}
/* Compact column for OS version chips */
html[data-theme] .plist-head-rest,
html[data-theme] .gline,
html[data-theme] .models-table .gline { grid-template-columns: 96px minmax(0, 1fr); }
html[data-theme] .glines { container-type: inline-size; min-width: 0; }
@container (max-width: 505px) {
  html[data-theme] .gline { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  html[data-theme] .gline .prices-row { justify-content: start; }
}
@media (min-width: 761px) and (max-width: 1500px) {
  html[data-theme] .catalog-split { grid-template-columns: minmax(0, 1fr); }
  html[data-theme] .desk-rail { display: none; }
}
@media (max-width: 760px) {
  html[data-theme] .gline, html[data-theme] .models-table .gline { grid-template-columns: minmax(0, 1fr); }
}
