/* ==========================================================================
   Cabinet + auth skin: the lin2web account lobby ("command centre") look —
   black-teal glass, muted gold, Philosopher headings, Gerbera text, framed
   panels with cut corners, nav tiles with diamond sigils.
   Loaded after the Vite cabinet bundle; scoped to <body class="lw-cabinet">.
   ========================================================================== */
@font-face { font-family: Philosopher; src: url('../fonts/Philosopher-Regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: Philosopher; src: url('../fonts/Philosopher-Bold.woff2') format('woff2'); font-weight: 700; font-display: swap; }
@font-face { font-family: Gerbera; src: url('../fonts/Gerbera.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: Gerbera; src: url('../fonts/Gerbera-Bold.woff2') format('woff2'); font-weight: 700; font-display: swap; }

body.lw-cabinet {
  --lb-gold: #c6a866;
  --lb-gold-hi: #f1d89b;
  --lb-gold-dim: #705a31;
  --lb-ink: #05090b;
  --lb-line: rgba(204, 171, 99, 0.32);
  --lb-line-soft: rgba(198, 168, 102, 0.14);
  --lb-text: #eee8d9;
  --lb-muted: #89908c;
  --lb-cut: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
  --lb-panel-cut: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 26px), calc(100% - 26px) 100%, 10px 100%, 0 calc(100% - 10px), 0 18px);

  /* tokens consumed by cabinet.css */
  --bg: #05090b;
  --bg-1: rgba(9, 15, 17, 0.94);
  --bg-2: rgba(14, 22, 23, 0.7);
  --bg-3: rgba(20, 30, 30, 0.8);
  --border: rgba(198, 168, 102, 0.16);
  --border-mid: rgba(198, 168, 102, 0.3);
  --border-hi: rgba(241, 216, 155, 0.6);
  --text: #eee8d9;
  --text-2: #c9c2b0;
  --text-muted: #89908c;
  --violet: #c6a866;
  --violet-light: #f1d89b;
  --violet-pale: rgba(198, 168, 102, 0.12);
  --gold: #c6a866;
  --gold-light: #f1d89b;
  --accent: #c6a866;
  --font: Gerbera, 'Segoe UI', sans-serif;
  --font-display: Philosopher, Georgia, serif;
  --r: 0;
  --r-lg: 0;

  font-family: Gerbera, 'Segoe UI', sans-serif;
  color: var(--lb-text);
  background-color: var(--lb-ink);
  background-image:
    radial-gradient(70em 40em at 60% -10%, rgba(226, 190, 111, 0.1), transparent 60%),
    linear-gradient(90deg, rgba(1, 4, 5, 0.9), rgba(1, 4, 5, 0.6) 40%, rgba(1, 4, 5, 0.8)),
    linear-gradient(180deg, rgba(2, 5, 6, 0.65), rgba(2, 5, 6, 0.95)),
    url(../img/bg.webp);
  background-size: cover;
  background-attachment: fixed;
}
body.lw-cabinet h1, body.lw-cabinet h2, body.lw-cabinet h3, body.lw-cabinet h4 { font-family: Philosopher, Georgia, serif; color: #ead9b2; letter-spacing: 0.04em; }
body.lw-cabinet ::selection { background: rgba(198, 168, 102, 0.35); color: #fff; }

/* ---------- sidebar = command menu ---------- */
body.lw-cabinet .dash-sidebar {
  width: 250px;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #79643a transparent;
  background: linear-gradient(145deg, rgba(7, 13, 15, 0.97), rgba(5, 10, 12, 0.92));
  border-right: 1px solid rgba(212, 179, 104, 0.22);
  box-shadow: 16px 0 42px rgba(0, 0, 0, 0.35);
}
body.lw-cabinet .dash-sidebar::-webkit-scrollbar { width: 4px; }
body.lw-cabinet .dash-sidebar::-webkit-scrollbar-thumb { background: #79643a; }
body.lw-cabinet .dash-main { margin-left: 250px; }
body.lw-cabinet .dash-sidebar-logo { padding: 16px 18px 12px; border-color: rgba(212, 179, 104, 0.18); }
body.lw-cabinet .dash-sidebar-logo span { border: 0; border-left: 1px solid var(--lb-line); border-radius: 0; background: none; color: var(--lb-gold); padding: 0 0 0 10px; font-size: 0.55rem; letter-spacing: 0.25em; }
body.lw-cabinet .dash-nav-group { padding: 8px 12px 6px; }
body.lw-cabinet .dash-nav-group-label { margin: 10px 0 4px !important; padding: 0 6px; color: #776b50; opacity: 1; font: 400 0.6rem Gerbera, sans-serif; letter-spacing: 0.3em; }
body.lw-cabinet .dash-nav-group-label:first-child { margin-top: 2px !important; }
body.lw-cabinet .dash-nav-item {
  position: relative;
  min-height: 33px;
  gap: 14px;
  margin-bottom: 2px;
  padding: 3px 12px 3px 14px;
  border: 0;
  border-radius: 0;
  background: rgba(14, 22, 23, 0.28);
  box-shadow: inset 0 0 0 1px rgba(163, 136, 77, 0.11);
  color: #bab9af;
  font: 700 0.94rem/1.15 Philosopher, Georgia, serif;
  letter-spacing: 0.02em;
  clip-path: polygon(7px 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%, 0 7px);
  transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}
/* diamond sigil behind the icon */
body.lw-cabinet .dash-nav-item::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 14px;
  bottom: auto;
  width: 18px;
  height: 18px;
  border: 1px solid rgba(184, 151, 78, 0.3);
  border-radius: 0;
  background: radial-gradient(circle, rgba(169, 133, 62, 0.16), transparent);
  transform: translate(-1px, -50%) rotate(45deg);
}
body.lw-cabinet .dash-nav-item svg { position: relative; width: 14px; height: 14px; margin-left: 1px; color: #c9aa65; opacity: 1; }
body.lw-cabinet .dash-nav-item:hover {
  background: linear-gradient(100deg, rgba(123, 98, 49, 0.32), rgba(16, 25, 24, 0.5));
  box-shadow: inset 0 0 0 1px rgba(226, 190, 109, 0.48), 0 0 20px rgba(188, 147, 65, 0.1);
  color: #fff1cd;
  transform: translateX(3px);
}
body.lw-cabinet .dash-nav-item.active {
  border: 0;
  background: linear-gradient(100deg, rgba(151, 117, 52, 0.48), rgba(18, 29, 27, 0.72));
  box-shadow: inset 3px 0 var(--lb-gold-hi), inset 0 0 0 1px rgba(238, 202, 120, 0.7), 0 0 22px rgba(187, 145, 60, 0.12);
  color: #fff0c8;
}
body.lw-cabinet .dash-nav-item.active::before {
  left: 14px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-color: var(--lb-gold-hi);
  border-radius: 0;
  background: radial-gradient(circle, rgba(241, 216, 155, 0.3), transparent);
}
body.lw-cabinet .dash-nav-item.active svg { color: var(--lb-gold-hi); }
body.lw-cabinet .dash-nav-item.active::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  width: 3px;
  height: 22px;
  transform: translateY(-50%);
  background: var(--lb-gold);
  box-shadow: 0 0 12px var(--lb-gold);
}
body.lw-cabinet .dash-nav-item--locked { opacity: 0.5; }
body.lw-cabinet .dash-nav-badge { border-radius: 0; font-family: Gerbera, sans-serif; }
body.lw-cabinet .dash-nav-badge.gold { border: 0; background: linear-gradient(180deg, var(--lb-gold-hi), var(--lb-gold)); color: #0a0f10; }
body.lw-cabinet .dash-sidebar-user { padding: 8px 12px; border-color: rgba(212, 179, 104, 0.18); }
body.lw-cabinet .dash-sidebar-user-inner { background: rgba(14, 22, 23, 0.4); box-shadow: inset 0 0 0 1px var(--lb-line-soft); clip-path: var(--lb-cut); }
body.lw-cabinet .dash-sidebar-avatar {
  border: 0;
  border-radius: 0;
  background: radial-gradient(circle, #6d5b36, #161b19 64%);
  box-shadow: 0 0 0 1px #100d08, 0 0 0 2px var(--lb-gold-dim);
  color: var(--lb-gold-hi);
  font: 700 0.95rem Philosopher, Georgia, serif;
  clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}
body.lw-cabinet .dash-sidebar-user-name { font: 700 0.95rem Philosopher, Georgia, serif; color: #f1e3bd; }
body.lw-cabinet .dash-sidebar-user-role { color: var(--lb-gold); letter-spacing: 0.2em; font-size: 0.6rem; }
body.lw-cabinet .dash-sidebar-logout { border-radius: 0; }

/* ---------- top bar = command header ---------- */
body.lw-cabinet .dash-topbar {
  height: 70px;
  padding: 0 30px;
  border-bottom: 1px solid rgba(212, 179, 104, 0.22);
  background: linear-gradient(180deg, rgba(3, 8, 10, 0.97), rgba(3, 8, 10, 0.82));
  backdrop-filter: blur(6px);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.3);
}
body.lw-cabinet .dash-topbar::after {
  content: '';
  position: absolute;
  left: 3%;
  right: 3%;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--lb-gold), transparent);
  opacity: 0.45;
  pointer-events: none;
}
body.lw-cabinet .dash-topbar-title {
  display: flex;
  align-items: center;
  gap: 16px;
  color: #ead9b2;
  font: 700 1.2rem Philosopher, Georgia, serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.lw-cabinet .dash-topbar-title::before {
  content: '';
  flex: none;
  width: 18px;
  height: 18px;
  border: 1px solid var(--lb-gold-dim);
  background: radial-gradient(circle, rgba(198, 168, 102, 0.25), transparent);
  transform: rotate(45deg);
}
body.lw-cabinet .dash-topbar-back,
body.lw-cabinet .dash-mobile-toggle,
body.lw-cabinet .lang-trigger {
  border: 0;
  border-radius: 0;
  background: rgba(8, 13, 14, 0.7);
  box-shadow: inset 0 0 0 1px #4b422e;
  color: #bab3a0;
}
body.lw-cabinet .dash-topbar-back:hover,
body.lw-cabinet .lang-trigger:hover { box-shadow: inset 0 0 0 1px var(--lb-gold), 0 0 12px rgba(198, 168, 102, 0.15); color: var(--lb-gold-hi); }
body.lw-cabinet .upd-topbar-badge,
body.lw-cabinet .ord-topbar-badge { border-radius: 0; clip-path: var(--lb-cut); }

/* ---------- panels ---------- */
body.lw-cabinet .dash-content { max-width: 1320px; padding: 30px; }
body.lw-cabinet .dash-card {
  isolation: isolate;
  border: 0;
  border-radius: 0;
  background: linear-gradient(145deg, rgba(9, 15, 17, 0.96), rgba(3, 8, 10, 0.92));
  box-shadow: inset 0 0 0 1px rgba(198, 168, 102, 0.2);
  clip-path: var(--lb-panel-cut);
}
body.lw-cabinet .dash-card::before {
  content: '';
  position: absolute;
  inset: 0 18px auto;
  height: 1px;
  border-radius: 0;
  background: linear-gradient(90deg, transparent, #594a2b 8%, var(--lb-gold) 50%, #594a2b 92%, transparent);
  opacity: 1;
}
body.lw-cabinet .dash-section-label {
  gap: 12px;
  color: #ead9b2;
  font: 700 1.05rem Philosopher, Georgia, serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.lw-cabinet .dash-section-label::before {
  content: '';
  flex: none;
  width: 12px;
  height: 12px;
  border: 1px solid var(--lb-gold-dim);
  transform: rotate(45deg);
}
body.lw-cabinet .dash-section-label-badge { border-radius: 0; }
body.lw-cabinet .dash-stat-icon {
  border-radius: 0;
  border: 1px solid rgba(184, 151, 78, 0.35);
  background: radial-gradient(circle, rgba(169, 133, 62, 0.2), transparent);
  color: var(--lb-gold-hi);
}

/* ---------- tables ---------- */
body.lw-cabinet .orders-table-wrap { border-radius: 0; }
body.lw-cabinet .orders-table thead tr { background: rgba(126, 98, 44, 0.12); border-color: var(--lb-line); }
body.lw-cabinet .orders-table thead th { color: #9d8b62; letter-spacing: 0.14em; }
body.lw-cabinet .orders-table tbody tr { border-color: rgba(198, 168, 102, 0.1); }
body.lw-cabinet .orders-table tbody tr:hover { background: rgba(198, 168, 102, 0.06); }

/* ---------- forms ---------- */
body.lw-cabinet .cab-input,
body.lw-cabinet .dash-content input[type=text],
body.lw-cabinet .dash-content input[type=email],
body.lw-cabinet .dash-content input[type=password],
body.lw-cabinet .dash-content input[type=number],
body.lw-cabinet .dash-content input[type=search],
body.lw-cabinet .dash-content select,
body.lw-cabinet .dash-content textarea {
  border: 0;
  border-radius: 0;
  background: #071013;
  box-shadow: inset 0 0 0 1px rgba(198, 168, 102, 0.3);
  color: var(--lb-text);
}
body.lw-cabinet .cab-input:focus,
body.lw-cabinet .dash-content input:focus,
body.lw-cabinet .dash-content select:focus,
body.lw-cabinet .dash-content textarea:focus {
  outline: none;
  box-shadow: inset 0 0 0 1px var(--lb-gold), 0 0 16px rgba(198, 168, 102, 0.12);
}
body.lw-cabinet .cab-label { color: #c9ad76; font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase; }
body.lw-cabinet .cab-check-row input[type=checkbox] { accent-color: var(--lb-gold); }
body.lw-cabinet .cab-btn-google {
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, #30332f, #101716 56%, #080d0e);
  box-shadow: inset 0 0 0 1px #6d5a34, inset 0 0 0 3px #080b0b;
  color: #d5bf89;
  clip-path: polygon(7px 0, calc(100% - 7px) 0, 100% 7px, 100% calc(100% - 7px), calc(100% - 7px) 100%, 7px 100%, 0 calc(100% - 7px), 0 7px);
}

/* ---------- auth window ---------- */
body.lw-cabinet .cab-card {
  border: 0;
  border-radius: 0;
  background: linear-gradient(145deg, rgba(9, 15, 17, 0.97), rgba(3, 8, 10, 0.94));
  box-shadow: inset 0 0 0 1px rgba(198, 168, 102, 0.28);
  clip-path: var(--lb-panel-cut);
}
body.lw-cabinet .cab-card::before {
  inset: 0 18px auto;
  height: 1px;
  border-radius: 0;
  background: linear-gradient(90deg, transparent, #594a2b 8%, var(--lb-gold) 50%, #594a2b 92%, transparent);
}
body.lw-cabinet .cab-title { color: #f1e3bd; font: 700 1.5rem Philosopher, Georgia, serif; letter-spacing: 0.06em; text-transform: uppercase; }
body.lw-cabinet .cab-subtitle { color: var(--lb-muted); }

/* ---------- plan cards ---------- */
body.lw-cabinet .sub-plan-card,
body.lw-cabinet .upd-plan-card,
body.lw-cabinet .mon-card {
  border-radius: 0;
  border-color: var(--lb-line-soft);
  background: linear-gradient(145deg, rgba(9, 15, 17, 0.96), rgba(3, 8, 10, 0.92));
}

@media (max-width: 1023px) {
  body.lw-cabinet .dash-main { margin-left: 0; }
}

/* ---------- segmented OS switch (install page) ---------- */
.cab-os-tabs { display: inline-flex; gap: 0; margin-bottom: 26px; box-shadow: inset 0 0 0 1px #4b422e; background: rgba(8, 13, 14, 0.7); clip-path: polygon(7px 0, 100% 0, 100% calc(100% - 7px), calc(100% - 7px) 100%, 0 100%, 0 7px); }
.cab-os-tab { min-width: 130px; min-height: 42px; padding: 0 26px; border: 0; background: transparent; color: #bab3a0; font: 700 0.95rem Philosopher, Georgia, serif; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; transition: color 0.2s ease, background 0.2s ease; }
.cab-os-tab:hover { color: #fff1cd; background: rgba(123, 98, 49, 0.25); }
.cab-os-tab.is-active { color: #fff0c5; background: linear-gradient(180deg, #9c824e, #59472a 48%, #2b2418 52%, #745d36); box-shadow: inset 0 0 0 1px #e1c47d, inset 0 0 0 3px #302718; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8); }
.cab-os-tab:focus-visible { outline: 1px solid #f1d89b; outline-offset: -4px; }

/* file / key names: gold mono text instead of input-looking boxes */
body.lw-cabinet .dash-content code {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: #f1d89b;
  font-family: 'JetBrains Mono', Consolas, monospace;
}

/* ---------- larger, more readable command menu ---------- */
body.lw-cabinet .dash-sidebar { width: 290px; }
body.lw-cabinet .dash-main { margin-left: 290px; }
body.lw-cabinet .dash-sidebar-logo { padding: 20px 20px 16px; }
body.lw-cabinet .dash-sidebar-logo img { height: 34px; }
body.lw-cabinet .dash-nav-group { padding: 10px 14px 8px; }
body.lw-cabinet .dash-nav-group-label { margin: 16px 0 8px !important; color: #9d8b62; font-size: 0.7rem; letter-spacing: 0.3em; }
body.lw-cabinet .dash-nav-item {
  min-height: 46px;
  gap: 18px;
  margin-bottom: 4px;
  padding: 6px 14px 6px 16px;
  color: #e2dccb;
  font-size: 1.1rem;
}
body.lw-cabinet .dash-nav-item::before,
body.lw-cabinet .dash-nav-item.active::before { left: 15px; width: 24px; height: 24px; }
body.lw-cabinet .dash-nav-item svg { width: 18px; height: 18px; margin-left: 2px; }
body.lw-cabinet .dash-nav-item.active::after { height: 28px; }
body.lw-cabinet .dash-sidebar-user { padding: 12px 14px; }
body.lw-cabinet .dash-sidebar-user-name { font-size: 1.05rem; }
@media (max-width: 1023px) {
  body.lw-cabinet .dash-main { margin-left: 0; }
}
