﻿:root {
  --bg: #f3f5f9;
  --surface: #ffffff;
  --surface-soft: #f8fafc;
  --text: #1f2937;
  --muted: #6b7280;
  --border: #e5e7eb;
  --primary: #4f67f6;
  --primary-deep: #3f56df;
  --success: #16a34a;
  --warning: #d97706;
  --danger: #dc2626;
  --teal: #0f9d93;
  --indigo: #4f46e5;
  --sky: #0284c7;
  --amber: #d97706;
  --rose: #e11d48;
  --page-accent: #4f67f6;
  --page-accent-2: #0f9d93;
  --section-accent: #4f67f6;
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.06);
  --shadow-md: 0 10px 24px rgba(16, 24, 40, 0.08);
  --radius: 14px;
  --col-max-ch: 20ch;
  --col-min-ch: 14ch;
  --zebra-row: #eef3ff;
  --zebra-row-module: #e8eeff;
  --zebra-hover-module: #dde7ff;
  --app-max-width: 100vw;
  --sidebar-width: 255px;
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
}

body {
  font-family: Tahoma, Arial, "Segoe UI", sans-serif;
  background:
    linear-gradient(135deg, rgba(79, 103, 246, 0.08), rgba(15, 157, 147, 0.05) 34%, transparent 62%),
    linear-gradient(180deg, #f7f9ff 0%, var(--bg) 38%, #f6f8fb 100%);
  color: var(--text);
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

input,
select,
textarea,
button {
  font: inherit;
}

/* Layout */
.app-shell {
  min-height: 100vh;
  background: var(--bg);
  width: 100%;
  max-width: none;
  margin: 0;
}

.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  left: 0;
  width: var(--sidebar-width);
  background: var(--surface);
  border-right: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  z-index: 40;
  transition: transform 0.25s ease;
}

.brand-head {
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
}

.brand-head-gradient {
  background: linear-gradient(140deg, #4f67f6 0%, #3d56dd 100%);
  border-bottom: 0;
}

.brand-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.brand-logo {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.95);
  padding: 4px;
}

.brand-title {
  margin: 0;
  color: #ffffff;
  font-size: 1.01rem;
  font-weight: 800;
  line-height: 1.25;
}

.brand-subtitle {
  margin: 2px 0 0;
  color: #c9d7ff;
  font-size: 0.76rem;
  font-weight: 600;
}

.brand-credit {
  margin: 4px 0 0;
  color: #e6edff;
  font-size: 0.66rem;
  line-height: 1.35;
  max-width: 170px;
}

.menu {
  display: grid;
  gap: 3px;
  padding: 10px;
  overflow: auto;
  flex: 1;
  align-content: start;
  grid-auto-rows: min-content;
}

.menu a {
  --menu-accent: #314fd9;
  --menu-soft: #eef3ff;
  --menu-soft-strong: #e4ebff;
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 34px;
  border-radius: 9px;
  padding: 6px 10px;
  border: 1px solid transparent;
  border-left: 3px solid transparent;
  position: relative;
  overflow: hidden;
  color: #4b5563;
  font-size: 0.94rem;
  font-weight: 600;
  transition: all 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.menu a i {
  width: 22px;
  height: 22px;
  border-radius: 7px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #dbe3f1;
  background: #ffffff;
  color: #6b7280;
  font-size: 0.82rem;
  transition: all 0.2s ease;
}

.menu a:hover {
  background: var(--menu-soft);
  border-color: var(--menu-soft-strong);
  color: var(--menu-accent);
  transform: translateX(2px);
}

.menu a.active {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--menu-accent) 16%, #ffffff), var(--menu-soft) 58%, #ffffff 130%);
  border-color: color-mix(in srgb, var(--menu-accent) 24%, var(--menu-soft-strong));
  border-left-color: var(--menu-accent);
  border-left-width: 5px;
  padding-left: 8px;
  color: var(--menu-accent);
  font-weight: 850;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.52),
    0 8px 18px color-mix(in srgb, var(--menu-accent) 10%, transparent);
}

.menu a.active i {
  color: #ffffff;
  border-color: transparent;
  background: var(--menu-accent);
  box-shadow: 0 5px 12px color-mix(in srgb, var(--menu-accent) 24%, transparent);
}

.menu a:hover i {
  color: var(--menu-accent);
  border-color: rgba(255, 255, 255, 0.55);
  background: color-mix(in srgb, var(--menu-accent) 10%, #ffffff);
}

.menu a.active:hover i {
  color: #ffffff;
  border-color: transparent;
  background: var(--menu-accent);
}

.menu a:has(i.fa-house) {
  --menu-accent: #2563eb;
  --menu-soft: #e8efff;
  --menu-soft-strong: #dbe7ff;
}

.menu a:has(i.fa-users) {
  --menu-accent: #4f46e5;
  --menu-soft: #ecebff;
  --menu-soft-strong: #ddd9ff;
}

.menu a:has(i.fa-hourglass-half) {
  --menu-accent: #d97706;
  --menu-soft: #fff4e5;
  --menu-soft-strong: #ffe4bf;
}

.menu a:has(i.fa-triangle-exclamation) {
  --menu-accent: #f59e0b;
  --menu-soft: #fff4dd;
  --menu-soft-strong: #ffe8be;
}

.menu a:has(i.fa-boxes-stacked) {
  --menu-accent: #0f766e;
  --menu-soft: #dcfce7;
  --menu-soft-strong: #c6f6d5;
}

.menu a:has(i.fa-car-side) {
  --menu-accent: #0f766e;
  --menu-soft: #e6fffb;
  --menu-soft-strong: #bff3ea;
}

.menu a:has(i.fa-hand-holding-heart) {
  --menu-accent: #be185d;
  --menu-soft: #ffe4f0;
  --menu-soft-strong: #ffd2e6;
}

.menu a:has(i.fa-user-gear) {
  --menu-accent: #475569;
  --menu-soft: #edf2f7;
  --menu-soft-strong: #dfe7f1;
}

.menu a:has(i.fa-user-shield) {
  --menu-accent: #7c3aed;
  --menu-soft: #f3e8ff;
  --menu-soft-strong: #ead7ff;
}

.menu a:has(i.fa-gears) {
  --menu-accent: #2563eb;
  --menu-soft: #e7f0ff;
  --menu-soft-strong: #d7e6ff;
}

.menu a:has(i.fa-key) {
  --menu-accent: #b45309;
  --menu-soft: #fff2d9;
  --menu-soft-strong: #ffe6be;
}

.menu-group {
  display: grid;
  gap: 2px;
}

.menu-group-title {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 30px;
  border-radius: 9px;
  padding: 5px 10px;
  color: #475569;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  background: #f8fafc;
  border: 1px dashed #dbe2ee;
}

.menu-group-title i {
  width: 16px;
  color: #64748b;
  font-size: 0.84rem;
}

.menu-group-title.active {
  color: #2745c9;
  background: #eef2ff;
  border-color: #c7d2fe;
}

.menu-group-title.active i {
  color: #2745c9;
}

.menu a.menu-sub {
  margin-left: 6px;
  min-height: 30px;
  padding: 5px 9px;
  font-size: 0.84rem;
  color: #4b5563;
}

.sidebar-kif-reminder[hidden] {
  display: none;
}

.sidebar-kif-reminder {
  margin: 8px 12px 2px;
  border: 1px solid #fecaca;
  border-top: 3px solid #dc2626;
  border-radius: 10px;
  background: linear-gradient(180deg, #fff7ed 0%, #fff 100%);
  box-shadow: 0 10px 24px rgba(185, 28, 28, 0.11);
  padding: 9px;
  display: grid;
  gap: 8px;
  flex: 0 0 auto;
}

.sidebar-kif-reminder-head {
  display: grid;
  grid-template-columns: 28px 1fr auto;
  gap: 8px;
  align-items: center;
}

.sidebar-kif-reminder-icon {
  width: 28px;
  height: 28px;
  border-radius: 9px;
  background: #fee2e2;
  color: #b91c1c;
  display: inline-grid;
  place-items: center;
  font-size: 0.82rem;
}

.sidebar-kif-reminder-title {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.sidebar-kif-reminder-title strong {
  color: #111827;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.15;
}

.sidebar-kif-reminder-title span {
  color: #6b7280;
  font-size: 0.66rem;
  font-weight: 700;
  line-height: 1.15;
}

.sidebar-kif-reminder-count {
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  padding: 3px 6px;
  font-size: 0.64rem;
  font-weight: 900;
  white-space: nowrap;
}

.sidebar-kif-reminder-list {
  display: grid;
  gap: 6px;
}

.sidebar-kif-reminder-body {
  display: grid;
  gap: 2px;
  border: 1px solid #fde2c3;
  border-radius: 9px;
  background: #ffffff;
  padding: 8px;
}

.sidebar-kif-reminder-body:hover {
  border-color: #fca5a5;
  background: #fffafa;
}

.sidebar-kif-reminder-person,
.sidebar-kif-reminder-detail {
  color: #111827;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.2;
}

.sidebar-kif-reminder-plate,
.sidebar-kif-reminder-date {
  color: #667085;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
}

.sidebar-kif-reminder-state {
  justify-self: start;
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  padding: 2px 6px;
  font-size: 0.63rem;
  font-weight: 900;
}

.sidebar-kif-reminder-more {
  justify-self: start;
  margin-top: 3px;
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  padding: 3px 7px;
  font-size: 0.65rem;
  font-weight: 900;
}

.sidebar-kif-reminder-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.sidebar-kif-reminder-btn {
  min-height: 28px;
  border-radius: 8px;
  background: #eef2ff;
  color: #1f2937;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 0.7rem;
  font-weight: 900;
}

.sidebar-kif-reminder-btn.primary {
  background: #4f67f6;
  color: #ffffff;
}

.sidebar-kif-reminder-btn:hover {
  filter: brightness(0.97);
}

.sidebar-user-card {
  margin: 10px 12px 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8fafd;
  padding: 10px;
  display: grid;
  grid-template-columns: 34px 1fr auto;
  gap: 10px;
  align-items: center;
}

.user-avatar {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: linear-gradient(135deg, #4f67f6, #7b5ef6);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 0.82rem;
  font-weight: 800;
}

.user-meta {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.user-meta strong {
  font-size: 0.82rem;
  line-height: 1.2;
  color: #111827;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.user-meta small {
  font-size: 0.72rem;
  color: #6b7280;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.logout-btn {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: transparent;
  border: 1px solid transparent;
  color: #94a3b8;
  display: inline-grid;
  place-items: center;
  transition: all 0.2s ease;
}

.logout-btn:hover {
  color: #dc2626;
  border-color: #fecaca;
  background: #fff1f2;
}

.main-pane {
  margin-left: var(--sidebar-width);
  width: calc(100% - var(--sidebar-width));
  max-width: none;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  height: 56px;
  background: rgba(255, 255, 255, 0.93);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 14px;
}

.topbar-left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 0 0 auto;
}

.sidebar-toggle {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: #fff;
  color: #4b5563;
  display: none;
  align-items: center;
  justify-content: center;
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.topbar-btn {
  border: 0;
  border-radius: 9px;
  height: 32px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  background: var(--teal);
  font-size: 0.78rem;
  font-weight: 700;
}

.topbar-btn:hover {
  background: #0c877f;
}

.topbar-icon-btn {
  width: 32px;
  height: 32px;
  border-radius: 9px;
  border: 1px solid transparent;
  background: transparent;
  color: #4b5563;
  display: inline-grid;
  place-items: center;
}

.topbar-icon-btn:hover {
  border-color: var(--border);
  background: #f8fafc;
}

.content {
  width: 100%;
  max-width: 100%;
  padding: clamp(14px, 1.6vw, 22px) clamp(12px, 1.8vw, 22px) clamp(18px, 2.2vw, 26px);
}

@media (min-width: 1501px) {
  .topbar {
    display: none;
  }

  .content:has(.shift-schedule-page),
  .content:has(.kif-module-shell),
  .content:has(.plate-module-shell),
  .content:has(.plate-query-shell),
  .content:has(.plate-lookup-shell),
  .content:has(.user-summary-section) {
    padding-top: 0;
  }
}

/* Generic content */
.page-title {
  position: relative;
  display: inline-block;
  margin: 0;
  font-size: clamp(1.75rem, 2.2vw, 2.35rem);
  font-weight: 800;
  letter-spacing: 0;
  color: #1e293b;
}

.page-title::after {
  content: "";
  display: block;
  width: min(100%, 112px);
  height: 4px;
  margin-top: 7px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--page-accent), var(--page-accent-2));
}

.page-subtitle {
  margin: 9px 0 0;
  color: var(--muted);
  font-size: 1.02rem;
}

.section {
  margin-top: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #ffffff 78%, #fbfdff 100%);
  border: 1px solid #dbe4f2;
  border-radius: var(--radius);
  box-shadow:
    inset 0 3px 0 color-mix(in srgb, var(--section-accent) 72%, #ffffff),
    0 10px 26px rgba(31, 41, 55, 0.05);
  padding: 16px 18px;
}

h2 {
  margin: 0 0 8px;
  font-size: 1.2rem;
}

h3 {
  margin: 0 0 6px;
}

.grid {
  display: grid;
  gap: 12px;
}

.grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

form .grid.two,
form .entry-grid-two,
form .password-grid {
  grid-template-columns: repeat(2, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

form .grid.three,
form .entry-grid-three {
  grid-template-columns: repeat(3, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

form .kif-penalty-amount-grid {
  display: grid;
  grid-template-columns: minmax(18ch, 28ch) minmax(22ch, 32ch) minmax(10ch, 16ch);
  gap: 10px;
  align-items: start;
}

.assignment-form-section {
  width: min(100%, 980px);
}

.assignment-form-section form {
  display: grid;
  gap: 12px;
}

.assignment-manage-section {
  width: min(100%, 1040px);
}

.assignment-mode-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.assignment-mode-tab {
  --assignment-mode-accent: #4f67f6;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  border: 1px solid #dbe4f2;
  border-bottom: 3px solid transparent;
  border-radius: 10px;
  background: #ffffff;
  color: #475569;
  font-weight: 900;
}

.assignment-mode-tab:nth-child(2) {
  --assignment-mode-accent: #c47a00;
}

.assignment-mode-tab:nth-child(3) {
  --assignment-mode-accent: #0f766e;
}

.assignment-mode-tab i {
  color: var(--assignment-mode-accent);
}

.assignment-mode-tab.active,
.assignment-mode-tab:hover {
  border-color: color-mix(in srgb, var(--assignment-mode-accent) 34%, #dbe4f2);
  border-bottom-color: var(--assignment-mode-accent);
  background: color-mix(in srgb, var(--assignment-mode-accent) 8%, #ffffff);
  color: #172033;
}

.assignment-form-panel {
  display: grid;
  gap: 12px;
}

.assignment-panel-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(100%, 860px);
  padding: 14px 16px;
  border: 2px solid #818cf8;
  border-left: 6px solid #4f67f6;
  border-radius: 12px;
  background: linear-gradient(180deg, #eef2ff 0%, #ffffff 100%);
  box-shadow: 0 10px 22px rgba(79, 103, 246, 0.08);
}

.assignment-panel-heading i {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  background: #dbeafe;
  color: #4f67f6;
  box-shadow: inset 0 0 0 1px #bfdbfe;
}

.assignment-panel-heading.transfer i {
  background: #fff7ed;
  color: #c47a00;
}

.assignment-panel-heading.office i {
  background: #ecfdf5;
  color: #0f766e;
}

.assignment-panel-heading strong {
  display: block;
  font-size: 1.05rem;
  color: #172033;
}

.assignment-panel-heading p {
  margin: 2px 0 0;
  color: #64748b;
  font-weight: 800;
}

.assignment-operation-grid,
.assignment-note-field,
.assignment-selected-record {
  width: min(100%, 860px);
}

.assignment-subsection {
  width: min(100%, 860px);
  margin-top: 2px;
  padding: 8px 0 0;
  border-top: 1px solid #e5ecf6;
}

.assignment-subsection strong {
  color: #172033;
  font-size: 1rem;
}

.assignment-device-subsection {
  margin-top: 8px;
}

.assignment-note-field input {
  width: 100%;
}

.assignment-personnel-grid {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(320px, 1fr);
  gap: 12px;
  align-items: stretch;
  width: min(100%, 860px);
}

.assignment-top-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1fr);
  gap: 12px;
  align-items: end;
  width: min(100%, 860px);
}

.assignment-personnel-grid label,
.assignment-top-grid label,
.assignment-personnel-field,
.assignment-meta-grid label {
  min-width: 0;
}

.assignment-manage-section .assignment-personnel-grid label,
.assignment-manage-section .assignment-personnel-field,
.assignment-manage-section .assignment-meta-grid label,
.assignment-manage-section .assignment-top-grid label {
  position: relative;
  align-content: start;
  min-height: 112px;
  padding: 12px;
  border: 2px solid #f59e0b;
  border-left-width: 5px;
  border-radius: 12px;
  background: linear-gradient(180deg, #fffbeb 0%, #ffffff 100%);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.045);
  color: #172033;
}

.assignment-device-picker input,
.assignment-personnel-grid select,
.assignment-top-grid select,
.assignment-personnel-field select,
.assignment-personnel-field input,
.assignment-meta-grid input {
  width: 100%;
  max-width: 100%;
}

.assignment-manage-section .assignment-device-picker input,
.assignment-manage-section .assignment-personnel-grid select,
.assignment-manage-section .assignment-personnel-field select,
.assignment-manage-section .assignment-personnel-field input,
.assignment-manage-section .assignment-meta-grid input {
  border-color: #f59e0b;
  border-width: 2px;
  background: #fffbeb;
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.12);
}

.assignment-manage-section .assignment-device-picker input:focus,
.assignment-manage-section .assignment-personnel-grid select:focus,
.assignment-manage-section .assignment-personnel-field select:focus,
.assignment-manage-section .assignment-personnel-field input:focus,
.assignment-manage-section .assignment-meta-grid input:focus {
  border-color: #4f67f6;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(79, 103, 246, 0.16), inset 0 0 0 1px rgba(79, 103, 246, 0.16);
}

.assignment-manage-section .assignment-device-picker input::placeholder {
  color: #7c5f16;
  opacity: 0.88;
}

.assignment-manage-section .assignment-personnel-field input::placeholder {
  color: #7c5f16;
  opacity: 0.88;
}

.assignment-manage-section .field-required {
  position: relative;
}

.assignment-manage-section .field-required::after {
  content: "Doldurulacak";
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  font-size: 0.72rem;
  font-weight: 900;
}

.assignment-device-selected {
  width: min(100%, 860px);
  margin: 0;
  padding: 10px 12px;
  border: 2px solid #818cf8;
  border-left: 5px solid #4f67f6;
  border-radius: 8px;
  background: #e0e7ff;
  color: #1e2a5a;
  font-weight: 900;
}

.assignment-device-list {
  display: grid;
  gap: 0;
  width: min(100%, 860px);
  max-height: 320px;
  overflow: auto;
  margin: 0 0 12px;
  padding: 8px;
  border: 2px solid #818cf8;
  border-radius: 12px;
  background: #f8fbff;
  box-shadow: inset 5px 0 0 #4f67f6, 0 12px 24px rgba(79, 103, 246, 0.08);
}

.assignment-device-list[hidden] {
  display: none !important;
}

.assignment-center-notice {
  position: fixed;
  top: 50%;
  left: calc(var(--sidebar-width) + (100vw - var(--sidebar-width)) / 2);
  z-index: 6200;
  width: min(520px, calc(100vw - var(--sidebar-width) - 56px));
  max-width: calc(100vw - 32px);
  padding: 20px 24px;
  border: 2px solid #f59e0b;
  border-radius: 18px;
  background: linear-gradient(180deg, #fffaf0 0%, #fef3c7 100%);
  color: #78350f;
  box-shadow: 0 24px 52px rgba(15, 23, 42, 0.22);
  font-size: 1.06rem;
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, calc(-50% + 10px));
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.assignment-center-notice.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, -50%);
}

.assignment-center-notice.info {
  border-color: #86efac;
  background: linear-gradient(180deg, #f0fff4 0%, #dcfce7 100%);
  color: #14532d;
}

.assignment-device-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #cbd5e1;
  border-bottom-color: #bcc8d8;
  border-radius: 0;
  background: #ffffff;
  color: #172033;
  text-align: left;
  cursor: pointer;
  transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.assignment-device-option[hidden],
.assignment-personnel-option[hidden] {
  display: none !important;
}

.assignment-device-option:first-of-type {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

.assignment-device-option:last-of-type {
  border-bottom-color: #cbd5e1;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

.assignment-device-option.assignment-device-option-even {
  background: #eef2ff;
}

.assignment-device-option.assignment-device-option-odd {
  background: #ffffff;
}

.assignment-device-option span {
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.assignment-device-option small {
  padding: 4px 8px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px #cbd5e1;
}

.assignment-device-option:hover,
.assignment-device-option.selected {
  border-color: #4f67f6;
  background: #eef2ff;
  box-shadow: inset 4px 0 0 #4f67f6, 0 8px 16px rgba(79, 103, 246, 0.12);
  transform: translateX(2px);
}

.assignment-device-option.selected small {
  background: #dbeafe;
  color: #1e3a8a;
}

.assignment-device-empty {
  padding: 12px;
  color: #64748b;
  font-weight: 800;
}

.assignment-personnel-field {
  width: 100%;
}

.assignment-personnel-field > label {
  display: block;
  margin-bottom: 6px;
}

.assignment-personnel-list {
  position: absolute;
  z-index: 20;
  left: 12px;
  right: 12px;
  top: calc(100% - 42px);
  display: grid;
  max-height: 360px;
  overflow: auto;
  padding: 8px;
  border: 2px solid #818cf8;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 18px 36px rgba(15, 23, 42, 0.18), inset 5px 0 0 #4f67f6;
}

.assignment-personnel-list[hidden] {
  display: none;
}

.assignment-personnel-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #cbd5e1;
  border-bottom-color: #bcc8d8;
  border-radius: 0;
  background: #ffffff;
  color: #172033;
  text-align: left;
  cursor: pointer;
}

.assignment-personnel-option:first-of-type {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

.assignment-personnel-option:last-of-type {
  border-bottom-color: #cbd5e1;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

.assignment-personnel-option.assignment-personnel-option-even {
  background: #eef2ff;
}

.assignment-personnel-option.assignment-personnel-option-odd {
  background: #ffffff;
}

.assignment-personnel-option span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 900;
}

.assignment-personnel-option small {
  padding: 4px 8px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px #cbd5e1;
}

.assignment-personnel-option:hover,
.assignment-personnel-option.selected {
  border-color: #4f67f6;
  background: #e0e7ff;
  box-shadow: inset 4px 0 0 #4f67f6;
}

.assignment-personnel-empty {
  padding: 12px;
  color: #64748b;
  font-weight: 800;
}

.assignment-personnel-list.is-empty::after {
  content: "EÅŸleÅŸen aktif personel bulunamadÄ±.";
  padding: 12px;
  color: #64748b;
  font-weight: 900;
}

.assignment-meta-grid {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(320px, 1fr);
  gap: 12px;
  align-items: stretch;
  width: min(100%, 860px);
}

form .kif-penalty-amount-grid select,
form .kif-penalty-amount-grid input {
  width: 100%;
  min-width: 0;
  max-width: none;
}

form .kif-penalty-amount-grid input[name="annual_card_multiplier"] {
  text-align: center;
}

form .tutanak-meta-grid.grid.two {
  grid-template-columns: minmax(16ch, 22ch) minmax(30ch, 56ch);
}

form .tutanak-meta-grid .tutanak-editor-select {
  width: 100%;
  max-width: 100%;
}

form.gumruk-form .grid.two {
  grid-template-columns: repeat(2, minmax(calc(var(--col-min-ch) + 35ch), calc(var(--col-max-ch) + 35ch)));
}

form.gumruk-form .tutanak-meta-grid.grid.two {
  grid-template-columns: repeat(2, minmax(calc(var(--col-min-ch) + 35ch), calc(var(--col-max-ch) + 35ch)));
}

form.gumruk-form select {
  width: 100%;
  max-width: 100%;
}

form.gumruk-form .gumruk-material-grid.grid.two {
  grid-template-columns: 1fr;
}

form .gumruk-material-grid.grid.two {
  grid-template-columns: 1fr;
}

form .gumruk-material-grid {
  gap: 10px;
}

form .gumruk-material-block {
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px 12px;
  max-width: 92ch;
}

form .gumruk-material-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

form .gumruk-material-label {
  margin: 0;
  font-size: 0.98rem;
  font-weight: 700;
  color: #1f2f49;
}

form .gumruk-material-row-head,
form .gumruk-material-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(108px, 132px) 38px;
  gap: 8px;
  align-items: center;
}

form .gumruk-material-row-head {
  color: #64748b;
  font-size: 0.8rem;
  font-weight: 700;
  margin-bottom: 4px;
  padding: 0 2px;
}

form .gumruk-material-actions-head {
  text-align: center;
}

form .gumruk-material-rows {
  display: grid;
  gap: 7px;
}

form .gumruk-material-row input {
  min-height: 38px;
  border-radius: 10px;
  font-size: 0.94rem;
}

form .gumruk-row-remove-btn {
  width: 36px;
  height: 36px;
  min-height: 36px;
  justify-self: center;
}

form .gumruk-row-add-btn {
  min-height: 36px;
  padding: 7px 11px;
  justify-self: end;
  white-space: nowrap;
}

form .gumruk-material-grid [data-direction-block].is-inactive {
  opacity: 0.6;
}

form .gumruk-material-grid [data-direction-block].is-inactive input {
  background: #f3f6fb;
  cursor: not-allowed;
}

.gumruk-live-section {
  padding: 14px;
}

.gumruk-live-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.gumruk-live-layout form.gumruk-form .grid.two,
.gumruk-live-layout form.gumruk-form .tutanak-meta-grid.grid.two {
  grid-template-columns: 1fr;
}

.gumruk-live-layout form .gumruk-material-block {
  max-width: 100%;
}

.gumruk-live-preview {
  position: sticky;
  top: 78px;
  min-width: 0;
  overflow: hidden;
}

.gumruk-preview-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.gumruk-preview-head h2 {
  margin: 0;
  color: #1e293b;
}

.gumruk-preview-head span {
  color: #64748b;
  font-weight: 700;
  font-size: 0.88rem;
}

.gumruk-preview-paper {
  display: grid;
  grid-template-rows: auto auto auto auto minmax(0, 1fr);
  width: min(100%, 620px);
  aspect-ratio: 210 / 297;
  margin: 0 auto;
  box-sizing: border-box;
  padding: clamp(24px, 5.2%, 42px) clamp(26px, 6%, 48px) clamp(20px, 4.6%, 34px);
  background: #fff;
  border: 1px solid #d7dce6;
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.16);
  color: #252f3f;
  font-size: 0.76rem;
  line-height: 1.38;
  overflow: hidden;
}

.gumruk-preview-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.gumruk-preview-top img {
  width: 54px;
  height: 54px;
  object-fit: contain;
}

.gumruk-preview-title {
  display: grid;
  gap: 3px;
  margin: 26px 0 22px;
  text-align: center;
}

.gumruk-preview-title strong {
  font-size: 1.02em;
}

.gumruk-preview-title span {
  font-weight: 700;
  font-size: 0.82em;
}

.gumruk-preview-body {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.gumruk-preview-body p {
  margin: 0;
  text-align: justify;
  text-indent: 32px;
}

.gumruk-preview-material-box {
  display: grid;
  gap: 7px;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #5b667a;
  border-radius: 5px;
  overflow: hidden;
}

.gumruk-preview-material-box strong {
  font-size: 0.86em;
}

.gumruk-preview-material-box table {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  border-collapse: collapse;
  table-layout: fixed;
}

.gumruk-preview-material-box th,
.gumruk-preview-material-box td {
  border: 1px solid #3f4a5f;
  padding: 3px 5px;
  font-size: 0.82em;
  line-height: 1.12;
  text-align: left;
  vertical-align: middle;
  overflow-wrap: anywhere;
}

.gumruk-preview-material-box th:first-child,
.gumruk-preview-material-box td:first-child {
  width: 34px;
  text-align: center;
  white-space: nowrap;
}

.gumruk-preview-material-box th:last-child,
.gumruk-preview-material-box td:last-child {
  width: 58px;
  text-align: center;
  white-space: nowrap;
}

.gumruk-preview-material-box th {
  background: #eef2ff;
}

.gumruk-preview-material-box ul {
  margin: 0;
  padding-left: 18px;
}

.gumruk-preview-empty {
  margin: 0;
  color: #64748b;
  font-size: 0.88em;
}

.gumruk-preview-signature {
  align-self: start;
  display: grid;
  justify-items: center;
  gap: 3px;
  margin-top: 76px;
  font-weight: 700;
}

.gumruk-preview-footer {
  align-self: end;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 32px;
  font-size: 0.8em;
}

.gumruk-preview-footer div {
  display: grid;
}

.gumruk-preview-footer > strong {
  align-self: end;
  justify-self: end;
  color: #c7bd1a;
}

@media (max-width: 1180px) {
  .gumruk-live-layout {
    grid-template-columns: 1fr;
  }

  .gumruk-live-preview {
    position: static;
  }

  .gumruk-preview-paper {
    width: min(100%, 640px);
  }
}

@media (max-width: 640px) {
  .gumruk-live-section {
    padding: 10px;
  }

  .gumruk-preview-paper {
    padding: 22px 18px;
    font-size: 0.68rem;
  }

  .gumruk-preview-footer {
    grid-template-columns: 1fr;
  }

  .gumruk-preview-footer > strong {
    justify-self: start;
  }
}

form.operation-role-mode-form select {
  width: 100%;
  max-width: 100%;
}

.operation-role-mode-section {
  max-width: 860px;
}

.entry-mode-section {
  max-width: 900px;
}

.entry-mode-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 14px;
}

.entry-mode-card {
  min-height: 190px;
  border: 1px solid #dbe4f4;
  border-radius: 12px;
  padding: 20px;
  display: grid;
  justify-items: start;
  gap: 10px;
  background: #ffffff;
  color: #172033;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.entry-mode-card:hover,
.entry-mode-card:focus-visible {
  border-color: #6366f1;
  outline: 3px solid rgba(99, 102, 241, 0.18);
  transform: translateY(-1px);
}

.entry-mode-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #eef2ff;
  color: #4f46e5;
  font-size: 1.35rem;
}

.entry-mode-card strong {
  font-size: 1.25rem;
  font-weight: 900;
}

.entry-mode-card small {
  color: #657086;
  font-size: 0.92rem;
  line-height: 1.4;
  font-weight: 800;
}

.mobile-field-home {
  max-width: 760px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 18px;
}

.mobile-field-home-icon {
  width: 58px;
  height: 58px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: #eef2ff;
  color: #4f46e5;
  font-size: 1.55rem;
}

.mobile-field-home h2 {
  margin: 0 0 4px;
  color: #172033;
  font-size: 1.35rem;
}

.mobile-field-home p {
  margin: 0;
  color: #657086;
  font-weight: 800;
  line-height: 1.35;
}

form {
  display: grid;
  gap: 12px;
}

label {
  display: grid;
  gap: 6px;
  color: #1f2f49;
  font-size: 0.98rem;
  font-weight: 700;
}

input:not([type="checkbox"]):not([type="radio"]),
textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d5deeb;
  border-radius: 11px;
  background: #fff;
  color: #1f2937;
  padding: 10px 12px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

select {
  width: auto;
  min-height: 42px;
  min-width: 8ch;
  max-width: min(100%, 20ch);
  border: 1px solid #d5deeb;
  border-radius: 11px;
  background: #fff;
  color: #1f2937;
  padding: 10px 34px 10px 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

select[multiple] {
  width: min(100%, 20ch);
  min-height: 126px;
  white-space: normal;
  padding-right: 12px;
}

.settings-nav-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.85fr);
  gap: 12px;
  margin: 14px 0 18px;
  max-width: 1320px;
}

.settings-nav-group {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.05);
}

.settings-nav-group-title {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  color: #62708a;
  font-size: 0.78rem;
  font-weight: 800;
}

.settings-nav-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 8px;
}

.settings-nav-group-system .settings-nav-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-nav-card {
  --settings-nav-accent: #4f67f6;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 66px;
  padding: 10px;
  border: 1px solid #d7e0ee;
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  color: #263652;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.settings-nav-card:hover {
  border-color: color-mix(in srgb, var(--settings-nav-accent) 36%, #d7e0ee);
  background: color-mix(in srgb, var(--settings-nav-accent) 7%, #ffffff);
  transform: translateY(-1px);
}

.settings-nav-card.active {
  border-color: color-mix(in srgb, var(--settings-nav-accent) 54%, #d7e0ee);
  background: color-mix(in srgb, var(--settings-nav-accent) 12%, #ffffff);
  box-shadow: inset 4px 0 0 var(--settings-nav-accent), 0 8px 18px rgba(16, 24, 40, 0.06);
}

.settings-nav-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--settings-nav-accent) 12%, #ffffff);
  color: var(--settings-nav-accent);
}

.settings-nav-card.active .settings-nav-icon {
  background: var(--settings-nav-accent);
  color: #ffffff;
}

.settings-nav-text {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.settings-nav-text strong {
  overflow: hidden;
  color: #17233b;
  font-size: 0.98rem;
  line-height: 1.18;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-nav-text small {
  overflow: hidden;
  color: #66758f;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-nav-card[data-tone="general"] {
  --settings-nav-accent: #4f67f6;
}

.settings-nav-card[data-tone="organization"] {
  --settings-nav-accent: #2563eb;
}

.settings-nav-card[data-tone="definitions"] {
  --settings-nav-accent: #0f9d93;
}

.settings-nav-card[data-tone="system"] {
  --settings-nav-accent: #7c3aed;
}

.settings-nav-card[data-tone="logs"] {
  --settings-nav-accent: #d97706;
}

@media (max-width: 1180px) {
  .settings-nav-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .settings-nav-group-system .settings-nav-actions,
  .settings-nav-actions {
    grid-template-columns: 1fr;
  }

  .settings-nav-card {
    min-height: 58px;
  }
}

.settings-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 14px 0 16px;
}

.settings-tab {
  --settings-tab-accent: #4f67f6;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid #d5deeb;
  border-left: 4px solid transparent;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  color: #33435e;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.03);
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.settings-tab i {
  color: var(--settings-tab-accent);
}

.settings-tab:hover {
  background: color-mix(in srgb, var(--settings-tab-accent) 9%, #ffffff);
  border-color: #bfd0f0;
  color: #21324e;
  transform: translateY(-1px);
}

.settings-tab.active {
  background: color-mix(in srgb, var(--settings-tab-accent) 13%, #ffffff);
  border-color: color-mix(in srgb, var(--settings-tab-accent) 34%, #dbe4f2);
  border-left-color: var(--settings-tab-accent);
  color: #173158;
}

.settings-tab.active i {
  color: var(--settings-tab-accent);
}

.settings-tab:has(.fa-sliders),
.settings-tab:has(.fa-sliders-h) {
  --settings-tab-accent: #4f67f6;
}

.settings-tab:has(.fa-gear),
.settings-tab:has(.fa-gears) {
  --settings-tab-accent: #0f9d93;
}

.settings-tab:has(.fa-sitemap) {
  --settings-tab-accent: #2563eb;
}

.settings-tab:has(.fa-shield-halved) {
  --settings-tab-accent: #7c3aed;
}

.settings-tab:has(.fa-clock-rotate-left) {
  --settings-tab-accent: #d97706;
}

.settings-subtabs {
  margin-top: -2px;
  margin-bottom: 12px;
}

.settings-subtab {
  min-height: 36px;
  padding: 7px 12px;
  background: #ffffff;
  border-color: #dbe4f2;
  color: #2f4468;
}

.settings-subtab i {
  color: #6a7f9f;
}

.settings-subtab.active {
  background: #eef4ff;
  border-color: #a8bde6;
  color: #1f3c69;
}

.settings-subtab.active i {
  color: #3c6398;
}

.settings-definitions-section {
  max-width: 1120px;
}

.settings-definitions-grid {
  grid-template-columns: minmax(360px, 460px) minmax(380px, 520px);
  align-items: end;
}

.settings-definitions-grid textarea {
  min-height: 120px;
  resize: vertical;
}

.settings-definitions-grid select,
.settings-definitions-grid input[type="text"] {
  width: 100%;
  min-width: 22ch;
  max-width: none;
}

.settings-system-page-shell {
  width: min(1180px, 100%);
  margin: 0 auto 0 0;
}

.content:has(.settings-system-page-shell) > .page-title,
.content:has(.settings-system-page-shell) > .page-subtitle {
  width: min(1180px, 100%);
  margin-right: auto;
}

.settings-system-page-shell .settings-nav-shell,
.settings-system-page-shell .settings-subtabs,
.settings-system-page-shell .settings-backup-section,
.settings-system-page-shell .settings-system-update-section {
  width: 100%;
  max-width: none;
}

.settings-system-page-shell .settings-nav-shell {
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.85fr);
}

.settings-system-page-shell .settings-nav-actions {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.settings-system-page-shell .settings-nav-group-system .settings-nav-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-system-page-shell .settings-server-download-form {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-system-page-shell .settings-server-download-form label:nth-child(4),
.settings-system-page-shell .settings-server-download-form label:nth-child(5) {
  grid-column: span 3;
}

.settings-system-page-shell .settings-server-download-form button {
  width: max-content;
}

@media (max-width: 980px) {
  .settings-system-page-shell .settings-nav-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .settings-system-page-shell .settings-server-download-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .settings-system-page-shell .settings-server-download-form label:nth-child(4),
  .settings-system-page-shell .settings-server-download-form label:nth-child(5) {
    grid-column: auto;
  }

  .settings-system-page-shell .settings-server-download-form button {
    width: 100%;
  }
}

.settings-log-page-shell {
  width: min(1180px, 100%);
  margin: 0 auto 0 0;
}

.settings-log-page-shell .settings-nav-shell,
.settings-log-page-shell .settings-log-section {
  width: 100%;
  max-width: none;
}

.settings-log-page-shell .settings-nav-shell {
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.85fr);
}

.settings-log-page-shell .settings-nav-actions {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.settings-log-page-shell .settings-nav-group-system .settings-nav-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-log-filter-form input[type="text"] {
  width: min(100%, 32ch);
  max-width: none;
}

.settings-log-table-wrap {
  max-width: 100%;
}

.settings-log-table.module-table {
  width: 100%;
  min-width: 860px;
  table-layout: fixed;
}

.settings-log-date-col {
  width: 138px;
}

.settings-log-user-col {
  width: 150px;
}

.settings-log-action-col {
  width: 126px;
}

.settings-log-module-col {
  width: 100px;
}

.settings-log-table th,
.settings-log-table td {
  vertical-align: top;
}

.settings-log-date-cell,
.settings-log-user-cell,
.settings-log-action-cell,
.settings-log-module-cell {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-log-detail-cell {
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.35;
}

@media (max-width: 1220px) {
  .settings-log-page-shell {
    width: 100%;
  }
}

@media (max-width: 980px) {
  .settings-log-page-shell .settings-nav-shell {
    grid-template-columns: 1fr;
  }
}

.settings-team-reporter-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(34rem, 1fr));
  justify-content: start;
  gap: 12px;
  margin-top: 10px;
  width: min(100%, 96rem);
}

.settings-reporter-panels {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: start;
}

.settings-reporter-panel {
  min-width: 0;
}

.settings-team-reporter-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #f8fbff;
  padding: 10px 12px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.settings-team-reporter-empty {
  min-height: 148px;
  justify-content: center;
}

.settings-selected-summary-card {
  min-width: 34rem;
}

.settings-team-reporter-grid > .settings-team-reporter-card:not(.settings-selected-summary-card):not(.settings-team-reporter-empty) {
  min-height: 370px;
}

.settings-team-reporter-card.is-readonly {
  background: #f4f6fb;
}

.settings-team-reporter-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  padding: 7px 11px;
  border: 1px solid #b9c8ff;
  border-radius: 999px;
  color: #243268;
  background: linear-gradient(135deg, #eef3ff 0%, #f7fbff 100%);
  box-shadow: 0 8px 18px rgba(83, 101, 238, 0.12);
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: anywhere;
}

.settings-team-reporter-title i {
  color: #5865f2;
}

.settings-team-reporter-head {
  display: grid;
  grid-template-columns: max-content minmax(12rem, 1fr) minmax(0, 190px);
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.settings-team-name-filter-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #526179;
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.settings-team-name-filter-wrap span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #4f5f78;
}

.settings-team-name-filter-wrap i {
  color: #5865f2;
}

.settings-team-name-filter {
  width: 100%;
  min-width: 0;
  height: 34px;
  border: 1px solid #c9d5ea;
  border-radius: 999px;
  background: #ffffff;
  color: #172033;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 900;
  padding: 0 12px;
}

.settings-team-name-filter:focus {
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(79, 103, 246, 0.14);
}

.settings-team-unit-filter-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  justify-self: end;
  min-width: 0;
  max-width: 100%;
  color: #526179;
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.settings-team-unit-filter {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  height: 34px;
  border: 1px solid #c9d5ea;
  border-radius: 999px;
  background: #ffffff;
  color: #172033;
  font: inherit;
  font-size: 0.76rem;
  font-weight: 900;
  padding: 0 34px 0 12px;
}

.settings-team-reporter-list {
  display: grid;
  gap: 6px;
  align-content: start;
  border: 1px solid #d5deeb;
  border-radius: 10px;
  background: #fff;
  padding: 8px;
  min-height: 244px;
  max-height: 288px;
  overflow: auto;
  grid-auto-rows: max-content;
}

.settings-team-reporter-grid > .settings-team-reporter-card:not(.settings-selected-summary-card):not(.settings-team-reporter-empty) .settings-team-reporter-list {
  flex: 1 1 auto;
  min-height: 304px;
  max-height: 304px;
}

.settings-team-reporter-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 286px;
  justify-content: stretch;
  align-items: center;
  gap: 8px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  min-height: auto;
  border: 1px solid #e1e7f3;
  border-radius: 8px;
  padding: 9px 10px;
  background: #fff;
  color: #1f2f49;
  font-size: 0.94rem;
  line-height: 1.25;
  overflow: visible;
}

.settings-team-reporter-list .settings-team-reporter-item:nth-child(odd) {
  background: #ffffff;
}

.settings-team-reporter-list .settings-team-reporter-item:nth-child(even) {
  border-color: #d8e2ff;
  background: #eef3ff;
}

.settings-team-reporter-list .settings-team-reporter-item:hover {
  border-color: #b8c6ff;
  background: #e7edff;
}

.settings-team-reporter-list .settings-team-reporter-item.is-filtered-out {
  display: none;
}

.settings-team-reporter-list .settings-team-reporter-item.is-zebra-odd {
  background: #ffffff;
}

.settings-team-reporter-list .settings-team-reporter-item.is-zebra-even {
  border-color: #d8e2ff;
  background: #eef3ff;
}

.settings-team-reporter-item input[type="checkbox"] {
  margin: 0;
}

.settings-person-assignment-name {
  display: grid;
  gap: 2px;
  min-width: 0;
  max-width: 100%;
}

.settings-person-assignment-name strong,
.settings-person-assignment-name small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-person-assignment-name strong {
  color: #172033;
  font-size: 0.98rem;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  line-height: 1.15;
}

.settings-person-assignment-name small {
  color: #64748b;
  font-size: 0.74rem;
  font-weight: 800;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
}

.settings-assignment-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 286px;
  max-width: 286px;
  justify-content: stretch;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.settings-assignment-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 30px;
  padding: 4px 6px;
  border: 1px solid #d5deeb;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-size: 0.76rem;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
  justify-content: center;
  min-width: 0;
  max-width: 100%;
}

.settings-assignment-toggle input {
  margin: 0;
}

.settings-assignment-toggle:has(input:disabled) {
  cursor: default;
  opacity: 0.85;
}

.settings-assignment-toggle-muted {
  border-color: #d7deee;
  color: #64748b;
  background: #f1f5f9;
  cursor: default;
}

.settings-assignment-toggle-inventory {
  border-color: #99f6e4;
  color: #0f766e;
  background: #f0fdfa;
}

.settings-assignment-toggle-plate {
  border-color: #fed7aa;
  color: #9a3412;
  background: #fff7ed;
}

.settings-assignment-toggle-plate span {
  display: inline-block;
  max-width: 9ch;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-operation-planning-card {
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #eff6ff 0%, #f8fbff 100%);
}

.settings-operation-planning-head {
  grid-template-columns: max-content minmax(0, 1fr);
}

.settings-operation-planning-title {
  border-color: #93c5fd;
  color: #1e3a8a;
  background: linear-gradient(135deg, #dbeafe 0%, #eff6ff 100%);
}

.settings-operation-planning-title i {
  color: #2563eb;
}

.settings-operation-planning-unit {
  justify-self: end;
  min-width: 0;
  max-width: 100%;
  padding: 7px 11px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #ffffff;
  color: #334155;
  font-size: 0.76rem;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-operation-planning-card .settings-team-reporter-list {
  min-height: 172px;
  max-height: 244px;
}

.settings-operation-planning-card .settings-team-reporter-item {
  grid-template-columns: minmax(0, 1fr) minmax(7rem, 9rem);
}

.settings-operation-planning-card .settings-assignment-actions {
  grid-template-columns: 1fr;
  width: 9rem;
  max-width: 9rem;
}

@media (min-width: 1500px) {
  .settings-team-reporter-grid {
    grid-template-columns: repeat(2, minmax(34rem, 1fr));
    justify-content: start;
  }
}

@media (max-width: 1500px) {
  .settings-reporter-panels {
    grid-template-columns: 1fr;
  }

  .settings-team-reporter-grid {
    grid-template-columns: repeat(2, minmax(34rem, 1fr));
    justify-content: start;
  }
}

@media (max-width: 1180px) {
  .settings-team-reporter-grid {
    grid-template-columns: 1fr;
  }

  .settings-team-reporter-head {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .settings-team-name-filter-wrap,
  .settings-team-unit-filter-wrap {
    width: 100%;
    justify-self: stretch;
  }

  .settings-team-name-filter-wrap {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .settings-team-unit-filter {
    flex: 1 1 auto;
  }

  .settings-team-reporter-item {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .settings-assignment-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
    max-width: 100%;
  }
}

.settings-team-reporter-card.is-readonly .settings-team-reporter-item {
  background: #f8fafc;
}

.settings-reporter-grid {
  grid-template-columns: minmax(18ch, 28ch) minmax(30ch, 56ch) minmax(28ch, 48ch);
  gap: 12px;
  align-items: start;
}

.settings-reporter-team-field {
  width: min(100%, 28ch);
}

.settings-reporter-field {
  width: min(100%, 56ch);
}

.settings-reporter-team-select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 18ch;
  min-height: 250px;
}

.settings-reporter-select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 28ch;
  min-height: 188px;
}

.settings-reporter-preview-window {
  min-height: 188px;
  padding: 10px 12px;
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #f8fbff;
  overflow: hidden;
}

.settings-selected-summary-card .settings-reporter-preview-window {
  display: grid;
  gap: 8px;
}

.settings-reporter-action-window {
  padding: 10px 12px;
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #f8fbff;
}

.settings-reporter-action-wide {
  margin-top: 12px;
}

.settings-action-two-line {
  display: grid;
  gap: 4px;
  margin-bottom: 6px;
}

.settings-reporter-preview-title {
  margin: 0 0 8px;
  color: #1f2f49;
  font-size: 0.95rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 8px;
}

.settings-summary-title {
  width: fit-content;
  max-width: 100%;
  min-height: 36px;
  padding: 7px 11px;
  border: 1px solid transparent;
  border-radius: 999px;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.1);
}

.settings-selected-summary-card .settings-summary-title {
  width: 100%;
}

.settings-summary-title i {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 8px;
  color: #fff;
  font-size: 0.82rem;
}

.settings-summary-title .badge {
  margin-left: 2px;
}

.settings-summary-title-reporter {
  border-color: #b9c8ff;
  color: #243268;
  background: linear-gradient(135deg, #eef3ff 0%, #f8fbff 100%);
}

.settings-summary-title-reporter i {
  background: linear-gradient(135deg, #5865f2, #7c8cff);
}

.settings-summary-title-inventory {
  border-color: #b7f0df;
  color: #164e43;
  background: linear-gradient(135deg, #ecfdf5 0%, #f8fffd 100%);
}

.settings-summary-title-inventory i {
  background: linear-gradient(135deg, #2f8f7c, #6ac6ad);
}

.settings-summary-title-plate {
  border-color: #fed7aa;
  color: #7c3d12;
  background: linear-gradient(135deg, #fff7ed 0%, #fffaf3 100%);
}

.settings-summary-title-plate i {
  background: linear-gradient(135deg, #c76a00, #f59e0b);
}

.settings-reporter-selected-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
  max-height: 168px;
  overflow: auto;
}

.settings-selected-summary-card .settings-reporter-selected-list {
  height: 148px;
  max-height: 148px;
  padding: 7px;
  border: 1px solid #d5deeb;
  border-radius: 10px;
  background: #ffffff;
}

.settings-reporter-selected-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border: 1px solid #d8e1f0;
  border-radius: 9px;
  padding: 7px 9px;
  background: #ffffff;
  color: #1f2f49;
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.3;
}

.settings-reporter-selected-list li:nth-child(even) {
  background: #eef3ff;
}

.settings-reporter-selected-list li.is-hidden {
  display: none;
}

.settings-reporter-selected-text {
  width: min(100%, 30ch);
  max-width: 42ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-reporter-selected-text {
  min-width: 0;
  width: auto;
  white-space: normal;
}

.settings-preview-divider {
  height: 1px;
  margin: 10px 0;
  background: #dbe4f2;
}

.settings-inventory-clerk-panel {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #ccfbf1;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow: var(--shadow-sm);
}

.settings-inventory-clerk-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.settings-inventory-clerk-head h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 5px;
  color: #0f3f3a;
}

.settings-inventory-clerk-head h3 i {
  color: #0f766e;
}

.settings-inventory-clerk-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 12px;
  align-items: start;
}

.settings-inventory-clerk-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 8px;
  max-height: 270px;
  overflow: auto;
  padding: 8px;
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #ffffff;
}

.settings-inventory-clerk-item {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #f8fbff;
}

.settings-inventory-clerk-item input {
  margin: 0;
}

.settings-inventory-clerk-item span {
  min-width: 0;
}

.settings-inventory-clerk-item strong,
.settings-inventory-clerk-item small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-inventory-clerk-item strong {
  color: #172033;
  font-size: 0.94rem;
}

.settings-inventory-clerk-item small {
  color: #64748b;
  font-weight: 700;
}

.settings-inventory-clerk-item em {
  padding: 4px 8px;
  border-radius: 999px;
  color: #0f766e;
  background: #ccfbf1;
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 900;
}

.settings-inventory-clerk-selected {
  display: grid;
  gap: 9px;
  min-height: 180px;
  padding: 10px 12px;
  border: 1px solid #d5deeb;
  border-radius: 12px;
  background: #f8fbff;
}

.settings-inventory-clerk-selected > strong {
  color: #1f2f49;
}

.settings-inventory-clerk-selected ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  max-height: 160px;
  overflow: auto;
}

.settings-inventory-clerk-selected li {
  display: grid;
  gap: 2px;
  padding: 7px 9px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #ffffff;
}

.settings-inventory-clerk-selected li span {
  color: #172033;
  font-weight: 900;
}

.settings-inventory-clerk-selected li small {
  color: #64748b;
  font-weight: 700;
}

.settings-master-grid {
  display: grid;
  grid-template-columns: max-content max-content;
  justify-content: start;
  justify-items: start;
  gap: 10px;
  align-items: start;
}

.settings-structure-section {
  width: fit-content;
  max-width: 100%;
}

.settings-structure-head {
  margin-bottom: 12px;
}

.settings-structure-head h2 {
  margin-bottom: 4px;
}

.settings-structure-grid {
  width: min(100%, 1560px);
  grid-template-columns: minmax(360px, 0.48fr) minmax(0, 1fr);
  align-items: start;
}

.settings-structure-grid .settings-department-section,
.settings-structure-grid .settings-title-section {
  width: 100%;
  min-width: 0;
}

.settings-structure-grid .settings-table-compact-wrap,
.settings-structure-grid .settings-title-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.settings-structure-grid .settings-table-compact,
.settings-structure-grid .settings-title-table {
  width: 100%;
}

.settings-structure-grid .settings-title-table {
  min-width: 760px;
}

.settings-department-section {
  width: fit-content;
  max-width: 100%;
}

.settings-title-section {
  width: fit-content;
  max-width: 100%;
}

.settings-department-section h2,
.settings-title-section h2 {
  text-align: center;
}

.settings-inline-form {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
  justify-content: center;
}

.settings-inline-update {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.settings-inline-update-30 {
  width: min(100%, 30ch);
  max-width: 30ch;
}

.settings-inline-update-20 {
  width: 24ch;
  max-width: 24ch;
  display: grid;
  grid-template-columns: 20ch 34px;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.settings-compact-field {
  width: fit-content;
  min-width: 14ch;
  max-width: 30ch;
}

.settings-control-30 {
  width: clamp(14ch, 100%, 30ch) !important;
  max-width: 30ch !important;
}

.settings-control-35 {
  width: clamp(18ch, 100%, 35ch) !important;
  max-width: 35ch !important;
}

.settings-control-50 {
  width: clamp(35ch, 100%, 50ch) !important;
  min-width: 35ch !important;
  max-width: 50ch !important;
}

.settings-control-20 {
  width: clamp(12ch, 100%, 20ch) !important;
  max-width: 20ch !important;
}

.settings-inline-update-20 .settings-control-20 {
  width: 20ch !important;
  max-width: 20ch !important;
  min-width: 20ch !important;
}

.settings-inline-update-20 .btn {
  white-space: nowrap;
  padding: 0;
}

.settings-control-link {
  min-width: 20ch !important;
}

.settings-row-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex-wrap: nowrap;
  margin-top: 0;
}

.settings-inline-button-form {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.btn-with-icon {
  min-height: 34px;
  padding: 7px 10px;
}

.settings-title-actions-line {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.col-ch-30 {
  width: 30ch !important;
  max-width: 30ch !important;
}

.col-ch-20 {
  width: 20ch !important;
  max-width: 20ch !important;
}

.col-ch-24 {
  width: 24ch !important;
  max-width: 24ch !important;
}

.col-ch-28 {
  width: 28ch !important;
  max-width: 28ch !important;
}

.col-ch-14 {
  width: 14ch !important;
  max-width: 14ch !important;
}

.col-ch-34 {
  width: 34ch !important;
  max-width: 34ch !important;
}

.col-ch-32 {
  width: 32ch !important;
  max-width: 32ch !important;
}

.col-ch-6 {
  width: 6ch !important;
  max-width: 6ch !important;
}

.cell-text-30ch {
  display: inline-block;
  max-width: 30ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.cell-text-28ch {
  display: inline-block;
  max-width: 28ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.cell-text-24ch {
  display: inline-block;
  max-width: 24ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.cell-text-20ch {
  display: inline-block;
  max-width: 20ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.settings-table-compact-wrap {
  width: fit-content;
  max-width: 100%;
}

.settings-table-compact {
  width: max-content;
  min-width: calc(6ch + 30ch + 14ch + 4rem);
  table-layout: fixed;
}

.settings-title-table-wrap {
  width: fit-content;
  max-width: 100%;
}

.settings-title-table {
  width: max-content;
  min-width: calc(6ch + 30ch + 20ch + 32ch + 4rem);
  table-layout: fixed;
}

.settings-title-table thead th {
  color: #5f6f88 !important;
}

.settings-title-table tbody td {
  color: #1f2f49 !important;
}

.settings-backup-section {
  width: fit-content;
  max-width: 100%;
}

.settings-backup-section h2 {
  text-align: left;
}

.settings-backup-form {
  max-width: 100%;
}

.settings-backup-grid {
  grid-template-columns: minmax(24ch, 30ch) minmax(24ch, 30ch);
  gap: 10px 12px;
  align-items: end;
}

.settings-backup-grid label:nth-child(3),
.settings-backup-grid label:nth-child(4) {
  grid-column: span 2;
}

.settings-backup-status {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 6px;
}

.settings-backup-status span {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.settings-backup-actions {
  justify-content: flex-start;
}

.settings-backup-run-form {
  margin-top: 8px;
}

.settings-backup-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.settings-backup-action-row .settings-backup-run-form {
  margin-top: 0;
}

.settings-backup-action-row .actions {
  margin: 0;
}

.settings-local-server-backups {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid #e1e7f5;
}

.settings-local-server-backups-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.settings-local-server-backups h3 {
  margin: 0 0 4px;
  font-size: 1.1rem;
  color: #18243a;
}

.settings-local-server-backup-path {
  max-width: 70ch;
  overflow-wrap: anywhere;
}

.settings-server-download-form {
  display: grid;
  grid-template-columns:
    minmax(18ch, 1.1fr)
    minmax(12ch, 0.75fr)
    minmax(8ch, 0.45fr)
    minmax(28ch, 1.6fr)
    minmax(24ch, 1.25fr)
    auto;
  align-items: end;
  gap: 10px 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #dbe3f4;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.settings-server-download-form label {
  display: grid;
  gap: 6px;
  margin: 0;
  color: #1f2f49;
  font-weight: 800;
}

.settings-server-download-form input {
  width: 100%;
  min-width: 0;
}

.settings-server-download-form button {
  min-height: 44px;
  white-space: nowrap;
}

@media (max-width: 1250px) {
  .settings-server-download-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .settings-server-download-form label:nth-child(4),
  .settings-server-download-form label:nth-child(5) {
    grid-column: span 3;
  }

  .settings-server-download-form button {
    width: max-content;
  }
}

@media (max-width: 720px) {
  .settings-server-download-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .settings-server-download-form label:nth-child(4),
  .settings-server-download-form label:nth-child(5) {
    grid-column: auto;
  }

  .settings-server-download-form button {
    width: 100%;
  }
}

.settings-local-server-backup-table-wrap {
  width: fit-content;
  max-width: 100%;
  margin-top: 10px;
}

.settings-local-server-backup-table {
  width: max-content;
  min-width: calc(30ch + 14ch + 12ch + 6rem);
  table-layout: fixed;
}

.settings-local-server-backup-table th,
.settings-local-server-backup-table td {
  color: #1f2f49 !important;
}

.settings-local-server-backup-table thead th {
  color: #5f6f88 !important;
}

.settings-backup-table-wrap {
  width: fit-content;
  max-width: 100%;
  margin-top: 10px;
}

.settings-backup-table {
  width: max-content;
  min-width: calc(6ch + 14ch + 20ch + 20ch + 30ch + 30ch + 14ch + 14ch + 30ch + 4rem);
  table-layout: fixed;
}

.settings-backup-table thead th {
  color: #5f6f88 !important;
}

.settings-backup-table tbody td {
  color: #1f2f49 !important;
}

.settings-system-update-section {
  width: min(100%, 1320px);
  max-width: 100%;
}

.settings-system-update-form {
  margin-top: 0;
}

.settings-system-update-workspace {
  display: grid;
  gap: 10px;
  width: 100%;
}

.settings-system-update-alerts {
  display: grid;
  gap: 8px;
  max-width: 920px;
}

.settings-system-update-panel {
  display: grid;
  grid-template-columns: minmax(360px, 0.9fr) minmax(500px, 1.35fr);
  gap: 12px;
  align-items: stretch;
  width: min(100%, 1240px);
}

.settings-system-update-upload-form,
.settings-system-update-apply-form {
  display: grid;
  gap: 10px;
  align-content: start;
  padding: 12px;
  border: 1px solid #d7e4f6;
  border-left: 4px solid #5e73f6;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 100%);
  box-shadow: 0 10px 24px rgba(45, 66, 118, 0.07);
}

.settings-system-update-apply-form {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  border-left-color: #d08a00;
  background: linear-gradient(135deg, #fffdf5 0%, #f8fbff 100%);
}

.settings-system-update-grid {
  grid-template-columns: minmax(28ch, 48ch) minmax(24ch, 40ch);
  gap: 10px 12px;
  align-items: end;
}

.settings-system-update-apply-form .settings-system-update-grid {
  grid-template-columns: minmax(0, 1fr);
  max-width: min(100%, var(--system-update-package-ch, 112ch));
}

form.settings-system-update-apply-form .grid.two.settings-system-update-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  width: min(100%, var(--system-update-package-ch, 112ch)) !important;
  max-width: min(100%, var(--system-update-package-ch, 112ch)) !important;
}

.settings-system-update-package-field {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 100%;
}

.settings-system-update-package-select {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.settings-system-update-selected-name {
  display: block;
  width: 100%;
  margin-top: 8px;
  color: #4e5f77;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.settings-system-update-checkline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 39px;
  margin-top: 4px;
}

.settings-system-update-reboot-option {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  min-height: 62px;
  margin-top: 0;
  padding: 9px 10px;
  border: 1px solid #f0d38b;
  border-left: 4px solid #d08a00;
  border-radius: 12px;
  background: linear-gradient(180deg, #fffdf5 0%, #fff8e8 100%);
  color: #37250a;
  box-shadow: 0 10px 24px rgba(146, 101, 13, 0.08);
}

.settings-system-update-apply-form > .settings-backup-actions {
  align-items: stretch;
  justify-content: flex-start;
  margin-top: 0;
}

.settings-system-update-reboot-option input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex: 0 0 auto;
}

.settings-system-update-reboot-option span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.settings-system-update-reboot-option strong {
  font-size: 14px;
  line-height: 1.25;
}

.settings-system-update-reboot-option small {
  color: #75613a;
  font-size: 12px;
  line-height: 1.35;
}

.settings-update-warning {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  max-width: 100%;
  background: linear-gradient(180deg, #fff8e8 0%, #fff4d6 100%);
  color: #7a5900;
  border: 1px solid #f3ddb1;
  border-left: 3px solid #e6b74f;
  border-radius: 12px;
  padding: 9px 13px;
  margin: 6px 0 10px;
  box-shadow: 0 1px 2px rgba(122, 89, 0, 0.07);
  animation: settings-warning-pulse 5.8s ease-in-out infinite;
}

.settings-update-warning i {
  color: #b57b00;
}

.settings-update-apply-btn {
  min-width: 150px;
  min-height: 62px;
  white-space: nowrap;
}

.settings-system-update-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  width: min(100%, 1240px);
  margin-top: 10px;
}

.settings-system-update-summary > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid #dbe5f3;
  border-left: 4px solid #60a5fa;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f4f8ff 100%);
  color: #24344f;
}

.settings-system-update-summary strong {
  color: #14213a;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0;
}

.settings-system-update-summary span,
.settings-system-update-summary small {
  min-width: 0;
  color: #53637b;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-system-update-summary-warning {
  grid-column: 1 / -1;
  border-left-color: #dc2626 !important;
  background: linear-gradient(180deg, #fff7ed 0%, #fff1f2 100%) !important;
}

.settings-system-update-summary-warning span {
  color: #9a3412;
  white-space: normal;
  overflow-wrap: anywhere;
}

.settings-system-update-diagnostics {
  margin-top: 6px;
}

.settings-system-update-diagnostics > div {
  border-left-color: #64748b;
}

.settings-system-update-env {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 6px;
}

.settings-update-progress {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #c8d4ea;
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%);
}

.settings-update-progress[hidden] {
  display: none !important;
}

.settings-update-progress-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.settings-update-progress-track {
  width: 100%;
  height: 12px;
  border-radius: 999px;
  border: 1px solid #bccbe5;
  background: #e5edfa;
  overflow: hidden;
}

.settings-update-progress-track span {
  display: block;
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background-image:
    linear-gradient(90deg, #4f67f6 0%, #6b82ff 100%),
    repeating-linear-gradient(
      45deg,
      rgba(255, 255, 255, 0.2) 0,
      rgba(255, 255, 255, 0.2) 10px,
      rgba(255, 255, 255, 0.05) 10px,
      rgba(255, 255, 255, 0.05) 20px
    );
  background-size: 100% 100%, 34px 34px;
  background-position: 0 0, 0 0;
  animation: settings-progress-stripes 1.1s linear infinite;
  transition: width 0.35s ease;
}

.settings-update-progress-text {
  margin-top: 7px;
}

.settings-reboot-countdown {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  width: min(100%, 1240px);
  margin-top: 10px;
  padding: 12px 14px;
  border: 1px solid #f0d38b;
  border-left: 4px solid #d08a00;
  border-radius: 14px;
  background: linear-gradient(180deg, #fffdf5 0%, #fff5db 100%);
  color: #37250a;
  box-shadow: 0 12px 26px rgba(146, 101, 13, 0.12);
}

.settings-reboot-countdown[hidden] {
  display: none !important;
}

.settings-reboot-countdown-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #d08a00;
  color: #fff;
  font-size: 20px;
}

.settings-reboot-countdown-copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.settings-reboot-countdown-copy strong {
  font-size: 16px;
  line-height: 1.2;
}

.settings-reboot-countdown-copy span {
  color: #75613a;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.settings-reboot-countdown-track {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: #f7df9f;
  overflow: hidden;
}

.settings-reboot-countdown-track span {
  display: block;
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #d08a00 0%, #f59e0b 100%);
  transition: width 0.35s ease;
}

.settings-reboot-countdown-value {
  min-width: 78px;
  text-align: right;
  font-size: 30px;
  font-weight: 900;
  line-height: 1;
  color: #9a5d00;
  font-variant-numeric: tabular-nums;
}

.settings-system-update-form.is-loading {
  opacity: 0.92;
}

.settings-system-update-form .btn.is-busy {
  opacity: 0.7;
  cursor: wait;
}

.settings-update-confirm-modal {
  position: fixed;
  inset: 0;
  z-index: 2500;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 50% 42%, rgba(245, 158, 11, 0.24), transparent 34%),
    rgba(15, 23, 42, 0.48);
  backdrop-filter: blur(4px);
}

.settings-update-confirm-modal[hidden] {
  display: none !important;
}

.settings-update-confirm-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  width: min(94vw, 620px);
  padding: 22px;
  border: 2px solid #f59e0b;
  border-left: 9px solid #dc2626;
  border-radius: 18px;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 46%, #eef2ff 100%);
  box-shadow: 0 28px 70px rgba(15, 23, 42, 0.28);
  animation: settings-confirm-pop 0.18s ease-out;
}

.settings-update-confirm-icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 16px;
  color: #ffffff;
  background: linear-gradient(135deg, #dc2626 0%, #f59e0b 100%);
  box-shadow: 0 14px 28px rgba(220, 38, 38, 0.25);
  font-size: 1.6rem;
}

.settings-update-confirm-copy h3 {
  margin: 0;
  color: #7f1d1d;
  font-size: 1.35rem;
  line-height: 1.15;
}

.settings-update-confirm-copy p {
  margin: 8px 0 10px;
  color: #334155;
  line-height: 1.4;
  font-weight: 750;
}

.settings-update-confirm-copy strong {
  display: block;
  padding: 9px 11px;
  border: 1px solid #fed7aa;
  border-radius: 12px;
  background: #fff7ed;
  color: #9a3412;
  overflow-wrap: anywhere;
}

.settings-update-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 2px;
}

.settings-update-confirm-actions .btn {
  min-height: 42px;
  padding: 10px 16px;
  font-weight: 900;
}

@keyframes settings-confirm-pop {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (max-width: 640px) {
  .settings-update-confirm-card {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .settings-update-confirm-icon {
    width: 52px;
    height: 52px;
  }

  .settings-update-confirm-actions {
    flex-direction: column-reverse;
  }

  .settings-update-confirm-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

@keyframes settings-progress-stripes {
  from {
    background-position: 0 0, 0 0;
  }
  to {
    background-position: 0 0, 34px 0;
  }
}

.settings-system-update-table-wrap {
  width: fit-content;
  max-width: 100%;
  margin-top: 10px;
}

.settings-system-update-table {
  width: max-content;
  min-width: calc(6ch + 42ch + 12ch + 24ch + 24ch + 28ch + 4rem);
  table-layout: fixed;
}

.settings-system-update-table thead th {
  color: #5f6f88 !important;
}

.settings-system-update-table tbody td {
  color: #1f2f49 !important;
}

.settings-system-update-package-col {
  width: 42ch !important;
  max-width: 42ch !important;
}

.settings-system-update-table .settings-system-update-package-name {
  display: block;
  max-width: 42ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.settings-system-update-table td small {
  display: block;
  margin-top: 4px;
  color: #66758b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.settings-system-page-shell .settings-system-update-table-wrap {
  width: 100%;
  max-width: 100%;
}

.settings-system-page-shell .settings-system-update-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.settings-system-page-shell .settings-system-update-package-col {
  width: 32% !important;
  max-width: 32% !important;
}

.settings-system-page-shell .settings-system-update-table .col-ch-6 {
  width: 6ch !important;
  max-width: 6ch !important;
}

.settings-system-page-shell .settings-system-update-table .col-ch-12 {
  width: 12ch !important;
  max-width: 12ch !important;
}

.settings-system-page-shell .settings-system-update-table .col-ch-24,
.settings-system-page-shell .settings-system-update-table .col-ch-28 {
  width: auto !important;
  max-width: none !important;
}

.settings-system-page-shell .settings-system-update-table .settings-system-update-package-name {
  max-width: 100%;
}

.settings-system-page-shell .settings-system-update-table .cell-text-24ch,
.settings-system-page-shell .settings-system-update-table .cell-text-28ch {
  max-width: 100%;
}

@keyframes settings-warning-pulse {
  0%,
  100% {
    border-color: #f3ddb1;
    box-shadow: 0 1px 2px rgba(122, 89, 0, 0.07);
  }
  50% {
    border-color: #eacb88;
    box-shadow:
      0 0 0 4px rgba(230, 183, 79, 0.12),
      0 1px 2px rgba(122, 89, 0, 0.07);
  }
}

@media (prefers-reduced-motion: reduce) {
  .settings-update-warning {
    animation: none;
  }

  .settings-update-progress-track span {
    animation: none;
  }
}

.settings-archive-section {
  width: fit-content;
  max-width: 100%;
}

.settings-archive-section h2 {
  color: #172554;
}

.settings-archive-run-form {
  display: none;
}

.settings-archive-control-row {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
  width: fit-content;
  max-width: min(100%, 1320px);
  margin-top: 10px;
  padding: 12px;
  border: 1px solid #fed7aa;
  border-left: 5px solid #c47a00;
  border-radius: 13px;
  background:
    linear-gradient(135deg, #fff7ed 0%, #ffffff 58%, #eef2ff 100%);
  box-shadow: 0 12px 24px rgba(180, 83, 9, 0.08);
}

.settings-archive-search-form {
  display: contents;
}

.settings-archive-grid {
  grid-template-columns: minmax(24ch, 30ch) minmax(18ch, 20ch);
  gap: 10px 12px;
  align-items: end;
  order: 1;
}

.settings-archive-grid label {
  display: grid;
  gap: 6px;
  margin: 0;
  color: #172554;
  font-weight: 950;
}

.settings-archive-grid input,
.settings-archive-grid select {
  min-height: 44px;
  border-color: #c7d2fe;
  background: #ffffff;
  font-weight: 900;
}

.settings-archive-run-button {
  order: 2;
  min-height: 44px;
  background: linear-gradient(135deg, #c47a00 0%, #d97706 100%);
  color: #ffffff;
  box-shadow: 0 10px 18px rgba(196, 122, 0, 0.18);
}

.settings-archive-search-form .settings-backup-actions {
  order: 3;
  margin: 0;
}

.settings-archive-search-button,
.settings-archive-search-form .settings-backup-actions .btn {
  min-height: 44px;
  background: #eef2ff;
  color: #1e293b;
}

.settings-archive-table-wrap {
  width: fit-content;
  max-width: 100%;
  margin-top: 10px;
}

.settings-archive-table {
  width: max-content;
  min-width: calc(6ch + 14ch + 20ch + 20ch + 14ch + 14ch + 14ch + 14ch + 14ch + 4rem);
  table-layout: fixed;
}

.settings-archive-table thead th {
  background: #fff7ed !important;
  color: #5f6f88 !important;
}

.settings-archive-table tbody tr:nth-child(even) {
  background: #eef2ff;
}

.settings-archive-table tbody tr:hover {
  background: #e0e7ff;
}

.settings-archive-table tbody td {
  color: #1f2f49 !important;
}

textarea {
  min-height: 120px;
  resize: vertical;
}

input:not([type="checkbox"]):not([type="radio"]):focus,
select:focus,
textarea:focus {
  border-color: #8ba0ff;
  box-shadow: 0 0 0 3px rgba(79, 103, 246, 0.13);
  outline: none;
}

input:not([type="checkbox"]):not([type="radio"])[readonly] {
  background: #f8fafc;
}

input[type="checkbox"],
input[type="radio"] {
  width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  margin: 0;
  accent-color: #4f67f6;
  border: 1px solid #b8c5dc;
  border-radius: 5px;
  flex: 0 0 auto;
}

.actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.actions form {
  display: inline-flex;
  margin: 0;
}

.btn,
button {
  border: 0;
  border-radius: 10px;
  min-height: 39px;
  padding: 8px 14px;
  font-size: 0.93rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: all 0.2s ease;
}

.btn:hover,
button:hover {
  transform: translateY(-1px);
}

.btn-primary {
  background: var(--primary);
  color: #fff;
}

.btn-primary:hover {
  background: var(--primary-deep);
}

.btn-neutral {
  background: #e9edf5;
  color: #1f2f49;
}

.btn-neutral:hover {
  background: #dfe6f1;
}

.btn-success {
  background: var(--success);
  color: #fff;
}

.btn-warning {
  background: var(--warning);
  color: #fff;
}

.btn-danger {
  background: var(--danger);
  color: #fff;
}

.topbar .sidebar-toggle {
  min-height: 36px;
  padding: 0;
}

.topbar .topbar-btn,
.topbar .topbar-icon-btn {
  min-height: 32px;
}

.topbar .topbar-icon-btn {
  padding: 0;
}

.table-wrap {
  margin-top: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: auto;
}

table {
  width: 100%;
  min-width: 860px;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  table-layout: fixed;
}

thead th {
  background: linear-gradient(180deg, #f7f9ff, #eef4ff);
  color: #52627a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  border-bottom: 1px solid #dbe4f2;
  padding: 11px 10px;
  max-width: var(--col-max-ch);
  white-space: normal;
  overflow-wrap: anywhere;
}

tbody td {
  border-bottom: 1px solid #edf1f7;
  padding: 10px;
  font-size: 0.9rem;
  vertical-align: top;
  max-width: var(--col-max-ch);
  white-space: normal;
  overflow-wrap: anywhere;
}

tbody tr:nth-child(even) td {
  background: linear-gradient(90deg, var(--zebra-row), #f3f7ff);
}

tbody tr:hover td {
  background: #e8efff;
}

.col-ch-4 {
  width: 7ch !important;
  max-width: 7ch !important;
}

.col-ch-10 {
  width: 10ch !important;
  max-width: 10ch !important;
}

.table-wrap table.users-table {
  width: max-content !important;
  min-width: 112ch;
}

.users-table th:nth-child(1),
.users-table td:nth-child(1) {
  width: 7ch !important;
  max-width: 7ch !important;
}

.users-table th:nth-child(2),
.users-table td:nth-child(2) {
  width: 10ch !important;
  max-width: 10ch !important;
}

.users-table th:nth-child(3),
.users-table td:nth-child(3) {
  width: 22ch !important;
  max-width: 22ch !important;
}

.users-table th:nth-child(4),
.users-table td:nth-child(4) {
  width: 22ch !important;
  max-width: 22ch !important;
}

.users-table th:nth-child(5),
.users-table td:nth-child(5) {
  width: 10ch !important;
  max-width: 10ch !important;
}

.users-table th:nth-child(6),
.users-table td:nth-child(6) {
  width: 18ch !important;
  max-width: 18ch !important;
}

.users-table th:nth-child(7),
.users-table td:nth-child(7) {
  width: 12ch !important;
  max-width: 12ch !important;
}

.users-table td:nth-child(7) .icon-actions {
  justify-content: center;
}

.col-center {
  text-align: center !important;
}

.user-summary-section .dashboard-metric-grid {
  align-items: stretch;
}

.permission-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.permission-chip {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 0.78rem;
  font-weight: 700;
  white-space: nowrap;
}

.user-role-summary-table th:nth-child(1),
.user-role-summary-table td:nth-child(1) {
  width: 20ch;
}

.user-role-summary-table th:nth-child(2),
.user-role-summary-table td:nth-child(2),
.user-role-summary-table th:nth-child(3),
.user-role-summary-table td:nth-child(3),
.user-role-summary-table th:nth-child(4),
.user-role-summary-table td:nth-child(4),
.user-role-summary-table th:nth-child(5),
.user-role-summary-table td:nth-child(5) {
  width: 9ch;
  text-align: center;
}

.report-permission-wrap {
  overflow-x: auto;
}

.report-permission-table {
  width: max-content;
  min-width: 1320px;
  table-layout: auto;
}

.report-permission-table th,
.report-permission-table td {
  font-size: 0.86rem;
  padding: 9px 10px;
  vertical-align: middle;
  line-height: 1.15;
}

.report-permission-table th:first-child,
.report-permission-table td:first-child {
  min-width: 20ch;
  max-width: 24ch;
  white-space: nowrap;
}

.report-permission-table th:nth-child(n+2):nth-child(-n+5),
.report-permission-table td:nth-child(n+2):nth-child(-n+5) {
  min-width: 7ch;
  text-align: center;
}

.report-permission-table th:nth-child(n+6),
.report-permission-table td:nth-child(n+6) {
  min-width: 10ch;
  text-align: center;
}

.report-permission-table thead th:nth-child(n+6) {
  white-space: normal;
}

.report-permission-table tbody td:nth-child(n+6) {
  white-space: nowrap;
}

tbody tr:last-child td {
  border-bottom: 0;
}

.badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 0.77rem;
  font-weight: 700;
  background: #e2ecff;
  color: #2b4fce;
}

.badge.approved {
  background: #dcfce7;
  color: #166534;
}

.badge.pending {
  background: #fef3c7;
  color: #92400e;
}

.badge.rejected {
  background: #fee2e2;
  color: #991b1b;
}

.badge.muted {
  background: #e5e7eb;
  color: #475569;
}

.small-note {
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
}

.metric {
  border: 1px solid var(--border);
  border-left: 4px solid #5b74f6;
  border-radius: 12px;
  background: #fff;
  padding: 15px;
}

.metric-title {
  margin: 0;
  font-size: 0.9rem;
  color: #64748b;
  font-weight: 600;
}

.metric-value {
  margin: 6px 0 0;
  font-size: 2rem;
  font-weight: 800;
  color: #1e293b;
}

.dashboard-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 10px;
}

.dashboard-title-block {
  min-width: 0;
}

.dashboard-title-block .page-subtitle {
  margin-top: 4px;
}

.dashboard-overview {
  background:
    radial-gradient(circle at 0% 0%, rgba(79, 103, 246, 0.1), transparent 42%),
    radial-gradient(circle at 100% 0%, rgba(15, 157, 147, 0.09), transparent 40%),
    #ffffff;
}

.dashboard-metric-grid {
  gap: 14px;
  align-items: start;
  grid-auto-rows: minmax(0, auto);
}

.dashboard-date-form {
  margin: 0;
  display: flex;
  align-items: end;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.dashboard-date-form label {
  display: grid;
  gap: 4px;
  color: #475569;
  font-weight: 700;
}

.dashboard-date-form input[type="date"] {
  min-height: 38px;
  border: 1px solid #d7deee;
  border-radius: 10px;
  padding: 7px 10px;
  color: #1e293b;
  background: #fff;
}

.dashboard-kif-reminder {
  --section-accent: #dc2626;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 247, 237, 0.96)),
    #ffffff;
  border-color: #fecaca;
}

.dashboard-kif-reminder-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.dashboard-kif-reminder-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

.dashboard-kif-reminder-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  color: #b91c1c;
  background: #fee2e2;
}

.dashboard-kif-reminder-title h2 {
  margin: 0;
  color: #1f2937;
  font-size: 1.18rem;
}

.dashboard-kif-reminder-title p,
.dashboard-kif-reminder-more {
  margin: 3px 0 0;
  color: #64748b;
  font-weight: 700;
}

.dashboard-kif-reminder-actions,
.dashboard-kif-reminder-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.dashboard-kif-reminder-count {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 5px 12px;
  border-radius: 999px;
  color: #991b1b;
  background: #fee2e2;
  font-weight: 900;
}

.dashboard-kif-reminder-list {
  display: grid;
  gap: 8px;
}

.dashboard-kif-reminder-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #fed7aa;
  border-radius: 10px;
  background: #fff7ed;
}

.dashboard-kif-reminder-row-kif_pending {
  border-color: #bfdbfe;
  background: #eff6ff;
}

.dashboard-kif-reminder-main {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(170px, 0.95fr) minmax(220px, 1.35fr) minmax(150px, 0.8fr);
  gap: 12px;
  align-items: center;
}

.dashboard-kif-reminder-person,
.dashboard-kif-reminder-detail,
.dashboard-kif-reminder-meta {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-kif-reminder-person strong,
.dashboard-kif-reminder-detail strong,
.dashboard-kif-reminder-meta span:first-child {
  min-width: 0;
  color: #111827;
  font-weight: 900;
}

.dashboard-kif-reminder-person span,
.dashboard-kif-reminder-detail span,
.dashboard-kif-reminder-meta span {
  min-width: 0;
  color: #64748b;
  font-weight: 800;
}

.dashboard-kif-reminder-row .btn {
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 9px;
}

@media (max-width: 900px) {
  .dashboard-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .dashboard-date-form {
    justify-content: flex-start;
  }

  .dashboard-kif-reminder-head,
  .dashboard-kif-reminder-row {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .dashboard-kif-reminder-head {
    flex-direction: column;
  }

  .dashboard-kif-reminder-actions,
  .dashboard-kif-reminder-row-actions {
    justify-content: flex-start;
  }

  .dashboard-kif-reminder-main {
    grid-template-columns: 1fr;
  }
}

.dashboard-overview .metric-card {
  border: 1px solid transparent;
  border-left: 0;
  border-radius: 16px;
  padding: 16px 16px 14px;
  display: grid;
  gap: 10px;
  position: relative;
  overflow: visible;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
}

.dashboard-overview .metric-card::after {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  border-radius: 16px 16px 0 0;
  background: rgba(30, 41, 59, 0.32);
}

.dashboard-overview .metric-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  flex-wrap: wrap;
}

.dashboard-overview .metric-head-title {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 9px;
}

.dashboard-overview .metric-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: inline-grid;
  place-items: center;
  font-size: 0.97rem;
  color: #1e293b;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.35);
}

.dashboard-card-action {
  min-height: 34px;
  flex: 0 0 auto;
  max-width: min(100%, 220px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  padding: 7px 11px;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 7px 16px rgba(15, 23, 42, 0.12);
  white-space: nowrap;
}

.dashboard-card-action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dashboard-card-action i {
  font-size: 0.82rem;
}

.dashboard-card-action.quick-personnel {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.dashboard-card-action.quick-tutanak {
  background: linear-gradient(135deg, #f97316, #ea580c);
}

.dashboard-card-action.quick-kif {
  background: linear-gradient(135deg, #f43f5e, #e11d48);
}

.dashboard-card-action.quick-neutral {
  background: linear-gradient(135deg, #64748b, #475569);
}

.dashboard-card-static {
  cursor: default;
  box-shadow: none;
}

.dashboard-card-static:hover {
  filter: none;
  transform: none;
}

.dashboard-card-action.quick-zimmet {
  background: linear-gradient(135deg, #14b8a6, #0f766e);
}

.dashboard-card-action.quick-social {
  background: linear-gradient(135deg, #8b5cf6, #6d28d9);
}

.dashboard-card-action.quick-contact-work {
  background: linear-gradient(135deg, #0ea5e9, #2563eb);
}

.metric-card-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.dashboard-card-action:hover {
  color: #ffffff;
  filter: brightness(1.04);
  transform: translateY(-1px);
}

.dashboard-overview .metric-title {
  min-width: 0;
  margin: 0;
  color: #42526a;
  font-weight: 700;
}

@media (max-width: 640px) {
  .dashboard-overview .metric-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .dashboard-card-action {
    width: 100%;
  }
}

.dashboard-overview .metric-value {
  margin-top: 0;
  font-size: clamp(1.7rem, 2.1vw, 2.2rem);
  letter-spacing: -0.01em;
}

.dashboard-overview .metric-period {
  margin: -4px 0 0;
  color: #64748b;
  font-size: 0.84rem;
  font-weight: 800;
}

.dashboard-overview .metric-detail-list {
  display: grid;
  gap: 6px;
  margin-top: 2px;
}

.dashboard-overview .metric-detail-row {
  display: grid;
  grid-template-columns: minmax(96px, max-content) minmax(0, 1fr);
  align-items: start;
  justify-content: stretch;
  gap: 8px;
  min-height: 22px;
  padding: 5px 7px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.58);
  color: #475569;
  font-size: 0.78rem;
}

.dashboard-overview .metric-detail-row span,
.dashboard-overview .metric-more-button span {
  color: #334155;
  font-weight: 800;
  font-style: italic;
}

.dashboard-overview .metric-detail-row span,
.dashboard-overview .metric-detail-row strong {
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

.dashboard-overview .metric-detail-row strong {
  color: #1e293b;
  font-weight: 800;
  text-align: right;
  line-height: 1.25;
}

.dashboard-overview .metric-personnel .metric-detail-row {
  grid-template-columns: minmax(160px, max-content) minmax(0, 1fr);
}

@media (max-width: 720px) {
  .dashboard-overview .metric-personnel .metric-detail-row {
    grid-template-columns: 1fr;
  }

  .dashboard-overview .metric-personnel .metric-detail-row strong {
    text-align: left;
  }
}

.dashboard-overview .metric-detail-alert {
  border: 1px solid rgba(220, 38, 38, 0.42);
  border-left: 5px solid #dc2626;
  background: linear-gradient(90deg, rgba(254, 202, 202, 0.98), rgba(254, 226, 226, 0.9));
  color: #7f1d1d;
  font-weight: 800;
  font-style: italic;
  box-shadow: 0 8px 18px rgba(185, 28, 28, 0.12);
  animation: dashboard-alert-row-pulse 1.35s ease-in-out infinite;
}

.dashboard-overview .metric-detail-alert span,
.dashboard-overview .metric-detail-alert strong,
.dashboard-modal-row.metric-detail-alert span,
.dashboard-modal-row.metric-detail-alert strong {
  color: #7f1d1d;
  font-weight: 900;
}

.dashboard-overview .metric-detail-alert span::before,
.dashboard-modal-row.metric-detail-alert span::before {
  content: "!";
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  border-radius: 999px;
  background: #dc2626;
  color: #ffffff;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1;
}

.dashboard-modal-row.metric-detail-alert {
  border: 1px solid rgba(220, 38, 38, 0.42);
  border-left: 5px solid #dc2626;
  background: linear-gradient(90deg, rgba(254, 202, 202, 0.98), rgba(254, 226, 226, 0.9));
  font-style: italic;
  box-shadow: 0 8px 18px rgba(185, 28, 28, 0.12);
}

@keyframes dashboard-alert-row-pulse {
  0%, 100% {
    filter: saturate(1);
    transform: translateX(0);
  }
  50% {
    filter: saturate(1.18);
    transform: translateX(2px);
  }
}

.dashboard-overview .metric-detail-total,
.dashboard-modal-row.metric-detail-total {
  background: rgba(15, 23, 42, 0.08);
  color: #0f172a;
  font-weight: 800;
}

.dashboard-overview .metric-detail-total strong,
.dashboard-modal-row.metric-detail-total strong {
  color: #0f172a;
}

.dashboard-overview .metric-more-button {
  width: 100%;
  min-height: 30px;
  border: 0;
  border-radius: 8px;
  padding: 5px 8px;
  display: grid;
  grid-template-columns: minmax(96px, max-content) minmax(0, 1fr);
  align-items: start;
  justify-content: stretch;
  gap: 8px;
  background: rgba(255, 255, 255, 0.72);
  color: #334155;
  font: inherit;
  cursor: pointer;
}

.dashboard-overview .metric-more-button:hover,
.dashboard-overview .metric-more-button:focus-visible {
  background: #ffffff;
  outline: 2px solid rgba(22, 163, 74, 0.28);
  outline-offset: 2px;
}

.dashboard-overview .metric-more-button strong {
  color: #1e293b;
  font-weight: 800;
  min-width: 0;
  text-align: right;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.25;
}

.dashboard-overview .metric-more-alert {
  border: 1px solid rgba(220, 38, 38, 0.32);
  background: rgba(254, 226, 226, 0.88);
}

.dashboard-overview .metric-more-alert span,
.dashboard-overview .metric-more-alert strong {
  color: #991b1b;
}

@media (max-width: 640px) {
  .dashboard-overview {
    padding: 12px;
  }

  .dashboard-overview .metric-card {
    padding: 14px 12px;
  }

  .dashboard-overview .metric-value {
    margin-top: 2px;
    font-size: 2rem;
    line-height: 1.05;
  }

  .dashboard-overview .metric-detail-row,
  .dashboard-overview .metric-more-button {
    align-items: start;
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .dashboard-overview .metric-detail-row span,
  .dashboard-overview .metric-detail-row strong,
  .dashboard-overview .metric-more-button span,
  .dashboard-overview .metric-more-button strong {
    width: 100%;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }

  .dashboard-overview .metric-detail-row strong,
  .dashboard-overview .metric-more-button strong {
    text-align: left;
    line-height: 1.28;
  }
}

.dashboard-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 1250;
  padding: 24px 16px;
  display: grid;
  place-items: center;
  background: rgba(15, 23, 42, 0.42);
}

.dashboard-modal-overlay[hidden] {
  display: none !important;
}

.dashboard-modal-card {
  width: min(760px, 100%);
  max-height: min(680px, calc(100vh - 48px));
  overflow: hidden;
  border: 1px solid #dbe4f0;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.24);
  display: grid;
  grid-template-rows: auto 1fr;
}

.dashboard-modal-card-wide {
  width: min(1120px, calc(100vw - 32px));
  max-height: min(760px, calc(100vh - 32px));
}

.dashboard-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid #e6edf6;
}

.dashboard-modal-head h2 {
  margin: 0;
  font-size: 1.05rem;
  color: #1e293b;
}

.dashboard-modal-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.dashboard-modal-print {
  min-height: 36px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #eef2ff;
  color: #312e81;
  font-weight: 800;
  cursor: pointer;
}

.dashboard-modal-print:hover,
.dashboard-modal-print:focus-visible {
  background: #e0e7ff;
  outline: 2px solid rgba(79, 70, 229, 0.25);
  outline-offset: 2px;
}

.dashboard-modal-pdf {
  border-color: #fecaca;
  background: #fff1f2;
  color: #991b1b;
}

.dashboard-modal-pdf:hover,
.dashboard-modal-pdf:focus-visible {
  background: #fee2e2;
  outline-color: rgba(220, 38, 38, 0.22);
}

.dashboard-modal-close {
  width: 36px;
  height: 36px;
  border: 1px solid #d8dfef;
  border-radius: 10px;
  display: inline-grid;
  place-items: center;
  background: #ffffff;
  color: #334155;
  cursor: pointer;
}

.dashboard-modal-close:hover,
.dashboard-modal-close:focus-visible {
  background: #eef3ff;
  outline: 2px solid rgba(79, 70, 229, 0.22);
  outline-offset: 2px;
}

.dashboard-modal-list {
  overflow: auto;
  display: grid;
  gap: 7px;
  padding: 14px 18px 18px;
}

.plate-maintenance-print-head {
  display: none;
}

.plate-maintenance-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 7px;
  table-layout: auto;
}

.plate-maintenance-table th {
  padding: 8px 12px;
  background: linear-gradient(135deg, #dbeafe, #e0e7ff);
  color: #312e81;
  font-size: 0.78rem;
  font-weight: 900;
  text-align: left;
  text-transform: uppercase;
  border-top: 1px solid #c7d2fe;
  border-bottom: 1px solid #c7d2fe;
  letter-spacing: 0.02em;
}

.plate-maintenance-table th:first-child {
  border-left: 1px solid #c7d2fe;
  border-radius: 10px 0 0 10px;
}

.plate-maintenance-table th:last-child {
  border-right: 1px solid #c7d2fe;
  border-radius: 0 10px 10px 0;
}

.plate-maintenance-table th:nth-child(1) {
  width: 6%;
}

.plate-maintenance-table th:nth-child(2) {
  width: 29%;
}

.plate-maintenance-table th:nth-child(3) {
  width: 11%;
}

.plate-maintenance-table th:nth-child(4) {
  width: 23%;
}

.plate-maintenance-table th:nth-child(5) {
  width: 14%;
}

.plate-maintenance-table th:nth-child(6) {
  width: 19%;
}

.plate-maintenance-table td {
  padding: 10px 12px;
  background: #f8fafc;
  color: #1e293b;
  font-weight: 700;
  vertical-align: middle;
  line-height: 1.25;
  overflow-wrap: anywhere;
  white-space: normal;
}

.plate-maintenance-table tbody tr:nth-child(even) td {
  background: #eef3ff;
}

.plate-maintenance-table tbody tr:nth-child(odd) td {
  background: #f8fafc;
}

.plate-maintenance-table td:nth-child(1),
.plate-maintenance-table td:nth-child(3),
.plate-maintenance-table td:nth-child(5) {
  white-space: nowrap;
}

.plate-maintenance-table th:first-child,
.plate-maintenance-table td:first-child {
  text-align: center;
}

.plate-maintenance-table td:first-child {
  color: #475569;
  font-weight: 900;
}

.plate-maintenance-table td:first-child {
  border-radius: 10px 0 0 10px;
}

.plate-maintenance-table td:last-child {
  border-radius: 0 10px 10px 0;
  color: #0f172a;
  font-weight: 900;
}

.plate-maintenance-table tr.plate-maintenance-overdue td {
  background: #fee2e2;
  color: #7f1d1d;
}

.dashboard-modal-row {
  min-height: 34px;
  border-radius: 9px;
  padding: 7px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: #f8fafc;
}

.dashboard-modal-row span,
.dashboard-modal-row strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-modal-row strong {
  color: #0f172a;
  text-align: right;
}

@media print {
  @page {
    size: A4 landscape;
    margin: 10mm;
  }

  body.printing-plate-maintenance {
    margin: 0 !important;
    background: #ffffff !important;
  }

  body.printing-plate-maintenance .sidebar,
  body.printing-plate-maintenance .topbar,
  body.printing-plate-maintenance .content > :not([data-plate-modal]),
  body.printing-plate-maintenance .dashboard-modal-overlay:not([data-plate-modal]) {
    display: none !important;
  }

  body.printing-plate-maintenance .app-shell,
  body.printing-plate-maintenance .main-pane,
  body.printing-plate-maintenance .content {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
  }

  body.printing-plate-maintenance [data-plate-modal],
  body.printing-plate-maintenance [data-plate-modal] * {
    visibility: visible !important;
  }

  body.printing-plate-maintenance [data-plate-modal] {
    position: static !important;
    inset: auto !important;
    display: block !important;
    padding: 0 !important;
    background: #ffffff !important;
    width: 100% !important;
  }

  body.printing-plate-maintenance .dashboard-modal-card {
    width: 100% !important;
    max-height: none !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
  }

  body.printing-plate-maintenance .dashboard-modal-head {
    display: none !important;
  }

  body.printing-plate-maintenance .dashboard-modal-list {
    overflow: visible !important;
    display: block !important;
    padding: 0 !important;
  }

  body.printing-plate-maintenance .plate-maintenance-print-head {
    display: block !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #0f172a !important;
  }

  body.printing-plate-maintenance .plate-maintenance-print-head h1 {
    margin: 0 0 4px !important;
    color: #0f172a !important;
    font-size: 20pt !important;
  }

  body.printing-plate-maintenance .plate-maintenance-print-head p {
    margin: 0 !important;
    color: #475569 !important;
    font-size: 10pt !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    table-layout: fixed !important;
    width: 100% !important;
    font-size: 8.8pt !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table thead {
    display: table-header-group !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table tr {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table tbody tr:nth-child(18n):not(:last-child) {
    break-after: page !important;
    page-break-after: always !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(1) {
    width: 6% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(2) {
    width: 28% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(3) {
    width: 10% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(4) {
    width: 22% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(5) {
    width: 14% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th:nth-child(6) {
    width: 20% !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th,
  body.printing-plate-maintenance .plate-maintenance-table td {
    border: 1px solid #cbd5e1 !important;
    padding: 6px 7px !important;
    background: #ffffff !important;
    color: #0f172a !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table th {
    background: #dbeafe !important;
    color: #1e3a8a !important;
    font-size: 8.5pt !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table tbody tr:nth-child(even) td {
    background: #eef3ff !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table tbody tr:nth-child(odd) td {
    background: #ffffff !important;
  }

  body.printing-plate-maintenance .plate-maintenance-table tr.plate-maintenance-overdue td {
    background: #fee2e2 !important;
    color: #7f1d1d !important;
    font-weight: 800 !important;
  }
}

.dashboard-overview .metric-personnel {
  background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
  border-color: #bfdbfe;
}

.dashboard-overview .metric-personnel::after {
  background: #2563eb;
}

.dashboard-overview .metric-user {
  background: linear-gradient(135deg, #f0f9ff 0%, #d9f4ff 100%);
  border-color: #bae6fd;
}

.dashboard-overview .metric-user::after {
  background: #0284c7;
}

.dashboard-overview .metric-tutanak {
  background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
  border-color: #fed7aa;
}

.dashboard-overview .metric-tutanak::after {
  background: #ea580c;
}

.dashboard-overview .metric-kif {
  background: linear-gradient(135deg, #fff1f2 0%, #ffe4e6 100%);
  border-color: #fecdd3;
}

.dashboard-overview .metric-kif::after {
  background: #e11d48;
}

.dashboard-overview .metric-ev-kif {
  background: linear-gradient(135deg, #fff7ed 0%, #fee2e2 100%);
  border-color: #fecaca;
}

.dashboard-overview .metric-ev-kif::after {
  background: #dc2626;
}

.dashboard-overview .metric-ev-kif .metric-icon {
  color: #b91c1c;
  background: #fee2e2;
}

.dashboard-overview .metric-contact-work {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 48%, #eef2ff 100%);
  border-color: #bae6fd;
}

.dashboard-overview .metric-contact-work::after {
  background: #0284c7;
}

.dashboard-overview .metric-contact-work .metric-icon {
  color: #0369a1;
  background: #e0f2fe;
}

.dashboard-contact-work-list a.metric-detail-row {
  text-decoration: none;
}

.dashboard-contact-work-rows {
  display: grid;
  gap: 7px;
  margin-top: 4px;
}

.dashboard-contact-work-row {
  display: grid;
  grid-template-columns: minmax(86px, max-content) minmax(0, 1fr);
  gap: 3px 8px;
  padding: 8px 9px;
  border: 1px solid rgba(125, 211, 252, 0.42);
  border-left: 5px solid #38bdf8;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
  color: #0f172a;
  text-decoration: none;
}

.dashboard-contact-work-row:hover,
.dashboard-contact-work-row:focus-visible {
  background: #ffffff;
  outline: 2px solid rgba(14, 165, 233, 0.26);
  outline-offset: 2px;
}

.dashboard-contact-work-row .dashboard-contact-work-status {
  grid-row: span 3;
  align-self: start;
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 0.74rem;
  font-weight: 900;
  line-height: 1;
}

.dashboard-contact-work-row strong,
.dashboard-contact-work-row em,
.dashboard-contact-work-row b {
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.2;
}

.dashboard-contact-work-row strong {
  font-size: 0.84rem;
  font-weight: 900;
}

.dashboard-contact-work-row em {
  color: #475569;
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 800;
}

.dashboard-contact-work-row b {
  color: #1d4ed8;
  font-size: 0.78rem;
  font-weight: 900;
}

.dashboard-contact-work-row.is-expired,
.dashboard-contact-work-row.is-critical {
  border-color: rgba(248, 113, 113, 0.5);
  border-left-color: #dc2626;
  background: rgba(254, 226, 226, 0.84);
}

.dashboard-contact-work-row.is-expired .dashboard-contact-work-status,
.dashboard-contact-work-row.is-critical .dashboard-contact-work-status {
  background: #fee2e2;
  color: #991b1b;
}

.dashboard-contact-work-row.is-warning,
.dashboard-contact-work-row.is-watch {
  border-color: rgba(251, 191, 36, 0.5);
  border-left-color: #f59e0b;
  background: rgba(254, 243, 199, 0.76);
}

.dashboard-contact-work-row.is-warning .dashboard-contact-work-status,
.dashboard-contact-work-row.is-watch .dashboard-contact-work-status {
  background: #fef3c7;
  color: #92400e;
}

.dashboard-contact-work-row.is-planned {
  border-color: rgba(167, 139, 250, 0.44);
  border-left-color: #7c3aed;
  background: rgba(237, 233, 254, 0.72);
}

.dashboard-contact-work-row.is-processed {
  border-color: rgba(74, 222, 128, 0.44);
  border-left-color: #16a34a;
  background: rgba(220, 252, 231, 0.74);
}

.dashboard-contact-work-empty {
  min-height: 96px;
  display: grid;
  align-content: center;
  gap: 6px;
  border: 1px dashed rgba(56, 189, 248, 0.38);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.62);
  padding: 12px;
}

.dashboard-contact-work-empty strong {
  color: #0f172a;
  font-size: 0.94rem;
  font-weight: 900;
}

.dashboard-contact-work-empty span {
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.25;
}

@media (max-width: 640px) {
  .dashboard-contact-work-row {
    grid-template-columns: 1fr;
  }

  .dashboard-contact-work-row .dashboard-contact-work-status {
    grid-row: auto;
  }
}

.dashboard-ev-kif-list {
  min-width: 0;
}

.dashboard-ev-kif-person {
  display: grid;
  gap: 2px;
  border: 1px solid rgba(248, 113, 113, 0.26);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
  padding: 8px 9px;
}

.dashboard-ev-kif-empty {
  min-height: 112px;
  display: grid;
  align-content: center;
  gap: 6px;
  border: 1px dashed rgba(148, 163, 184, 0.45);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.62);
  padding: 12px;
}

.dashboard-ev-kif-empty strong {
  color: #1f2937;
  font-size: 0.95rem;
  font-weight: 900;
}

.dashboard-ev-kif-empty span {
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.25;
}

.dashboard-ev-kif-person strong {
  color: #111827;
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1.18;
}

.dashboard-ev-kif-person span {
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.18;
}

.dashboard-ev-kif-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 2px;
}

.dashboard-ev-kif-actions .dashboard-card-action {
  max-width: none;
  width: 100%;
}

.dashboard-ev-kif-more {
  text-decoration: none;
}

.dashboard-overview .metric-zimmet {
  background: linear-gradient(135deg, #ecfeff 0%, #ccfbf1 100%);
  border-color: #99f6e4;
}

.dashboard-overview .metric-zimmet::after {
  background: #0f766e;
}

.dashboard-overview .metric-plate {
  background: linear-gradient(135deg, #eef2ff 0%, #e0e7ff 100%);
  border-color: #c7d2fe;
}

.dashboard-overview .metric-plate::after {
  background: #4f46e5;
}

.dashboard-overview .metric-plate-focus {
  grid-column: 1 / -1;
  max-width: 760px;
}

.dashboard-overview .metric-plate-focus .metric-detail-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.dashboard-overview .metric-plate-focus .metric-detail-row,
.dashboard-overview .metric-plate-focus .metric-more-button {
  min-height: 34px;
  align-items: center;
}

.dashboard-overview .metric-plate-focus .metric-more-button {
  grid-template-columns: minmax(120px, max-content) minmax(0, 1fr);
}

.dashboard-overview .plate-status-row.status-active {
  background: rgba(220, 252, 231, 0.9);
  color: #166534;
}

.dashboard-overview .plate-status-row.status-held,
.dashboard-overview .plate-status-row.status-lost {
  background: rgba(254, 226, 226, 0.88);
  color: #991b1b;
}

.dashboard-overview .plate-status-row.status-passive,
.dashboard-overview .plate-status-row.status-unknown {
  background: rgba(241, 245, 249, 0.9);
  color: #334155;
}

.dashboard-overview .metric-shift {
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
  border-color: #bbf7d0;
}

.dashboard-overview .metric-shift::after {
  background: #16a34a;
}

.dashboard-overview .metric-holiday {
  background: linear-gradient(135deg, #fefce8 0%, #fef3c7 100%);
  border-color: #fde68a;
  align-self: start;
  min-height: 0;
}

.dashboard-overview .metric-holiday::after {
  background: #ca8a04;
}

.dashboard-overview .metric-holiday .metric-head {
  align-items: flex-start;
}

.dashboard-overview .metric-holiday .metric-head-title {
  flex: 1 1 auto;
}

.dashboard-overview .metric-holiday .metric-title {
  line-height: 1.22;
  white-space: normal;
}

.dashboard-overview .metric-holiday .metric-detail-list {
  min-width: 0;
}

.dashboard-overview .metric-holiday .metric-detail-row {
  min-height: 0;
  align-items: flex-start;
}

.dashboard-overview .metric-holiday .metric-detail-row span {
  flex: 0 0 auto;
}

.dashboard-overview .metric-holiday .metric-detail-row strong {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  line-height: 1.22;
}

.metric-holiday-upcoming {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed rgba(202, 138, 4, 0.28);
}

.metric-holiday-upcoming-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 8px;
  color: #854d0e;
  font-size: 0.86rem;
  font-weight: 900;
}

.metric-holiday-upcoming-title i {
  color: #ca8a04;
}

.metric-holiday-upcoming-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 8px;
}

.metric-holiday-upcoming-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 4px 8px;
  border: 1px solid rgba(245, 158, 11, 0.32);
  border-radius: 10px;
  background: rgba(255, 251, 235, 0.86);
  padding: 8px 10px;
  box-shadow: 0 8px 18px rgba(202, 138, 4, 0.08);
  text-decoration: none;
}

a.metric-holiday-upcoming-item:hover {
  border-color: rgba(217, 119, 6, 0.48);
  background: #fff7ed;
}

.metric-holiday-upcoming-item strong {
  color: #713f12;
  font-size: 0.88rem;
  font-weight: 900;
  text-align: left;
}

.metric-holiday-upcoming-item em {
  min-width: 0;
  color: #1f2937;
  font-size: 0.82rem;
  font-style: normal;
  font-weight: 850;
  line-height: 1.18;
}

.metric-holiday-upcoming-item b {
  grid-column: 1 / -1;
  justify-self: start;
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  padding: 3px 8px;
  font-size: 0.72rem;
  font-weight: 900;
}

.metric-holiday-upcoming-item.is-prepared {
  border-color: rgba(34, 197, 94, 0.24);
  background: rgba(240, 253, 244, 0.86);
}

.metric-holiday-upcoming-item.is-prepared b {
  background: #dcfce7;
  color: #166534;
}

.metric-holiday-upcoming-item.is-missing {
  border-color: rgba(245, 158, 11, 0.38);
}

@media (max-width: 1500px) {
  .dashboard-overview .metric-holiday .metric-head {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dashboard-overview .metric-holiday .dashboard-card-action {
    width: 100%;
  }
}

.dashboard-overview .metric-social {
  background: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 100%);
  border-color: #ddd6fe;
}

.dashboard-overview .metric-social::after {
  background: #6d28d9;
}

.dashboard-overview .metric-service {
  background: linear-gradient(135deg, #fff7ed 0%, #fee2e2 100%);
  border-color: #fecaca;
}

.dashboard-overview .metric-service::after {
  background: #dc2626;
}

.service-dashboard-alert {
  border-color: rgba(239, 68, 68, 0.32);
}

.service-alert-pulse {
  animation: service-alert-pulse 1.2s ease-in-out infinite;
}

.service-row-overdue td {
  background: rgba(254, 226, 226, 0.78);
}

.service-alert-pulse-inline {
  color: #b91c1c;
  font-weight: 800;
  animation: service-alert-text-pulse 1.1s ease-in-out infinite;
}

@keyframes service-alert-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.22);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(239, 68, 68, 0.06);
  }
}

@keyframes service-alert-text-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.48;
  }
}

.dashboard-quick-actions {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.dashboard-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.dashboard-section-head h2 {
  margin: 0;
}

.dashboard-section-head .summary-title-note {
  color: #64748b;
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.35;
}

.dashboard-section-head .small-note {
  margin: 0;
  color: #64748b;
}

.dashboard-section-head.compact h3 {
  margin: 0;
  color: #24324a;
  font-size: 1rem;
}

.dashboard-shift-blocks,
.dashboard-two-column {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.dashboard-two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dashboard-shift-block {
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.inline-summary-section {
  margin: 14px 0 18px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #f8fbff;
}

@media (max-width: 1100px) {
  .dashboard-shift-blocks,
  .dashboard-two-column {
    grid-template-columns: 1fr;
  }
}

.dashboard-action-grid {
  gap: 10px;
}

.dashboard-action-btn {
  border-radius: 11px;
  border: 1px solid transparent;
  box-shadow: 0 4px 10px rgba(79, 103, 246, 0.2);
}

.dashboard-action-btn i {
  font-size: 0.88rem;
}

.dashboard-action-btn.quick-personnel {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.dashboard-action-btn.quick-tutanak {
  background: linear-gradient(135deg, #f97316, #ea580c);
}

.dashboard-action-btn.quick-kif {
  background: linear-gradient(135deg, #f43f5e, #e11d48);
}

.dashboard-action-btn.quick-zimmet {
  background: linear-gradient(135deg, #14b8a6, #0f766e);
}

.dashboard-action-btn.quick-social {
  background: linear-gradient(135deg, #8b5cf6, #6d28d9);
}

.dashboard-action-btn:hover {
  filter: brightness(1.03);
}

.flash-stack {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.flash-stack-center {
  position: fixed;
  top: 50%;
  left: calc(var(--sidebar-width) + (100vw - var(--sidebar-width)) / 2);
  z-index: 5000;
  width: min(620px, calc(100vw - var(--sidebar-width) - 48px));
  max-height: min(60vh, 420px);
  max-width: calc(100vw - 32px);
  box-sizing: border-box;
  margin: 0;
  transform: translate(-50%, -50%);
  overflow-y: auto;
  overflow-x: hidden;
  filter: drop-shadow(0 22px 42px rgba(15, 23, 42, 0.22));
  scrollbar-gutter: stable;
}

.flash {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 0.89rem;
  font-weight: 800;
  font-style: italic;
}

.flash > .flash-message {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

.flash-stack-center .flash {
  width: 100%;
  border-radius: 18px;
  padding: 18px 20px;
  font-size: 1.02rem;
  line-height: 1.45;
  border: 2px solid transparent;
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16);
}

.flash-stack-toast {
  width: min(680px, calc(100vw - var(--sidebar-width) - 56px));
  filter: drop-shadow(0 22px 46px rgba(34, 197, 94, 0.2));
  animation: flash-toast-in 160ms ease-out;
}

.flash.success {
  background: #dcfce7;
  color: #166534;
}

.flash-stack-center .flash.success {
  background: linear-gradient(180deg, #f0fff4 0%, #dcfce7 100%);
  border-color: #86efac;
  color: #14532d;
}

.flash-stack-center .flash.assignment-result {
  align-items: center;
  justify-content: center;
  min-height: 96px;
  padding: 22px 24px;
  font-size: 1.08rem;
  font-style: normal;
  text-align: center;
}

.flash-stack-center .flash.assignment-result > .flash-message {
  max-width: 100%;
  font-weight: 900;
}

.flash-stack-center .flash.assignment-result .flash-message-segments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  column-gap: 8px;
  row-gap: 2px;
  overflow-wrap: normal;
}

.flash-stack-center .flash.assignment-result .flash-message-segment,
.flash-stack-center .flash.assignment-result .flash-message-separator {
  display: inline-block;
  white-space: nowrap;
  word-break: keep-all;
  overflow-wrap: normal;
}

.flash.error {
  background: #fee2e2;
  color: #991b1b;
}

.flash-stack-center .flash.error {
  background: linear-gradient(180deg, #fff5f5 0%, #fee2e2 100%);
  border-color: #ef4444;
}

.flash.info {
  background: #e0edff;
  color: #1e40af;
}

.flash-stack-center .flash.info {
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  border-color: #93c5fd;
  color: #1e3a8a;
}

.flash.warning {
  background: #fef3c7;
  color: #92400e;
}

.flash-stack-center .flash.warning {
  background: linear-gradient(180deg, #fffaf0 0%, #fef3c7 100%);
  border-color: #f59e0b;
}

.flash-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  color: inherit;
  cursor: pointer;
}

.flash-close:hover {
  background: rgba(15, 23, 42, 0.14);
}

@keyframes flash-toast-in {
  from {
    opacity: 0;
    transform: translate(-50%, calc(-50% + 10px));
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 900px) {
  .flash-stack-center {
    left: 50%;
    width: min(620px, calc(100vw - 28px));
    max-width: calc(100vw - 24px);
    max-height: 70vh;
  }
}

.file-link {
  color: #3456df;
  font-weight: 700;
}

.sig-grid {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.sig-card {
  border: 1px dashed #d0d9ea;
  border-radius: 12px;
  background: #fbfdff;
  min-height: 84px;
  padding: 11px;
}

.sig-card.mid {
  grid-column: 1 / -1;
  max-width: 340px;
  justify-self: center;
}

.check-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

.check-row {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid #e4eaf4;
  border-radius: 10px;
  min-height: 46px;
  padding: 8px 12px;
}

.check-row span {
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.25;
}

.role-builder {
  gap: 14px;
}

.perm-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

.perm-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  border: 1px solid #e4eaf4;
  border-radius: 10px;
  background: #fff;
  padding: 8px 12px;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.perm-item:hover {
  border-color: #cad6ee;
  background: #fbfdff;
}

.perm-item span {
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.25;
}

/* Role management modern */
.roles-layout {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(460px, 1fr);
  gap: 14px;
  align-items: start;
}

.roles-left-panel,
.roles-right-panel,
.role-edit-panel {
  padding: 14px;
}

.roles-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.roles-panel-head h2 {
  margin-bottom: 2px;
}

.role-card-list {
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

.role-card {
  border: 1px solid #e4eaf4;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
  display: grid;
  gap: 4px;
}

.role-card.active {
  border-color: #f0b45a;
  background: #fffaf0;
}

.role-tag {
  display: inline-flex;
  width: fit-content;
  padding: 2px 8px;
  border-radius: 999px;
  background: #edf2ff;
  color: #4b60d8;
  font-size: 0.72rem;
  font-weight: 800;
}

.role-card h3 {
  margin: 2px 0 0;
  font-size: 1.24rem;
  color: #1f2f49;
}

.role-card-actions {
  margin-top: 4px;
  display: flex;
  gap: 8px;
}

.role-assign-toolbar {
  display: grid;
  gap: 10px;
}

.role-filter-row {
  display: grid;
  grid-template-columns: minmax(16ch, 24ch) minmax(20ch, 30ch);
  gap: 8px;
  align-items: end;
  margin: 8px 0 2px;
}

.role-filter-row label {
  margin: 0;
}

.role-filter-row select,
.role-filter-row input[type="text"] {
  width: 100%;
  max-width: 100%;
}

.role-assign-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.role-assign-row > select {
  width: min(100%, 24ch);
  max-width: 24ch;
  min-width: 16ch;
}

.role-assign-row .btn {
  min-width: 14ch;
}

.role-info-note {
  border: 1px solid #f0cb75;
  background: #fff8e8;
  color: #7a4a0a;
  border-radius: 12px;
  padding: 10px 12px;
  font-size: 1.02rem;
  line-height: 1.45;
}

.role-module-title {
  margin: 6px 0 2px;
  font-size: 1.6rem;
}

.role-module-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.role-module-item {
  border: 1px solid #e3e9f4;
  border-radius: 11px;
  background: #fff;
  min-height: 52px;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.role-module-item span {
  font-size: 0.99rem;
  font-weight: 700;
  line-height: 1.3;
}

body.modal-open {
  overflow: hidden;
}

.role-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 1200;
  background: rgba(21, 33, 58, 0.5);
  padding: 34px 14px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow-y: auto;
}

.role-modal-overlay[hidden] {
  display: none !important;
}

.role-modal-card {
  width: min(980px, 100%);
  margin: 0;
  padding: 14px;
  box-shadow: 0 18px 48px rgba(15, 28, 56, 0.24);
}

.role-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.role-modal-close {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid #d8dfef;
  background: #fff;
  color: #60708c;
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.role-modal-close:hover {
  background: #eef3ff;
  color: #324f9f;
  border-color: #c8d3f1;
}

.role-modal-actions {
  margin-top: 2px;
}

.service-return-confirm-modal {
  align-items: center;
}

.service-return-confirm-card {
  width: min(520px, 100%);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  padding: 18px;
  border: 1px solid #dbe5ff;
  box-shadow: 0 22px 60px rgba(20, 35, 78, 0.28);
}

.service-return-confirm-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #3f5df6;
  background: #eef3ff;
  font-size: 1.35rem;
}

.service-return-confirm-body h3 {
  margin: 0 0 5px;
  font-size: 1.2rem;
  color: #16213b;
}

.service-return-confirm-body p {
  margin: 0;
  color: #5d6a83;
  font-weight: 700;
}

.service-return-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 4px;
}

/* Personnel list modern */
.personnel-modern-page {
  width: 100%;
  max-width: 100%;
  margin-inline: 0 auto;
}

.personnel-modern-card {
  margin-top: 0;
  padding: 14px;
  container: personnel-card / inline-size;
}

@media (min-width: 1600px) {
  .personnel-modern-page {
    width: max(1180px, calc((100vw - var(--sidebar-width) - 44px) * 2 / 3));
    max-width: 1360px;
    margin-inline: 0 auto;
  }
}

.personnel-toolbar {
  display: grid;
  grid-template-columns:
    minmax(16ch, 22ch)
    minmax(19ch, 22ch)
    minmax(33ch, 36ch)
    minmax(42ch, 46ch)
    minmax(21ch, 23ch);
  align-items: end;
  gap: 10px;
}

.personnel-toolbar .toolbar-search {
  min-width: 0;
  max-width: none;
  grid-column: span 1;
}

.personnel-toolbar select[name="title_id"] {
  min-width: 0;
  max-width: none;
  grid-column: span 1;
}

.personnel-toolbar select[name="department_id"] {
  min-width: 0;
  max-width: none;
  grid-column: span 1;
}

.personnel-toolbar select[name="senior_unit"] {
  min-width: 0;
  max-width: none;
  grid-column: span 1;
}

.personnel-toolbar select[name="terminal_unit"] {
  min-width: 0;
  max-width: none;
  grid-column: span 1;
}

.toolbar-search,
.toolbar-select {
  width: 100%;
  min-height: 40px;
  max-width: none;
}

.personnel-toolbar .toolbar-search,
.personnel-toolbar .toolbar-select {
  padding-left: 11px;
  padding-right: 34px;
}

.team-chips {
  display: flex;
  gap: 6px;
  flex-wrap: nowrap;
  min-width: 0;
  min-height: 40px;
  align-items: center;
  align-content: center;
  justify-content: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  justify-self: start;
}

.personnel-list-toolbar-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-top: 10px;
  margin-bottom: 12px;
  min-width: 0;
}

.personnel-list-toolbar-row .team-chips {
  flex: 1 1 auto;
  margin: 0;
}

.personnel-list-toolbar-row .personnel-pager-top {
  flex: 0 0 auto;
  margin: 0;
}

.status-chips {
  display: flex;
  grid-column: 4 / span 2;
  gap: 6px;
  flex-wrap: nowrap;
  min-width: 0;
  min-height: 40px;
  align-items: center;
  align-content: center;
  justify-content: flex-end;
}

.chip-divider {
  width: 8px;
  min-width: 8px;
  height: 1px;
  flex: 0 0 auto;
}

.team-chip {
  border: 1px solid #d7deee;
  border-radius: 999px;
  min-height: 30px;
  padding: 4px 10px;
  background: #f2f5fb;
  color: #4b5563;
  font-size: 0.8rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.team-chip.active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #fff;
}

.team-chip-own {
  border-color: #4f67f6;
  box-shadow: 0 0 0 2px rgba(79, 103, 246, 0.12);
}

.team-chip-badge {
  margin-left: 6px;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: #3446c7;
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1;
}

.team-chip-locked:not(.active) {
  border-style: dashed;
  color: #697386;
  opacity: 0.78;
}

.team-chip-create {
  margin-left: 4px;
  background: #4f67f6;
  border-color: #4f67f6;
  color: #fff;
}

.team-chip-reset {
  gap: 6px;
  background: #fff;
  border-color: #cfd8ea;
  color: #334155;
}

.personnel-toolbar .toolbar-actions {
  grid-column: 5 / span 1;
  margin-left: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.personnel-table-wrap {
  margin-top: 10px;
  width: 100%;
  max-width: 100%;
  overflow-x: visible;
  overflow-y: visible;
  max-height: none;
}

.personnel-pager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-height: 36px;
  margin: 8px 0;
  flex-wrap: nowrap;
  white-space: nowrap;
}

.personnel-pager[hidden] {
  display: none;
}

.personnel-pager button,
.personnel-pager span {
  min-height: 30px;
  border-radius: 999px;
  border: 1px solid #d7deee;
  background: #f2f5fb;
  color: #334155;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.personnel-pager button {
  padding: 0 12px;
  cursor: pointer;
}

.personnel-pager span {
  min-width: 64px;
  background: #ffffff;
}

.personnel-pager .personnel-page-numbers {
  gap: 4px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.personnel-pager .personnel-page-number {
  min-width: 32px;
  padding: 0 10px;
}

.personnel-pager .personnel-page-number.active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
}

.personnel-pager .personnel-page-total {
  min-width: 56px;
}

.personnel-pager button:hover:not(:disabled),
.personnel-pager button:focus-visible {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
  outline: none;
}

.personnel-pager button:disabled {
  opacity: 0.48;
  cursor: not-allowed;
}

.personnel-modern-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.personnel-modern-table th,
.personnel-modern-table td {
  max-width: none;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.personnel-modern-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  border-bottom: 1px solid #c7d2fe;
  background: linear-gradient(180deg, #dbe4ff, #eef2ff);
  color: #26314f;
  box-shadow: inset 0 -1px 0 rgba(79, 103, 246, 0.16);
}

.personnel-modern-table tbody tr:nth-child(odd) td {
  background: #ffffff;
}

.personnel-modern-table tbody tr:nth-child(even) td {
  background: #e9eefc;
}

.personnel-modern-table tbody tr:hover td {
  background: #dfe7ff;
}

.personnel-modern-table tbody tr.personnel-team-a td:first-child {
  box-shadow: inset 4px 0 0 #2563eb;
}

.personnel-modern-table tbody tr.personnel-team-b td:first-child {
  box-shadow: inset 4px 0 0 #0f766e;
}

.personnel-modern-table tbody tr.personnel-team-c td:first-child {
  box-shadow: inset 4px 0 0 #7c3aed;
}

.personnel-modern-table tbody tr.personnel-team-normal td:first-child {
  box-shadow: inset 4px 0 0 #f59e0b;
}

.personnel-modern-table th:nth-child(5),
.personnel-modern-table td:nth-child(5) {
  width: 18ch;
  max-width: 18ch;
}

.personnel-modern-table th:nth-child(6),
.personnel-modern-table td:nth-child(6) {
  width: 13ch;
  max-width: 13ch;
}

.personnel-modern-table th:nth-child(7),
.personnel-modern-table td:nth-child(7) {
  width: 9ch;
  max-width: 9ch;
  text-align: center;
}

.personnel-modern-table th:nth-child(8),
.personnel-modern-table td:nth-child(8) {
  width: 10ch !important;
  max-width: 10ch !important;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-modern-table th:nth-child(9),
.personnel-modern-table td:nth-child(9) {
  width: 25ch;
  max-width: 25ch;
  white-space: nowrap;
}

.personnel-modern-table th:nth-child(1),
.personnel-modern-table td:nth-child(1) {
  width: 7ch;
  max-width: 7ch;
}

.personnel-modern-table th:nth-child(2),
.personnel-modern-table td:nth-child(2) {
  width: 11ch;
  max-width: 11ch;
}

.personnel-modern-table th:nth-child(3),
.personnel-modern-table td:nth-child(3) {
  width: 24ch;
  max-width: 24ch;
}

.personnel-modern-table th:nth-child(4),
.personnel-modern-table td:nth-child(4) {
  width: 23ch;
  max-width: 23ch;
}

.personnel-modern-table th:nth-child(9) {
  position: sticky;
  right: 0;
  z-index: 3;
}

.personnel-modern-table td:nth-child(9) {
  position: sticky;
  right: 0;
  z-index: 1;
  background: #fff;
}

.personnel-modern-table tbody tr:nth-child(even) td:nth-child(9) {
  background: #e9eefc;
}

.personnel-modern-table tbody tr:hover td:nth-child(9) {
  background: #dfe7ff;
}

@container personnel-card (max-width: 1500px) {
  .personnel-modern-table .col-senior-unit {
    display: none;
  }

  .personnel-modern-table .col-department {
    display: none;
  }

  .personnel-modern-table {
    min-width: 118ch;
  }
}

@media (max-width: 1500px) {
  .personnel-modern-card .personnel-modern-table .col-senior-unit {
    display: none;
  }

  .personnel-modern-card .personnel-modern-table .col-department {
    display: none;
  }
}

.sicil-pill {
  color: #3557dd;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.person-cell {
  display: flex;
  align-items: center;
  gap: 10px;
}

.person-avatar {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: linear-gradient(140deg, #4f67f6, #7c63ff);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 0.76rem;
  font-weight: 800;
}

.person-meta {
  display: grid;
  gap: 2px;
}

.person-meta strong {
  font-size: 0.9rem;
}

.person-meta small {
  font-size: 0.76rem;
  color: #64748b;
}

.personnel-title-cell {
  display: grid;
  gap: 5px;
  align-content: center;
  min-width: 0;
}

.personnel-title-cell > span {
  line-height: 1.2;
}

.personnel-title-alert,
.person-meta .personnel-separation-detail {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  max-width: 100%;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-title-alert i {
  flex: 0 0 auto;
}

.personnel-title-alert span,
.personnel-title-alert strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-title-alert strong {
  font-weight: 800;
}

.personnel-title-alert-left {
  border: 1px solid #fecaca;
  background: #fff1f2;
  color: #991b1b;
  animation: personnel-status-pulse-red 1.6s ease-in-out infinite;
}

.personnel-title-alert-left strong {
  color: #7f1d1d;
}

.personnel-title-alert-unit {
  border: 1px solid #bbf7d0;
  background: #ecfdf5;
  color: #166534;
  animation: personnel-status-pulse-green 1.6s ease-in-out infinite;
}

.personnel-title-alert-unit strong {
  color: #14532d;
}

.person-meta .personnel-separation-detail {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #9a3412;
  white-space: normal;
}

.personnel-separation-detail span {
  color: #64748b;
  font-weight: 700;
}

.personnel-department-cell {
  display: grid;
  gap: 4px;
}

.personnel-unit-change-note {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 28ch;
  width: fit-content;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid #ddd6fe;
  background: #f5f3ff;
  color: #5b21b6;
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-unit-change-note i {
  color: #6d28d9;
  flex: 0 0 auto;
}

@keyframes personnel-status-pulse-red {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.28);
    filter: saturate(1);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(220, 38, 38, 0.08);
    filter: saturate(1.12);
  }
}

@keyframes personnel-status-pulse-green {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.26);
    filter: saturate(1);
  }
  50% {
    box-shadow: 0 0 0 4px rgba(22, 163, 74, 0.08);
    filter: saturate(1.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .personnel-title-alert-left,
  .personnel-title-alert-unit {
    animation: none;
  }
}

.personnel-team-cell {
  display: grid;
  gap: 4px;
}

.personnel-team-cell-editable {
  min-width: 0;
}

.personnel-team-select,
.personnel-team-note-input {
  width: 100%;
  min-width: 0;
  border: 1px solid #c7d2fe;
  border-radius: 9px;
  background: #ffffff;
  color: #1f2937;
  font-weight: 800;
}

.personnel-team-select {
  max-width: none;
  min-height: 34px;
  min-width: 12ch;
  padding: 6px 30px 6px 8px;
  font-size: 0.82rem;
  overflow: visible;
  text-overflow: clip;
}

.personnel-team-a .personnel-team-select {
  border-color: #93c5fd;
  background: #dbeafe;
  color: #1e3a8a;
}

.personnel-team-b .personnel-team-select {
  border-color: #5eead4;
  background: #ccfbf1;
  color: #115e59;
}

.personnel-team-c .personnel-team-select {
  border-color: #c4b5fd;
  background: #ede9fe;
  color: #4c1d95;
}

.personnel-team-normal .personnel-team-select {
  border-color: #fcd34d;
  background: #fef3c7;
  color: #92400e;
}

.personnel-team-note-input {
  min-height: 32px;
  padding: 6px 8px;
  border-color: #fed7aa;
  background: #fff7ed;
  color: #7c2d12;
  font-size: 0.76rem;
}

.personnel-team-select:focus,
.personnel-team-note-input:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.14);
  outline: none;
}

.personnel-team-select option[value="__unit_change__"] {
  color: #9a3412;
  font-weight: 800;
}

.personnel-team-transfer-note {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 22ch;
  width: fit-content;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid #ddd6fe;
  background: #f5f3ff;
  color: #5b21b6;
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-team-transfer-note i {
  color: #6d28d9;
  flex: 0 0 auto;
}

.contact-cell {
  display: grid;
  gap: 2px;
}

.personnel-actions {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: flex-start;
  white-space: nowrap;
}

.personnel-actions form,
.personnel-actions .icon-btn-mini {
  flex: 0 0 auto;
}

.personnel-actions .mini-transfer {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.personnel-actions .mini-transfer select {
  min-width: 8ch;
  max-width: 10ch;
  min-height: 34px;
}

.personnel-actions .mini-transfer .personnel-transfer-popover select {
  min-width: 0;
  max-width: none;
}

.personnel-separate-form,
.personnel-transfer-form {
  position: relative;
}

.personnel-transfer-form:has(.personnel-transfer-menu[open]),
.personnel-separate-form:has(.personnel-separate-menu[open]) {
  z-index: 220;
}

.personnel-table-wrap:has(.personnel-transfer-menu[open]),
.personnel-table-wrap:has(.personnel-separate-menu[open]) {
  overflow: visible;
}

.personnel-table-wrap tr:has(.personnel-transfer-menu[open]) td,
.personnel-table-wrap tr:has(.personnel-separate-menu[open]) td {
  position: relative;
  z-index: 210;
}

.personnel-separate-menu,
.personnel-transfer-menu {
  position: relative;
}

.personnel-separate-menu > summary,
.personnel-transfer-menu > summary {
  list-style: none;
}

.personnel-separate-menu > summary::-webkit-details-marker,
.personnel-transfer-menu > summary::-webkit-details-marker {
  display: none;
}

.personnel-separate-popover,
.personnel-transfer-popover {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 240;
  display: grid;
  gap: 8px;
  width: min(320px, 88vw);
  padding: 10px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.16);
  white-space: normal;
}

.personnel-transfer-popover {
  border-color: #a78bfa;
  width: min(320px, 88vw);
  background:
    linear-gradient(135deg, rgba(245, 243, 255, 0.98), rgba(255, 255, 255, 0.98));
  box-shadow: 0 22px 46px rgba(79, 70, 229, 0.22);
}

.personnel-transfer-menu[open] > summary {
  border-color: #c4b5fd;
  background: #ede9fe;
  color: #5b21b6;
  box-shadow: 0 10px 22px rgba(124, 58, 237, 0.18);
}

.personnel-transfer-popover::before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #7c3aed, #4f46e5);
}

.personnel-separate-popover label,
.personnel-transfer-popover label {
  display: grid;
  gap: 4px;
  color: #475569;
  font-size: 0.76rem;
  font-weight: 800;
}

.personnel-transfer-popover label {
  color: #4c1d95;
}

.personnel-separate-popover select,
.personnel-separate-popover input,
.personnel-transfer-popover select,
.personnel-transfer-popover input {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  border: 1px solid #dbe4f2;
  border-radius: 8px;
  padding: 7px 9px;
  color: #1f2937;
  font-size: 0.84rem;
}

.personnel-transfer-popover select {
  border-color: #c4b5fd;
  background-color: #ffffff;
  font-weight: 800;
}

.personnel-transfer-popover select:focus,
.personnel-transfer-popover input:focus {
  border-color: #7c3aed;
  box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.14);
  outline: none;
}

.personnel-transfer-popover select option[value="__unit_change__"] {
  color: #9a3412;
  font-weight: 800;
}

.personnel-separate-popover .btn,
.personnel-transfer-popover .btn {
  width: 100%;
  min-height: 34px;
  justify-content: center;
  padding: 7px 10px;
}

.personnel-popover-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 8px;
}

.personnel-popover-actions .btn {
  min-width: 0;
}

.mini-btn {
  min-width: 28px;
  min-height: 30px;
  border-radius: 8px;
  padding: 0 7px;
  border: 1px solid transparent;
  font-size: 0.73rem;
  font-weight: 800;
  cursor: pointer;
}

.mini-btn.view {
  background: #e0e7ff;
  color: #3349c8;
}

.mini-btn.transfer {
  background: #f3e8ff;
  color: #6d28d9;
}

.mini-btn.delete {
  background: #fee2e2;
  color: #b91c1c;
}

.mini-transfer {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.mini-transfer select {
  min-height: 30px;
  min-width: 10ch;
  max-width: 12ch;
  border-radius: 8px;
  font-size: 0.78rem;
  padding: 4px 8px;
}

/* KIF module style */
.kif-detail-title {
  margin-bottom: 2px;
}

.kif-detail-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}

.kif-detail-page {
  width: min(100%, 1360px);
  max-width: 100%;
  padding: 12px 14px 14px;
  border-color: #b7c3ff;
  border-left: 5px solid #4f67f6;
  background:
    linear-gradient(135deg, rgba(248, 251, 255, 0.98), rgba(255, 255, 255, 0.96)),
    #ffffff;
  box-shadow: 0 14px 32px rgba(79, 103, 246, 0.08);
}

.kif-detail-grid {
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
  gap: 12px;
  align-items: start;
}

.kif-detail-panel {
  min-width: 0;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  padding: 10px;
  display: grid;
  gap: 5px;
  overflow-wrap: anywhere;
}

.kif-detail-meta-panel {
  border-left: 4px solid #14b8a6;
  background: linear-gradient(135deg, #f0fdfa 0%, #f8fbff 100%);
}

.kif-detail-penalty-panel {
  border-left: 4px solid #f97316;
  background: linear-gradient(135deg, #fff7ed 0%, #fffaf0 100%);
}

.kif-detail-panel p {
  margin: 0;
  padding: 5px 7px;
  border-radius: 7px;
  line-height: 1.24;
}

.kif-detail-meta-panel p {
  display: grid;
  grid-template-columns: minmax(15ch, 20ch) minmax(0, 1fr);
  gap: 7px;
  align-items: start;
}

.kif-detail-panel p:nth-of-type(odd) {
  background: rgba(255, 255, 255, 0.72);
}

.kif-detail-panel p:nth-of-type(even) {
  background: rgba(239, 246, 255, 0.58);
}

.kif-detail-panel strong {
  color: #172033;
  font-weight: 900;
}

.kif-detail-description {
  background: #ffffff !important;
  border: 1px solid #fed7aa;
}

.kif-detail-doc-panel {
  margin-top: 12px;
  padding: 10px;
  border-color: #dbeafe;
  border-left: 4px solid #8b5cf6;
  border-radius: 10px;
  background: linear-gradient(135deg, #f5f3ff 0%, #f8fbff 100%);
}

.kif-detail-archive-panel {
  border-left-color: #22c55e;
  background: linear-gradient(135deg, #f0fdf4 0%, #f8fbff 100%);
}

.kif-detail-doc-panel h2 {
  margin: 0 0 4px;
  font-size: 1.02rem;
}

.kif-detail-doc-panel .small-note {
  margin: 0 0 6px;
}

.kif-detail-doc-panel .module-table th,
.kif-detail-doc-panel .module-table td {
  padding: 7px 8px;
}

.kif-detail-actions {
  margin-top: 12px;
}

@media (max-width: 900px) {
  .kif-detail-page {
    width: 100%;
    padding: 10px;
  }

  .kif-detail-grid {
    grid-template-columns: 1fr;
  }

  .kif-detail-meta-panel p {
    grid-template-columns: minmax(12ch, 17ch) minmax(0, 1fr);
  }
}

.module-shell {
  padding: 0;
  overflow: hidden;
}

.asset-module-shell {
  margin-top: 0;
}

.asset-module-shell .module-tabs,
.asset-module-shell .operation-switch {
  padding: 8px 12px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-gutter: stable;
}

.asset-module-shell .operation-switch-list {
  flex-wrap: nowrap;
  width: max-content;
  min-width: 100%;
}

.asset-module-shell .module-tab,
.asset-module-shell .operation-tab {
  min-height: 36px;
}

.asset-module-shell .operation-tab {
  flex: 0 0 auto;
  padding-inline: 9px;
  font-size: 0.94rem;
  white-space: nowrap;
}

.shift-schedule-page.module-shell {
  margin-top: 0;
  overflow: visible;
  box-shadow: 0 10px 26px rgba(31, 41, 55, 0.05);
}

.plate-module-shell {
  margin-top: 0;
}

.shift-schedule-page .module-tabs {
  padding-top: 10px;
  padding-bottom: 9px;
}

.shift-schedule-page .module-tab {
  min-height: 38px;
  font-size: 0.98rem;
  padding-inline: 10px;
}

.module-tabs {
  display: flex;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid var(--border);
  padding: 13px 16px 10px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 251, 255, 0.96));
}

.module-tab {
  --module-tab-accent: #64748b;
  min-height: 42px;
  border: 1px solid transparent;
  border-bottom: 3px solid transparent;
  border-radius: 10px;
  color: #64748b;
  font-size: 1.05rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 11px;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.module-tab i {
  font-size: 0.95rem;
  color: var(--module-tab-accent);
}

.module-tab em {
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--module-tab-accent) 13%, #ffffff);
  color: var(--module-tab-accent);
  font-style: normal;
  font-size: 0.73rem;
  display: inline-grid;
  place-items: center;
}

.module-tab.active {
  color: #1e293b;
  background: color-mix(in srgb, var(--module-tab-accent) 10%, #ffffff);
  border-color: color-mix(in srgb, var(--module-tab-accent) 28%, #e2e8f0);
  border-bottom-color: var(--module-tab-accent);
  box-shadow: 0 6px 14px rgba(31, 41, 55, 0.06);
}

.module-tab.active em {
  background: var(--module-tab-accent);
  color: #ffffff;
}

.module-tab:hover {
  color: #334155;
  background: color-mix(in srgb, var(--module-tab-accent) 7%, #ffffff);
  transform: translateY(-1px);
}

.operation-switch {
  display: block;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,255,0.98));
}

.operation-switch-title {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dbe4f3;
  border-radius: 8px;
  background: #f8fafc;
  color: #526078;
  font-size: 0.92rem;
  font-weight: 900;
}

.operation-switch-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.operation-tab {
  --operation-accent: #64748b;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-bottom: 3px solid transparent;
  border-radius: 8px;
  color: #64748b;
  background: transparent;
  font-weight: 800;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.operation-tab i {
  color: var(--operation-accent);
}

.operation-tab em {
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--operation-accent) 13%, #ffffff);
  color: var(--operation-accent);
  font-size: 0.72rem;
  font-style: normal;
  display: inline-grid;
  place-items: center;
}

.operation-tab.active {
  color: #ffffff;
  border-color: var(--operation-accent);
  border-bottom-color: var(--operation-accent);
  background: linear-gradient(180deg, color-mix(in srgb, var(--operation-accent) 88%, #ffffff), var(--operation-accent));
  box-shadow: 0 10px 20px color-mix(in srgb, var(--operation-accent) 22%, transparent);
}

.operation-tab.active i {
  color: #ffffff;
}

.operation-tab.active em {
  color: var(--operation-accent);
  background: #ffffff;
  font-weight: 900;
}

.operation-tab:hover {
  color: #334155;
  background: color-mix(in srgb, var(--operation-accent) 7%, #ffffff);
  transform: translateY(-1px);
}

.operation-tab-action {
  --operation-accent: #4f67f6;
  color: #526078;
  background: transparent;
  border-color: transparent;
  border-bottom-color: transparent;
}

.operation-tab-action:hover {
  color: #243b9f;
  background: #f4f7ff;
  border-color: #dbe4ff;
  border-bottom-color: #b8c4ff;
}

.operation-tab:has(.fa-right-left) {
  --operation-accent: #4f67f6;
}

.operation-tab:has(.fa-trash-can),
.operation-tab:has(.fa-file-signature) {
  --operation-accent: #dc2626;
}

.operation-tab:has(.fa-toolbox),
.operation-tab:has(.fa-file-medical) {
  --operation-accent: #b45309;
}

.operation-tab:has(.fa-clipboard-check),
.operation-tab:has(.fa-clipboard-list) {
  --operation-accent: #475569;
}

.module-tab:has(.fa-triangle-exclamation) {
  --module-tab-accent: #dc2626;
}

.module-tab:has(.fa-screwdriver-wrench),
.module-tab:has(.fa-right-left) {
  --module-tab-accent: #4f67f6;
}

.module-tab:has(.fa-trash-can) {
  --module-tab-accent: #dc2626;
}

.module-tab:has(.fa-toolbox),
.module-tab:has(.fa-file-medical) {
  --module-tab-accent: #c2410c;
}

.module-tab:has(.fa-clipboard-list) {
  --module-tab-accent: #b91c1c;
}

.module-tab:has(.fa-car-side) {
  --module-tab-accent: #0f766e;
}

.module-tab:has(.fa-hand-holding-heart) {
  --module-tab-accent: #0f9d93;
}

.module-tab:has(.fa-calendar-days),
.module-tab:has(.fa-calendar-check) {
  --module-tab-accent: #d97706;
}

.module-tab:has(.fa-list-check),
.module-tab:has(.fa-list-ul) {
  --module-tab-accent: #4f67f6;
}

.module-tab:has(.fa-file-signature),
.module-tab:has(.fa-file-pen) {
  --module-tab-accent: #d97706;
}

.module-tab:has(.fa-book),
.module-tab:has(.fa-folder-open) {
  --module-tab-accent: #0f9d93;
}

.module-tab:has(.fa-file-lines) {
  --module-tab-accent: #7c3aed;
}

.module-tab:has(.fa-filter) {
  --module-tab-accent: #0284c7;
}

.module-tab:has(.fa-rotate) {
  --module-tab-accent: #7c3aed;
}

.module-tab:has(.fa-tags) {
  --module-tab-accent: #16a34a;
}

.module-tab.shift-tab-overview {
  --module-tab-accent: #4f67f6;
}

.module-tab.shift-tab-filter {
  --module-tab-accent: #0284c7;
}

.module-tab.shift-tab-plan {
  --module-tab-accent: #7c3aed;
}

.module-tab.shift-tab-calendar {
  --module-tab-accent: #d97706;
}

.module-tab.shift-tab-definitions {
  --module-tab-accent: #16a34a;
}

.module-tab.zimmet-command-tab {
  font-size: 0.94rem;
  font-weight: 900;
}

.module-tab.zimmet-command-primary {
  --module-tab-accent: #4f67f6;
}

.module-tab.zimmet-command-warning {
  --module-tab-accent: #c47a00;
}

.module-tab.zimmet-command-neutral {
  --module-tab-accent: #64748b;
}

.shift-overview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.shift-overview-section {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.shift-month-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid #d7ddea;
  border-radius: 999px;
  font-size: 0.92rem;
  color: #475569;
  margin-left: 8px;
}

.shift-month-call-form {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.shift-month-call-form input[type="month"] {
  min-width: 160px;
}

.shift-team-count-note {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 600;
}

.shift-team-counts-row {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.shift-team-count-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #d7ddea;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 0.88rem;
  color: #334155;
  background: #f8fafc;
}

.shift-team-group-row td {
  background: #eef2ff !important;
  color: #1e3a8a;
  font-weight: 700;
}

.shift-person-table .shift-group-label-cell {
  position: sticky;
  left: 0;
  z-index: 6;
  width: calc(var(--shift-sicil-col-width) + var(--shift-person-col-width));
  min-width: calc(var(--shift-sicil-col-width) + var(--shift-person-col-width));
  max-width: calc(var(--shift-sicil-col-width) + var(--shift-person-col-width));
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: 1px 0 0 #dbe4f6;
}

.shift-group-fill-cell {
  color: transparent;
}

.shift-unit-group-row td {
  background: linear-gradient(90deg, #e0f2fe 0%, #ecfeff 42%, #f8fafc 100%) !important;
  color: #0f4c5c;
  border-top: 1px solid #bae6fd;
  border-bottom: 1px solid #bae6fd;
  font-weight: 800;
  padding: 7px 12px;
}

.shift-unit-label-inline {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.shift-unit-title {
  display: inline-flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 5px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.94rem;
  letter-spacing: 0.01em;
}

.shift-unit-title::before {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #0ea5e9;
  box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.14);
}

.shift-unit-count {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  margin-left: 0;
  padding: 1px 7px;
  border-radius: 999px;
  background: #ffffff;
  color: #475569;
  border: 1px solid #cbd5e1;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.15;
}

.shift-team-daily-count-row td {
  background: #f8fafc !important;
}

.shift-support-person-inline {
  display: block;
  margin-top: 2px;
  font-size: 0.76rem;
  line-height: 1.2;
  color: #334155;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.shift-support-detail-trigger {
  margin-top: 4px;
  padding: 4px 8px;
  font-size: 0.72rem;
  font-weight: 700;
}

.shift-support-detail-dialog {
  max-width: 560px;
}

.shift-support-detail-meta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 8px;
  color: #334155;
  font-weight: 700;
}

.shift-support-detail-list {
  margin: 0;
  padding-left: 18px;
  max-height: 44vh;
  overflow: auto;
}

.shift-support-detail-list li {
  margin: 0 0 6px;
  color: #0f172a;
}

.shift-code-cell.is-quick-edit {
  cursor: pointer;
  box-shadow: inset 0 0 0 1px #cbd5e1;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.shift-code-cell.is-quick-edit:hover {
  box-shadow: inset 0 0 0 1px #6366f1;
  transform: translateY(-1px);
}

.shift-quick-edit-modal[hidden] {
  display: none;
}

.shift-quick-edit-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
}

.shift-quick-edit-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.42);
}

.shift-quick-edit-dialog {
  position: relative;
  width: min(760px, calc(100vw - 32px));
  max-height: calc(100vh - 96px);
  overflow: auto;
  margin: 64px auto 0;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #d7ddea;
  padding: 16px;
  box-shadow: 0 22px 52px rgba(15, 23, 42, 0.24);
}

.shift-quick-edit-dialog .shift-override-grid {
  grid-template-columns: repeat(auto-fit, minmax(16ch, 1fr));
}

.shift-quick-edit-dialog .shift-override-grid > label {
  min-width: 0;
}

.shift-quick-edit-dialog .shift-override-grid input,
.shift-quick-edit-dialog .shift-override-grid select {
  min-width: 0;
  width: 100%;
}

.shift-quick-edit-lock-note {
  grid-column: 1 / -1;
  margin: 0;
  color: #b45309;
}

.shift-quick-edit-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.list-logo-strip {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 10px 16px 0;
}

.list-logo-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #d5deeb;
  border-radius: 10px;
  background: #f8fbff;
  padding: 6px 10px;
}

.list-logo-badge img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  border-radius: 8px;
  background: #ffffff;
  padding: 2px;
}

.list-logo-badge span {
  color: #1f2f49;
  font-size: 0.84rem;
  font-weight: 800;
}

.holiday-auto-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 14px;
  margin: 12px 16px 2px;
  padding: 12px 14px;
  border: 1px solid rgba(217, 119, 6, 0.28);
  border-left: 5px solid #d97706;
  border-radius: 12px;
  background: linear-gradient(135deg, #fffbeb 0%, #fff7ed 100%);
  box-shadow: 0 12px 28px rgba(146, 64, 14, 0.08);
}

.holiday-auto-panel > div {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.holiday-auto-panel strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #78350f;
  font-size: 0.95rem;
  font-weight: 900;
}

.holiday-auto-panel strong i {
  color: #d97706;
}

.holiday-auto-panel span {
  color: #57534e;
  font-size: 0.88rem;
  font-weight: 750;
}

.holiday-auto-link-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
  gap: 8px;
  margin-top: 0;
}

.holiday-auto-link-list a {
  display: inline-grid;
  align-items: start;
  gap: 4px;
  min-height: 112px;
  border: 1px solid rgba(217, 119, 6, 0.24);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.78);
  color: #78350f;
  padding: 7px 10px;
  text-decoration: none;
  font-size: 0.82rem;
  font-weight: 850;
  line-height: 1.22;
}

.holiday-auto-link-list a em {
  color: #92400e;
  font-style: normal;
  font-weight: 750;
}

.holiday-auto-link-list a:hover {
  border-color: rgba(217, 119, 6, 0.42);
  background: #ffffff;
}

.holiday-auto-block-title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #78350f;
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.holiday-auto-card-cta {
  align-self: end;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  border-radius: 999px;
  background: #fff7ed;
  border: 1px solid rgba(217, 119, 6, 0.28);
  color: #9a3412;
  padding: 5px 10px;
  font-size: 0.76rem;
  font-weight: 900;
}

.holiday-auto-status-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap: 8px;
  margin-top: 0;
}

.holiday-auto-status {
  display: inline-grid;
  align-items: start;
  gap: 4px;
  max-width: 440px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.72);
  padding: 7px 10px;
  font-size: 0.8rem;
  font-weight: 850;
  line-height: 1.22;
}

.holiday-auto-line {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.holiday-auto-range,
.holiday-auto-detail {
  display: block;
  color: #475569;
  font-size: 0.74rem;
  font-weight: 800;
  line-height: 1.25;
}

.holiday-auto-detail {
  color: #854d0e;
}

.holiday-auto-panel .holiday-auto-status strong {
  color: #1f2937;
  font-size: 0.8rem;
}

.holiday-auto-status em {
  color: #64748b;
  font-style: normal;
}

.holiday-auto-status b {
  justify-self: start;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 0.82rem;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.holiday-auto-overdue {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(153, 27, 27, 0.24);
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  padding: 4px 9px;
  font-size: 0.74rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.holiday-auto-status.is-prepared {
  border-color: rgba(34, 197, 94, 0.24);
  background: rgba(240, 253, 244, 0.9);
}

.holiday-auto-status.is-prepared b {
  border: 1px solid rgba(22, 101, 52, 0.18);
  background: #bbf7d0;
  color: #14532d;
}

.holiday-auto-status.is-missing {
  border-color: rgba(239, 68, 68, 0.22);
  background: rgba(254, 242, 242, 0.86);
}

.holiday-auto-status.is-missing b {
  border: 1px solid rgba(153, 27, 27, 0.18);
  background: #fecaca;
  color: #7f1d1d;
  animation: holidayMissingPulse 1.1s ease-in-out infinite;
}

.holiday-auto-upcoming-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed rgba(148, 163, 184, 0.34);
}

.holiday-auto-upcoming {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  align-items: center;
  gap: 8px;
  border-radius: 12px;
  border: 1px solid rgba(99, 102, 241, 0.18);
  background: rgba(238, 242, 255, 0.62);
  padding: 7px 10px;
  font-size: 0.78rem;
  font-weight: 850;
}

.holiday-auto-upcoming strong,
.holiday-auto-upcoming em {
  color: #334155;
  font-style: normal;
}

.holiday-auto-upcoming b {
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
  background: #e0e7ff;
  color: #4338ca;
}

.holiday-auto-upcoming.is-prepared {
  background: rgba(240, 253, 244, 0.78);
  border-color: rgba(34, 197, 94, 0.22);
}

.holiday-auto-upcoming.is-prepared b {
  border: 1px solid rgba(22, 101, 52, 0.18);
  background: #bbf7d0;
  color: #14532d;
}

.holiday-auto-upcoming.is-missing {
  background: rgba(255, 251, 235, 0.78);
  border-color: rgba(245, 158, 11, 0.24);
}

.holiday-auto-upcoming.is-overdue {
  background: rgba(254, 242, 242, 0.86);
  border-color: rgba(220, 38, 38, 0.28);
}

.holiday-auto-upcoming.is-missing b {
  border: 1px solid rgba(153, 27, 27, 0.18);
  background: #fecaca;
  color: #7f1d1d;
  animation: holidayMissingPulse 1.1s ease-in-out infinite;
}

.holiday-auto-upcoming b.holiday-auto-created,
.holiday-auto-upcoming.is-missing b.holiday-auto-created,
.holiday-auto-upcoming.is-overdue b.holiday-auto-created {
  border: 1px solid rgba(22, 101, 52, 0.18);
  background: #bbf7d0;
  color: #14532d;
  animation: none;
}

@keyframes holidayMissingPulse {
  0%,
  100% {
    opacity: 1;
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.22);
  }
  50% {
    opacity: 0.72;
    transform: scale(1.04);
    box-shadow: 0 0 0 5px rgba(220, 38, 38, 0.08);
  }
}

@media (prefers-reduced-motion: reduce) {
  .holiday-auto-status.is-missing b,
  .holiday-auto-upcoming.is-missing b {
    animation: none;
  }
}

.holiday-auto-upcoming-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}

.holiday-auto-upcoming-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  border-radius: 999px;
  padding: 4px 9px;
  background: #fff7ed;
  border: 1px solid rgba(217, 119, 6, 0.26);
  color: #9a3412;
  font-size: 0.72rem;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.holiday-auto-upcoming-actions a:hover {
  background: #fed7aa;
  color: #7c2d12;
}

.signature-list-shell {
  width: min(1360px, calc(100% - 24px));
  margin-inline: 0 auto;
}

.main-pane:has(.signature-list-shell) .topbar {
  display: none;
}

.content:has(.signature-list-shell) {
  padding-top: 16px;
}

.signature-module-shell {
  margin-top: 0;
}

.signature-module-shell .module-tabs {
  padding-top: 10px;
  padding-bottom: 9px;
}

.signature-module-shell .module-tab {
  min-height: 38px;
  font-size: 0.98rem;
  padding-inline: 10px;
}

.signature-list-shell .list-logo-strip {
  padding: 8px 12px 0;
}

.signature-list-shell .holiday-auto-panel {
  margin: 10px 12px 12px;
  padding: 10px 12px;
  align-items: stretch;
  grid-template-columns: minmax(0, 1fr);
}

.signature-list-shell .holiday-auto-panel > div {
  min-width: 0;
}

.signature-list-shell .holiday-auto-panel > .btn {
  display: none;
}

.signature-list-shell .holiday-auto-link-list,
.signature-list-shell .holiday-auto-status-list {
  gap: 6px;
}

.signature-list-shell .holiday-auto-upcoming-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap: 7px;
  max-width: 100%;
}

.signature-list-shell .holiday-auto-upcoming {
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 6px 8px;
}

.signature-list-shell .holiday-auto-upcoming-actions {
  grid-column: 1 / -1;
}

.signature-list-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 34ch) 25ch auto;
  gap: 8px 12px;
  align-items: end;
  padding: 10px 12px 8px;
}

.signature-list-toolbar .search-inline {
  width: 100%;
  max-width: 34ch;
}

.signature-list-toolbar .search-inline.signature-search-control {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 34px 34px;
  align-items: center;
}

.signature-search-control input[type="search"] {
  min-width: 0;
}

.signature-search-control input[type="search"]::-webkit-search-cancel-button {
  appearance: none;
}

.signature-search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  min-height: 0;
  box-sizing: border-box;
  border: 0;
  border-radius: 8px;
  background: #eef2ff;
  color: #4f46e5;
  font: inherit;
  line-height: 1;
  padding: 0;
  text-decoration: none;
  cursor: pointer;
  appearance: none;
  transition: background 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.signature-search-btn:hover {
  background: #dbe4ff;
  color: #3730a3;
  transform: translateY(-1px);
}

.signature-search-btn i {
  color: currentColor;
  font-size: 0.82rem;
}

.signature-search-clear {
  background: #f8fafc;
  color: #64748b;
}

.signature-search-clear:not(.is-placeholder):hover {
  background: #fee2e2;
  color: #b91c1c;
}

.signature-search-clear.is-placeholder {
  visibility: hidden;
  pointer-events: none;
}

.signature-list-toolbar > label:not(.search-inline) {
  width: 25ch;
  min-width: 25ch;
}

.signature-list-toolbar > label:not(.search-inline) select {
  width: 100%;
  min-width: 25ch;
}

.signature-list-toolbar .toolbar-actions {
  display: flex;
  justify-content: flex-end;
}

.module-table-wrap.signature-list-table-wrap {
  margin-inline: 12px;
  width: calc(100% - 24px);
  border: 1px solid var(--border);
  border-radius: 10px;
}

.module-table.signature-list-table {
  min-width: 100%;
  table-layout: fixed;
}

.signature-list-table th,
.signature-list-table td {
  padding: 7px 8px;
  line-height: 1.25;
  vertical-align: middle;
}

.signature-list-table th:nth-child(1),
.signature-list-table td:nth-child(1) {
  width: 52px;
}

.signature-list-table th:nth-child(2),
.signature-list-table td:nth-child(2) {
  width: 130px;
}

.signature-list-table th:nth-child(6),
.signature-list-table td:nth-child(6),
.signature-list-table th:nth-child(7),
.signature-list-table td:nth-child(7),
.signature-list-table th:nth-child(8),
.signature-list-table td:nth-child(8) {
  width: 100px;
}

.signature-list-table th:nth-child(9),
.signature-list-table td:nth-child(9) {
  width: 150px;
}

.signature-list-table .icon-actions {
  gap: 4px;
}

.signature-list-table .icon-btn-mini {
  width: 30px;
  height: 30px;
}

.signature-list-pagination {
  width: calc(100% - 24px);
  max-width: none;
  margin: 8px 12px 0;
  padding: 6px 0 0;
  justify-content: flex-end;
}

.signature-list-pagination .asset-list-page-buttons {
  width: 100%;
  justify-content: flex-end;
}

.signature-list-shell > .small-note {
  margin: 6px 12px 10px;
}

.signature-mobile-list {
  display: none;
}

.signature-mobile-card,
.signature-mobile-empty {
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
}

.signature-mobile-card {
  display: grid;
  gap: 10px;
  padding: 12px;
}

.signature-mobile-card-head,
.signature-mobile-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.signature-mobile-serial {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid #c7d2fe;
  background: #eef2ff;
  color: #3730a3;
  font-size: 0.8rem;
  font-weight: 900;
}

.signature-mobile-card h2 {
  margin: 0;
  color: #111827;
  font-size: 1rem;
  line-height: 1.25;
}

.signature-mobile-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.signature-mobile-facts div {
  min-width: 0;
  padding: 8px;
  border-radius: 8px;
  background: #f8fafc;
}

.signature-mobile-facts dt {
  margin: 0 0 3px;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 800;
}

.signature-mobile-facts dd {
  margin: 0;
  color: #1f2937;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.signature-mobile-actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.signature-mobile-actions form {
  margin: 0;
  display: inline-flex;
}

.signature-mobile-empty {
  padding: 14px;
  color: #64748b;
  font-weight: 800;
}

.social-distribution-form-shell {
  width: min(100%, 1560px);
  margin-inline: 0;
  padding: 12px 14px 14px;
}

.social-distribution-form {
  display: grid;
  gap: 10px;
}

form .grid.two.social-form-title-grid {
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  max-width: 560px;
  gap: 8px 10px;
  justify-content: stretch;
}

form .grid.three.social-form-meta-grid {
  grid-template-columns: minmax(170px, 220px) minmax(170px, 230px) minmax(210px, 280px);
  max-width: 760px;
  gap: 8px 10px;
  justify-content: stretch;
}

.social-distribution-form label {
  gap: 5px;
}

.social-distribution-form input,
.social-distribution-form select {
  min-height: 38px;
}

.social-form-detail-row {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(420px, 1fr);
  gap: 8px 12px;
  width: min(100%, 1120px);
  align-items: end;
}

.social-location-field input {
  width: 100%;
}

.social-note-field {
  width: 100%;
}

.social-note-field textarea {
  min-height: 74px;
  resize: vertical;
}

.social-recipient-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  max-width: 1180px;
  padding-top: 2px;
}

.social-recipient-head h2 {
  margin: 0;
  font-size: 1.08rem;
}

.social-recipient-head p {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 700;
}

.social-recipient-head .actions {
  margin: 0;
  gap: 8px;
}

.social-recipient-head .btn {
  min-height: 34px;
  padding: 8px 12px;
}

.social-recipient-table-wrap {
  width: 100%;
  max-height: calc(100vh - 520px);
  min-height: 440px;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 10px;
}

.social-recipient-table {
  min-width: 1050px;
  table-layout: fixed;
}

.social-recipient-table thead th {
  position: sticky;
  top: 0;
  z-index: 5;
  background: linear-gradient(180deg, #eef4ff, #dfe8ff);
}

.social-recipient-table th,
.social-recipient-table td {
  padding: 7px 8px;
  line-height: 1.22;
  vertical-align: middle;
}

.social-recipient-table tbody tr[data-team] td:first-child {
  border-left: 4px solid transparent;
}

.social-recipient-table tbody tr[data-team="A Ekibi"] td {
  background: #f0f9ff;
}

.social-recipient-table tbody tr[data-team="B Ekibi"] td {
  background: #fff7ed;
}

.social-recipient-table tbody tr[data-team="C Ekibi"] td {
  background: #f0fdf4;
}

.social-recipient-table tbody tr[data-team="Normal"] td {
  background: #f8fafc;
}

.social-recipient-table tbody tr[data-team="A Ekibi"] td:first-child {
  border-left-color: #38bdf8;
}

.social-recipient-table tbody tr[data-team="B Ekibi"] td:first-child {
  border-left-color: #fb923c;
}

.social-recipient-table tbody tr[data-team="C Ekibi"] td:first-child {
  border-left-color: #22c55e;
}

.social-recipient-table tbody tr[data-team="Normal"] td:first-child {
  border-left-color: #94a3b8;
}

.social-recipient-table tbody tr:has(input[type="checkbox"]:checked) td {
  background: #dcfce7;
  box-shadow: inset 0 1px 0 #86efac, inset 0 -1px 0 #86efac;
}

.social-recipient-table tbody tr:has(input[type="checkbox"]:checked) td:first-child {
  border-left-color: #16a34a;
}

.social-team-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #334155;
  font-weight: 900;
  white-space: nowrap;
}

.social-recipient-table tr[data-team="A Ekibi"] .social-team-pill {
  border-color: #bae6fd;
  background: #e0f2fe;
  color: #075985;
}

.social-recipient-table tr[data-team="B Ekibi"] .social-team-pill {
  border-color: #fed7aa;
  background: #ffedd5;
  color: #9a3412;
}

.social-recipient-table tr[data-team="C Ekibi"] .social-team-pill {
  border-color: #bbf7d0;
  background: #dcfce7;
  color: #166534;
}

.social-personnel-pagination {
  width: 100%;
  margin-top: 8px;
  padding: 10px 0 2px;
  align-items: center;
}

.social-personnel-pagination .asset-list-page-buttons {
  gap: 6px;
  flex-wrap: nowrap;
}

.social-personnel-page-numbers {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.asset-list-page-buttons > span.social-personnel-page-numbers,
.asset-list-page-buttons > span.social-distribution-list-page-numbers {
  min-width: auto;
  min-height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  display: inline-flex;
}

.asset-list-page-buttons .social-personnel-page-numbers > button {
  min-width: 34px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #ffffff;
  color: #334155;
  display: inline-grid;
  place-items: center;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.asset-list-page-buttons .social-personnel-page-numbers > button.active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
}

.social-distribution-list-shell {
  width: min(1360px, 68vw);
  min-width: min(760px, calc(100% - 24px));
  margin-inline: 0 auto;
  padding: 0;
  overflow: hidden;
}

.social-distribution-list-shell .module-tabs {
  padding: 10px 12px 8px;
  gap: 8px;
  flex-wrap: wrap;
}

.module-toolbar.social-distribution-list-toolbar {
  display: grid;
  grid-template-columns: minmax(180px, 26ch) 20ch minmax(190px, 1fr);
  align-items: end;
  gap: 8px 12px;
  padding: 10px 12px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.social-distribution-list-toolbar .search-inline {
  width: 100%;
  min-height: 36px;
}

.social-distribution-list-toolbar .toolbar-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.social-distribution-list-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.social-distribution-list-table-wrap {
  width: 100%;
  max-height: 540px;
  overflow: auto;
  border-top: 1px solid var(--border);
}

.module-table.social-distribution-list-table {
  min-width: 980px;
  table-layout: fixed;
}

.social-distribution-list-table th,
.social-distribution-list-table td {
  padding: 8px 10px;
  vertical-align: middle;
}

.social-distribution-list-table th {
  background: linear-gradient(180deg, #eef4ff, #dfe8ff);
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row td:first-child {
  border-left: 4px solid transparent;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-a td {
  background: #eff6ff;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-b td {
  background: #fff7ed;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-c td {
  background: #f0fdf4;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-d td {
  background: #f5f3ff;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-normal td {
  background: #f8fafc;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.is-completed td {
  background: #ecfdf5;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-a td:first-child {
  border-left-color: #38bdf8;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-b td:first-child {
  border-left-color: #fb923c;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-c td:first-child {
  border-left-color: #22c55e;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-d td:first-child {
  border-left-color: #8b5cf6;
}

.module-table.social-distribution-list-table tbody tr.social-distribution-list-row.team-normal td:first-child {
  border-left-color: #94a3b8;
}

.social-distribution-list-table tr.team-d .social-team-pill {
  border-color: #ddd6fe;
  background: #ede9fe;
  color: #5b21b6;
}

.social-distribution-list-table tr.team-normal .social-team-pill {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #475569;
}

.social-distribution-list-table tr.team-a .social-team-pill {
  border-color: #bae6fd;
  background: #e0f2fe;
  color: #075985;
}

.social-distribution-list-table tr.team-b .social-team-pill {
  border-color: #fed7aa;
  background: #ffedd5;
  color: #9a3412;
}

.social-distribution-list-table tr.team-c .social-team-pill {
  border-color: #bbf7d0;
  background: #dcfce7;
  color: #166534;
}

.social-distribution-list-pagination {
  width: 100%;
  padding: 8px 12px 0;
}

.social-distribution-list-page-numbers {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.asset-list-page-buttons .social-distribution-list-page-numbers > button {
  min-width: 34px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #ffffff;
  color: #334155;
  display: inline-grid;
  place-items: center;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.asset-list-page-buttons .social-distribution-list-page-numbers > button.active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
}

.social-distribution-list-shell > .small-note {
  margin: 6px 12px 10px;
}

.social-distribution-detail-shell {
  width: min(1360px, 68vw);
  min-width: min(760px, calc(100% - 24px));
  margin-inline: 0 auto;
}

.social-detail-summary-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 116px;
  grid-template-areas:
    "summary actions"
    "note-title actions"
    "note-text actions";
  gap: 4px 10px;
  align-items: start;
  padding: 8px 12px;
}

.grid.three.social-detail-summary-grid {
  grid-area: summary;
  display: grid;
  grid-template-columns: repeat(6, minmax(82px, 1fr)) minmax(120px, 1.3fr);
  gap: 7px 12px;
  align-items: start;
}

.social-detail-summary-grid h3,
.social-detail-summary-shell > h3 {
  margin: 0 0 2px;
  font-size: 0.95rem;
  line-height: 1.05;
}

.social-detail-summary-grid p,
.social-detail-summary-shell > p {
  margin: 0;
  font-weight: 800;
  font-size: 1rem;
  line-height: 1.12;
  color: #1f2937;
}

.social-detail-summary-shell > h3 {
  grid-area: note-title;
  margin-top: 2px;
}

.social-detail-summary-shell > h3 + p {
  grid-area: note-text;
  font-weight: 600;
}

.social-detail-note-cell p {
  font-weight: 600;
}

.social-detail-summary-shell > .actions {
  grid-area: actions;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
  margin: 0;
}

.social-detail-summary-shell > .actions .btn,
.social-detail-summary-shell > .actions form,
.social-detail-summary-shell > .actions button {
  width: 100%;
}

.social-detail-summary-shell > .actions .btn,
.social-detail-summary-shell > .actions button {
  min-height: 28px;
  padding: 5px 8px;
  font-size: 0.9rem;
  justify-content: center;
}

.social-detail-list-shell {
  margin-top: 8px;
  padding: 10px 14px 12px;
}

.social-detail-list-shell h2 {
  margin: 0 0 8px;
  font-size: 1.2rem;
}

.social-detail-table-wrap {
  width: 100%;
  overflow: visible;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

.module-table.social-detail-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
  font-size: 1rem;
}

.social-detail-table th,
.social-detail-table td {
  padding: 10px 10px;
  vertical-align: middle;
  line-height: 1.28;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}

.social-detail-table th {
  background: linear-gradient(180deg, #eef4ff, #dfe8ff);
  font-weight: 900;
}

.social-detail-table th:nth-child(1),
.social-detail-table td:nth-child(1) {
  width: 42px;
}

.social-detail-table th:nth-child(2),
.social-detail-table td:nth-child(2) {
  width: 72px;
  text-align: center;
}

.social-detail-table th:nth-child(3),
.social-detail-table td:nth-child(3) {
  width: 24%;
}

.social-detail-table th:nth-child(4),
.social-detail-table td:nth-child(4) {
  width: 21%;
}

.social-detail-table th:nth-child(5),
.social-detail-table td:nth-child(5) {
  width: 104px;
  text-align: center;
}

.social-detail-table th:nth-child(6),
.social-detail-table td:nth-child(6) {
  width: 138px;
  text-align: center;
}

.social-detail-table th:nth-child(7),
.social-detail-table td:nth-child(7) {
  width: 74px;
  text-align: center;
}

.social-detail-recipient-row.social-row-odd.is-pending td {
  background: #f8fbff;
}

.social-detail-recipient-row.social-row-even.is-pending td {
  background: #dfe8ff;
}

.social-detail-recipient-row.social-row-odd.is-delivered td {
  background: #eefdf5;
}

.social-detail-recipient-row.social-row-even.is-delivered td {
  background: #d6f7e6;
}

.social-detail-recipient-row:hover td {
  background: #cfdcff;
}

.social-detail-department-row td {
  background: #e0f2fe;
  color: #0f3f5f;
  font-weight: 900;
  padding: 8px 10px;
  border-top: 1px solid #bae6fd;
  border-bottom: 1px solid #bae6fd;
}

.social-detail-department-row i {
  margin-right: 6px;
  color: #0284c7;
}

.social-detail-department-row span {
  color: #0369a1;
  margin-right: 4px;
}

.signature-detail-department-row td {
  background: linear-gradient(90deg, #e0f2fe 0%, #eef6ff 55%, #f8fbff 100%);
  color: #0f3f5f;
  font-weight: 900;
  padding: 8px 10px;
  border-top: 1px solid #bae6fd;
  border-bottom: 1px solid #bae6fd;
}

.signature-detail-department-row i {
  margin-right: 6px;
  color: #0284c7;
}

.signature-detail-department-row span {
  color: #0369a1;
  margin-right: 4px;
}

.social-detail-pagination {
  width: 100%;
  padding: 10px 0 0;
  align-items: center;
}

.social-detail-pagination .asset-list-page-buttons {
  gap: 6px;
  flex-wrap: nowrap;
}

.social-detail-page-numbers {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.asset-list-page-buttons > span.social-detail-page-numbers {
  min-width: auto;
  min-height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  display: inline-flex;
}

.asset-list-page-buttons .social-detail-page-numbers > button {
  min-width: 34px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #ffffff;
  color: #334155;
  display: inline-grid;
  place-items: center;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.asset-list-page-buttons .social-detail-page-numbers > button.active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
}

@media (max-width: 900px) {
  .social-distribution-list-shell,
  .social-distribution-detail-shell {
    width: calc(100% - 16px);
    min-width: 0;
    padding: 0;
  }

  .module-toolbar.social-distribution-list-toolbar {
    grid-template-columns: 1fr;
  }

  .social-distribution-list-toolbar .toolbar-actions {
    justify-content: stretch;
  }

  .social-distribution-list-toolbar .btn {
    width: 100%;
  }

  .social-distribution-form-shell {
    width: calc(100% - 16px);
    padding: 10px;
  }

  .social-detail-summary-shell {
    grid-template-columns: 1fr;
    grid-template-areas:
      "summary"
      "note-title"
      "note-text"
      "actions";
  }

  .grid.three.social-detail-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .social-detail-summary-shell > .actions {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .social-detail-summary-shell > .actions .btn,
  .social-detail-summary-shell > .actions form,
  .social-detail-summary-shell > .actions button {
    width: auto;
  }

  form .grid.two.social-form-title-grid,
  form .grid.three.social-form-meta-grid {
    grid-template-columns: 1fr;
    max-width: 100%;
  }

  .social-form-detail-row {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .social-note-field,
  .social-recipient-table-wrap,
  .social-personnel-pagination {
    width: 100%;
    max-width: 100%;
  }

  .social-recipient-head,
  .social-personnel-pagination {
    align-items: stretch;
    flex-direction: column;
  }

  .social-recipient-head .actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .social-personnel-pagination .asset-list-page-summary {
    white-space: normal;
  }

  .social-personnel-pagination .asset-list-page-buttons,
  .social-detail-pagination .asset-list-page-buttons {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

.module-toolbar {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  align-items: center;
  padding: 14px 16px;
}

.module-toolbar.signature-list-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 34ch) 25ch auto;
  justify-content: stretch;
  align-items: end;
  padding: 10px 12px 8px;
}

.module-toolbar .toolbar-select-field {
  display: grid;
  gap: 4px;
  min-width: 18ch;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
}

.module-toolbar .toolbar-select-field .toolbar-select,
.module-toolbar .toolbar-select-field input {
  min-width: 0;
  width: 100%;
  max-width: none;
}

.module-toolbar .tutanak-type-filter {
  width: min(34ch, 100%);
}

.kif-list-toolbar {
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  padding: 8px 14px;
}

.kif-list-toolbar .search-inline {
  width: min(100%, 28ch);
  min-height: 36px;
}

.kif-list-toolbar .toolbar-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.kif-list-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.kif-list-note {
  margin: 4px 14px 6px;
}

.kif-summary-section {
  margin: 6px 0 10px;
  padding: 8px 10px;
}

.kif-summary-section .dashboard-section-head {
  margin-bottom: 6px;
}

.kif-summary-section .module-table th,
.kif-summary-section .module-table td {
  padding-top: 6px;
  padding-bottom: 6px;
}

.tutanak-summary-section {
  margin: 8px 0 12px;
  padding: 8px 10px;
}

.tutanak-summary-section .dashboard-section-head {
  margin-bottom: 6px;
}

.tutanak-summary-section .dashboard-section-head h2 {
  font-size: 1.05rem;
}

.tutanak-summary-section .module-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.tutanak-summary-section .module-table th,
.tutanak-summary-section .module-table td {
  padding: 6px 8px;
}

.tutanak-filter-toolbar {
  justify-content: flex-start;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
  margin-bottom: 10px;
  padding: 18px 18px 16px;
  border: 1px solid #dbe4f0;
  border-left: 4px solid #64748b;
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 58%, #f1f5f9 100%);
  box-shadow: 0 14px 28px rgba(30, 41, 59, 0.08);
}

.tutanak-filter-toolbar .search-inline {
  width: 28ch;
  min-width: 22ch;
  min-height: 44px;
}

.tutanak-filter-toolbar .search-inline,
.tutanak-filter-toolbar .toolbar-select-field {
  border-radius: 12px;
}

.tutanak-filter-toolbar .toolbar-select-field {
  grid-template-rows: 18px 44px;
  gap: 6px;
  line-height: 1.1;
  overflow: visible;
}

.tutanak-filter-toolbar .toolbar-select-field .toolbar-select,
.tutanak-filter-toolbar .toolbar-select-field input {
  height: 44px;
  min-height: 44px;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 44px;
}

.tutanak-filter-toolbar .search-inline:focus-within,
.tutanak-filter-toolbar .toolbar-select-field:focus-within {
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.16);
}

.tutanak-list-table-wrap {
  border: 1px solid #dbeafe;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 18px 34px rgba(30, 41, 59, 0.08);
}

.module-table tbody tr.tutanak-list-row td {
  border-bottom-color: #e2e8f0;
}

.module-table tbody tr.tutanak-kind-olay td {
  background: #fff3d6;
}

.module-table tbody tr.tutanak-kind-kif td {
  background: #ffe4e6;
}

.module-table tbody tr.tutanak-kind-gumruk td {
  background: #dff7ff;
}

.module-table tbody tr.tutanak-kind-olay:nth-child(even) td {
  background: #ffe0ad;
}

.module-table tbody tr.tutanak-kind-kif:nth-child(even) td {
  background: #ffcdd4;
}

.module-table tbody tr.tutanak-kind-gumruk:nth-child(even) td {
  background: #b9f0ff;
}

.module-table tbody tr.tutanak-list-row:hover td {
  background: #f7fee7;
}

.module-table tbody tr.tutanak-list-row td:first-child {
  border-left: 4px solid #f59e0b;
}

.module-table tbody tr.tutanak-kind-kif td:first-child {
  border-left-color: #e11d48;
}

.module-table tbody tr.tutanak-kind-gumruk td:first-child {
  border-left-color: #0891b2;
}

.tutanak-filter-toolbar .tutanak-type-filter {
  width: 30ch;
  min-width: 26ch;
}

.tutanak-filter-toolbar .tutanak-date-filter {
  width: 18ch;
  min-width: 17ch;
}

.tutanak-filter-toolbar .tutanak-company-filter,
.tutanak-filter-toolbar .tutanak-person-filter {
  width: 22ch;
  min-width: 18ch;
}

.tutanak-filter-toolbar .toolbar-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.zimmet-filter-form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
}

.zimmet-filter-form label {
  width: min(100%, 20ch);
  min-width: 14ch;
  margin: 0;
}

.zimmet-filter-form .tracking-code-field {
  width: min(100%, 46ch);
  min-width: 24ch;
}

.zimmet-filter-form select,
.zimmet-filter-form input:not([type="checkbox"]):not([type="radio"]) {
  width: 100%;
  max-width: 20ch;
}

.zimmet-filter-form .tracking-code-field select {
  max-width: 46ch;
}

.zimmet-cihaz-filter-panel {
  border-bottom: 1px solid #dbeafe;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98) 0%, rgba(255, 255, 255, 0.98) 52%, rgba(236, 253, 245, 0.78) 100%);
}

.zimmet-cihaz-filter-panel .zimmet-filter-form {
  align-items: stretch;
  gap: 10px;
  width: 100%;
}

.asset-module-shell .zimmet-cihaz-filter-panel {
  padding: 8px 12px 10px;
}

.asset-module-shell .zimmet-cihaz-filter-panel .zimmet-filter-form {
  gap: 8px 10px;
}

.asset-module-shell .zimmet-cihaz-filter-panel .zimmet-filter-form label {
  min-height: 60px;
  gap: 5px;
  padding: 7px 9px;
}

.asset-module-shell .zimmet-cihaz-filter-panel .zimmet-filter-form select {
  min-height: 34px;
}

.asset-module-shell .zimmet-cihaz-filter-panel .zimmet-filter-actions {
  padding: 2px 0;
}

.asset-module-shell .zimmet-cihaz-filter-panel .zimmet-filter-actions .btn {
  min-height: 36px;
  padding-block: 7px;
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label {
  display: grid;
  align-content: start;
  gap: 7px;
  min-height: 74px;
  padding: 9px 10px;
  border: 1px solid #dbeafe;
  border-left: 4px solid #4f67f6;
  border-radius: 10px;
  background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%);
  color: #1e293b;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(79, 103, 246, 0.08);
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(1),
.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(2) {
  flex: 0 0 20ch;
  width: 20ch;
  max-width: 20ch;
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(3) {
  flex: 0 0 25ch;
  width: 25ch;
  max-width: 25ch;
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(4) {
  flex: 1 1 46ch;
  width: auto;
  max-width: none;
  min-width: 34ch;
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(2) {
  border-left-color: #0f766e;
  background: linear-gradient(180deg, #f0fdfa 0%, #e6fffa 100%);
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(3) {
  border-left-color: #c47a00;
  background: linear-gradient(180deg, #fffdf5 0%, #fff4d6 100%);
}

.zimmet-cihaz-filter-panel .zimmet-filter-form label:nth-of-type(4) {
  border-left-color: #7c3aed;
  background: linear-gradient(180deg, #faf7ff 0%, #f1e8ff 100%);
}

.zimmet-cihaz-filter-panel .zimmet-filter-form select {
  min-height: 38px;
  max-width: none;
  border-color: #cbd5e1;
  background-color: #ffffff;
}

.zimmet-cihaz-filter-panel .zimmet-filter-actions {
  align-self: stretch;
  align-items: center;
  padding: 8px 0;
}

.zimmet-cihaz-filter-panel .zimmet-filter-actions .btn {
  min-height: 42px;
}

.zimmet-cihaz-filter-panel .asset-pdf-inline {
  margin-left: 0;
}

.zimmet-context-strip {
  margin: 12px 16px 0;
  padding: 12px 14px;
  border: 1px solid #dbe4f4;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f8fafc;
}

.zimmet-context-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #eef2ff;
  color: #4f46e5;
  font-size: 1rem;
}

.zimmet-context-strip strong {
  display: block;
  color: #172033;
  font-size: 1rem;
  font-weight: 900;
}

.zimmet-context-strip p {
  margin: 2px 0 0;
  color: #657086;
  font-size: 0.86rem;
  font-weight: 800;
}

.zimmet-action-row {
  margin-top: 10px;
}

.zimmet-available-panel {
  margin: 0 16px 16px;
  border: 1px solid #dbe4f4;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
}

.zimmet-available-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  background: #f8fafc;
  border-bottom: 1px solid #dbe4f4;
}

.zimmet-available-heading strong {
  display: block;
  color: #172033;
  font-size: 1rem;
  font-weight: 900;
}

.zimmet-available-heading p {
  margin: 2px 0 0;
  color: #657086;
  font-size: 0.84rem;
  font-weight: 800;
}

.zimmet-available-heading > span {
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: 999px;
  background: #eef2ff;
  color: #4f46e5;
  font-weight: 900;
}

.zimmet-available-table-wrap {
  max-height: 420px;
  overflow: auto;
  position: relative;
}

.zimmet-available-table {
  min-width: 760px;
}

.zimmet-available-table thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%);
  box-shadow: 0 2px 0 #dbe4f2, 0 8px 14px rgba(15, 23, 42, 0.08);
}

.zimmet-available-table .btn-small {
  min-height: 34px;
  padding: 7px 10px;
  font-size: 0.84rem;
}

.zimmet-filter-actions {
  margin-left: 2px;
}

.zimmet-entry-btn {
  background: linear-gradient(135deg, #1d4ed8, #4f46e5);
  border-color: #1d4ed8;
  color: #ffffff;
  font-weight: 900;
  box-shadow: 0 10px 20px rgba(37, 99, 235, 0.22);
}

.zimmet-entry-btn:hover {
  background: linear-gradient(135deg, #1e40af, #4338ca);
}

.table-heading-two-line {
  display: inline-block;
  line-height: 1.12;
  white-space: nowrap;
}

.plaka-workspace {
  padding: 10px 14px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: min(100%, 1160px);
}

.plate-maintenance-page {
  padding: 10px 14px 14px;
  width: min(100%, 1160px);
}

.account-block.plate-maintenance-list-card {
  padding: 12px 14px;
  border-color: #c7d2fe;
  border-left: 4px solid #4f67f6;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.96), rgba(245, 243, 255, 0.9)),
    #ffffff;
  box-shadow: 0 12px 26px rgba(79, 103, 246, 0.1);
}

.plate-maintenance-list-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.plate-maintenance-list-head .small-note {
  margin-top: 2px;
}

.plate-maintenance-list-wrap {
  width: 100%;
  max-height: none;
  overflow-x: auto;
}

.plate-maintenance-list-table {
  width: 100%;
  min-width: 980px;
  table-layout: fixed;
}

.plate-maintenance-list-table th,
.plate-maintenance-list-table td {
  padding: 8px 9px;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.plate-maintenance-list-table th {
  position: sticky;
  top: 0;
  z-index: 4;
  box-shadow: 0 1px 0 #dbe4f2;
}

.plate-maintenance-list-table th:nth-child(1),
.plate-maintenance-list-table td:nth-child(1) {
  width: 52px;
  text-align: center;
}

.plate-maintenance-list-table th:nth-child(2),
.plate-maintenance-list-table td:nth-child(2) {
  width: 90px;
}

.plate-maintenance-list-table th:nth-child(3),
.plate-maintenance-list-table td:nth-child(3) {
  width: 230px;
}

.plate-maintenance-list-table th:nth-child(4),
.plate-maintenance-list-table td:nth-child(4) {
  width: 135px;
}

.plate-maintenance-list-table th:nth-child(5),
.plate-maintenance-list-table td:nth-child(5),
.plate-maintenance-list-table th:nth-child(6),
.plate-maintenance-list-table td:nth-child(6) {
  width: 140px;
}

.plate-maintenance-list-table th:nth-child(7),
.plate-maintenance-list-table td:nth-child(7) {
  width: 95px;
  text-align: center;
}

.plate-maintenance-list-table th:nth-child(8),
.plate-maintenance-list-table td:nth-child(8) {
  width: 150px;
}

.plate-maintenance-list-table tbody tr td {
  border-bottom: 1px solid #dbe4f2;
}

.plate-maintenance-list-table tbody tr:nth-child(odd) td {
  background: #fff8f8;
}

.plate-maintenance-list-table tbody tr:nth-child(even) td {
  background: #eaf0ff;
}

.plate-maintenance-list-table tbody tr:hover td {
  background: #dfe8ff;
}

.plate-maintenance-list-table tbody tr.service-row-overdue td:first-child {
  box-shadow: inset 4px 0 0 #dc2626;
}

.plate-maintenance-list-table tbody tr.plate-maintenance-upcoming-row td:first-child {
  box-shadow: inset 4px 0 0 #d97706;
}

.plate-maintenance-plate {
  color: #991b1b;
  font-weight: 900;
}

.plate-maintenance-pagination {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.plaka-maintenance-card,
.plaka-maintenance-history-card {
  margin-bottom: 0;
}

.plaka-maintenance-card {
  order: 4;
}

.plaka-maintenance-history-card {
  order: 2;
}

.account-block.plaka-manual-form {
  order: 1;
  display: grid;
  grid-template-columns: minmax(260px, 0.95fr) minmax(300px, 1.05fr);
  align-items: start;
  gap: 8px 14px;
  max-width: none;
  padding: 12px 14px;
  border-color: #b7dcdb;
  border-left: 4px solid #4f8b83;
  background:
    linear-gradient(135deg, rgba(236, 253, 245, 0.92), rgba(239, 246, 255, 0.92)),
    #ffffff;
  box-shadow: 0 12px 26px rgba(79, 139, 131, 0.1);
}

.account-block.plaka-manual-form.is-edit-mode {
  border-color: #f2b947;
  border-left-color: #c47a00;
  background:
    linear-gradient(135deg, rgba(255, 251, 235, 0.96), rgba(239, 246, 255, 0.92)),
    #ffffff;
  box-shadow: 0 16px 34px rgba(196, 122, 0, 0.16);
}

.plaka-form-head {
  grid-column: 1 / -1;
  display: grid;
  gap: 3px;
  padding-bottom: 0;
}

.plaka-edit-callout {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
  padding: 10px 12px;
  border: 1px solid #f5c66d;
  border-radius: 10px;
  background:
    linear-gradient(90deg, rgba(255, 247, 214, 0.98), rgba(255, 255, 255, 0.94)),
    #ffffff;
  color: #1f2f49;
}

.plaka-edit-callout-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  background: #c47a00;
  color: #ffffff;
  box-shadow: 0 0 0 0 rgba(196, 122, 0, 0.32);
  animation: plaka-edit-pulse 1.8s ease-out infinite;
}

.plaka-edit-callout-copy {
  min-width: 0;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 10px;
}

.plaka-edit-callout-kicker {
  width: 100%;
  color: #8a5b0a;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.plaka-edit-callout-copy strong {
  font-size: 1.22rem;
  color: #7c4700;
}

.plaka-edit-callout-meta {
  color: #53627a;
  font-weight: 700;
}

.plaka-edit-callout-mode {
  margin-left: auto;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(196, 122, 0, 0.12);
  color: #7c4700;
  font-size: 0.82rem;
  font-weight: 800;
  white-space: nowrap;
}

@keyframes plaka-edit-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(196, 122, 0, 0.32);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(196, 122, 0, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(196, 122, 0, 0);
  }
}

.plaka-manual-compact-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(11ch, 15ch) max-content minmax(15ch, 18ch) minmax(13ch, 16ch) max-content;
  gap: 8px 12px;
  align-items: end;
  justify-content: start;
}

.plaka-manual-col {
  display: grid;
  gap: 8px;
}

.plaka-manual-col label,
.plaka-manual-compact-row label {
  margin: 0;
}

.plaka-five-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.92rem;
  font-weight: 700;
}

.plaka-five-toggle input[type="checkbox"] {
  width: 16px;
  height: 16px;
}

.plaka-manual-compact-row .plaka-five-toggle {
  align-self: center;
  min-height: 38px;
  padding-top: 22px;
}

.plaka-call-button {
  align-self: end;
  min-height: 38px;
}

.plaka-manual-form input:not([type="checkbox"]):not([type="radio"]),
.plaka-manual-form select {
  min-height: 38px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.plaka-manual-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-self: end;
}

.plaka-inline-maintenance-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #c7d2fe;
  border-left: 4px solid #4f67f6;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.95), rgba(245, 243, 255, 0.84)),
    #ffffff;
}

.plaka-inline-maintenance-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.plaka-inline-maintenance-grid {
  display: grid;
  grid-template-columns: minmax(150px, 180px) minmax(240px, 1fr) minmax(240px, 1.1fr);
  align-items: end;
  gap: 8px 10px;
}

.plaka-inline-maintenance-grid label {
  margin: 0;
}

.plate-maintenance-entry-form {
  margin: 8px 0 12px;
}

.plate-maintenance-entry-grid {
  display: grid;
  grid-template-columns: minmax(150px, 180px) minmax(210px, 1fr) minmax(240px, 1.2fr) auto;
  align-items: end;
  gap: 10px;
}

.plate-maintenance-entry-grid label {
  margin: 0;
}

.plate-maintenance-history-table th:nth-child(1),
.plate-maintenance-history-table td:nth-child(1) {
  width: 130px;
  white-space: nowrap;
}

.plate-maintenance-history-table th:nth-child(2),
.plate-maintenance-history-table td:nth-child(2) {
  width: 210px;
}

.plate-maintenance-history-table td:nth-child(2) .badge {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.15;
  text-align: left;
}

.plate-maintenance-history-table th:nth-child(4),
.plate-maintenance-history-table td:nth-child(4) {
  width: 180px;
}

.plate-maintenance-history-table th:nth-child(5),
.plate-maintenance-history-table td:nth-child(5) {
  width: 160px;
  white-space: nowrap;
}

.plate-maintenance-history-table th:nth-child(6),
.plate-maintenance-history-table td:nth-child(6) {
  width: 128px;
  text-align: center;
}

.plate-maintenance-history-table .icon-actions {
  display: inline-flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: nowrap;
}

.plate-maintenance-edit-row td {
  padding: 10px 12px;
  background: linear-gradient(135deg, #fff8ed, #f8fbff) !important;
}

.plate-maintenance-edit-row[hidden] {
  display: none;
}

.plate-maintenance-edit-form {
  display: grid;
  grid-template-columns: minmax(130px, 160px) minmax(240px, 1fr) minmax(240px, 1.2fr) auto;
  gap: 10px;
  align-items: end;
}

.plate-maintenance-edit-form label {
  display: grid;
  gap: 5px;
  margin: 0;
  font-weight: 900;
  color: #172033;
}

.plate-maintenance-edit-form input[type="text"],
.plate-maintenance-edit-form input[type="file"] {
  width: 100%;
  min-width: 0;
  border: 1px solid #d5dff0;
  border-radius: 10px;
  background: #ffffff;
  padding: 9px 10px;
  font: inherit;
  font-weight: 800;
  color: #172033;
}

.plate-maintenance-edit-form small {
  color: #64748b;
  font-weight: 700;
}

.plate-maintenance-edit-actions {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

.plate-maintenance-edit-actions .btn {
  min-height: 40px;
  white-space: nowrap;
}

@media (min-width: 1200px) {
  .plaka-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .plaka-manual-form {
    grid-column: 1;
  }

  .plaka-maintenance-history-card {
    grid-column: 1;
  }

  .plaka-maintenance-card {
    grid-column: 1;
  }

  .plaka-workspace.no-entry .plaka-maintenance-card {
    order: 2;
  }
}

@media (max-width: 760px) {
  .account-block.plaka-manual-form {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .plaka-manual-compact-row {
    grid-template-columns: 1fr;
    width: 100%;
    min-width: 0;
  }

  .plaka-edit-callout {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .plaka-edit-callout-mode {
    margin-left: 50px;
  }

  .plaka-manual-compact-row .plaka-five-toggle {
    padding-top: 0;
  }

  .plate-maintenance-entry-grid {
    grid-template-columns: 1fr;
  }

  .plaka-inline-maintenance-head,
  .plaka-inline-maintenance-grid {
    grid-template-columns: 1fr;
  }

  .plaka-inline-maintenance-head {
    display: grid;
  }
}

.asset-pdf-toolbar {
  margin-top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.asset-pdf-form {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.asset-pdf-inline {
  margin-left: auto;
}

.pdf-inline-modal {
  z-index: 1300;
  padding: 20px 16px;
}

.pdf-inline-card {
  width: min(1440px, 100%);
  padding: 12px;
}

.pdf-inline-head {
  align-items: center;
}

.pdf-inline-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.pdf-inline-frame-wrap {
  width: 100%;
  height: min(82vh, 1040px);
  border: 1px solid #d6deea;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.pdf-inline-frame {
  width: 100%;
  height: 100%;
  border: 0;
  background: #fff;
}

.pdf-inline-image-wrap {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #f7f9fc 0%, #eef3fa 100%);
}

.pdf-inline-image {
  max-width: 100%;
  max-height: 100%;
  display: block;
  object-fit: contain;
  padding: 10px;
}

.inline-disposal-form {
  gap: 10px;
}

.disposal-tutanak-entry {
  padding: 14px 16px 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 247, 247, 0.78));
}

.disposal-tutanak-workspace {
  --disposal-workspace-width: min(100%, 1320px);
  display: grid;
  gap: 10px;
  width: var(--disposal-workspace-width);
  padding: 14px 16px 10px;
}

.disposal-tutanak-filter-form,
.disposal-tutanak-table-wrap {
  width: min(100%, 1180px);
}

.disposal-tutanak-filter-form {
  align-items: end;
}

.disposal-tutanak-filter-form .tracking-code-field {
  min-width: 240px;
}

.disposal-tutanak-filter-form .actions,
.disposal-tutanak-form > .actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  flex-wrap: wrap;
}

.disposal-unified-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.disposal-unified-summary span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 36px;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: linear-gradient(180deg, #fff7f7, #fee2e2);
  color: #991b1b;
  padding: 5px 12px;
  font-weight: 900;
}

.disposal-unified-summary strong {
  font-size: 1rem;
}

.disposal-unified-summary em {
  color: #7f1d1d;
  font-size: 0.82rem;
  font-style: normal;
}

.disposal-section-head {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(100%, 1320px);
  margin: 16px 16px 8px;
  color: #17233c;
}

.disposal-section-head strong,
.disposal-section-head span {
  display: block;
}

.disposal-section-head strong {
  font-size: 1.05rem;
  font-weight: 900;
}

.disposal-section-head span {
  color: #61708b;
  font-size: 0.86rem;
  font-weight: 800;
}

.disposal-combined-table .muted-text {
  color: #5f6d84;
  font-size: 0.84rem;
  font-weight: 800;
}

.disposal-combined-table td {
  vertical-align: top;
}

.zimmet-cihaz-filter-panel,
.zimmet-cihaz-table-wrap,
.asset-list-pagination,
.zimmet-hareket-filter-panel,
.zimmet-hareket-table-wrap,
.vardiya-zimmet-filter-panel,
.vardiya-zimmet-table-wrap,
.zimmet-imha-record-filter-panel,
.zimmet-imha-record-table-wrap {
  width: min(100%, 1320px);
}

.zimmet-service-record-filter-panel,
.zimmet-service-record-table-wrap {
  width: min(100%, 1470px);
}

.zimmet-hareket-filter-panel,
.zimmet-hareket-table-wrap,
.vardiya-zimmet-filter-panel,
.vardiya-zimmet-table-wrap,
.assignment-list-pagination,
.shift-assignment-list-pagination {
  width: min(100%, 1500px);
}

.zimmet-hareket-table-wrap,
.vardiya-zimmet-table-wrap,
.zimmet-imha-record-table-wrap,
.zimmet-service-record-table-wrap {
  max-height: 670px;
  overflow: auto;
  overscroll-behavior: contain;
}

.asset-module-shell .zimmet-hareket-table-wrap {
  max-height: none;
  overflow: visible;
}

.asset-module-shell .vardiya-zimmet-table-wrap {
  max-height: none;
  overflow: visible;
}

.zimmet-cihaz-table-wrap {
  max-height: none;
  overflow: visible;
  overscroll-behavior: contain;
}

.zimmet-cihaz-table-wrap .zimmet-cihaz-table thead th,
.zimmet-hareket-table-wrap .assignment-history-table thead th,
.zimmet-imha-record-table-wrap .zimmet-imha-record-table thead th,
.zimmet-service-record-table-wrap .service-record-table thead th {
  position: sticky;
  top: 0;
  z-index: 6;
  box-shadow: 0 1px 0 #dbe4f2;
}

.zimmet-hareket-filter-panel,
.vardiya-zimmet-filter-panel,
.zimmet-imha-record-filter-panel,
.zimmet-service-record-filter-panel {
  padding: 14px 16px;
  border-bottom: 1px solid #eef2f7;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.94));
}

.asset-list-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 10px 0 0;
  padding: 10px 16px 14px;
  color: #475569;
  font-size: 0.86rem;
  font-weight: 800;
}

.asset-module-shell .asset-list-pagination {
  margin-top: 0;
  padding: 8px 14px 10px;
}

.zimmet-cihaz-pagination {
  align-items: center;
}

.zimmet-cihaz-pagination .asset-list-page-buttons {
  flex: 0 1 620px;
  justify-content: space-between;
  gap: 8px;
}

.zimmet-cihaz-pagination .asset-list-page-buttons > a,
.zimmet-cihaz-pagination .asset-list-page-buttons > span {
  min-width: 42px;
  padding-inline: 12px;
}

.zimmet-cihaz-pagination .asset-list-page-buttons .page-edge-link,
.zimmet-cihaz-pagination .asset-list-page-buttons .page-step-link {
  min-width: 74px;
}

.asset-list-pagination[hidden],
.module-list-pagination[hidden] {
  display: none;
}

.service-list-pagination {
  width: min(100%, 1470px);
}

.asset-list-page-summary {
  white-space: nowrap;
}

.asset-list-page-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  flex-wrap: wrap;
}

.asset-list-page-buttons > a,
.asset-list-page-buttons > span,
.asset-list-page-buttons > button,
.asset-list-page-buttons [data-kif-penalty-pages] > button {
  min-width: 34px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #ffffff;
  color: #334155;
  display: inline-grid;
  place-items: center;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.asset-list-page-buttons .page-edge-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 900;
}

.asset-list-page-buttons a:hover,
.asset-list-page-buttons button:hover:not(:disabled) {
  background: #eef2ff;
  border-color: #c7d2fe;
  color: #3730a3;
}

.asset-list-page-buttons .active {
  background: #4f67f6;
  border-color: #4f67f6;
  color: #ffffff;
}

.asset-list-page-buttons .disabled,
.asset-list-page-buttons .ellipsis {
  color: #94a3b8;
  background: #f1f5f9;
}

.asset-list-page-buttons button:disabled {
  cursor: default;
}

.kif-list-toolbar,
.kif-summary-section,
.tutanak-summary-section,
.kif-list-table-wrap,
.kif-volume-toolbar,
.kif-volume-serial-table-wrap,
.tutanak-filter-toolbar,
.tutanak-list-table-wrap,
.settings-archive-table-wrap,
.module-list-pagination {
  width: min(100%, 1320px);
}

.kif-list-table-wrap,
.kif-volume-serial-table-wrap,
.tutanak-list-table-wrap,
.settings-archive-table-wrap {
  max-height: 670px;
  overflow: auto;
  overscroll-behavior: contain;
}

.kif-list-table-wrap thead th,
.kif-volume-serial-table-wrap thead th,
.tutanak-list-table-wrap thead th,
.settings-archive-table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 6;
  box-shadow: 0 1px 0 #dbe4f2;
}

.asset-disposal-entry-section {
  width: min(100%, 820px);
  max-width: 820px;
  margin-right: auto;
  padding: 12px 14px;
  border-color: #fecaca;
  background: linear-gradient(135deg, rgba(255, 247, 247, 0.98) 0%, rgba(255, 255, 255, 0.98) 45%, rgba(248, 250, 252, 0.98) 100%);
  box-shadow:
    inset 0 4px 0 #ef4444,
    0 16px 34px rgba(31, 41, 55, 0.08);
}

.asset-disposal-filter-form {
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(300px, 420px) auto;
  gap: 8px 10px;
  align-items: end;
  width: min(100%, 720px);
  margin-bottom: 12px;
}

.asset-disposal-filter-form label {
  width: 100%;
  max-width: none;
}

.asset-disposal-filter-form .tracking-code-field {
  min-width: 0;
}

.asset-disposal-filter-form select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.asset-disposal-filter-form .actions {
  align-self: end;
  margin: 0;
}

.asset-disposal-entry-form {
  display: grid;
  grid-template-columns: minmax(230px, 280px) minmax(230px, 280px) minmax(170px, 200px);
  gap: 8px 12px;
  align-items: start;
  max-width: 760px;
}

.asset-disposal-entry-form > input[type="hidden"],
.asset-disposal-entry-form > .grid.two {
  display: contents;
}

.asset-disposal-entry-form label {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.asset-disposal-entry-form select,
.asset-disposal-entry-form input:not([type="checkbox"]):not([type="radio"]),
.asset-disposal-entry-form textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.disposal-action-grid label:nth-child(1) {
  grid-column: 1 / span 2;
  grid-row: 1;
}

.disposal-action-grid label:nth-child(2) {
  grid-column: 3;
  grid-row: 1;
}

.disposal-asset-info-grid label:nth-child(1) {
  grid-column: 1 / span 2;
  grid-row: 2;
}

.disposal-asset-info-grid label:nth-child(2) {
  grid-column: 3;
  grid-row: 2;
}

.disposal-location-grid label:nth-child(1) {
  grid-column: 1 / span 2;
  grid-row: 3;
}

.disposal-location-grid label:nth-child(2) {
  grid-column: 3;
  grid-row: 3;
}

.disposal-reason-fieldset {
  grid-column: 1 / -1;
  grid-row: 4;
  width: min(100%, 760px);
  max-width: 760px;
  margin: 0;
  padding: 8px 10px 10px;
  border-color: #fecaca;
  background: rgba(255, 247, 247, 0.7);
}

.disposal-reason-fieldset legend {
  padding: 0 6px;
}

.disposal-reason-grid.grid.two {
  display: grid;
  grid-template-columns: repeat(4, minmax(135px, 1fr));
  gap: 8px 12px;
}

.disposal-reason-grid label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
  line-height: 1.16;
}

.disposal-reason-grid input[type="checkbox"] {
  flex: 0 0 auto;
  margin-top: 2px;
}

.disposal-reason-detail {
  grid-column: 1 / span 2;
  grid-row: 5;
}

.disposal-reason-detail textarea {
  min-height: 70px;
  max-height: 96px;
  resize: vertical;
}

.asset-disposal-entry-form > .small-note {
  grid-column: 1 / -1;
  grid-row: 6;
  margin: 0;
}

.asset-disposal-entry-form > .actions {
  grid-column: 1 / -1;
  grid-row: 7;
  margin-top: 2px;
}

@media (max-width: 900px) {
  .asset-disposal-filter-form,
  .asset-disposal-entry-form {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 100%;
  }

  .disposal-action-grid label:nth-child(1),
  .disposal-action-grid label:nth-child(2),
  .disposal-asset-info-grid label:nth-child(1),
  .disposal-asset-info-grid label:nth-child(2),
  .disposal-location-grid label:nth-child(1),
  .disposal-location-grid label:nth-child(2),
  .disposal-reason-fieldset,
  .disposal-reason-detail,
  .asset-disposal-entry-form > .small-note,
  .asset-disposal-entry-form > .actions {
    grid-column: 1;
    grid-row: auto;
  }

  .disposal-reason-grid.grid.two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.disposal-tutanak-form {
  --disposal-accent: #c62828;
  --disposal-accent-dark: #a61b1b;
  --disposal-soft: #fff7f7;
  --disposal-soft-strong: #fff1f1;
  display: grid;
  grid-template-columns: minmax(420px, 1.1fr) minmax(190px, 240px) minmax(430px, 1fr);
  gap: 10px 12px;
  width: min(100%, 1320px);
  margin-top: 8px;
  padding: 10px 12px 12px;
  border: 1px solid color-mix(in srgb, var(--disposal-accent) 48%, #ffffff);
  border-left: 5px solid color-mix(in srgb, var(--disposal-accent) 72%, #ffffff);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 248, 248, 0.94));
  box-shadow:
    0 10px 22px rgba(166, 27, 27, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.disposal-tutanak-form > .grid.two > label,
.inline-select-wrap,
.inline-reason-wrap,
.inline-disposal-meta > label {
  width: 100%;
  max-width: none;
  padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--disposal-accent) 48%, #ffffff);
  border-radius: 10px;
  background: linear-gradient(180deg, var(--disposal-soft), #ffffff);
  box-shadow: 0 7px 16px rgba(166, 27, 27, 0.04);
}

.disposal-tutanak-form label,
.disposal-tutanak-form .inline-block-title,
.inline-select-wrap > label {
  color: #1f2f49;
  font-size: 0.9rem;
  font-weight: 900;
}

.disposal-tutanak-form > .grid.two > label::after,
.inline-select-wrap > label::after,
.inline-reason-wrap .inline-block-title::after,
.inline-disposal-meta > label:not(:last-child)::after {
  content: "Doldurulacak";
  float: right;
  margin-left: 8px;
  padding: 1px 7px;
  border-radius: 999px;
  background: #fee2e2;
  color: var(--disposal-accent-dark);
  font-size: 0.66rem;
  font-weight: 900;
  line-height: 1.2;
}

.disposal-tutanak-form select,
.disposal-tutanak-form input:not([type="checkbox"]):not([type="radio"]),
.disposal-tutanak-form textarea {
  width: 100%;
  max-width: 100%;
  border-color: color-mix(in srgb, var(--disposal-accent) 50%, #dbe4f2);
  min-height: 38px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.disposal-tutanak-form select:focus,
.disposal-tutanak-form input:not([type="checkbox"]):not([type="radio"]):focus,
.disposal-tutanak-form textarea:focus {
  border-color: var(--disposal-accent);
  box-shadow: 0 0 0 4px rgba(198, 40, 40, 0.14);
}

.inline-disposal-form > .grid.two {
  display: contents;
}

.inline-disposal-form > .grid.two > label:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}

.inline-disposal-form > .grid.two > label:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.inline-disposal-layout {
  display: contents;
}

.inline-disposal-selection,
.inline-disposal-meta {
  min-width: 0;
}

.inline-disposal-selection {
  display: grid;
  grid-column: 1 / span 2;
  grid-row: 2 / span 2;
  gap: 6px;
}

.inline-disposal-meta {
  display: contents;
}

.inline-disposal-meta .inline-reason-wrap {
  grid-column: 3;
  grid-row: 1;
  align-self: stretch;
}

.inline-disposal-meta > label:nth-of-type(1) {
  grid-column: 3;
  grid-row: 2;
}

.inline-disposal-meta > label:nth-of-type(2) {
  grid-column: 3;
  grid-row: 3;
}

.inline-select-wrap {
  width: 100%;
}

.inline-select-wrap > label {
  display: block;
  margin: 0;
  color: #1f2f49;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1.2;
}

.inline-select-wrap details {
  margin-top: 3px;
  border: 1px solid color-mix(in srgb, var(--disposal-accent, #c62828) 38%, #d6deea);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}

.inline-select-wrap summary {
  list-style: none;
  cursor: pointer;
  padding: 8px 10px;
  font-weight: 900;
  color: #344256;
  background: #fff5f5;
  border-bottom: 1px solid #f2c7c7;
}

.inline-select-wrap details:not([open]) summary {
  border-bottom: 0;
}

.inline-select-wrap summary::-webkit-details-marker {
  display: none;
}

.inline-select-wrap summary::before {
  content: "â–¾ ";
  font-weight: 800;
  color: #5b6c86;
}

.inline-select-wrap details:not([open]) summary::before {
  content: "â–¸ ";
}

.inline-select-wrap summary::before {
  content: "\25BE\00A0";
}

.inline-select-wrap details:not([open]) summary::before {
  content: "\25B8\00A0";
}

.inline-checkbox-scroll {
  margin-top: 0;
  max-height: 168px;
  overflow: auto;
  padding: 0;
}

.inline-checkbox-list {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.inline-checkbox-item {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 5px 10px;
  border-bottom: 1px solid #f0d8d8;
  white-space: nowrap;
  width: max-content;
  min-width: 100%;
}

.inline-checkbox-item:nth-child(even) {
  background: #fff5f5;
}

.inline-checkbox-item:hover {
  background: #fee2e2;
}

.inline-reason-box {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb, var(--disposal-accent, #c62828) 38%, #d6deea);
  border-radius: 10px;
  background: #fff;
}

.inline-reason-wrap {
  display: grid;
  gap: 4px;
}

.inline-block-title {
  margin: 0;
  color: #1f2f49;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1.2;
}

.inline-reason-box .grid.two {
  grid-template-columns: repeat(2, minmax(18ch, 1fr));
  gap: 8px 12px;
}

.inline-reason-item {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.22;
}

#inline_reason_input {
  min-height: 58px;
  max-height: 76px;
  resize: vertical;
}

.disposal-tutanak-form > .actions {
  grid-column: 1 / -1;
  margin-top: 0;
  padding-top: 0;
}

.disposal-tutanak-form > .actions .btn {
  min-height: 38px;
  padding: 8px 12px;
}

.search-inline {
  display: flex;
  align-items: center;
  gap: 8px;
  width: min(100%, var(--col-max-ch));
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  min-height: 42px;
  padding: 0 10px;
}

.search-inline i {
  color: #94a3b8;
}

.search-inline input {
  border: 0;
  min-height: 38px;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.search-inline input:focus {
  box-shadow: none;
}

.module-table-wrap {
  margin: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
  border-radius: 0;
}

.module-table {
  min-width: 980px;
}

.assignment-module-shell {
  padding: 0;
}

.assignment-module-shell .operation-switch {
  margin-bottom: 0;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 10px;
  border-radius: 999px;
  border: 1px solid #9bd8ae;
  background: #d9f5e1;
  color: #176033;
  font-weight: 900;
  font-size: 0.82rem;
  white-space: nowrap;
  box-shadow: inset 0 -1px 0 rgba(22, 101, 52, 0.1);
}

.status-pill.inactive {
  border-color: #cbd5e1;
  background: #eef2f7;
  color: #475569;
}

.status-pill.in_use {
  border-color: #a8b8f8;
  background: #e2e8ff;
  color: #3342a0;
}

.status-pill.maintenance {
  border-color: #f5c268;
  background: #fff0c7;
  color: #8a4a0a;
}

.status-pill.disposed {
  border-color: #cbd5e1;
  background: #e2e8f0;
  color: #334155;
}

.module-table td:last-child,
.module-table th:last-child {
  min-width: 15ch;
}

.service-record-table {
  width: 100%;
  min-width: 100%;
  table-layout: fixed;
}

.zimmet-service-record-table-wrap .service-record-table thead th {
  background: linear-gradient(180deg, #eef4ff 0%, #e2eaff 100%);
  color: #3f4c67;
}

.service-record-table th,
.service-record-table td {
  vertical-align: middle;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  line-height: 1.2;
}

.service-record-table tbody tr.service-record-row td {
  border-bottom: 1px solid rgba(148, 163, 184, 0.22);
}

.service-record-table tbody tr.service-record-row-open td {
  background: #eff6ff !important;
}

.service-record-table tbody tr.service-record-row-returned td {
  background: #ecfdf5 !important;
}

.service-record-table tbody tr.service-record-row-overdue td {
  background: #fff1f2 !important;
}

.service-record-table tbody tr.service-record-row-waiting td {
  background: #fffbeb !important;
}

.service-record-table tbody tr.service-record-row-open td:first-child {
  border-left: 4px solid #4f67f6;
}

.service-record-table tbody tr.service-record-row-returned td:first-child {
  border-left: 4px solid #16a34a;
}

.service-record-table tbody tr.service-record-row-overdue td:first-child {
  border-left: 4px solid #dc2626;
}

.service-record-table tbody tr.service-record-row-waiting td:first-child {
  border-left: 4px solid #d97706;
}

.service-record-table tbody tr.service-record-row:hover td {
  filter: saturate(1.12) brightness(0.985);
}

.service-record-table th:nth-child(1),
.service-record-table td:nth-child(1) {
  width: 3%;
}

.service-record-table th:nth-child(2),
.service-record-table td:nth-child(2) {
  width: 8%;
}

.service-record-table th:nth-child(3),
.service-record-table td:nth-child(3) {
  width: 11%;
}

.service-record-table th:nth-child(4),
.service-record-table td:nth-child(4) {
  width: 7%;
}

.service-date-stack span,
.service-date-stack small {
  display: block;
}

.service-date-stack small {
  margin-top: 3px;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.2;
}

.service-record-table th:nth-child(5),
.service-record-table td:nth-child(5) {
  width: 5%;
  text-align: center;
  white-space: nowrap;
}

.service-record-table th:nth-child(5) {
  line-height: 1.05;
}

.service-record-table th:nth-child(6),
.service-record-table td:nth-child(6) {
  width: 9%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.15;
}

.service-record-table td:nth-child(6) {
  overflow: visible;
  text-overflow: clip;
}

.asset-serial-wrap {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.15;
}

.service-record-table th:nth-child(7),
.service-record-table td:nth-child(7) {
  width: 8%;
}

.service-record-table th:nth-child(8),
.service-record-table td:nth-child(8) {
  width: 9%;
}

.service-record-table th:nth-child(9),
.service-record-table td:nth-child(9) {
  width: 7%;
}

.service-record-table th:nth-child(10),
.service-record-table td:nth-child(10) {
  width: 8%;
}

.service-record-table th:nth-child(11),
.service-record-table td:nth-child(11) {
  width: 7%;
}

.service-record-table th:nth-child(12),
.service-record-table td:nth-child(12) {
  width: 6%;
}

.service-record-table th:nth-child(13),
.service-record-table td:nth-child(13) {
  width: 12%;
  min-width: 12%;
  max-width: 12%;
}

.service-record-table td:nth-child(13).service-actions-cell {
  display: table-cell;
  overflow: visible;
}

.service-actions-stack {
  display: flex;
  align-items: flex-start;
  gap: 8px 7px;
  justify-content: flex-start;
  overflow: visible;
  flex-wrap: wrap;
}

.service-actions-stack form {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
}

.service-actions-stack form:has(.service-return-status-select) {
  display: flex;
  flex: 0 0 100%;
  width: 100%;
}

.service-actions-stack form:has(.service-return-status-select) .service-return-status-select {
  flex: 1 1 auto;
  min-width: 0;
}

.service-actions-stack form.service-return-form {
  display: grid;
  grid-template-columns: minmax(116px, 1fr) 34px;
  align-items: center;
  gap: 6px;
}

.service-return-date-input {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  height: 34px;
  box-sizing: border-box;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #ffffff;
  padding: 0 8px;
  color: #172033;
  font-size: 0.78rem;
  font-weight: 850;
}

.service-note-cell {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  line-height: 1.25;
}

.service-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.15;
}

.service-status-open {
  background: #dbeafe;
  color: #1d4ed8;
}

.service-status-returned {
  background: #bbf7d0;
  color: #166534;
}

.service-status-overdue {
  background: #fecaca;
  color: #991b1b;
}

.service-status-waiting {
  background: #fde68a;
  color: #92400e;
}

.kif-upload-panel {
  display: flex;
  align-items: end;
  gap: 10px;
  flex-wrap: wrap;
  margin: 8px 0 8px;
}

.kif-upload-panel label {
  display: grid;
  gap: 6px;
  min-width: min(100%, 340px);
}

.kif-upload-panel input[type="file"] {
  width: min(100%, 420px);
}

.kif-archive-panel {
  border-top: 1px dashed #d7deea;
  padding-top: 12px;
  margin-top: 12px;
}

.kif-list-table {
  width: 100%;
  min-width: 1180px;
  table-layout: fixed;
}

.kif-list-table th,
.kif-list-table td {
  padding-top: 8px;
  padding-bottom: 8px;
  vertical-align: middle;
}

.kif-list-table th:nth-child(1),
.kif-list-table td:nth-child(1) {
  width: 5ch;
  max-width: 5ch;
}

.kif-list-table th:nth-child(2),
.kif-list-table td:nth-child(2) {
  width: 11ch;
  max-width: 11ch;
  white-space: nowrap;
}

.kif-list-table th:nth-child(3),
.kif-list-table td:nth-child(3) {
  width: 13.5ch;
  max-width: 13.5ch;
}

.kif-list-table th:nth-child(4),
.kif-list-table td:nth-child(4) {
  width: 16ch;
  max-width: 16ch;
}

.kif-list-table th:nth-child(5),
.kif-list-table td:nth-child(5) {
  width: 30ch;
  max-width: 30ch;
}

.kif-list-table th:nth-child(6),
.kif-list-table td:nth-child(6) {
  width: 22ch;
  max-width: 22ch;
}

.kif-list-table th:nth-child(7),
.kif-list-table td:nth-child(7) {
  width: 18ch;
  max-width: 18ch;
}

.kif-list-table th:nth-child(8),
.kif-list-table td:nth-child(8) {
  width: 16ch;
  max-width: 16ch;
}

.kif-list-table .date-cell {
  gap: 1px;
}

.kif-list-table .date-cell small {
  line-height: 1.05;
}

.kif-list-table .record-badges,
.kif-list-table .icon-actions {
  gap: 4px;
}

.kif-list-table .kif-person-line {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.kif-person-count {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 1px 7px;
  border-radius: 999px;
  background: #eef2ff;
  color: #3444b5;
  border: 1px solid #dbe3ff;
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.zimmet-cihaz-table {
  width: 100%;
  min-width: 1180px;
  table-layout: fixed;
}

.zimmet-cihaz-table th,
.zimmet-cihaz-table td {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  padding-left: 7px;
  padding-right: 7px;
  vertical-align: middle;
  line-height: 1.16;
}

.zimmet-cihaz-table thead th {
  background: linear-gradient(180deg, #edf3ff 0%, #dfe8fb 58%, #d7e2f7 100%);
  color: #26344d;
  border-bottom: 1px solid #b9c8e5;
}

.zimmet-cihaz-table tbody tr.asset-list-row td {
  border-bottom: 1px solid rgba(100, 116, 139, 0.28);
  padding-top: 7px;
  padding-bottom: 7px;
  transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.zimmet-cihaz-table tbody tr.asset-list-row:hover td {
  filter: saturate(1.08);
  box-shadow: inset 0 0 0 999px rgba(255, 255, 255, 0.2);
}

.zimmet-cihaz-table tbody tr.asset-row-status-available:nth-child(odd) td {
  background: #f4fbf7 !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-available:nth-child(even) td {
  background: #e6f6ec !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-available td:first-child {
  border-left: 5px solid #39a866;
}

.zimmet-cihaz-table tbody tr.asset-row-status-in-use:nth-child(odd) td {
  background: #f1f5ff !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-in-use:nth-child(even) td {
  background: #e3eaff !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-in-use td:first-child {
  border-left: 5px solid #5765d9;
}

.zimmet-cihaz-table tbody tr.asset-row-status-maintenance:nth-child(odd) td {
  background: #fff9ed !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-maintenance:nth-child(even) td {
  background: #fff0d2 !important;
}

.zimmet-cihaz-table tbody tr.asset-row-status-maintenance td:first-child {
  border-left: 5px solid #d99a24;
}

.zimmet-cihaz-table tbody tr.asset-row-status-disposed:nth-child(odd) td,
.zimmet-cihaz-table tbody tr.asset-row-status-inactive:nth-child(odd) td {
  background: #f8fafc !important;
  color: #475569;
}

.zimmet-cihaz-table tbody tr.asset-row-status-disposed:nth-child(even) td,
.zimmet-cihaz-table tbody tr.asset-row-status-inactive:nth-child(even) td {
  background: #e2e8f0 !important;
  color: #475569;
}

.zimmet-cihaz-table tbody tr.asset-row-status-disposed td:first-child,
.zimmet-cihaz-table tbody tr.asset-row-status-inactive td:first-child {
  border-left: 5px solid #64748b;
}

.zimmet-cihaz-table .icon-actions {
  flex-wrap: wrap;
  justify-content: center;
  min-width: 0;
}

.asset-status-action-cell {
  text-align: center;
}

.asset-status-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-top: 5px;
}

.asset-status-actions form {
  display: inline-flex;
  margin: 0;
}

.zimmet-cihaz-table th:nth-child(1),
.zimmet-cihaz-table td:nth-child(1) {
  width: 5%;
  max-width: 5%;
}

.zimmet-cihaz-table th:nth-child(2),
.zimmet-cihaz-table td:nth-child(2) {
  width: 8%;
  max-width: 8%;
}

.zimmet-cihaz-table th:nth-child(3),
.zimmet-cihaz-table td:nth-child(3) {
  width: 8%;
  max-width: 8%;
  white-space: nowrap;
}

.zimmet-cihaz-table th:nth-child(4),
.zimmet-cihaz-table td:nth-child(4) {
  width: 8%;
  max-width: 8%;
}

.zimmet-cihaz-table th:nth-child(5),
.zimmet-cihaz-table td:nth-child(5) {
  width: 11%;
  max-width: 11%;
}

.zimmet-cihaz-table th:nth-child(6),
.zimmet-cihaz-table td:nth-child(6) {
  width: 10%;
  max-width: 10%;
}

.zimmet-cihaz-table th:nth-child(7),
.zimmet-cihaz-table td:nth-child(7) {
  width: 8%;
  max-width: 8%;
}

.zimmet-cihaz-table th:nth-child(8),
.zimmet-cihaz-table td:nth-child(8) {
  width: 9%;
  max-width: 9%;
}

.zimmet-cihaz-table th:nth-child(9),
.zimmet-cihaz-table td:nth-child(9) {
  width: 12%;
  max-width: 12%;
}

.zimmet-cihaz-table th:nth-child(8) {
  overflow-wrap: normal;
  word-break: keep-all;
}

.zimmet-cihaz-table th:nth-child(10),
.zimmet-cihaz-table td:nth-child(10) {
  width: 9%;
  max-width: 9%;
  white-space: nowrap;
}

.zimmet-cihaz-table th:nth-child(11),
.zimmet-cihaz-table td:nth-child(11) {
  width: 12%;
  max-width: 12%;
  white-space: nowrap;
}

.zimmet-plaka-table {
  width: max-content !important;
  min-width: 0;
  table-layout: fixed;
}

.zimmet-plaka-table th,
.zimmet-plaka-table td {
  padding-left: 8px;
  padding-right: 8px;
}

.zimmet-plaka-table th:nth-child(1),
.zimmet-plaka-table td:nth-child(1) {
  width: 6ch !important;
  max-width: 6ch !important;
}

.zimmet-plaka-table th:nth-child(2),
.zimmet-plaka-table td:nth-child(2) {
  width: 8ch !important;
  max-width: 8ch !important;
  white-space: nowrap;
}

.zimmet-plaka-table th:nth-child(3),
.zimmet-plaka-table td:nth-child(3) {
  width: 20ch;
  max-width: 20ch;
}

.zimmet-plaka-table th:nth-child(4),
.zimmet-plaka-table td:nth-child(4) {
  width: 25ch;
  max-width: 25ch;
}

.zimmet-plaka-table th:nth-child(5),
.zimmet-plaka-table td:nth-child(5) {
  width: 26ch;
  max-width: 26ch;
}

.zimmet-plaka-table th:nth-child(6),
.zimmet-plaka-table td:nth-child(6) {
  width: 14ch;
  max-width: 14ch;
  white-space: nowrap;
}

.zimmet-plaka-table th:nth-child(7),
.zimmet-plaka-table td:nth-child(7) {
  width: 17ch;
  max-width: 17ch;
  white-space: nowrap;
}

.zimmet-plaka-table th:nth-child(8),
.zimmet-plaka-table td:nth-child(8) {
  width: 16ch;
  max-width: 16ch;
}

.zimmet-plaka-table th:nth-child(9),
.zimmet-plaka-table td:nth-child(9) {
  width: 24ch;
  max-width: 24ch;
}

.zimmet-plaka-table th:nth-child(10),
.zimmet-plaka-table td:nth-child(10) {
  width: 14ch;
  max-width: 14ch;
  white-space: nowrap;
}

.zimmet-plaka-table td:nth-child(10).icon-actions {
  justify-content: center;
}

.plate-query-shell {
  margin-top: 0;
  display: grid;
  gap: 14px;
}

.plate-quick-search {
  display: grid;
  grid-template-columns: minmax(190px, 24ch) minmax(300px, 34ch) minmax(360px, 44ch) minmax(220px, 24ch) auto;
  gap: 10px;
  align-items: end;
  justify-content: start;
  padding: 12px;
  border: 1px solid #dbe4f2;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fbff, #ffffff);
}

.plate-quick-search label {
  display: grid;
  gap: 5px;
  color: #172033;
  font-weight: 900;
}

.plate-quick-search input,
.plate-quick-search select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  border: 1px solid #d6e0f0;
  border-radius: 11px;
  padding: 0 12px;
  color: #172033;
  background: #fff;
  font-weight: 800;
}

.plate-quick-search select[name="vehicle_filter"] {
  min-width: 34ch;
}

.plate-search-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  justify-content: flex-start;
}

.plate-search-actions .btn {
  min-height: 42px;
  white-space: nowrap;
}

.plate-filter-menu-field {
  min-width: 0;
}

.plate-filter-menu {
  position: relative;
  min-width: 0;
}

.plate-filter-menu summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 42px;
  padding: 7px 11px;
  border: 1px solid #d6e0f0;
  border-radius: 11px;
  color: #172033;
  background: #fff;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.plate-filter-menu summary::-webkit-details-marker {
  display: none;
}

.plate-filter-menu summary span {
  display: -webkit-box;
  overflow: hidden;
  line-height: 1.15;
  overflow-wrap: anywhere;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.plate-filter-menu[open] summary {
  border-color: #a5b4fc;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.15);
}

.plate-filter-options {
  position: absolute;
  z-index: 80;
  top: calc(100% + 6px);
  left: 0;
  width: max-content;
  min-width: 100%;
  max-width: min(520px, 88vw);
  max-height: 360px;
  overflow: auto;
  padding: 6px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 36px rgba(15, 23, 42, 0.18);
}

.plate-filter-options a {
  display: block;
  padding: 8px 10px;
  border-radius: 8px;
  color: #172033;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}

.plate-filter-options a:hover,
.plate-filter-options a.active {
  color: #3344d1;
  background: #eef2ff;
}

.plate-query-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: #64748b;
  font-size: 0.92rem;
  font-weight: 800;
}

.plate-query-summary span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 30px;
  padding: 5px 11px;
  border-radius: 999px;
  background: #eef2ff;
}

.plate-query-summary em {
  font-style: normal;
}

.plate-query-layout {
  --plate-list-width: 1120px;
  display: grid;
  grid-template-columns: minmax(0, var(--plate-list-width)) minmax(320px, 380px);
  gap: 10px;
  justify-content: start;
  align-items: start;
}

.plate-query-list,
.plate-detail-card {
  min-width: 0;
}

.plate-query-list {
  width: var(--plate-list-width);
  max-width: 100%;
}

.plate-query-table-wrap {
  width: var(--plate-list-width);
  max-width: 100%;
  max-height: 720px;
  overflow: auto;
  overscroll-behavior: contain;
}

.plate-query-table {
  width: var(--plate-list-width);
  min-width: var(--plate-list-width);
  table-layout: fixed;
}

.plate-list-pagination {
  width: var(--plate-list-width);
  max-width: 100%;
}

.plate-status-legend {
  width: var(--plate-list-width);
  max-width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.plate-status-legend-title {
  color: #475569;
  font-size: 13px;
  font-weight: 900;
  margin-right: 4px;
}

.plate-status-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #1e293b;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.plate-status-legend-item i {
  width: 11px;
  height: 11px;
  border-radius: 999px;
  display: inline-block;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12);
}

.plate-status-legend-current {
  background: #f0fdf4;
  border-color: #86efac;
}

.plate-status-legend-current i {
  background: #22c55e;
}

.plate-status-legend-overdue {
  background: #fff1f2;
  border-color: #fda4af;
}

.plate-status-legend-overdue i {
  background: #dc2626;
}

.plate-status-legend-upcoming {
  background: #fffbeb;
  border-color: #fcd34d;
}

.plate-status-legend-upcoming i {
  background: #d97706;
}

.plate-status-legend-missing {
  background: #f8fafc;
  border-color: #cbd5e1;
}

.plate-status-legend-missing i {
  background: #94a3b8;
}

.plate-status-legend-critical {
  background: #fef2f2;
  border-color: #ef4444;
  color: #7f1d1d;
  animation: plateCriticalPulse 1.25s ease-in-out infinite;
}

.plate-status-legend-critical i {
  background: #dc2626;
}

.plate-status-legend-selected {
  background: #eef2ff;
  border-color: #a5b4fc;
}

.plate-status-legend-selected i {
  background: #4f67f6;
}

.plate-area-legend {
  width: var(--plate-list-width, 100%);
  max-width: 100%;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #c7d2fe;
  border-left: 5px solid #4f67f6;
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.plate-area-legend-head {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #172033;
  font-size: 13px;
  font-weight: 900;
}

.plate-area-legend-head i {
  color: #4f67f6;
}

.plate-area-legend-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 7px;
}

.plate-area-legend-grid span {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 7px 9px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.plate-area-legend-grid b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  color: #1d4ed8;
  background: #dbeafe;
  border: 1px solid #93c5fd;
  font-size: 13px;
  font-weight: 950;
}

.plate-vehicle-status-legend {
  width: var(--plate-list-width, 100%);
  max-width: 100%;
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #fed7aa;
  border-left: 5px solid #f97316;
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(255, 247, 237, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.plate-vehicle-status-head {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #172033;
  font-size: 13px;
  font-weight: 900;
}

.plate-vehicle-status-head i {
  color: #ea580c;
}

.plate-vehicle-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 7px;
}

.plate-vehicle-status-item {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 4px 8px;
  min-height: 48px;
  padding: 8px 9px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  line-height: 1.2;
}

.plate-vehicle-status-item i {
  grid-row: span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  font-size: 13px;
}

.plate-vehicle-status-item b {
  font-size: 12px;
  font-weight: 950;
}

.plate-vehicle-status-item em {
  color: #64748b;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
}

.plate-vehicle-status-active {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.plate-vehicle-status-active i {
  color: #166534;
  background: #dcfce7;
}

.plate-vehicle-status-passive {
  border-color: #cbd5e1;
  background: #f8fafc;
}

.plate-vehicle-status-passive i {
  color: #475569;
  background: #e2e8f0;
}

.plate-vehicle-status-held {
  border-color: #fed7aa;
  background: #fff7ed;
}

.plate-vehicle-status-held i {
  color: #c2410c;
  background: #ffedd5;
}

.plate-vehicle-status-lost {
  border-color: #fecaca;
  background: #fef2f2;
}

.plate-vehicle-status-lost i {
  color: #b91c1c;
  background: #fee2e2;
}

.plate-vehicle-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #dbe4f2;
  border-left: 5px solid #94a3b8;
  border-radius: 12px;
  background: #ffffff;
}

.plate-vehicle-alert > i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  margin-top: 1px;
}

.plate-vehicle-alert strong,
.plate-vehicle-alert span {
  display: block;
}

.plate-vehicle-alert strong {
  color: #172033;
  font-weight: 950;
}

.plate-vehicle-alert span {
  color: #4d5c78;
  font-size: 0.9rem;
  font-weight: 750;
}

.plate-vehicle-alert-active {
  border-color: #86efac;
  border-left-color: #16a34a;
  background: #f0fdf4;
}

.plate-vehicle-alert-active > i {
  color: #166534;
  background: #dcfce7;
}

.plate-vehicle-alert-passive {
  border-color: #cbd5e1;
  border-left-color: #64748b;
  background: #f8fafc;
}

.plate-vehicle-alert-passive > i {
  color: #475569;
  background: #e2e8f0;
}

.plate-vehicle-alert-held {
  border-color: #fdba74;
  border-left-color: #f97316;
  background: #fff7ed;
}

.plate-vehicle-alert-held > i {
  color: #c2410c;
  background: #ffedd5;
}

.plate-vehicle-alert-lost {
  border-color: #fca5a5;
  border-left-color: #dc2626;
  background: #fef2f2;
}

.plate-vehicle-alert-lost > i {
  color: #b91c1c;
  background: #fee2e2;
}

.plate-vehicle-alert-held,
.plate-vehicle-alert-lost {
  border-color: #ef4444;
  border-left-color: #b91c1c;
  background:
    linear-gradient(135deg, rgba(254, 242, 242, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.07);
}

.plate-vehicle-alert-held > i,
.plate-vehicle-alert-lost > i {
  color: #ffffff;
  background: #dc2626;
}

.plate-vehicle-alert-held strong,
.plate-vehicle-alert-lost strong {
  color: #7f1d1d;
}

.plate-vehicle-mini {
  display: flex;
  align-items: center;
  gap: 5px;
  width: max-content;
  max-width: 100%;
  margin-top: 4px;
  padding: 3px 7px;
  border: 1px solid #dbe4f2;
  border-radius: 999px;
  color: #334155;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
}

.plate-query-table td .plate-vehicle-mini {
  margin-top: 6px;
}

.plate-vehicle-mini-active {
  border-color: #bbf7d0;
  color: #166534;
  background: #dcfce7;
}

.plate-vehicle-mini-passive {
  border-color: #cbd5e1;
  color: #475569;
  background: #e2e8f0;
}

.plate-vehicle-mini-held {
  border-color: #fed7aa;
  color: #9a3412;
  background: #ffedd5;
}

.plate-vehicle-mini-lost {
  border-color: #fecaca;
  color: #991b1b;
  background: #fee2e2;
}

@media (max-width: 1180px) {
  .plate-area-legend-grid,
  .plate-vehicle-status-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}

@media (max-width: 720px) {
  .plate-status-legend,
  .plate-area-legend,
  .plate-vehicle-status-legend {
    padding: 9px;
  }

  .plate-status-legend-item {
    white-space: normal;
  }

  .plate-area-legend-grid,
  .plate-vehicle-status-grid {
    grid-template-columns: 1fr;
  }
}

.plate-query-table th,
.plate-query-table td {
  padding: 8px;
  vertical-align: middle;
  line-height: 1.22;
}

.plate-query-table th:nth-child(1),
.plate-query-table td:nth-child(1) {
  width: 6ch;
  white-space: nowrap;
  text-align: center;
}

.plate-query-table th:nth-child(2),
.plate-query-table td:nth-child(2) {
  width: 10ch;
  white-space: nowrap;
}

.plate-query-table th:nth-child(3),
.plate-query-table td:nth-child(3) {
  width: 20ch;
}

.plate-query-table th:nth-child(4),
.plate-query-table td:nth-child(4) {
  width: 24ch;
}

.plate-query-table th:nth-child(5),
.plate-query-table td:nth-child(5) {
  width: 18ch;
}

.plate-query-table th:nth-child(6),
.plate-query-table td:nth-child(6) {
  width: 16ch;
}

.plate-query-table th:nth-child(7),
.plate-query-table td:nth-child(7) {
  width: 18ch;
}

.plate-query-table th:nth-child(8),
.plate-query-table td:nth-child(8) {
  width: 126px;
  white-space: nowrap;
  text-align: center;
}

.plate-query-table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 6;
  box-shadow: 0 1px 0 #dbe4f2;
}

.plate-query-table td {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.plate-query-table td:nth-child(1),
.plate-query-table td:nth-child(2),
.plate-query-table td:nth-child(6),
.plate-query-table td:nth-child(8) {
  white-space: nowrap;
  overflow-wrap: normal;
}

.plate-query-table td:nth-child(3),
.plate-query-table td:nth-child(4),
.plate-query-table td:nth-child(5),
.plate-query-table td:nth-child(7) {
  white-space: normal;
  overflow-wrap: anywhere;
}

.plate-query-table td:nth-child(6) {
  white-space: normal;
}

.plate-query-table td:nth-child(6) small {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-weight: 800;
}

.plate-query-table tbody tr td:first-child {
  border-left: 4px solid transparent;
}

.plate-query-table tbody tr.plate-status-current td {
  background: #f0fdf4;
  border-top-color: #bbf7d0;
  border-bottom-color: #bbf7d0;
}

.plate-query-table tbody tr.plate-status-current td:first-child {
  border-left-color: #22c55e;
}

.plate-query-table tbody tr.plate-status-overdue td {
  background: #fff1f2;
  border-top-color: #fecdd3;
  border-bottom-color: #fecdd3;
}

.plate-query-table tbody tr.plate-status-overdue td:first-child {
  border-left-color: #dc2626;
}

.plate-query-table tbody tr.plate-status-upcoming td {
  background: #fffbeb;
  border-top-color: #fde68a;
  border-bottom-color: #fde68a;
}

.plate-query-table tbody tr.plate-status-upcoming td:first-child {
  border-left-color: #d97706;
}

.plate-query-table tbody tr.plate-status-missing td {
  background: #f8fafc;
  border-top-color: #e2e8f0;
  border-bottom-color: #e2e8f0;
}

.plate-query-table tbody tr.plate-status-missing td:first-child {
  border-left-color: #94a3b8;
}

.plate-query-table tbody tr.selected-row td {
  background: #eef2ff;
  box-shadow: inset 0 1px 0 #c7d2fe, inset 0 -1px 0 #c7d2fe;
}

.plate-query-table tbody tr.selected-row td:first-child {
  border-left-color: #4f67f6;
}

.plate-query-table .plate-actions-cell {
  overflow: visible;
  text-overflow: clip;
}

.plate-query-table .plate-row-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 5px;
  min-width: 126px;
  overflow: visible;
}

.plate-query-table .plate-row-actions form {
  flex: 0 0 auto;
}

.plate-query-table .plate-row-actions .icon-btn-mini {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
}

.plate-link {
  display: block;
  width: max-content;
  max-width: 100%;
  color: #991b1b;
  font-weight: 900;
  text-decoration: none;
}

.plate-link:hover {
  text-decoration: underline;
}

.plate-detail-card {
  position: sticky;
  top: 14px;
  display: grid;
  gap: 13px;
  padding: 14px;
  border: 1px solid #dbe4f2;
  border-left: 5px solid #4f67f6;
  border-radius: 14px;
  background: linear-gradient(145deg, #ffffff 0%, #f8fbff 58%, #eef2ff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.07);
}

.plate-detail-head {
  display: flex;
  align-items: center;
  gap: 11px;
}

.plate-detail-head > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  color: #2f6f6a;
  background: #e7f6f3;
  font-size: 1.25rem;
}

.plate-detail-head small,
.plate-detail-grid dt {
  display: block;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.plate-detail-head strong {
  display: block;
  color: #172033;
  font-size: 1.5rem;
  font-weight: 950;
}

.plate-detail-grid {
  display: grid;
  gap: 8px;
  margin: 0;
}

.plate-detail-grid div {
  padding: 9px 10px;
  border: 1px solid #e5ebf5;
  border-radius: 10px;
  background: #fff;
}

.plate-detail-grid dd {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  color: #172033;
  font-weight: 850;
}

.plate-maintenance-mini {
  display: grid;
  gap: 8px;
}

.plate-maintenance-mini-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.plate-maintenance-mini > strong {
  color: #172033;
  font-size: 1rem;
  font-weight: 950;
}

.plate-maintenance-mini-head strong {
  color: #172033;
  font-size: 1rem;
  font-weight: 950;
}

.plate-maintenance-mini-head .btn {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 0.82rem;
}

.plate-maintenance-row {
  display: grid;
  grid-template-columns: 11ch minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px 9px;
  border-radius: 10px;
  background: #eef2ff;
}

.plate-maintenance-row span,
.plate-maintenance-row a,
.plate-maintenance-row em {
  font-weight: 900;
}

.plate-maintenance-row em {
  color: #64748b;
  font-style: normal;
}

.plate-maintenance-row small {
  overflow: hidden;
  color: #475569;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.plate-empty-detail {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 40px 18px;
  text-align: center;
}

.plate-empty-detail i {
  color: #4f67f6;
  font-size: 2rem;
}

.plate-mobile-results {
  display: none;
}

.plate-mobile-card,
.plate-mobile-empty {
  border: 1px solid #dbe4f2;
  border-radius: 14px;
  background: linear-gradient(145deg, #ffffff, #f8fbff);
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
}

.plate-mobile-card {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.plate-mobile-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.plate-mobile-no {
  color: #991b1b;
  font-size: 1.28rem;
  font-weight: 950;
  letter-spacing: 0.03em;
}

.plate-mobile-facts {
  display: grid;
  gap: 8px;
  margin: 0;
}

.plate-mobile-facts div {
  display: grid;
  grid-template-columns: 9ch minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
  padding: 8px 9px;
  border-radius: 10px;
  background: #eef2ff;
}

.plate-mobile-facts dt {
  color: #64748b;
  font-weight: 900;
}

.plate-mobile-facts dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: #172033;
  font-weight: 850;
}

.plate-mobile-empty {
  display: grid;
  justify-items: center;
  gap: 7px;
  padding: 22px 16px;
  color: #172033;
  text-align: center;
}

.plate-mobile-empty i {
  color: #4f67f6;
  font-size: 1.8rem;
}

@media (max-width: 1380px) {
  .plate-quick-search {
    grid-template-columns: minmax(180px, 0.9fr) minmax(260px, 1fr) minmax(340px, 1.25fr) minmax(190px, 0.8fr);
  }

  .plate-search-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .plate-query-layout {
    grid-template-columns: 1fr;
  }

  .plate-detail-card {
    position: static;
  }
}

@media (max-width: 760px) {
  .plate-quick-search {
    grid-template-columns: 1fr;
    padding: 10px;
  }

  .plate-search-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .plate-search-actions .btn {
    width: 100%;
    justify-content: center;
  }

  .plate-search-actions .btn-success,
  .plate-desktop-filter,
  .plate-query-summary,
  .plate-query-layout {
    display: none;
  }

  .plate-mobile-results {
    display: grid;
    gap: 10px;
  }

  .plate-mobile-card .btn {
    justify-content: center;
  }
}

.plate-lookup-shell {
  margin-top: 0;
  display: grid;
  gap: 16px;
  width: min(66.666%, 1320px);
  min-width: 0;
}

.plate-lookup-hero {
  display: grid;
  grid-template-columns: minmax(300px, 1fr) minmax(360px, 0.9fr);
  gap: 18px;
  align-items: end;
  padding: 18px;
  border: 1px solid #93c5fd;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(219, 234, 254, 0.96), rgba(204, 251, 241, 0.92)),
    #ffffff;
}

.plate-lookup-title {
  display: flex;
  gap: 14px;
  align-items: center;
}

.plate-lookup-icon {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0f766e;
  background: #ccfbf1;
  border: 1px solid #5eead4;
  font-size: 24px;
}

.plate-lookup-title h2 {
  margin: 0;
  font-size: 24px;
  color: #172033;
}

.plate-lookup-title p {
  margin: 4px 0 0;
  color: #657086;
  font-weight: 600;
}

.plate-lookup-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  gap: 10px;
  align-items: end;
}

.plate-lookup-form label {
  display: grid;
  gap: 6px;
  color: #172033;
  font-weight: 800;
}

.plate-lookup-form input {
  min-height: 48px;
  border: 1px solid #d5deee;
  border-radius: 13px;
  padding: 0 16px;
  color: #172033;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: 0;
  background: #ffffff;
}

.plate-lookup-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.plate-lookup-summary span {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: #eef4ff;
  color: #4d5c78;
  font-weight: 800;
}

.plate-lookup-status-legend {
  width: 100%;
  margin-top: -4px;
}

.plate-lookup-results {
  display: grid;
  gap: 14px;
}

.plate-lookup-card,
.plate-lookup-empty {
  border: 1px solid #dbe4f2;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(20, 32, 52, 0.08);
}

.plate-lookup-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border-left: 5px solid #94a3b8;
}

.plate-lookup-card.plate-lookup-status-current {
  border-color: #86efac;
  border-left-color: #22c55e;
  background:
    linear-gradient(135deg, rgba(240, 253, 244, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-card.plate-lookup-status-overdue {
  border-color: #fda4af;
  border-left-color: #dc2626;
  background:
    linear-gradient(135deg, rgba(255, 241, 242, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-card.plate-lookup-status-upcoming {
  border-color: #fcd34d;
  border-left-color: #d97706;
  background:
    linear-gradient(135deg, rgba(255, 251, 235, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-card.plate-lookup-status-missing {
  border-color: #cbd5e1;
  border-left-color: #94a3b8;
  background:
    linear-gradient(135deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-card.plate-lookup-card-critical,
.plate-lookup-card.plate-lookup-vehicle-held,
.plate-lookup-card.plate-lookup-vehicle-lost {
  border-color: #ef4444;
  border-left-color: #b91c1c;
  background:
    linear-gradient(135deg, rgba(254, 242, 242, 0.98), rgba(255, 247, 247, 0.98)),
    #ffffff;
  box-shadow:
    0 0 0 2px rgba(239, 68, 68, 0.08),
    0 18px 42px rgba(127, 29, 29, 0.14);
  animation: plateCriticalCardPulse 1.45s ease-in-out infinite;
}

.plate-lookup-card.plate-lookup-card-ok {
  border-color: #86efac;
  border-left-color: #16a34a;
}

.plate-lookup-info-row {
  display: grid;
  grid-template-columns: minmax(320px, 1.35fr) minmax(220px, 1fr) minmax(220px, 1fr);
  align-items: stretch;
  gap: 10px;
}

.plate-lookup-info-row > * {
  min-width: 0;
}

.plate-lookup-info-row .plate-vehicle-alert,
.plate-lookup-info-row .plate-lookup-info-field,
.plate-lookup-info-row .plate-lookup-inline-area,
.plate-lookup-info-row .plate-area-legend {
  height: 100%;
}

.plate-lookup-info-row .plate-vehicle-alert {
  min-height: 78px;
}

.plate-lookup-info-field {
  min-height: 78px;
  padding: 12px 14px;
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(248, 251, 255, 0.96), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-info-field dt {
  margin: 0 0 5px;
  color: #657086;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.plate-lookup-info-field dd {
  margin: 0;
  color: #172033;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.plate-lookup-company-field {
  border-left: 5px solid #2563eb;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-type-field {
  border-left: 5px solid #7c3aed;
  background:
    linear-gradient(135deg, rgba(245, 243, 255, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.plate-lookup-area-late {
  margin-top: 10px;
}

.plate-lookup-area-late .plate-area-legend {
  opacity: 0.96;
}

.plate-lookup-inline-area .plate-area-legend {
  width: 100%;
  margin-top: 0;
  padding: 9px 10px;
  border-color: #c7d2fe;
  border-left-color: #4f67f6;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.98), rgba(248, 251, 255, 0.98)),
    #ffffff;
  box-shadow: none;
}

.plate-lookup-inline-area .plate-area-legend-head {
  font-size: 12px;
}

.plate-lookup-inline-area .plate-area-legend-grid {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: 6px;
}

.plate-lookup-inline-area .plate-area-legend-grid span {
  min-height: 30px;
  padding: 6px 8px;
  font-size: 11px;
}

.plate-lookup-inline-area .plate-area-legend-grid b {
  width: 24px;
  height: 24px;
  font-size: 12px;
}

@media (max-width: 900px) {
  .plate-lookup-info-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .plate-lookup-inline-area .plate-area-legend-grid {
    grid-template-columns: 1fr;
  }

  .plate-lookup-inline-area .plate-area-legend-grid span {
    grid-template-columns: 28px minmax(0, 1fr);
    overflow-wrap: anywhere;
  }
}

.plate-lookup-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e7edf7;
}

.plate-lookup-card-badges {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.plate-vehicle-status-badge {
  border: 1px solid transparent;
}

.plate-vehicle-status-badge-active {
  color: #166534;
  background: #dcfce7;
  border-color: #86efac;
}

.plate-vehicle-status-badge-passive {
  color: #475569;
  background: #e2e8f0;
  border-color: #cbd5e1;
}

.plate-vehicle-status-badge-held,
.plate-vehicle-status-badge-lost {
  color: #ffffff;
  background: #dc2626;
  border-color: #b91c1c;
}

.plate-lookup-label {
  display: block;
  color: #6b768d;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.plate-lookup-no {
  display: block;
  color: #991b1b;
  font-size: 34px;
  line-height: 1.05;
}

.plate-lookup-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  gap: 10px;
  margin: 0;
}

.plate-lookup-grid div {
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #e5ebf6;
  border-radius: 12px;
  background: rgba(248, 251, 255, 0.86);
}

.plate-lookup-grid dt {
  margin: 0 0 3px;
  color: #657086;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.plate-lookup-grid dd {
  margin: 0;
  color: #172033;
  font-size: 16px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.plate-lookup-primary-field {
  grid-column: span 3;
}

.plate-lookup-contact-field,
.plate-lookup-secondary-field {
  grid-column: span 2;
}

.plate-lookup-status-field {
  border-width: 2px !important;
}

.plate-lookup-vehicle-field-active,
.plate-lookup-maintenance-field-current {
  border-color: #86efac !important;
  background: #f0fdf4 !important;
}

.plate-lookup-vehicle-field-active dt,
.plate-lookup-maintenance-field-current dt,
.plate-lookup-vehicle-field-active dd,
.plate-lookup-maintenance-field-current dd {
  color: #166534;
}

.plate-lookup-maintenance-field-upcoming {
  border-color: #fcd34d !important;
  background: #fffbeb !important;
}

.plate-lookup-maintenance-field-upcoming dt,
.plate-lookup-maintenance-field-upcoming dd {
  color: #92400e;
}

.plate-lookup-maintenance-field-missing,
.plate-lookup-vehicle-field-passive {
  border-color: #cbd5e1 !important;
  background: #f8fafc !important;
}

.plate-lookup-maintenance-field-overdue,
.plate-lookup-vehicle-field-held,
.plate-lookup-vehicle-field-lost {
  border-color: #ef4444 !important;
  background: #fef2f2 !important;
  box-shadow: inset 4px 0 0 #dc2626;
}

.plate-lookup-maintenance-field-overdue dt,
.plate-lookup-maintenance-field-overdue dd,
.plate-lookup-vehicle-field-held dt,
.plate-lookup-vehicle-field-held dd,
.plate-lookup-vehicle-field-lost dt,
.plate-lookup-vehicle-field-lost dd {
  color: #7f1d1d;
}

.plate-lookup-maintenance {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #e5ebf6;
  border-radius: 14px;
  background: linear-gradient(135deg, #fffdf4, #f8fbff);
}

.plate-lookup-maintenance-head,
.plate-lookup-actions,
.plate-lookup-history-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.plate-lookup-maintenance-head {
  justify-content: space-between;
}

.plate-lookup-maintenance-head a,
.plate-lookup-history-row a {
  color: #3056d3;
  font-weight: 850;
  text-decoration: none;
}

.plate-lookup-history-row {
  justify-content: space-between;
  padding: 8px 10px;
  border-radius: 10px;
  background: #ffffff;
}

.plate-lookup-history-row span {
  color: #172033;
  font-weight: 900;
}

.plate-lookup-history-row small {
  flex: 1;
  min-width: 0;
  color: #657086;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.plate-lookup-history-row em {
  color: #8a94a8;
  font-style: normal;
  font-weight: 750;
}

.plate-lookup-actions {
  flex-wrap: wrap;
}

.plate-critical-pulse {
  animation: plateCriticalPulse 1.15s ease-in-out infinite;
}

@keyframes plateCriticalPulse {
  0%,
  100% {
    opacity: 1;
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.28);
  }
  50% {
    opacity: 0.68;
    box-shadow: 0 0 0 6px rgba(220, 38, 38, 0.08);
  }
}

@keyframes plateCriticalCardPulse {
  0%,
  100% {
    box-shadow:
      0 0 0 2px rgba(239, 68, 68, 0.08),
      0 18px 42px rgba(127, 29, 29, 0.14);
  }
  50% {
    box-shadow:
      0 0 0 5px rgba(239, 68, 68, 0.16),
      0 18px 42px rgba(127, 29, 29, 0.2);
  }
}

@media (prefers-reduced-motion: reduce) {
  .plate-critical-pulse,
  .plate-status-legend-critical,
  .plate-lookup-card.plate-lookup-card-critical,
  .plate-lookup-card.plate-lookup-vehicle-held,
  .plate-lookup-card.plate-lookup-vehicle-lost {
    animation: none;
  }
}

.plate-violation-modal[hidden] {
  display: none;
}

.plate-violation-modal {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: grid;
  place-items: center;
  padding: clamp(16px, 3vw, 34px);
}

.plate-violation-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.26);
}

.plate-violation-panel {
  position: relative;
  display: grid;
  gap: 14px;
  width: min(920px, calc(100vw - 40px));
  max-height: min(92vh, 1040px);
  padding: 18px;
  overflow: auto;
  border: 1px solid #dbe4f2;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.22);
}

.plate-violation-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border: 1px solid #f1d28c;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff5d7 0%, #fffdf4 58%, #f8fbff 100%);
  box-shadow: inset 4px 0 0 #d18400;
}

.plate-violation-head strong {
  display: block;
  color: #172033;
  font-size: 24px;
  line-height: 1.1;
}

.plate-violation-context {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.plate-violation-context div {
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #f1d28c;
  border-radius: 12px;
  background: #fff9e8;
}

.plate-violation-context dt {
  margin: 0 0 3px;
  color: #657086;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.plate-violation-context dd {
  margin: 0;
  color: #172033;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.plate-violation-form {
  display: grid;
  gap: 12px;
}

.plate-form-section {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #e1e9f5;
  border-radius: 14px;
  background: #ffffff;
}

.plate-form-section-detection {
  border-color: #f1d28c;
  background: linear-gradient(135deg, #fff5d7 0%, #fffdf4 100%);
  box-shadow: inset 4px 0 0 #d18400;
}

.plate-form-section-decision {
  border-color: #f6d28b;
  background: linear-gradient(135deg, #fff8e8, #ffffff);
}

.plate-form-section-evidence {
  border-color: #dbe4f2;
  background: linear-gradient(135deg, #f8fafc, #ffffff);
}

.plate-form-section-title {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 900;
}

.plate-form-section-title span {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  color: #ffffff;
  background: #4f67f6;
  font-size: 12px;
}

.plate-form-section-decision .plate-form-section-title span {
  background: #d97706;
}

.plate-form-section-evidence .plate-form-section-title span {
  background: #64748b;
}

.plate-violation-form .grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.plate-violation-form .grid.two > label {
  min-width: 0;
}

.plate-violation-form .plate-person-company-row {
  margin-bottom: 18px;
  row-gap: 16px;
}

.plate-violation-form .plate-person-company-row .plate-person-match {
  grid-column: 1 / -1;
}

.plate-violation-form .plate-violation-type-row {
  grid-template-columns: minmax(0, 1.55fr) minmax(220px, 0.75fr);
}

.plate-violation-form .plate-violation-action-row {
  grid-template-columns: minmax(0, 0.82fr) minmax(280px, 1.18fr);
}

.plate-person-title-field {
  width: min(100%, calc(50% - 6px));
}

.plate-license-action-field {
  width: min(100%, calc(50% - 6px));
}

.plate-violation-form label {
  display: grid;
  gap: 6px;
  color: #172033;
  font-weight: 900;
}

.plate-violation-form input,
.plate-violation-form select,
.plate-violation-form textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid #d6e0f0;
  border-radius: 12px;
  padding: 9px 12px;
  color: #172033;
  background: #ffffff;
  font-weight: 800;
}

.plate-violation-form select {
  min-width: 0;
  max-width: none;
}

.plate-violation-form textarea {
  min-height: 110px;
  resize: vertical;
}

.ev-evidence-field {
  align-content: start;
}

.ev-evidence-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.ev-evidence-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 42px;
  padding: 8px 10px;
  overflow: hidden;
  border: 1px solid #cfd9ee;
  border-radius: 12px;
  color: #25324a;
  background: #f7faff;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.ev-evidence-action i {
  color: #5865f2;
}

.ev-evidence-action input[type="file"] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 0;
  border: 0;
  opacity: 0;
  cursor: pointer;
}

.ev-selected-files {
  display: grid;
  gap: 5px;
}

.ev-selected-files[hidden] {
  display: none;
}

.ev-selected-file-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 6px 7px;
  border: 1px solid #dbe4f2;
  border-radius: 9px;
  background: #f8fbff;
}

.ev-selected-file-row > span {
  min-width: 0;
  overflow: hidden;
  color: #475569;
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ev-selected-file-row button {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 28px;
  padding: 5px 7px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #991b1b;
  background: #fff1f2;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.plate-person-lookup-field {
  position: relative;
}

.plate-person-match {
  display: grid;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #f6c76f;
  border-radius: 10px;
  color: #7a3e00;
  background: #fff8e8;
  font-size: 13px;
  font-weight: 800;
}

.plate-person-match[hidden] {
  display: none;
}

.plate-person-apply {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 10px;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 9px;
  color: #172033;
  background: rgba(255, 255, 255, 0.72);
  text-align: left;
  cursor: pointer;
}

.plate-person-apply:hover {
  background: #ffffff;
}

.plate-person-apply strong,
.plate-person-apply span,
.plate-person-apply em {
  min-width: 0;
  overflow-wrap: anywhere;
}

.plate-person-apply strong {
  grid-column: 1 / -1;
  color: #7a3e00;
  font-size: 12px;
}

.plate-person-apply span {
  font-size: 14px;
  font-weight: 900;
}

.plate-person-apply em {
  grid-column: 1;
  color: #657086;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.plate-person-apply b {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: center;
  color: #4f46e5;
  font-size: 12px;
  white-space: nowrap;
}

.plate-person-apply small {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  color: #2563eb;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.plate-person-warning-list {
  display: grid;
  gap: 6px;
  margin-top: 2px;
}

.plate-person-warning-choice-note {
  color: #7a3e00;
  font-weight: 800;
  line-height: 1.2;
}

.plate-person-warning-list b {
  color: #7a3e00;
  font-size: 12px;
}

.plate-person-warning-list.processed b {
  color: #166534;
}

.plate-person-warning-row {
  display: grid;
  grid-template-columns: minmax(116px, auto) minmax(0, 1fr);
  gap: 2px 8px;
  padding: 7px 8px;
  border-radius: 8px;
  background: #ffffff;
}

.plate-person-warning-row.is-selectable {
  grid-template-columns: 24px minmax(128px, auto) minmax(0, 1fr);
  align-items: start;
  cursor: pointer;
}

.plate-person-warning-row.is-selectable input[type="checkbox"] {
  width: 18px;
  min-height: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: #5961f2;
}

.plate-person-warning-row.is-selectable em {
  grid-column: 3;
}

.plate-person-warning-list:not(.processed) .plate-person-warning-row {
  border: 1px solid #fecaca;
  background: #fff1f2;
}

.plate-person-warning-row.processed {
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
}

.plate-person-warning-row strong {
  color: #7a3e00;
  font-size: 12px;
}

.plate-person-warning-row.processed strong {
  color: #166534;
}

.plate-person-warning-row span {
  min-width: 0;
  color: #172033;
  font-size: 12px;
  overflow-wrap: anywhere;
  line-height: 1.18;
}

.plate-person-warning-row em {
  grid-column: 2;
  color: #657086;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
  overflow-wrap: anywhere;
  line-height: 1.18;
}

.plate-person-warning-row.processed em {
  color: #15803d;
}

.plate-person-suggestions {
  position: absolute;
  z-index: 8;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  display: grid;
  gap: 6px;
  max-height: 190px;
  overflow: auto;
  padding: 8px;
  border: 1px solid #d6e0f0;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.16);
}

.plate-person-suggestions[hidden] {
  display: none;
}

.plate-person-suggestion {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  width: 100%;
  padding: 9px 10px;
  border: 0;
  border-radius: 9px;
  color: #172033;
  background: #f8fbff;
  text-align: left;
  cursor: pointer;
}

.plate-person-suggestion:hover {
  background: #eef4ff;
}

.plate-person-suggestion strong,
.plate-person-suggestion span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.plate-person-suggestion strong {
  font-size: 14px;
}

.plate-person-suggestion span {
  grid-row: 2;
  color: #657086;
  font-size: 12px;
  font-weight: 850;
}

.plate-person-suggestion em {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  color: #4f46e5;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.plate-lookup-empty {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 28px 18px;
  text-align: center;
}

.plate-lookup-empty.compact {
  padding: 34px 18px;
}

.plate-lookup-empty i {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4f5ff7;
  background: #eef1ff;
  font-size: 22px;
}

.plate-lookup-empty strong {
  color: #172033;
  font-size: 22px;
}

.plate-lookup-empty p {
  margin: 0;
  color: #657086;
  font-weight: 700;
}

.ev-violation-page {
  padding: 14px 16px 18px;
}

.ev-lookup-hero {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(280px, 0.9fr);
  gap: 14px;
  align-items: center;
  margin-bottom: 12px;
}

.ev-result-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.ev-result-chip {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #e1e6f2;
  border-radius: 8px;
  background: #fff;
  color: #172033;
  text-decoration: none;
}

.ev-result-chip.active {
  border-color: #2563eb;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
}

.ev-result-chip span {
  color: #657086;
  font-size: 12px;
}

.ev-violation-layout {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr);
  gap: 14px;
  margin-top: 14px;
}

.ev-vehicle-card .plate-lookup-grid {
  margin-top: 10px;
}

.ev-person-check-form {
  margin-top: 10px;
}

.ev-warning-meter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 10px 0;
}

.ev-history-mini,
.ev-history-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid #e1e6f2;
}

.ev-history-mini {
  display: grid;
  justify-content: stretch;
  gap: 3px;
}

.ev-history-mini span,
.ev-history-row span,
.ev-history-row small {
  color: #657086;
  font-size: 12px;
}

.ev-violation-form {
  margin-top: 14px;
}

.ev-violation-form textarea {
  min-height: 96px;
}

.ev-warning-check {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
}

.plate-violation-form label.ev-warning-check {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  max-width: 100%;
  min-height: 38px;
  gap: 9px;
  padding: 6px 0;
}

.plate-violation-form label.ev-warning-check input[type="checkbox"] {
  flex: 0 0 20px;
  width: 20px;
  min-width: 20px;
  max-width: 20px;
  height: 20px;
  min-height: 20px;
  margin: 0;
  padding: 0;
  accent-color: #5865f2;
}

.plate-violation-form label.ev-warning-check span {
  min-width: 0;
  color: #172033;
  font-weight: 900;
}

.ev-history-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.badge.info {
  background: #e0f2fe;
  color: #0369a1;
}

.badge.danger {
  background: #fee2e2;
  color: #b91c1c;
}

.ev-license-alert {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  margin-top: 10px;
  padding: 16px 14px;
  border: 3px solid #991b1b;
  border-radius: 12px;
  background: #dc2626;
  color: #ffffff;
  text-align: center;
  font-weight: 950;
  box-shadow: 0 14px 30px rgba(220, 38, 38, 0.28);
}

.ev-license-alert i {
  flex: 0 0 auto;
  color: #ffffff;
  font-size: 1.65rem;
}

.ev-license-alert span,
.ev-license-alert strong,
.ev-license-alert em,
.ev-license-alert small {
  display: block;
  color: #ffffff;
  line-height: 1.12;
}

.ev-license-alert strong {
  font-size: 1.15rem;
}

.ev-license-alert em {
  margin-top: 4px;
  font-size: 1rem;
  font-style: normal;
}

.ev-license-alert small {
  margin-top: 6px;
  font-size: 0.82rem;
  font-weight: 900;
  opacity: 0.92;
}

.ev-license-pulse {
  animation: evLicensePulse 1.4s ease-in-out infinite;
}

@keyframes evLicensePulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.34);
  }

  50% {
    box-shadow: 0 0 0 6px rgba(220, 38, 38, 0);
  }
}

@media (max-width: 760px) {
  .entry-mode-form,
  .mobile-field-home {
    grid-template-columns: 1fr;
  }

  .entry-mode-card,
  .mobile-field-home {
    justify-items: center;
    text-align: center;
  }

  .mobile-field-home .btn {
    width: 100%;
  }

  .ev-license-alert {
    position: sticky;
    top: 8px;
    z-index: 5;
    min-height: 92px;
    margin: 12px 0;
    padding: 18px 12px;
  }

  .ev-license-alert i {
    font-size: 1.9rem;
  }

  .ev-license-alert strong {
    font-size: 1.28rem;
  }

  .ev-license-alert em {
    font-size: 1.08rem;
  }
}

.ev-driver-workspace {
  display: grid;
  gap: 14px;
  width: min(100%, 1360px);
  padding: 14px 16px 18px;
}

.ev-driver-table-wrap {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
}

.ev-driver-table {
  width: 100%;
  min-width: 1120px;
  table-layout: fixed;
}

.ev-driver-table .ev-driver-col-no {
  width: 4%;
}

.ev-driver-table .ev-driver-col-person {
  width: 16%;
}

.ev-driver-table .ev-driver-col-license {
  width: 18%;
}

.ev-driver-table .ev-driver-col-history {
  width: 22%;
}

.ev-driver-table .ev-driver-col-last {
  width: 15%;
}

.ev-driver-table .ev-driver-col-note {
  width: 15%;
}

.ev-driver-table .ev-driver-col-actions {
  width: 10%;
}

.ev-driver-table .ev-driver-row-no {
  width: 54px;
  min-width: 54px;
  text-align: center;
  color: #475569;
  font-weight: 900;
  white-space: nowrap;
}

.ev-driver-table th,
.ev-driver-table td {
  vertical-align: top;
  padding: 8px 10px;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: normal;
  line-height: 1.22;
}

.ev-driver-table th:last-child,
.ev-driver-table td:last-child {
  min-width: 0;
}

.ev-driver-table .icon-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 6px;
}

.ev-driver-table td strong,
.ev-driver-table td small {
  display: block;
}

.ev-driver-table td small {
  margin-top: 3px;
  color: #657086;
  font-weight: 800;
}

.ev-driver-history-cell {
  min-width: 0;
}

.ev-driver-metric-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.ev-driver-metric-strip span {
  display: grid;
  gap: 1px;
  min-width: 0;
  padding: 5px 7px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #f8fafc;
  color: #334155;
}

.ev-driver-metric-strip span.is-danger {
  border-color: #fecaca;
  background: #fff1f2;
  color: #991b1b;
}

.ev-driver-metric-strip span.is-success {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}

.ev-driver-metric-strip em {
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  color: inherit;
  opacity: 0.78;
}

.ev-driver-metric-strip strong {
  font-size: 0.96rem;
  line-height: 1.05;
  color: inherit;
}

.ev-driver-history-details {
  margin-top: 7px;
}

.ev-driver-history-details summary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: 0.76rem;
  font-weight: 950;
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.ev-driver-history-details summary::marker,
.ev-driver-history-details summary::-webkit-details-marker {
  display: none;
}

.ev-driver-history-details[open] summary {
  margin-bottom: 7px;
}

.ev-driver-history-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.ev-driver-history-list {
  display: grid;
  gap: 5px;
  align-content: start;
}

.ev-driver-history-list b {
  color: #334155;
  font-size: 0.78rem;
}

.ev-driver-history-list span {
  display: grid;
  gap: 1px;
  padding: 4px 6px;
  border-radius: 8px;
  min-width: 0;
}

.ev-driver-history-list-active span {
  border: 1px solid #fecaca;
  background: #fff1f2;
}

.ev-driver-history-list-kif span {
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
}

.ev-driver-history-list span strong {
  font-size: 0.8rem;
}

.ev-driver-history-list-active span strong {
  color: #991b1b;
}

.ev-driver-history-list-kif span strong {
  color: #166534;
}

.ev-driver-history-list span em {
  color: #475569;
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.ev-driver-history-list .ev-driver-warning-by {
  display: inline-flex;
  width: fit-content;
  margin-top: 3px;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: 0.7rem;
  line-height: 1.2;
  font-weight: 900;
}

.ev-driver-warning-by-mudur {
  background: #fee2e2;
  color: #991b1b;
}

.ev-driver-warning-by-sef {
  background: #fef3c7;
  color: #92400e;
}

.ev-driver-warning-by-personel {
  background: #e0f2fe;
  color: #075985;
}

@media (max-width: 900px) {
  .ev-driver-history-columns {
    grid-template-columns: 1fr;
  }
}

.module-table.ev-driver-table .ev-driver-row.is-held td {
  background: #fff1f2;
  border-top: 1px solid #fecaca;
}

.module-table.ev-driver-table .ev-driver-row.is-returned td {
  background: #f0fdf4;
  border-top: 1px solid #bbf7d0;
}

.ev-driver-note-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 7px;
  align-items: center;
}

.ev-driver-note-form textarea {
  width: 100%;
  min-height: 42px;
  max-height: 80px;
  resize: vertical;
  padding: 8px 10px;
}

.ev-driver-note-form .icon-btn-mini {
  justify-self: center;
}

.ev-driver-note-form:not(:has(.icon-btn-mini)) {
  grid-template-columns: minmax(0, 1fr);
}

.ev-license-return-form {
  display: grid;
  gap: 7px;
  margin-top: 9px;
  max-width: 280px;
}

.ev-license-return-details {
  margin-top: 7px;
}

.ev-license-return-details summary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: #fff7ed;
  color: #9a3412;
  font-size: 0.76rem;
  font-weight: 950;
  cursor: pointer;
  list-style: none;
  user-select: none;
}

.ev-license-return-details summary::marker,
.ev-license-return-details summary::-webkit-details-marker {
  display: none;
}

.ev-license-return-form input {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #fecaca;
  border-radius: 10px;
  background: #fff;
  color: #172033;
  font-weight: 800;
}

.ev-license-return-form .btn {
  width: fit-content;
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 10px;
  background: #16a34a;
  box-shadow: 0 8px 18px rgba(22, 163, 74, 0.2);
}

.ev-license-return-form .btn:hover {
  background: #15803d;
}

.ev-warning-workspace {
  display: grid;
  gap: 14px;
  width: min(calc(100% - 32px), 1360px);
  max-width: 1360px;
  margin-right: auto;
  padding: 14px 16px 18px;
}

.ev-warning-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ev-warning-summary span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px 12px;
  border: 1px solid #dfe7f4;
  border-radius: 999px;
  background: #f8fafc;
  color: #657086;
  font-weight: 800;
}

.ev-warning-summary strong {
  color: #172033;
  font-variant-numeric: tabular-nums;
}

.ev-warning-summary em {
  font-style: normal;
}

.ev-warning-filter-form {
  display: grid;
  grid-template-columns: minmax(300px, 1.3fr) minmax(190px, 0.78fr) minmax(180px, 0.72fr) auto;
  gap: 10px;
  align-items: end;
}

.ev-warning-filter-form label {
  margin: 0;
}

.ev-warning-filter-actions {
  align-items: end;
  margin: 0;
}

.ev-warning-table {
  min-width: 1180px;
}

.ev-warning-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

.ev-warning-table th,
.ev-warning-table td {
  vertical-align: top;
}

.ev-warning-table td strong,
.ev-warning-table td small {
  display: block;
}

.ev-warning-table td small {
  margin-top: 3px;
  color: #657086;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

.ev-warning-row.is-active td {
  background: #fff1f2;
}

.ev-warning-row.is-recommended td {
  background: #fffbeb;
}

.ev-warning-row.is-processed td {
  background: #f0fdf4;
}

.module-table.ev-warning-table .ev-warning-row.is-active td {
  background: #fff1f2;
  border-top: 1px solid #fecaca;
  border-bottom: 1px solid #fecaca;
}

.module-table.ev-warning-table .ev-warning-row.is-recommended td {
  background: #fffbeb;
  border-top: 1px solid #fde68a;
  border-bottom: 1px solid #fde68a;
}

.module-table.ev-warning-table .ev-warning-row.is-processed td {
  background: #f0fdf4;
  border-top: 1px solid #bbf7d0;
  border-bottom: 1px solid #bbf7d0;
}

.module-table.ev-warning-table .ev-warning-row.is-license-held td {
  background: #fff7ed;
  border-top: 2px solid #dc2626;
  border-bottom: 2px solid #dc2626;
}

.module-table.ev-warning-table .ev-warning-row td:first-child {
  border-left: 4px solid transparent;
}

.module-table.ev-warning-table .ev-warning-row.is-active td:first-child {
  border-left-color: #ef4444;
}

.module-table.ev-warning-table .ev-warning-row.is-recommended td:first-child {
  border-left-color: #f59e0b;
}

.module-table.ev-warning-table .ev-warning-row.is-processed td:first-child {
  border-left-color: #22c55e;
}

.module-table.ev-warning-table .ev-warning-row.is-license-held td:first-child {
  border-left: 8px solid #dc2626;
}

.ev-license-critical {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: fit-content;
  max-width: 240px;
  min-height: 66px;
  margin-top: 8px;
  padding: 12px 14px;
  border: 2px solid #dc2626;
  border-radius: 10px;
  background: #dc2626;
  color: #ffffff;
  text-align: center;
  box-shadow: 0 10px 22px rgba(220, 38, 38, 0.28);
  animation: evLicenseCriticalPulse 1.55s ease-in-out infinite;
}

.ev-license-critical i {
  color: #ffffff;
  font-size: 1rem;
}

.ev-license-critical span,
.ev-license-critical strong,
.ev-license-critical em {
  display: block;
  color: #ffffff;
  line-height: 1.18;
}

.ev-license-critical strong {
  font-size: 0.78rem;
  font-weight: 950;
}

.ev-license-critical em {
  margin-top: 3px;
  font-size: 0.73rem;
  font-style: normal;
  font-weight: 800;
  opacity: 0.95;
}

@keyframes evLicenseCriticalPulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.32), 0 10px 22px rgba(220, 38, 38, 0.28);
  }

  50% {
    box-shadow: 0 0 0 7px rgba(220, 38, 38, 0), 0 10px 22px rgba(220, 38, 38, 0.28);
  }
}

.ev-kif-group-link,
.ev-kif-group-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  margin-top: 4px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
}

.ev-kif-group-link {
  padding: 3px 8px;
  border: 1px solid #86efac;
  background: #dcfce7;
  color: #166534;
  text-decoration: none;
}

.ev-kif-group-badge {
  padding: 3px 7px;
  background: #e0f2fe;
  color: #0369a1;
}

.ev-warning-evidence-links {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.ev-warning-evidence-links a {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #eef2ff;
  color: #354ac9;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.ev-warning-evidence-link.is-image {
  min-height: 42px;
  padding: 4px 8px 4px 4px;
}

.ev-warning-evidence-link img {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 8px;
  object-fit: cover;
  border: 1px solid #cbd5e1;
  background: #fff;
}

.ev-warning-evidence-cell {
  min-width: 190px;
}

.ev-warning-no-evidence {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 26px;
  padding: 4px 9px;
  border: 1px dashed #cbd5e1;
  border-radius: 999px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}

.ev-evidence-editor {
  margin-top: 7px;
}

.ev-evidence-editor summary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  cursor: pointer;
  font-size: 12px;
  font-weight: 950;
  list-style: none;
}

.ev-evidence-editor summary::-webkit-details-marker {
  display: none;
}

.ev-evidence-editor[open] summary {
  border-color: #818cf8;
  background: #eef2ff;
  color: #3730a3;
}

.ev-evidence-update-form {
  display: grid;
  gap: 9px;
  width: min(340px, 78vw);
  margin-top: 8px;
  padding: 10px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #f8fbff;
  box-shadow: 0 12px 24px rgba(79, 70, 229, 0.12);
}

.ev-evidence-existing-list,
.ev-evidence-edit-grid {
  display: grid;
  gap: 7px;
}

.ev-evidence-existing-list strong {
  color: #172033;
  font-size: 12px;
  font-weight: 950;
}

.ev-evidence-existing-list small {
  margin: 0;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}

.ev-evidence-existing {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 7px;
  align-items: start;
  min-height: 28px;
  padding: 6px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #ffffff;
  color: #334155;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
}

.ev-evidence-existing input {
  margin-top: 2px;
}

.ev-evidence-existing span {
  overflow-wrap: anywhere;
}

.ev-evidence-existing em {
  align-self: center;
  padding: 2px 7px;
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}

.ev-evidence-upload-row {
  display: grid;
  gap: 5px;
  margin: 0;
  color: #172033;
  font-size: 12px;
  font-weight: 950;
}

.ev-evidence-upload-row input[type="file"] {
  width: 100%;
  min-height: 36px;
  padding: 7px;
  border: 1px solid #dbe3f0;
  border-radius: 8px;
  background: #ffffff;
  color: #334155;
  font-size: 12px;
}

.ev-evidence-save-btn {
  width: fit-content;
  min-height: 34px;
  padding: 7px 11px;
  border-radius: 9px;
  font-size: 12px;
}

.icon-file {
  background: #dcfce7;
  color: #166534;
}

@media (max-width: 1180px) {
  .plate-lookup-shell {
    width: 100%;
  }

  .plate-lookup-hero,
  .plate-lookup-grid,
  .ev-lookup-hero,
  .ev-violation-layout {
    grid-template-columns: 1fr 1fr;
  }

  .plate-lookup-primary-field,
  .plate-lookup-contact-field,
  .plate-lookup-secondary-field {
    grid-column: span 1;
  }
}

@media (max-width: 760px) {
  .plate-lookup-hero,
  .plate-lookup-form,
  .plate-lookup-grid,
  .ev-lookup-hero,
  .ev-violation-layout {
    grid-template-columns: 1fr;
  }

  .plate-lookup-primary-field,
  .plate-lookup-contact-field,
  .plate-lookup-secondary-field {
    grid-column: 1 / -1;
  }

  .plate-lookup-hero {
    padding: 14px;
  }

  .plate-module-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    overflow: visible;
    white-space: normal;
  }

  .plate-module-tabs .module-tab {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 8px 9px;
    font-size: 0.86rem;
    line-height: 1.15;
  }

  .plate-module-tabs .module-tab span {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .plate-module-tabs .module-tab em {
    flex: 0 0 auto;
  }

  .ev-warning-filter-form {
    grid-template-columns: 1fr;
  }

  .plate-lookup-title {
    align-items: flex-start;
  }

  .plate-lookup-card-head,
  .plate-lookup-maintenance-head,
  .plate-lookup-history-row,
  .ev-history-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .plate-lookup-actions .btn,
  .plate-lookup-form .btn {
    width: 100%;
    justify-content: center;
  }

  .plate-violation-panel {
    width: calc(100vw - 20px);
    padding: 14px;
  }

  .plate-violation-head,
  .plate-violation-context {
    grid-template-columns: 1fr;
  }

  .plate-violation-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .plate-person-title-field {
    width: 100%;
  }

  .plate-violation-form .plate-violation-type-row,
  .plate-violation-form .plate-person-company-row,
  .plate-violation-form .plate-violation-action-row {
    grid-template-columns: 1fr;
  }

  .plate-violation-form .plate-person-company-row .plate-person-match {
    grid-column: 1;
  }

  .plate-person-warning-row {
    grid-template-columns: 1fr;
  }

  .plate-person-warning-row em {
    grid-column: 1;
  }

  .plate-person-suggestions {
    position: static;
    max-height: none;
    margin-top: 6px;
    box-shadow: none;
  }
}

@media (max-width: 900px) {
  .plate-violation-modal {
    padding: 8px;
  }

  .plate-violation-panel {
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    max-height: calc(100vh - 16px);
    padding: 10px;
    gap: 10px;
    border-radius: 14px;
  }

  .plate-violation-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 10px;
    padding-bottom: 9px;
  }

  .plate-violation-head strong {
    font-size: 1.35rem;
    line-height: 1.12;
    overflow-wrap: anywhere;
  }

  .plate-violation-head .btn {
    min-height: 40px;
    padding: 8px 10px;
    white-space: nowrap;
  }

  .plate-violation-context {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .plate-violation-context div {
    padding: 8px 10px;
  }

  .plate-violation-form {
    gap: 10px;
  }

  .plate-form-section {
    gap: 10px;
    padding: 10px;
    border-radius: 12px;
  }

  .plate-form-section-title {
    font-size: 0.95rem;
  }

  .plate-form-section-title span {
    width: 28px;
    height: 28px;
  }

  .plate-violation-form .grid.two,
  .plate-violation-form .grid.three,
  .plate-violation-form .plate-violation-type-row,
  .plate-violation-form .plate-person-company-row,
  .plate-violation-form .plate-violation-action-row {
    grid-template-columns: 1fr !important;
    gap: 9px;
  }

  .plate-violation-form .plate-person-company-row {
    margin-bottom: 0;
  }

  .plate-violation-form .plate-person-company-row .plate-person-match {
    grid-column: 1;
  }

  .plate-person-title-field,
  .plate-license-action-field {
    width: 100%;
  }

  .plate-violation-form input,
  .plate-violation-form select,
  .plate-violation-form textarea {
    min-height: 42px;
    padding: 8px 10px;
    font-size: 16px;
  }

  .plate-violation-form textarea {
    min-height: 92px;
  }

  .plate-violation-form label.ev-warning-check {
    width: 100%;
    padding: 7px 9px;
    border: 1px solid #f6d28b;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.72);
  }

  .ev-evidence-actions {
    grid-template-columns: 1fr 1fr;
  }
}

form .grid.three.holiday-shift-meta-grid {
  grid-template-columns: minmax(240px, 1.1fr) minmax(200px, 0.8fr) minmax(240px, 1fr) minmax(280px, 1.25fr);
  align-items: end;
  gap: 18px 18px;
  width: 100%;
  max-width: 1300px;
  padding: 18px;
  border: 1px solid #c7d2fe;
  border-top: 5px solid #6366f1;
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.95) 0%, rgba(238, 242, 255, 0.9) 52%, rgba(255, 247, 237, 0.88) 100%);
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.08);
}

form .grid.three.holiday-shift-meta-grid label,
form .grid.three.holiday-shift-meta-grid input,
form .grid.three.holiday-shift-meta-grid select {
  min-width: 0;
}

form .grid.three.holiday-shift-meta-grid input,
form .grid.three.holiday-shift-meta-grid select {
  width: 100%;
  max-width: 100%;
}

form .grid.three.holiday-shift-meta-grid label {
  font-size: 0.94rem;
  line-height: 1.15;
  text-align: center;
  justify-self: stretch;
}

form .grid.three.holiday-shift-meta-grid > label:not(.holiday-manual-toggle) {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 10px;
  min-height: 94px;
  padding: 14px 16px 16px;
  border: 2px solid #d97706;
  border-left-width: 5px;
  border-radius: 16px;
  background: linear-gradient(180deg, #fffdf2 0%, #fffbeb 100%);
  box-shadow: 0 12px 24px rgba(217, 119, 6, 0.14);
}

form .grid.three.holiday-shift-meta-grid .holiday-field-title {
  display: block;
  width: 100%;
  min-height: 1.15em;
  text-align: center;
  line-height: 1.15;
  color: #172554;
  font-weight: 950;
}

form .grid.three.holiday-shift-meta-grid input:not([type="checkbox"]),
form .grid.three.holiday-shift-meta-grid select {
  min-height: 48px;
  border: 2px solid #f59e0b;
  background: #fffef8;
  color: #0f172a;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

form .grid.three.holiday-shift-meta-grid input:not([type="checkbox"]):focus,
form .grid.three.holiday-shift-meta-grid select:focus {
  border-color: #6366f1;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.18);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(1) {
  border-color: #4f46e5;
  background: linear-gradient(180deg, #eef2ff 0%, #f8fbff 100%);
  box-shadow: 0 12px 24px rgba(79, 70, 229, 0.14);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(1) input {
  border-color: #6366f1;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(2),
form .grid.three.holiday-shift-meta-grid > label:nth-child(3),
form .grid.three.holiday-shift-meta-grid > label:nth-child(4) {
  border-color: #0f9f83;
  background: linear-gradient(180deg, #ecfdf5 0%, #f0fdfa 100%);
  box-shadow: 0 12px 24px rgba(15, 159, 131, 0.12);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(2) select,
form .grid.three.holiday-shift-meta-grid > label:nth-child(3) select,
form .grid.three.holiday-shift-meta-grid > label:nth-child(4) select {
  border-color: #14b8a6;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(5),
form .grid.three.holiday-shift-meta-grid > label:nth-child(7) {
  border-color: #2563eb;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.13);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(5) input,
form .grid.three.holiday-shift-meta-grid > label:nth-child(7) input {
  border-color: #3b82f6;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(6) {
  border-color: #d97706;
  background: linear-gradient(180deg, #fffbeb 0%, #fff7ed 100%);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(6) input {
  border-color: #f59e0b;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(5) {
  width: 220px;
  justify-self: start;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(5) input {
  min-width: 0;
  width: 100%;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(6),
form .grid.three.holiday-shift-meta-grid > label:nth-child(7),
form .grid.three.holiday-shift-meta-grid > label:nth-child(8) {
  transform: none;
}

form .grid.three.holiday-shift-meta-grid input,
form .grid.three.holiday-shift-meta-grid select {
  text-align: center;
  text-align-last: center;
}

.holiday-manual-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 54px;
  padding: 0 16px;
  border: 2px solid #818cf8;
  border-radius: 16px;
  background: linear-gradient(135deg, #eef2ff 0%, #e0f2fe 100%);
  color: #1e1b4b;
  font-size: 0.9rem;
  font-weight: 850;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(99, 102, 241, 0.14);
}

.holiday-manual-toggle-field {
  align-self: end;
  margin-top: 0;
  width: 100%;
  max-width: 340px;
  justify-self: start;
}

.holiday-accrual-toggle-field {
  align-self: end;
  justify-content: flex-start;
  gap: 8px;
  min-height: 64px;
  padding: 10px 12px;
  overflow: hidden;
  border-color: #f97316;
  background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
  color: #7c2d12;
  box-shadow: 0 12px 24px rgba(249, 115, 22, 0.14);
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(7) {
  width: 230px;
  justify-self: start;
}

form .grid.three.holiday-shift-meta-grid > label:nth-child(7) input {
  min-width: 0;
  width: 100%;
}

form .grid.three.holiday-shift-meta-grid .holiday-manual-toggle input[type="checkbox"] {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  accent-color: #5b5ff0;
}

.holiday-manual-toggle span {
  display: inline-block;
  white-space: nowrap;
  line-height: 1.2;
  text-align: center;
}

.holiday-manual-toggle.holiday-accrual-toggle-field {
  justify-content: flex-start;
  max-width: 100%;
  padding: 10px 12px;
  gap: 8px;
  overflow: hidden;
}

.holiday-manual-toggle.holiday-accrual-toggle-field span {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: left;
  line-height: 1.18;
}

.holiday-day-plan-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  max-width: 1300px;
  margin: 14px 0 18px;
  padding: 12px 14px;
  border: 2px solid #818cf8;
  border-left: 6px solid #4f46e5;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(238, 242, 255, 0.98), rgba(219, 234, 254, 0.82));
  box-shadow: 0 12px 24px rgba(79, 70, 229, 0.1);
}

@media (max-width: 1180px) {
  form .grid.three.holiday-shift-meta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
}

@media (max-width: 720px) {
  form .grid.three.holiday-shift-meta-grid {
    grid-template-columns: 1fr;
  }

  form .grid.three.holiday-shift-meta-grid > label:nth-child(5),
  form .grid.three.holiday-shift-meta-grid > label:nth-child(6),
  form .grid.three.holiday-shift-meta-grid > label:nth-child(7),
  form .grid.three.holiday-shift-meta-grid > label:nth-child(8),
  form .grid.three.holiday-shift-meta-grid > label:nth-child(9),
  .holiday-accrual-toggle-field,
  .holiday-manual-toggle-field {
    transform: none;
    width: 100%;
    max-width: 100%;
  }

  .holiday-manual-toggle span {
    white-space: normal;
  }
}

.holiday-plan-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid #a5b4fc;
  border-radius: 999px;
  background: #ffffff;
  color: #1f2937;
  font-size: 0.82rem;
  font-weight: 800;
  box-shadow: 0 6px 14px rgba(79, 70, 229, 0.08);
}

.holiday-plan-chip em {
  min-width: 0;
}

.holiday-plan-chip strong {
  color: #1e3a8a;
  font-weight: 900;
}

.holiday-plan-chip em {
  color: #64748b;
  font-style: normal;
}

.holiday-plan-chip b {
  border-radius: 999px;
  background: #c7d2fe;
  color: #312e81;
  padding: 3px 7px;
  font-size: 0.76rem;
}

.holiday-plan-chip.is-muted {
  color: #64748b;
  background: rgba(255, 255, 255, 0.78);
}

.holiday-manual-plan-wrap[hidden] {
  display: none !important;
}

.holiday-day-plan-table {
  width: max-content;
  min-width: 172ch;
  table-layout: fixed;
}

.holiday-day-plan-table th {
  white-space: normal;
  line-height: 1.15;
}

.holiday-day-plan-table input[type="date"],
.holiday-day-plan-table input[type="time"] {
  width: 100%;
  min-width: 0;
}

.holiday-day-plan-table th:nth-child(2),
.holiday-day-plan-table td:nth-child(2) {
  width: 12ch;
  max-width: 12ch;
  white-space: nowrap;
}

.holiday-day-plan-table th:nth-child(3),
.holiday-day-plan-table td:nth-child(3) {
  width: 8ch;
  max-width: 8ch;
  text-align: center;
}

.holiday-day-plan-table th:nth-child(4),
.holiday-day-plan-table td:nth-child(4),
.holiday-day-plan-table th:nth-child(5),
.holiday-day-plan-table td:nth-child(5) {
  width: 18ch;
  max-width: 18ch;
}

.holiday-day-plan-table th:nth-child(6),
.holiday-day-plan-table td:nth-child(6),
.holiday-day-plan-table th:nth-child(7),
.holiday-day-plan-table td:nth-child(7) {
  width: 18ch;
  max-width: 18ch;
}

.holiday-day-plan-table th:nth-child(8),
.holiday-day-plan-table td:nth-child(8) {
  width: 13ch;
  max-width: 13ch;
  text-align: center;
}

.holiday-day-plan-table th:nth-child(9),
.holiday-day-plan-table td:nth-child(9) {
  width: 34ch;
  max-width: 34ch;
}

.holiday-day-plan-table thead th,
.holiday-personnel-table thead th {
  background: linear-gradient(180deg, #dbeafe 0%, #e0e7ff 100%) !important;
  color: #1e3a8a;
  border-bottom: 1px solid #bfdbfe;
}

.holiday-day-plan-table tbody tr:nth-child(odd) td,
.holiday-personnel-table tbody tr:nth-child(odd) td {
  background: #ffffff !important;
}

.holiday-day-plan-table tbody tr:nth-child(even) td,
.holiday-personnel-table tbody tr:nth-child(even) td {
  background: #eef2ff !important;
}

.holiday-day-plan-table tbody tr:hover td,
.holiday-personnel-table tbody tr:hover td {
  background: #dbeafe !important;
}

.holiday-day-plan-table tbody tr td:first-child,
.holiday-personnel-table tbody tr td:first-child {
  border-left-color: #4f46e5 !important;
}

.day-overtime-text {
  display: inline-block;
  min-width: 7ch;
  font-weight: 800;
  color: #2b4fce;
}

.holiday-personnel-table {
  width: max-content;
  min-width: 118ch;
  table-layout: fixed;
}

.holiday-personnel-table th:nth-child(3),
.holiday-personnel-table td:nth-child(3) {
  width: 22ch;
  max-width: 22ch;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.holiday-personnel-table th:nth-child(5),
.holiday-personnel-table td:nth-child(5),
.holiday-personnel-table th:nth-child(6),
.holiday-personnel-table td:nth-child(6) {
  width: 24ch;
  max-width: 24ch;
}

.holiday-personnel-table tbody tr.holiday-personnel-unit-row td {
  background: linear-gradient(90deg, #e0f2fe 0%, #edf7ff 52%, #f8fbff 100%) !important;
  border-top: 1px solid #bae6fd;
  border-bottom: 1px solid #bae6fd;
  border-left-color: #0ea5e9 !important;
  color: #184e77;
  font-weight: 900;
  letter-spacing: 0;
  padding: 0.72rem 1rem;
}

.holiday-personnel-unit-row span {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

.holiday-personnel-unit-row i {
  color: #2563eb;
}

.holiday-personnel-unit-row em {
  display: inline-flex;
  align-items: center;
  margin-left: 0.75rem;
  padding: 0.16rem 0.58rem;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 0.86rem;
  font-style: normal;
  font-weight: 900;
}

.module-table tbody tr td:first-child {
  border-left: 4px solid transparent;
}

.module-table tbody tr:nth-child(even) td {
  background: var(--zebra-row-module);
}

.module-table tbody tr:hover td {
  background: var(--zebra-hover-module);
}

.module-table tbody tr:hover td:first-child {
  border-left-color: #ef4444;
}

.module-table.plate-query-table tbody tr.plate-status-current td {
  background: #f0fdf4;
}

.module-table.plate-query-table tbody tr.plate-status-overdue td {
  background: #fff1f2;
}

.module-table.plate-query-table tbody tr.plate-status-upcoming td {
  background: #fffbeb;
}

.module-table.plate-query-table tbody tr.plate-status-missing td {
  background: #f8fafc;
}

.module-table.plate-query-table tbody tr.selected-row td {
  background: linear-gradient(90deg, #e0e7ff 0%, #eef2ff 55%, #f8fbff 100%);
  border-top-color: #a5b4fc;
  border-bottom-color: #a5b4fc;
  box-shadow: inset 0 1px 0 #c7d2fe, inset 0 -1px 0 #c7d2fe;
}

.module-table.plate-query-table tbody tr.plate-status-current td:first-child {
  border-left-color: #22c55e;
}

.module-table.plate-query-table tbody tr.plate-status-overdue td:first-child {
  border-left-color: #dc2626;
}

.module-table.plate-query-table tbody tr.plate-status-upcoming td:first-child {
  border-left-color: #d97706;
}

.module-table.plate-query-table tbody tr.plate-status-missing td:first-child {
  border-left-color: #94a3b8;
}

.module-table.plate-query-table tbody tr.selected-row td:first-child {
  border-left-color: #4f67f6;
}

.module-table.plate-query-table tbody td {
  border-bottom: 1px solid rgba(148, 163, 184, 0.42);
}

.module-table.plate-query-table tbody tr + tr td {
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.module-table.plate-query-table tbody td.plate-row-no {
  border-right: 1px solid rgba(100, 116, 139, 0.32);
  box-shadow: inset 0 -1px 0 rgba(100, 116, 139, 0.24);
  font-weight: 800;
}

.module-table.assignment-history-table tbody tr.assignment-row-odd td {
  background: #ffffff;
}

.module-table.assignment-history-table tbody tr.assignment-row-even td {
  background: var(--zebra-row-module);
}

.module-table.assignment-history-table tbody tr.assignment-row-odd:hover td,
.module-table.assignment-history-table tbody tr.assignment-row-even:hover td {
  background: var(--zebra-hover-module);
}

.module-table.assignment-history-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.module-table.assignment-history-table th:nth-child(1),
.module-table.assignment-history-table td:nth-child(1) {
  width: 4%;
}

.module-table.assignment-history-table th:nth-child(2),
.module-table.assignment-history-table td:nth-child(2) {
  width: 25%;
}

.module-table.assignment-history-table th:nth-child(3),
.module-table.assignment-history-table td:nth-child(3) {
  width: 17%;
}

.module-table.assignment-history-table th:nth-child(4),
.module-table.assignment-history-table td:nth-child(4) {
  width: 14%;
  text-align: left;
}

.module-table.assignment-history-table th:nth-child(5),
.module-table.assignment-history-table td:nth-child(5) {
  width: 16%;
}

.module-table.assignment-history-table th:nth-child(6),
.module-table.assignment-history-table td:nth-child(6) {
  width: 10%;
}

.module-table.assignment-history-table th:nth-child(7),
.module-table.assignment-history-table td:nth-child(7) {
  width: 14%;
}

.module-table.assignment-history-table .assignment-history-actions-cell {
  text-align: center;
}

.module-table.assignment-history-table .assignment-history-actions {
  justify-content: center;
  flex-wrap: nowrap;
}

.module-table.assignment-history-table .assignment-history-actions form {
  flex: 0 0 auto;
}

.vardiya-zimmet-filter-panel {
  display: grid;
  gap: 12px;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.96), rgba(255, 255, 255, 0.98) 48%, rgba(236, 253, 245, 0.72)),
    #ffffff;
}

.vardiya-zimmet-filter-form {
  display: grid;
  grid-template-columns: minmax(160px, 0.75fr) minmax(160px, 0.75fr) minmax(220px, 1fr) minmax(300px, 1.15fr) auto;
  align-items: end;
  gap: 12px;
}

.vardiya-zimmet-filter-form label {
  width: 100%;
  min-width: 0;
}

.vardiya-zimmet-filter-form select,
.vardiya-zimmet-filter-form input:not([type="checkbox"]):not([type="radio"]) {
  width: 100%;
  max-width: none;
}

.vardiya-zimmet-filter-form .zimmet-filter-actions {
  align-self: end;
  justify-content: flex-start;
}

.vardiya-zimmet-filter-form .btn-primary {
  border: 0;
  background: linear-gradient(135deg, #4f46e5, #2563eb);
  box-shadow: 0 10px 18px rgba(37, 99, 235, 0.18);
}

.vardiya-zimmet-filter-form .btn-primary:hover {
  background: linear-gradient(135deg, #4338ca, #1d4ed8);
  transform: translateY(-1px);
}

.zimmet-operation-filter-form {
  display: flex;
  align-items: end;
  gap: 8px;
  flex-wrap: wrap;
}

.zimmet-operation-filter-form label {
  position: relative;
  display: grid;
  gap: 6px;
  width: auto;
  min-width: 0;
  border: 1px solid rgba(203, 213, 225, 0.78);
  border-left-width: 4px;
  border-radius: 8px;
  padding: 8px 10px 10px;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.05);
}

.zimmet-operation-filter-form label::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}

.zimmet-operation-filter-form label > select,
.zimmet-operation-filter-form label > input:not([type="checkbox"]):not([type="radio"]) {
  min-height: 38px;
  background: rgba(255, 255, 255, 0.9);
}

.zimmet-operation-filter-form .operation-filter-date {
  flex: 0 0 19ch;
  border-left-color: #2563eb;
  background: linear-gradient(135deg, rgba(219, 234, 254, 0.72), rgba(255, 255, 255, 0.94));
  color: #1e3a8a;
}

.zimmet-operation-filter-form .operation-filter-team {
  flex: 0 0 18ch;
  border-left-color: #7c3aed;
  background: linear-gradient(135deg, rgba(237, 233, 254, 0.76), rgba(255, 255, 255, 0.94));
  color: #4c1d95;
}

.zimmet-operation-filter-form .operation-filter-shift {
  flex: 0 0 27ch;
  border-left-color: #0f766e;
  background: linear-gradient(135deg, rgba(204, 251, 241, 0.62), rgba(255, 255, 255, 0.94));
  color: #115e59;
}

.zimmet-operation-filter-form .operation-filter-search {
  flex: 0 0 30ch;
  min-width: 24ch;
  border-left-color: #d97706;
  background: linear-gradient(135deg, rgba(254, 243, 199, 0.72), rgba(255, 255, 255, 0.94));
  color: #92400e;
}

.zimmet-operation-filter-form select,
.zimmet-operation-filter-form input:not([type="checkbox"]):not([type="radio"]) {
  max-width: none;
}

.zimmet-operation-filter-form .zimmet-filter-actions {
  align-self: end;
  display: inline-flex;
  gap: 8px;
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.zimmet-operation-filter-form .zimmet-filter-actions .btn {
  min-height: 42px;
}

.zimmet-operation-filter-form .operation-filter-search input {
  padding-right: 34px;
}

.zimmet-operation-filter-empty {
  display: none;
}

.zimmet-operation-filter-empty.is-visible {
  display: table-row;
}

.zimmet-operation-filter-empty td {
  color: #64748b;
  font-weight: 900;
  text-align: center;
}

.vardiya-zimmet-window {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #c7d2fe;
  border-left: 6px solid #4f46e5;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.98), rgba(248, 250, 252, 0.98) 54%, rgba(240, 253, 244, 0.9)),
    #f8fbff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82), 0 10px 24px rgba(79, 70, 229, 0.08);
  color: #172033;
  font-weight: 800;
}

.vardiya-zimmet-window-main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.vardiya-zimmet-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: #4f46e5;
  color: #ffffff;
  box-shadow: 0 8px 16px rgba(79, 70, 229, 0.22);
}

.vardiya-zimmet-window strong {
  color: #111827;
  font-size: 1.02rem;
}

.vardiya-zimmet-separator {
  width: 1px;
  height: 24px;
  background: #c7d2fe;
}

.vardiya-zimmet-range {
  color: #4b5563;
  font-weight: 700;
}

.vardiya-zimmet-window em {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid #86efac;
  border-radius: 999px;
  background: linear-gradient(135deg, #dcfce7, #bbf7d0);
  color: #14532d;
  font-style: normal;
  box-shadow: 0 8px 18px rgba(22, 163, 74, 0.13);
}

.module-table.vardiya-zimmet-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.module-table.vardiya-zimmet-table tbody tr.assignment-row-odd td {
  background: #ffffff;
}

.module-table.vardiya-zimmet-table tbody tr.assignment-row-even td {
  background: var(--zebra-row-module);
}

.module-table.vardiya-zimmet-table tbody tr.assignment-row-odd:hover td,
.module-table.vardiya-zimmet-table tbody tr.assignment-row-even:hover td {
  background: var(--zebra-hover-module);
}

.module-table.vardiya-zimmet-table th:nth-child(1),
.module-table.vardiya-zimmet-table td:nth-child(1) {
  width: 3%;
}

.module-table.vardiya-zimmet-table th:nth-child(2),
.module-table.vardiya-zimmet-table td:nth-child(2) {
  width: 13%;
}

.module-table.vardiya-zimmet-table th:nth-child(3),
.module-table.vardiya-zimmet-table td:nth-child(3) {
  width: 8%;
}

.module-table.vardiya-zimmet-table th:nth-child(4),
.module-table.vardiya-zimmet-table td:nth-child(4) {
  width: 24%;
}

.module-table.vardiya-zimmet-table th:nth-child(5),
.module-table.vardiya-zimmet-table td:nth-child(5) {
  width: 16%;
}

.module-table.vardiya-zimmet-table th:nth-child(6),
.module-table.vardiya-zimmet-table td:nth-child(6),
.module-table.vardiya-zimmet-table th:nth-child(7),
.module-table.vardiya-zimmet-table td:nth-child(7) {
  width: 10%;
}

.module-table.vardiya-zimmet-table th:nth-child(8),
.module-table.vardiya-zimmet-table td:nth-child(8) {
  width: 7%;
}

.module-table.vardiya-zimmet-table th:nth-child(9),
.module-table.vardiya-zimmet-table td:nth-child(9) {
  width: 8%;
}

.module-table.vardiya-zimmet-table .assignment-person-name {
  line-height: 1.15;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}

.module-table.vardiya-zimmet-table .assignment-person-name span {
  display: block;
}

.module-table.vardiya-zimmet-table .status-pill {
  width: 8.5ch;
  min-width: 8.5ch;
  max-width: 8.5ch;
  padding: 4px 7px;
  line-height: 1.05;
  text-align: center;
  white-space: normal;
}

.shift-assignment-muted {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-weight: 700;
}

.shift-assignment-device-list,
.shift-assignment-time-list,
.shift-assignment-flow-list {
  display: grid;
  gap: 8px;
}

.shift-assignment-flow-card {
  display: grid;
  gap: 4px;
  padding: 8px 10px;
  border: 1px solid #dbe4f2;
  border-left: 4px solid #64748b;
  border-radius: 10px;
  background: #f8fafc;
  color: #334155;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.3;
}

.shift-assignment-flow-card span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.shift-assignment-flow-card strong {
  color: #0f172a;
}

.shift-assignment-device-card {
  padding: 8px 10px;
  border: 1px solid #d8e7d9;
  border-left: 4px solid #7fc97c;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.86);
}

.shift-assignment-time-chip {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  padding: 5px 8px;
  border: 1px solid #dbe4ff;
  border-radius: 12px;
  background: #f8fbff;
  color: #22314f;
  font-weight: 800;
  line-height: 1.2;
}

.shift-assignment-time-chip strong {
  color: #3949d3;
  white-space: nowrap;
}

.shift-assignment-time-chip span {
  min-width: 0;
  width: 100%;
  text-align: center;
  overflow-wrap: anywhere;
}

.shift-assignment-time-chip.is-open {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #9a3412;
}

.status-pill.shift-assignment-status-open {
  border: 1px solid #fed7aa;
  background: #ffedd5;
  color: #9a3412;
}

.status-pill.shift-assignment-status-partial {
  border: 1px solid #fde68a;
  background: #fef3c7;
  color: #92400e;
}

.status-pill.shift-assignment-status-closed {
  border: 1px solid #bbf7d0;
  background: #dcfce7;
  color: #166534;
}

.assignment-inline-row td {
  background: #f8fafc !important;
  border-top: 1px solid #dbe4f2;
  padding: 12px 16px;
}

.assignment-return-meta {
  display: block;
  margin-top: 3px;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.25;
}

.assignment-history-table .assignment-device-cell {
  min-width: 0;
}

.module-table.assignment-history-table tbody tr.assignment-row-person-group td {
  background: #f0fdf4;
  border-top: 1px solid #bbf7d0;
  border-bottom: 1px solid #bbf7d0;
}

.assignment-device-label {
  display: grid;
  gap: 5px;
  min-width: 0;
  line-height: 1.2;
}

.assignment-device-main {
  display: block;
  color: #172033;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.assignment-device-detail {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 700;
}

.assignment-device-detail span {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 2px 7px;
  border: 1px solid #d5deeb;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  overflow-wrap: anywhere;
}

.assignment-device-stack {
  display: grid;
  gap: 7px;
}

.assignment-device-stack-cell {
  padding-top: 10px;
  padding-bottom: 10px;
}

.assignment-device-item {
  min-width: 0;
}

.assignment-row-person-group .assignment-device-item {
  padding: 7px 9px;
  border: 1px solid #cdebd7;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.76);
  box-shadow: inset 4px 0 0 rgba(34, 197, 94, 0.62);
}

.assignment-group-heading {
  display: flex;
  margin-bottom: 7px;
}

.assignment-group-heading span,
.assignment-group-status {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border: 1px solid #bbf7d0;
  border-radius: 999px;
  background: #dcfce7;
  color: #166534;
  padding: 3px 9px;
  font-size: 0.8rem;
  font-weight: 900;
}

.assignment-person-cell {
  min-width: 0;
}

.assignment-person-cell strong,
.assignment-person-cell small {
  display: block;
  min-width: 0;
}

.assignment-person-cell strong {
  color: #172033;
  font-weight: 900;
}

.assignment-person-cell small {
  margin-top: 3px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
}

.assignment-date-stack {
  display: grid;
  gap: 6px;
}

.assignment-row-person-group .assignment-device-stack,
.assignment-row-person-group .assignment-date-stack,
.assignment-row-person-group .assignment-group-actions {
  gap: 8px;
}

.assignment-row-person-group .assignment-device-item,
.assignment-row-person-group .assignment-date-row,
.assignment-row-person-group .assignment-group-action-row {
  min-height: 124px;
}

.assignment-date-row {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

.assignment-date-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  border: 1px solid #dbe4f2;
  background: rgba(255, 255, 255, 0.74);
  padding: 3px 8px;
  font-size: 0.82rem;
  font-weight: 800;
  white-space: nowrap;
}

.assignment-action-code {
  color: #1e3a8a;
  font-weight: 900;
}

.assignment-group-actions {
  display: grid;
  gap: 7px;
}

.assignment-group-action-row {
  display: inline-flex;
  align-items: center;
  justify-content: end;
  gap: 8px;
  flex-wrap: nowrap;
  white-space: nowrap;
}

.assignment-group-action-row form {
  flex: 0 0 auto;
}

.assignment-action-code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 54px;
  min-height: 28px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  background: #eef2ff;
  padding: 2px 10px;
  font-size: 0.78rem;
  line-height: 1;
  white-space: nowrap;
  word-break: keep-all;
  overflow-wrap: normal;
  font-variant-numeric: tabular-nums;
}

.assignment-inline-transfer-form {
  margin: 0;
}

.assignment-inline-transfer-panel {
  display: grid;
  grid-template-columns: minmax(260px, 0.85fr) minmax(380px, 1.35fr) minmax(210px, 0.7fr) minmax(260px, 1fr) auto;
  gap: 10px;
  align-items: end;
  width: 100%;
  padding: 12px;
  border: 1px solid #c4b5fd;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 12px 24px rgba(79, 70, 229, 0.12);
}

.assignment-inline-transfer-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.assignment-inline-transfer-heading i {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 10px;
  background: #ede9fe;
  color: #6d28d9;
}

.assignment-inline-transfer-heading strong,
.assignment-inline-transfer-heading small {
  display: block;
}

.assignment-inline-transfer-heading small {
  color: #64748b;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.assignment-inline-transfer-panel label {
  min-width: 0;
}

.assignment-inline-transfer-panel .assignment-transfer-person-field {
  position: relative;
  min-width: 380px;
}

.assignment-inline-transfer-panel select,
.assignment-inline-transfer-panel input {
  width: 100%;
}

.assignment-inline-transfer-panel .js-transfer-person-search {
  min-width: 0;
  font-size: 18px;
}

.assignment-transfer-person-list {
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  max-height: 320px;
}

.assignment-inline-transfer-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-end;
}

@media (max-width: 1180px) {
  .assignment-inline-transfer-panel {
    grid-template-columns: 1fr 1fr;
  }

  .assignment-inline-transfer-panel .assignment-transfer-person-field {
    min-width: 0;
  }

  .assignment-inline-transfer-heading,
  .assignment-inline-transfer-actions {
    grid-column: 1 / -1;
  }

  .assignment-inline-transfer-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .assignment-inline-transfer-panel {
    grid-template-columns: 1fr;
  }
}

.kif-no {
  color: #b42318;
  font-weight: 800;
  letter-spacing: 0.03em;
}

.date-cell {
  display: grid;
  gap: 2px;
}

.date-cell strong {
  font-size: 0.92rem;
  font-weight: 700;
}

.date-cell small {
  color: #64748b;
  font-size: 0.79rem;
}

.place-cell {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.place-cell i {
  color: #ef4444;
  font-size: 0.9rem;
}

.tag-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.tag-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 8px;
  min-height: 24px;
  padding: 1px 8px;
  font-size: 0.77rem;
  font-weight: 700;
  background: #fee2e2;
  color: #b42318;
  border: 1px solid #fecaca;
}

.kif-penalty-chip {
  position: relative;
  cursor: help;
}

.kif-penalty-chip small {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  padding: 0 6px;
  border-radius: 999px;
  background: #fff7ed;
  color: #9a3412;
  border: 1px solid #fed7aa;
  font-size: 0.68rem;
  font-weight: 900;
  white-space: nowrap;
}

.kif-penalty-chip[data-tooltip]:hover::after,
.kif-penalty-chip[data-tooltip]:focus-visible::after {
  content: attr(data-tooltip);
  position: absolute;
  z-index: 40;
  left: 0;
  top: calc(100% + 8px);
  width: max-content;
  max-width: 360px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #111827;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.22);
  font-size: 0.76rem;
  line-height: 1.25;
  font-weight: 700;
  white-space: normal;
  text-align: left;
}

.kif-penalty-chip[data-tooltip]:hover::before,
.kif-penalty-chip[data-tooltip]:focus-visible::before {
  content: "";
  position: absolute;
  z-index: 41;
  left: 14px;
  top: calc(100% + 3px);
  border-width: 0 5px 5px;
  border-style: solid;
  border-color: transparent transparent #111827;
}

.record-badges {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.rec-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  min-height: 24px;
  padding: 2px 9px;
  font-size: 0.78rem;
  font-weight: 700;
}

.rec-chip-photo {
  background: #dcfce7;
  color: #166534;
}

.rec-chip-link {
  background: #fef3c7;
  color: #92400e;
}

.icon-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.icon-actions form {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
}

.module-table td:last-child .icon-actions {
  justify-content: flex-end;
  flex-wrap: nowrap;
}

.plate-query-table td:last-child .plate-row-actions {
  justify-content: center;
}

.shift-schedule-page .section {
  margin-top: 12px;
}

.shift-plan-grid {
  grid-template-columns: repeat(4, minmax(18ch, 24ch));
  gap: 10px 12px;
  align-items: end;
  justify-content: start;
}

.shift-plan-grid > label {
  min-width: 0;
}

.shift-plan-grid > label > input:not([type="checkbox"]):not([type="radio"]),
.shift-plan-grid > label > select {
  width: 100%;
  max-width: 24ch;
}

.shift-time-settings {
  grid-column: 1 / -1;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  background: #f8fafc;
}

.shift-time-settings-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.shift-time-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 10px;
}

.shift-time-card {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #ffffff;
}

.shift-time-card[hidden],
.shift-time-card.is-hidden {
  display: none;
}

.shift-time-card label {
  display: grid;
  gap: 4px;
  font-weight: 700;
  color: #1f2937;
}

.shift-time-card input {
  width: 100%;
  max-width: none;
}

.shift-plan-history {
  margin-top: 14px;
}

.shift-plan-history .section-head-inline {
  justify-content: flex-start;
  gap: 12px;
}

.shift-plan-history-wrap {
  display: inline-block;
  width: auto;
  max-width: 100%;
  overflow: visible !important;
}

.shift-plan-history-table {
  width: max-content;
  min-width: 0;
  table-layout: auto;
}

.shift-plan-history-table th,
.shift-plan-history-table td {
  white-space: nowrap;
  overflow: visible;
  text-overflow: clip;
}

.shift-plan-history-table th:nth-child(1),
.shift-plan-history-table td:nth-child(1) {
  width: 5ch;
  text-align: center;
}

.shift-plan-history-table th:nth-child(2),
.shift-plan-history-table td:nth-child(2) {
  width: 19ch;
}

.shift-plan-history-table th:nth-child(3),
.shift-plan-history-table td:nth-child(3) {
  width: 12ch;
}

.shift-plan-history-table th:nth-child(4),
.shift-plan-history-table td:nth-child(4) {
  width: 10ch;
}

.shift-plan-history-table th:nth-child(5),
.shift-plan-history-table td:nth-child(5) {
  width: auto;
  min-width: max-content;
}

.shift-plan-history-table th:nth-child(6),
.shift-plan-history-table td:nth-child(6) {
  width: 15ch;
  padding-left: 0;
  padding-right: 0;
}

.shift-plan-history-table th:nth-child(7),
.shift-plan-history-table td:nth-child(7) {
  width: max-content;
}

.shift-time-code {
  font-weight: 800;
  color: #111827;
}

.shift-filter-panel {
  width: min(100%, 1360px);
  max-width: 1360px;
  margin-right: auto;
  padding: 10px 12px;
}

.shift-filter-panel > h2 {
  margin: 0 0 6px;
  font-size: 1.08rem;
}

.shift-filter-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px 10px;
  align-items: end;
  justify-content: stretch;
}

.shift-filter-grid > label,
.shift-filter-grid > .shift-filter-type-group,
.shift-filter-grid > .actions {
  min-width: 0;
}

.shift-filter-grid > label > input:not([type="checkbox"]):not([type="radio"]),
.shift-filter-grid > label > select {
  width: 100%;
  max-width: none;
}

.shift-filter-grid > label {
  grid-column: span 1;
}

.shift-filter-grid > .shift-filter-person-search {
  grid-column: span 3;
}

.shift-filter-grid .actions {
  display: flex;
  align-items: end;
  gap: 8px;
  flex-wrap: wrap;
  align-self: end;
}

.shift-filter-type-group {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
}

.shift-filter-type-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px 12px;
  flex-wrap: wrap;
}

.shift-filter-type-group > .small-note {
  font-size: 0.95rem;
  font-weight: 700;
  color: #64748b;
}

.shift-filter-type-group .status-chips {
  display: flex;
  grid-column: auto;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  min-height: 0;
}

.dashboard-overview .metric-personnel {
  order: 1;
}

.dashboard-overview .metric-shift {
  order: 2;
}

.dashboard-overview .metric-zimmet {
  order: 3;
}

.dashboard-overview .metric-ev-kif {
  order: 4;
}

.dashboard-overview .metric-kif {
  order: 5;
}

.dashboard-overview .metric-tutanak {
  order: 6;
}

.dashboard-overview .metric-contact-work {
  order: 7;
}

.dashboard-overview .metric-plate {
  order: 8;
}

.dashboard-overview .metric-holiday {
  order: 9;
}

.shift-filter-actions {
  margin-left: auto;
  flex: 0 0 auto;
}

.shift-filter-type-group .entry-check {
  border: 1px solid #d7deee;
  background: #f8fbff;
  border-radius: 999px;
  min-height: 34px;
  padding: 4px 10px;
  gap: 7px;
  font-weight: 700;
  color: #334155;
}

.shift-filter-type-group .entry-check input[type="checkbox"] {
  width: 16px;
  height: 16px;
}

.shift-filter-type-group .entry-check:has(input:checked) {
  border-color: #4f67f6;
  background: #eef2ff;
  color: #1e40af;
}

.shift-event-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  min-height: 28px;
  padding: 3px 10px;
  border: 1px solid #d5deeb;
  background: #f8fafc;
  color: #334155;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.shift-event-badge.is-support-in {
  border-color: #bbf7d0;
  background: #ecfdf3;
  color: #166534;
}

.shift-event-badge.is-support-out {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #9a3412;
}

.shift-event-badge.is-manual-override {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1e3a8a;
}

.shift-event-badge.is-report {
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
}

.shift-event-badge.is-annual-leave,
.shift-event-badge.is-absence-other {
  border-color: #ddd6fe;
  background: #f5f3ff;
  color: #5b21b6;
}

.shift-event-row.is-support-in td {
  background: #f7fff8;
}

.shift-event-row.is-support-out td {
  background: #fffaf5;
}

.shift-override-grid {
  grid-template-columns: minmax(28ch, 2fr) minmax(16ch, 18ch) minmax(16ch, 20ch) minmax(20ch, 24ch) minmax(24ch, 1fr);
  gap: 10px 12px;
  align-items: end;
}

.shift-lock-check,
.shift-support-check {
  grid-column: 1 / -1;
}

.shift-start-summary {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  font-size: 0.9rem;
  color: #334155;
}

.shift-handover-notes {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}

.shift-flow-preview {
  grid-column: 1 / -1;
}

.shift-flow-preview .module-table {
  width: 100%;
  min-width: 980px;
}

.shift-cycle-editor-table th,
.shift-cycle-editor-table td {
  white-space: nowrap;
}

.shift-cycle-editor-table .shift-cycle-cell {
  width: 100%;
  min-width: 16ch;
  max-width: none;
}

.shift-cycle-editor-table th:nth-child(n + 3),
.shift-cycle-editor-table td:nth-child(n + 3) {
  min-width: 18ch;
}

.shift-metric-grid {
  margin-top: 12px;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(16ch, 1fr));
}

.shift-filter-summary-grid {
  grid-template-columns: repeat(3, minmax(16ch, 1fr));
}

.shift-filter-results {
  margin-top: 8px;
  padding: 8px 10px;
}

.shift-filter-results-head {
  gap: 6px 8px;
}

.shift-filter-results-head .btn {
  margin-left: auto;
}

.shift-filter-result-wrap {
  overflow: visible;
}

.shift-filter-result-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.shift-filter-result-table th,
.shift-filter-result-table td {
  padding: 6px 9px;
  vertical-align: middle;
  white-space: normal;
}

.shift-filter-result-table th:nth-child(1),
.shift-filter-result-table td:nth-child(1),
.shift-filter-result-table th:nth-child(7),
.shift-filter-result-table td:nth-child(7) {
  width: 5ch;
  text-align: center;
}

.shift-filter-result-table th:nth-child(2),
.shift-filter-result-table td:nth-child(2) {
  width: 22ch;
}

.shift-filter-result-table th:nth-child(3),
.shift-filter-result-table td:nth-child(3) {
  width: 26ch;
}

.shift-filter-result-table th:nth-child(4),
.shift-filter-result-table td:nth-child(4) {
  width: 9ch;
}

.shift-filter-result-table th:nth-child(5),
.shift-filter-result-table td:nth-child(5) {
  width: 25ch;
}

.shift-filter-result-table th:nth-child(6),
.shift-filter-result-table td:nth-child(6) {
  width: auto;
}

.shift-filter-result-table td strong,
.shift-filter-result-table td span {
  display: block;
}

.shift-filter-result-table td > span:not(.shift-event-badge):not(.shift-day-count) {
  margin-top: 3px;
  color: #64748b;
  font-weight: 700;
}

.shift-day-count,
.shift-result-code {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  margin-top: 5px;
  border: 1px solid #d7deee;
  border-radius: 999px;
  background: #f8fafc;
  padding: 2px 8px;
  color: #475569;
  font-size: 0.78rem;
  font-weight: 800;
}

.shift-result-code-days {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.shift-result-code-days {
  color: #334155;
  font-size: 0.72rem;
}

.shift-filter-pagination {
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.pagination-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  flex-wrap: wrap;
}

.pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #d7deee;
  border-radius: 10px;
  background: #fff;
  color: #1f2a44;
  font-weight: 800;
  text-decoration: none;
}

.pager-btn.active {
  border-color: #5865f2;
  background: #5865f2;
  color: #fff;
}

.asset-list-page-buttons .active,
.asset-list-page-buttons [aria-current="page"],
.personnel-pager .personnel-page-number.active,
.personnel-pager .personnel-page-number[aria-current="page"],
.pagination-controls .pager-btn.active,
.pagination-controls .pager-btn[aria-current="page"] {
  background: linear-gradient(135deg, #4f67f6, #3446c7);
  border-color: #3446c7;
  color: #ffffff;
  box-shadow:
    0 0 0 3px rgba(79, 103, 246, 0.20),
    0 8px 16px rgba(52, 70, 199, 0.22);
}

.asset-list-page-buttons .active,
.asset-list-page-buttons [aria-current="page"],
.pagination-controls .pager-btn.active,
.pagination-controls .pager-btn[aria-current="page"] {
  cursor: default;
}

.asset-list-page-buttons .active:hover,
.asset-list-page-buttons [aria-current="page"]:hover,
.personnel-pager .personnel-page-number.active:hover,
.personnel-pager .personnel-page-number[aria-current="page"]:hover,
.pagination-controls .pager-btn.active:hover,
.pagination-controls .pager-btn[aria-current="page"]:hover {
  background: linear-gradient(135deg, #4f67f6, #3446c7);
  border-color: #3446c7;
  color: #ffffff;
}

.pager-btn.disabled {
  pointer-events: none;
  opacity: 0.45;
  background: #f1f5f9;
}

.shift-metric-grid .metric h3 {
  margin: 0;
  font-size: 0.92rem;
  color: #334155;
}

.shift-metric-grid .metric p {
  margin: 6px 0 0;
  font-size: 1.1rem;
  font-weight: 800;
}

.shift-personnel-count-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  margin-left: 8px;
  padding: 4px 10px;
  border: 1px solid #d7ddea;
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 0.92rem;
  font-weight: 700;
  white-space: nowrap;
}

.shift-personnel-count-chip strong {
  color: #111827;
  font-size: 1.02rem;
}

.shift-person-top-scroll {
  margin-top: 10px;
  overflow-x: auto;
  overflow-y: hidden;
  height: 14px;
  border: 1px solid var(--border);
  border-bottom: 0;
  border-radius: 12px 12px 0 0;
  background: #f8fafc;
  position: relative;
  top: 0;
  z-index: 1;
  scrollbar-width: auto;
  scrollbar-color: #64748b #dbe3ef;
}

.shift-person-top-scroll-inner {
  height: 1px;
}

.shift-person-table-wrap {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  height: var(--shift-person-table-height, min(68vh, 720px));
  max-height: var(--shift-person-table-height, min(68vh, 720px));
  overflow: auto;
  position: relative;
  isolation: isolate;
  overscroll-behavior: contain;
  scrollbar-width: auto;
  scrollbar-color: #64748b #dbe3ef;
}

.shift-person-top-scroll::-webkit-scrollbar,
.shift-person-table-wrap::-webkit-scrollbar {
  height: 16px;
  width: 16px;
}

.shift-person-top-scroll::-webkit-scrollbar-track,
.shift-person-table-wrap::-webkit-scrollbar-track {
  background: #dbe3ef;
  border-radius: 999px;
}

.shift-person-top-scroll::-webkit-scrollbar-thumb,
.shift-person-table-wrap::-webkit-scrollbar-thumb {
  background: #64748b;
  border-radius: 999px;
  border: 3px solid #dbe3ef;
}

.shift-person-top-scroll::-webkit-scrollbar-thumb:hover,
.shift-person-table-wrap::-webkit-scrollbar-thumb:hover {
  background: #475569;
}

.shift-calendar-table {
  min-width: 1200px;
}

.shift-person-table {
  --shift-sicil-col-width: 10ch;
  --shift-person-col-width: 24ch;
  min-width: 2080px;
}

.shift-calendar-table th,
.shift-calendar-table td,
.shift-person-table th,
.shift-person-table td {
  white-space: nowrap;
}

.shift-person-table thead tr:first-child th:not(.sticky-col):not(.sticky-col-2) {
  position: sticky;
  top: 0;
  z-index: 7;
  background: #e2e8f0;
  left: auto;
}

.shift-person-table thead tr:nth-child(2) th:not(.sticky-col):not(.sticky-col-2) {
  position: sticky;
  top: var(--shift-head-row1-height, 48px);
  z-index: 7;
  background: #f8fafc;
  left: auto;
}

.shift-person-table .sticky-col,
.shift-person-table .sticky-col-2,
.shift-calendar-table .sticky-col {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #f8fafc;
  box-sizing: border-box;
}

.shift-person-table .sticky-col {
  width: var(--shift-sicil-col-width);
  min-width: var(--shift-sicil-col-width);
  max-width: var(--shift-sicil-col-width);
  overflow: hidden;
  text-overflow: ellipsis;
}

.shift-person-table .sticky-col-2 {
  left: var(--shift-col2-left, var(--shift-sicil-col-width));
  width: var(--shift-person-col-width);
  min-width: var(--shift-person-col-width);
  max-width: var(--shift-person-col-width);
  z-index: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}

.shift-person-table th.sticky-col,
.shift-person-table th.sticky-col-2,
.shift-calendar-table th.sticky-col {
  z-index: 12;
  background: #e2e8f0;
}

.shift-person-table thead .sticky-col {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 14;
  background: #e2e8f0;
}

.shift-person-table thead .sticky-col-2 {
  position: sticky;
  top: 0;
  left: var(--shift-col2-left, var(--shift-sicil-col-width));
  z-index: 14;
  background: #e2e8f0;
}

.shift-week-head {
  font-size: 0.76rem;
  letter-spacing: 0.02em;
  color: #334155;
  background: #e2e8f0;
}

.shift-day-head {
  min-width: 6.8ch;
  line-height: 1.05;
  padding: 6px 4px;
}

.shift-day-name {
  display: block;
  font-size: 0.66rem;
  font-weight: 700;
  color: #64748b;
  letter-spacing: 0.01em;
}

.shift-day-number {
  display: block;
  margin-top: 2px;
  font-size: 0.88rem;
  font-weight: 800;
  color: #1e293b;
}

.shift-day-head.is-weekend {
  background: #fee2e2;
}

.shift-day-head.is-holiday {
  background: #fee2e2;
}

.shift-day-head.is-weekend .shift-day-name,
.shift-day-head.is-weekend .shift-day-number {
  color: #9f1239;
}

.shift-day-head.is-holiday .shift-day-name,
.shift-day-head.is-holiday .shift-day-number {
  color: #9f1239;
}

.shift-day-head.is-today {
  position: relative;
  color: #713f12;
  background: linear-gradient(135deg, #fef3c7, #fde68a) !important;
  box-shadow: inset 0 0 0 2px #f59e0b, 0 8px 18px rgba(245, 158, 11, 0.18);
}

.shift-day-head.is-today::after {
  content: "BUGÃœN";
  display: block;
  width: fit-content;
  margin: 3px auto 0;
  padding: 1px 5px;
  border-radius: 999px;
  color: #ffffff;
  background: #d97706;
  font-size: 0.52rem;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: 0;
}

.shift-day-head.is-today .shift-day-name,
.shift-day-head.is-today .shift-day-number {
  color: #713f12 !important;
}

.shift-day-head.is-week-start,
.shift-calendar-table td.is-week-start,
.shift-person-table td.is-week-start {
  border-left: 2px solid #94a3b8;
}

.shift-person-name {
  display: inline-block;
  max-width: 19ch;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.team-inline-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2ch;
  margin-left: 6px;
  padding: 1px 6px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1e3a8a;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.2;
  vertical-align: middle;
}

.shift-person-table .shift-week-total-head,
.shift-person-table .shift-week-total-cell {
  min-width: 11ch;
  max-width: 11ch;
  white-space: nowrap;
}

.shift-person-table .shift-week-total-head {
  font-size: 0.76rem;
  letter-spacing: 0;
  line-height: 1.05;
  text-align: center;
  vertical-align: middle;
  padding: 6px 4px;
}

.shift-week-total-title,
.shift-week-total-no {
  display: block;
}

.shift-week-total-title {
  font-weight: 700;
  color: #64748b;
}

.shift-week-total-no {
  margin-top: 2px;
  font-size: 0.95rem;
  font-weight: 800;
  color: #334155;
}

.shift-person-table .shift-week-total-cell {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.shift-person-table .shift-week-total-head:first-of-type,
.shift-person-table .shift-week-total-cell:first-of-type {
  border-left: 2px solid #94a3b8;
}

.shift-code-cell {
  min-width: 6.5ch;
  font-weight: 700;
}

.shift-code-main,
.shift-code-sub {
  display: block;
}

.shift-code-main {
  font-weight: 900;
  line-height: 1.05;
}

.shift-code-sub {
  margin-top: 2px;
  font-size: 0.58rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}

.shift-code-cell.source-override {
  outline: 2px solid #0f766e;
  outline-offset: -2px;
}

.shift-code-cell.source-absence {
  color: #7c2d12;
}

.shift-code-cell.is-support {
  color: #1d4ed8;
}

.shift-g {
  background: #dcfce7;
}

.shift-a {
  background: #fee2e2;
}

.shift-i {
  background: #f1f5f9;
}

.shift-calendar-table td.is-weekend-day,
.shift-person-table td.is-weekend-day {
  box-shadow: inset 0 0 0 9999px rgba(248, 113, 113, 0.08);
}

.shift-calendar-table td.is-holiday-day,
.shift-person-table td.is-holiday-day {
  box-shadow: inset 0 0 0 9999px rgba(248, 113, 113, 0.08);
}

.shift-calendar-table td.is-weekend-day.is-holiday-day,
.shift-person-table td.is-weekend-day.is-holiday-day {
  box-shadow: inset 0 0 0 9999px rgba(248, 113, 113, 0.08);
}

.shift-calendar-table td.is-today-day,
.shift-person-table td.is-today-day {
  position: relative;
  border-left: 2px solid #f59e0b !important;
  border-right: 2px solid #f59e0b !important;
  box-shadow: inset 0 0 0 9999px rgba(251, 191, 36, 0.20) !important;
}

.shift-calendar-table tbody tr:first-child td.is-today-day,
.shift-person-table tbody tr:first-child td.is-today-day {
  border-top: 2px solid #f59e0b !important;
}

.shift-calendar-table tbody tr:last-child td.is-today-day,
.shift-person-table tbody tr:last-child td.is-today-day {
  border-bottom: 2px solid #f59e0b !important;
}

.shift-code-cell.is-today-day {
  color: #713f12;
  font-weight: 900;
}

.shift-person-table .shift-code-cell.shift-status-annual,
.shift-person-table .shift-code-cell.shift-status-report,
.shift-person-table .shift-code-cell.shift-status-leave {
  position: relative;
  font-weight: 900;
  outline: 0;
  vertical-align: middle;
  box-shadow: inset 0 0 0 2px var(--shift-status-border), inset 7px 0 0 var(--shift-status-stripe) !important;
}

.shift-person-table .shift-code-cell.shift-status-annual {
  --shift-status-border: #16a34a;
  --shift-status-stripe: #15803d;
  color: #14532d;
  background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%) !important;
}

.shift-person-table .shift-code-cell.shift-status-report {
  --shift-status-border: #dc2626;
  --shift-status-stripe: #991b1b;
  color: #7f1d1d;
  background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%) !important;
  animation: shiftStatusPulse 1.8s ease-in-out infinite;
}

.shift-person-table .shift-code-cell.shift-status-leave {
  --shift-status-border: #7c3aed;
  --shift-status-stripe: #5b21b6;
  color: #3b0764;
  background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%) !important;
}

.shift-person-table .shift-code-cell.shift-status-annual .shift-code-sub,
.shift-person-table .shift-code-cell.shift-status-report .shift-code-sub,
.shift-person-table .shift-code-cell.shift-status-leave .shift-code-sub {
  color: inherit;
  opacity: 0.9;
}

@keyframes shiftStatusPulse {
  0%,
  100% {
    filter: saturate(1);
  }
  50% {
    filter: saturate(1.35) brightness(1.02);
  }
}

@media (prefers-reduced-motion: reduce) {
  .shift-person-table .shift-code-cell.shift-status-report {
    animation: none;
  }
}

.personnel-modern-table .personnel-actions.icon-actions {
  flex-wrap: nowrap;
  gap: 4px;
  align-items: center;
}

.personnel-modern-table .personnel-actions.icon-actions form {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
  margin: 0;
}

.personnel-modern-table .personnel-actions .mini-transfer select {
  min-width: 11ch;
  max-width: 12ch;
}

.service-return-status-select {
  min-width: 128px;
  height: 34px;
  padding: 0 10px;
  border-radius: 10px;
  font-size: 0.85rem;
}

.service-entry-form,
.service-edit-form {
  margin-top: 12px;
}

.service-entry-form {
  width: min(74vw, 1360px);
  max-width: 100%;
}

.service-inline-fields {
  display: grid;
  grid-template-columns: minmax(520px, 1.65fr) minmax(360px, 0.82fr);
  grid-template-areas:
    "asset date"
    "asset destination"
    "asset battery"
    "note note";
  gap: 12px 14px;
  align-items: start;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.service-inline-field {
  min-width: 0;
  max-width: none;
  margin: 0;
}

.service-inline-field-wide {
  grid-area: asset;
  min-width: 0;
  max-width: none;
  align-self: stretch;
}

.service-inline-field-destination {
  grid-area: destination;
  width: 100%;
}

.service-inline-field-date {
  grid-area: date;
  width: 100%;
}

.service-inline-field-note {
  grid-area: note;
  min-width: 0;
  max-width: none;
}

.service-entry-form .service-inline-field,
.service-edit-field {
  display: grid;
  gap: 6px;
  align-content: start;
  min-height: auto;
  padding: 9px 10px;
  border: 2px solid #f59e0b;
  border-left-width: 5px;
  border-radius: 12px;
  background: linear-gradient(180deg, #fffbeb 0%, #ffffff 100%);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.045);
  color: #172033;
}

.service-inline-field select,
.service-inline-field input:not([type="checkbox"]):not([type="radio"]),
.service-inline-field textarea,
.service-edit-field select,
.service-edit-field input:not([type="checkbox"]):not([type="radio"]),
.service-edit-field textarea {
  width: 100%;
  max-width: 100%;
}

.service-entry-form .service-inline-field select,
.service-entry-form .service-inline-field input:not([type="checkbox"]):not([type="radio"]),
.service-entry-form .service-inline-field textarea,
.service-edit-field select,
.service-edit-field input:not([type="checkbox"]):not([type="radio"]),
.service-edit-field textarea {
  border-color: #f59e0b;
  border-width: 2px;
  background: #fffbeb;
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.12);
}

.service-entry-form .service-inline-field select,
.service-entry-form .service-inline-field input:not([type="checkbox"]):not([type="radio"]) {
  min-height: 38px;
  height: 38px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.service-asset-fallback-select {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  opacity: 0;
  pointer-events: none;
}

.service-asset-search {
  min-height: 38px;
}

.service-selected-assets {
  min-height: 26px;
  border: 1px solid #fcd34d;
  border-radius: 10px;
  background: #fff7ed;
  color: #92400e;
  padding: 5px 9px;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.25;
}

.service-selected-assets.has-selection {
  border-color: #86efac;
  background: #f0fdf4;
  color: #166534;
}

.service-asset-picker {
  display: grid;
  max-height: clamp(250px, 31vh, 340px);
  overflow-y: auto;
  border: 2px solid #f59e0b;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.08);
}

.service-asset-picker.is-filter-empty::after {
  content: "EÅŸleÅŸen cihaz bulunamadÄ±.";
  padding: 12px;
  color: #92400e;
  font-size: 0.86rem;
  font-weight: 900;
}

.service-asset-option {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 32px;
  padding: 6px 9px;
  border-bottom: 1px solid #fde68a;
  background: #fffdf5;
  color: #172033;
  cursor: pointer;
}

.service-asset-option[hidden] {
  display: none !important;
}

.service-asset-option:nth-child(even) {
  background: #fffbeb;
}

.service-asset-option:hover {
  background: #fef3c7;
}

.service-asset-option.is-search-match {
  background: #f0fdf4;
  box-shadow: inset 4px 0 0 #22c55e;
}

.service-asset-option input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: #d97706;
}

.service-asset-option span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 0.84rem;
  font-weight: 900;
  line-height: 1.2;
}

.service-asset-empty {
  padding: 12px;
  color: #64748b;
  font-size: 0.86rem;
  font-weight: 850;
}

.service-entry-form .service-inline-field select:focus,
.service-entry-form .service-inline-field input:not([type="checkbox"]):not([type="radio"]):focus,
.service-entry-form .service-inline-field textarea:focus,
.service-edit-field select:focus,
.service-edit-field input:not([type="checkbox"]):not([type="radio"]):focus,
.service-edit-field textarea:focus {
  border-color: #4f67f6;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(79, 103, 246, 0.16), inset 0 0 0 1px rgba(79, 103, 246, 0.16);
}

.service-entry-form .service-inline-field textarea::placeholder,
.service-edit-field textarea::placeholder {
  color: #7c5f16;
  opacity: 0.88;
}

.service-battery-delivery-field {
  grid-area: battery;
  min-width: 0;
  max-width: none;
  overflow: hidden;
  align-self: start;
  width: 100%;
}

.service-battery-delivery-field select {
  min-width: 0;
  box-sizing: border-box;
  padding-right: 42px;
  text-overflow: ellipsis;
}

.service-edit-panel {
  display: grid;
  gap: 14px;
  width: min(100%, 1420px);
  padding: 16px;
  border: 2px solid #818cf8;
  border-left: 6px solid #4f67f6;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
  box-shadow: 0 12px 24px rgba(79, 103, 246, 0.08);
}

.service-edit-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 2px solid #818cf8;
  border-radius: 12px;
  background: linear-gradient(180deg, #eef2ff 0%, #ffffff 100%);
}

.service-edit-heading i {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 10px;
  background: #dbeafe;
  color: #4f67f6;
  box-shadow: inset 0 0 0 1px #bfdbfe;
}

.service-edit-heading strong {
  display: block;
  color: #172033;
  font-size: 1.05rem;
}

.service-edit-heading p {
  margin: 2px 0 0;
  color: #64748b;
  font-weight: 800;
}

.service-edit-grid {
  display: grid;
  grid-template-columns: fit-content(32ch) fit-content(34ch) minmax(44ch, 1fr);
  grid-template-areas:
    "date destination record"
    "note note battery";
  gap: 12px;
  align-items: start;
}

.service-edit-field-record {
  grid-area: record;
  min-height: 112px;
  min-width: 0;
}

.service-edit-field-date {
  grid-area: date;
  min-width: 28ch;
}

.service-edit-field-destination {
  grid-area: destination;
  min-width: 31ch;
}

.service-edit-field-battery {
  grid-area: battery;
  width: min(100%, 46ch);
  min-height: 112px;
}

.service-edit-field-note {
  grid-area: note;
  min-height: 188px;
  min-width: 0;
}

.service-edit-record-value {
  display: block;
  width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  border: 2px solid #cbd5e1;
  border-radius: 11px;
  background: #f8fafc;
  color: #334155;
  font-weight: 900;
  line-height: 1.25;
  white-space: nowrap;
  overflow: visible;
  text-overflow: clip;
}

.service-edit-form .field-required {
  position: relative;
}

.service-edit-form .field-required::after {
  content: "Doldurulacak";
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #fef3c7;
  color: #92400e;
  font-size: 0.72rem;
  font-weight: 900;
}

.service-inline-field-note textarea {
  min-height: 58px;
}

.service-edit-field-note textarea {
  min-height: 110px;
}

.icon-btn-mini {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid transparent;
  padding: 0;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  font-size: 0.86rem;
  text-decoration: none;
  transition: transform 0.2s ease, filter 0.2s ease, opacity 0.2s ease;
}

.icon-btn-mini:hover {
  transform: translateY(-1px);
  filter: brightness(0.98);
}

.icon-btn-mini:focus-visible {
  outline: 2px solid #8ba0ff;
  outline-offset: 2px;
}

.icon-btn-mini i {
  pointer-events: none;
}

.assignment-action-label {
  display: none;
}

.icon-btn-mini[disabled],
.icon-btn-mini.is-disabled {
  opacity: 0.62;
  pointer-events: none;
  cursor: not-allowed;
}

.btn.is-disabled {
  opacity: 0.62;
  pointer-events: none;
  cursor: not-allowed;
}

.icon-view {
  background: #e0e7ff;
  color: #354ac9;
}

.icon-edit {
  background: #fef3c7;
  color: #92400e;
}

.icon-whatsapp {
  background: #dcfce7;
  color: #166534;
}

.icon-reset {
  background: #fff7ed;
  color: #c2410c;
}

.icon-absence {
  background: #e0f2fe;
  color: #0f4c81;
}

.icon-pdf {
  background: #e2e8f0;
  color: #334155;
}

.icon-archive {
  background: #ede9fe;
  color: #6d28d9;
}

.icon-delete {
  background: #fee2e2;
  color: #b91c1c;
}

.icon-restore {
  background: #dcfce7;
  color: #15803d;
}

.icon-transfer {
  background: #ede9fe;
  color: #6d28d9;
}

.icon-transfer.active {
  background: #6d28d9;
  color: #ffffff;
}

.icon-reactivate {
  background: #dcfce7;
  color: #15803d;
}

.icon-office-return {
  background: #dcfce7;
  color: #166534;
}

.icon-cancel {
  background: #ffedd5;
  color: #c2410c;
}

.icon-activate {
  background: #dcfce7;
  color: #166534;
}

.icon-closed {
  background: #e5e7eb;
  color: #4b5563;
}

.icon-battery {
  background: #fee2e2;
  color: #be123c;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.kif-volume-body {
  display: grid;
  width: min(100%, 1320px);
  gap: 9px;
  margin: 0;
  padding: 12px 14px 14px;
}

.kif-volume-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.kif-volume-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #6d28d9;
  font-size: 1.18rem;
}

.kif-volume-head .small-note {
  margin: 2px 0 0;
}

.kif-volume-form {
  border: 1px solid #ddd6fe;
  border-left: 4px solid #6d28d9;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8f5ff 0%, #f8fafc 100%);
  padding: 10px 12px;
  gap: 10px;
}

.kif-volume-form .grid.two {
  grid-template-columns: repeat(2, minmax(160px, 220px));
  gap: 8px 10px;
}

.kif-volume-form .grid.three {
  grid-template-columns: minmax(140px, 190px) minmax(140px, 190px) minmax(160px, 190px);
  align-items: end;
  gap: 8px 10px;
}

.kif-volume-form label {
  margin: 0;
}

.kif-volume-form input:not([type="checkbox"]) {
  min-height: 36px;
  height: 36px;
  padding: 7px 10px;
}

.kif-volume-form .actions {
  margin-top: 8px;
}

.kif-volume-form .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.kif-volume-check {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 36px;
  margin-top: 0;
  border: 1px solid #d5deeb;
  border-radius: 11px;
  background: #fff;
  padding: 6px 10px;
}

.kif-volume-check span {
  font-weight: 700;
}

.kif-volume-active-card {
  border: 1px solid #ddd6fe;
  border-left: 4px solid #22c55e;
  border-radius: 12px;
  background: linear-gradient(135deg, #f0fdf4 0%, #f8f5ff 100%);
  padding: 9px 12px;
}

.kif-volume-active-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.kif-volume-active-top strong {
  color: #5b21b6;
  font-size: 1.08rem;
}

.kif-volume-active-top span {
  color: #7c3aed;
  font-size: 1rem;
  font-weight: 700;
}

.kif-volume-progress-track {
  margin-top: 8px;
  width: 100%;
  height: 10px;
  border-radius: 999px;
  background: #d1d5db;
  overflow: hidden;
}

.kif-volume-progress-track span {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #6fdd6a 0%, #3dbf53 100%);
}

.kif-volume-progress-foot {
  margin-top: 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #6b7280;
  font-size: 0.95rem;
  font-weight: 700;
}

.kif-volume-toolbar {
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 8px 0;
}

.kif-volume-toolbar .search-inline {
  width: min(100%, 18ch);
  min-height: 36px;
}

.kif-volume-toolbar .toolbar-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.kif-volume-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.kif-volume-table-wrap,
.kif-volume-serial-table-wrap {
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background: #fff;
}

.kif-volume-table-wrap .module-table,
.kif-volume-serial-table {
  min-width: 780px;
}

.kif-volume-table-wrap .module-table th,
.kif-volume-table-wrap .module-table td,
.kif-volume-serial-table th,
.kif-volume-serial-table td {
  padding: 7px 9px;
}

.kif-volume-serial-table-wrap {
  max-height: 360px;
}

.section.module-shell.kif-notes-page {
  width: 50%;
  max-width: none;
  margin-left: 0;
  margin-right: auto;
}

.kif-notes-body {
  display: grid;
  width: calc(100% - 32px);
  gap: 10px;
  margin: 14px 16px 16px;
}

.kif-note-entry-shell {
  width: clamp(780px, 66.666%, 1120px);
}

.kif-note-entry-shell .kif-notes-body {
  width: calc(100% - 32px);
}

.kif-note-form {
  display: grid;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #c7d2fe;
  border-left: 5px solid #4f46e5;
  border-radius: 14px;
  background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 56%, #ecfeff 100%);
  box-shadow: 0 12px 28px rgba(37, 99, 235, 0.08);
}

.kif-note-form-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.kif-note-form-head strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #1e3a8a;
  font-size: 1.08rem;
}

.kif-note-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 9px;
  align-items: end;
}

.kif-note-form label {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 9px 10px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #ffffff;
  color: #172554;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035);
}

.kif-note-form .note-field-title,
.kif-note-form .note-field-category {
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
}

.kif-note-form .note-field-importance {
  border-color: #fed7aa;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 100%);
}

.kif-note-form .note-field-importance select {
  max-width: min(100%, 28ch);
}

.kif-note-form .note-field-start-date {
  border-color: #bbf7d0;
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
}

.kif-note-form .note-field-end-date {
  border-color: #fde68a;
  background: linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}

.kif-note-form .note-field-status {
  border-color: #ddd6fe;
  background: linear-gradient(135deg, #f5f3ff 0%, #ffffff 100%);
}

.kif-note-form .note-field-personal {
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
  color: #1d4ed8;
}

.kif-note-form .note-field-schedule,
.kif-note-form .note-field-publish-at {
  border-color: #bae6fd;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);
  color: #075985;
}

.kif-note-form .note-field-file {
  border-color: #bae6fd;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);
}

.kif-note-form .note-field-content {
  border-color: #c7d2fe;
  background: linear-gradient(135deg, #eef2ff 0%, #ffffff 100%);
}

.kif-note-form input,
.kif-note-form select,
.kif-note-form textarea {
  width: 100%;
}

.kif-note-form input:not([type="file"]),
.kif-note-form select {
  min-height: 36px;
  padding: 7px 10px;
}

.kif-note-form textarea {
  min-height: 82px;
  resize: vertical;
}

.kif-note-check-field {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 36px;
  padding: 8px 10px;
  border: 1px solid #bbf7d0;
  border-radius: 12px;
  background: linear-gradient(135deg, #dcfce7 0%, #ffffff 100%);
  color: #166534;
  font-weight: 900;
}

.kif-note-check-field input {
  width: auto;
}

.kif-note-file-field input[type="file"] {
  min-height: 36px;
  padding: 6px 8px;
}

.kif-note-file-summary {
  color: #475569;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.kif-notes-toolbar {
  width: 100%;
  justify-content: flex-start;
  flex-wrap: wrap;
  padding: 8px 0;
}

.kif-notes-summary-row {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  gap: 8px;
  margin-left: 15ch;
}

.kif-note-entry-body {
  max-width: none;
}

.kif-notes-toolbar .search-inline {
  width: min(100%, 46ch);
  min-height: 36px;
}

.kif-notes-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.kif-notes-page .btn-small {
  min-height: 34px;
  padding: 7px 10px;
  font-size: 0.84rem;
}

.kif-notes-toolbar #kifNoteSearchClear {
  margin-left: 0;
}

.notes-summary-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 0.84rem;
  font-weight: 900;
}

.notes-summary-chip-link {
  text-decoration: none;
  cursor: pointer;
}

.notes-summary-chip-link:hover {
  transform: translateY(-1px);
  border-color: #c7d2fe;
  background: #eef2ff;
}

.notes-summary-chip-link.is-active {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
  box-shadow: inset 0 0 0 1px rgba(99, 102, 241, 0.28);
}

.kif-note-expiry-panel {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid #f59e0b;
  border-left: 5px solid #d97706;
  border-radius: 12px;
  background: #fffbeb;
  color: #7c2d12;
  font-weight: 900;
}

.kif-notes-list {
  display: grid;
  gap: 8px;
}

.kif-note-section-head {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 6px;
  padding: 9px 11px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #f8fafc;
  color: #1e3a8a;
  font-weight: 950;
}

.kif-note-section-head.history {
  margin-top: 12px;
  border-color: #fed7aa;
  background: #fff7ed;
  color: #92400e;
}

.kif-note-section-head > span {
  margin-left: auto;
  font-size: 0.84rem;
  color: #64748b;
}

.kif-note-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 11px 12px;
  border: 1px solid #dbeafe;
  border-left: 5px solid #0ea5e9;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}

.kif-note-card[hidden] {
  display: none !important;
}

.kif-note-card-main {
  min-width: 0;
}

.kif-note-card:nth-of-type(even) {
  background: #eef6ff;
}

.kif-note-card.note-importance-low,
.kif-note-card.note-importance-low:nth-of-type(even) {
  border-color: #bae6fd;
  border-left-color: #0284c7;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);
}

.kif-note-card.note-importance-normal,
.kif-note-card.note-importance-normal:nth-of-type(even) {
  border-color: #dbeafe;
  border-left-color: #64748b;
  background: linear-gradient(135deg, #f8fafc 0%, #eef6ff 100%);
}

.kif-note-card.note-importance-medium,
.kif-note-card.note-importance-medium:nth-of-type(even) {
  border-color: #fed7aa;
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fff7ed 0%, #fffbeb 100%);
}

.kif-note-card.note-importance-high,
.kif-note-card.note-importance-high:nth-of-type(even) {
  border-color: #fecaca;
  border-left-color: #dc2626;
  background: linear-gradient(135deg, #fff1f2 0%, #fff7ed 100%);
}

.kif-note-card-head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.kif-note-card-titleline {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.kif-note-card-head strong {
  color: #172554;
  font-size: 1rem;
}

.kif-note-alert-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  color: #334155;
  font-size: 0.78rem;
  font-weight: 950;
}

.kif-note-alert-badge.note-importance-low {
  border-color: #7dd3fc;
  background: #e0f2fe;
  color: #075985;
}

.kif-note-alert-badge.note-importance-normal {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #334155;
}

.kif-note-alert-badge.note-importance-medium {
  border-color: #fbbf24;
  background: #fef3c7;
  color: #92400e;
}

.kif-note-alert-badge.note-importance-high {
  border-color: #fca5a5;
  background: #fee2e2;
  color: #991b1b;
}

.kif-note-lifecycle-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 0.78rem;
  font-weight: 950;
}

.kif-note-lifecycle-badge.note-lifecycle-open {
  border-color: #bbf7d0;
  background: #dcfce7;
  color: #166534;
}

.kif-note-lifecycle-badge.note-lifecycle-active {
  border-color: #bfdbfe;
  background: #dbeafe;
  color: #1e40af;
}

.kif-note-lifecycle-badge.note-lifecycle-soon,
.kif-note-lifecycle-badge.note-lifecycle-due {
  border-color: #fbbf24;
  background: #fef3c7;
  color: #92400e;
}

.kif-note-lifecycle-badge.note-lifecycle-expired,
.kif-note-lifecycle-badge.note-lifecycle-history {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #475569;
}

.kif-note-scope-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 9px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.kif-note-scope-badge.note-scope-personal {
  background: #eef2ff;
  color: #3730a3;
  border-color: #c7d2fe;
}

.kif-note-scope-badge.note-scope-scheduled {
  background: #ecfeff;
  color: #155e75;
  border-color: #a5f3fc;
}

.kif-note-card.note-lifecycle-expired,
.kif-note-card.note-lifecycle-history {
  opacity: 0.92;
}

.kif-note-expiry-warning {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  max-width: 100%;
  margin-top: 8px;
  padding: 7px 10px;
  border: 1px solid #fbbf24;
  border-radius: 10px;
  background: #fef3c7;
  color: #92400e;
  font-size: 0.86rem;
  font-weight: 900;
}

.kif-note-card p {
  margin: 6px 0 0;
  color: #0f172a;
  line-height: 1.35;
  white-space: pre-wrap;
}

.kif-note-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
}

.kif-note-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f1f5f9;
}

.kif-note-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.kif-note-file {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  padding: 5px 8px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #eef2ff;
  color: #312e81;
  font-size: 0.82rem;
  font-weight: 800;
}

.kif-note-file a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: inherit;
  text-decoration: none;
  max-width: 32ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kif-note-file small {
  color: #64748b;
  white-space: nowrap;
}

.kif-note-file form {
  margin: 0;
}

.kif-note-file button {
  width: 22px;
  height: 22px;
  border: 0;
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  cursor: pointer;
}

.kif-note-delete-form {
  margin: 0;
}

.kif-note-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 6px;
  justify-self: end;
}

.kif-note-confirm-modal {
  position: fixed;
  inset: 0;
  z-index: 1500;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.46);
}

.kif-note-confirm-modal[hidden] {
  display: none !important;
}

.kif-note-confirm-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  width: min(460px, 100%);
  padding: 18px;
  border: 1px solid #bfdbfe;
  border-top: 5px solid #3b82f6;
  border-radius: 14px;
  background: linear-gradient(135deg, #eff6ff, #ffffff 72%);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.26);
  animation: settings-confirm-pop 0.18s ease-out;
}

.kif-note-confirm-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 1.35rem;
}

.kif-note-confirm-copy h2 {
  margin: 0;
  color: #172033;
  font-size: 1.08rem;
}

.kif-note-confirm-copy p {
  margin: 6px 0 0;
  color: #475569;
  font-weight: 800;
  line-height: 1.35;
}

.kif-note-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.kif-note-confirm-actions .btn {
  min-height: 38px;
}

.plate-confirm-modal {
  position: fixed;
  inset: 0;
  z-index: 1500;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.46);
}

.plate-confirm-modal[hidden] {
  display: none !important;
}

.plate-confirm-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  width: min(520px, 100%);
  padding: 18px;
  border: 1px solid #fecaca;
  border-top: 5px solid #dc2626;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff1f2, #ffffff 72%);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.26);
  animation: settings-confirm-pop 0.18s ease-out;
}

.plate-confirm-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #fee2e2;
  color: #b91c1c;
  font-size: 1.35rem;
}

.plate-confirm-copy h2 {
  margin: 0;
  color: #172033;
  font-size: 1.08rem;
}

.plate-confirm-copy p {
  margin: 6px 0 0;
  color: #7f1d1d;
  font-weight: 900;
  line-height: 1.35;
}

.plate-confirm-detail {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 6px 10px;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid #fee2e2;
  border-radius: 12px;
  background: #fff;
}

.plate-confirm-detail span {
  color: #64748b;
  font-weight: 900;
}

.plate-confirm-detail strong {
  color: #172033;
  font-weight: 950;
  word-break: break-word;
}

.plate-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.plate-confirm-actions .btn {
  min-height: 38px;
}

.sidebar-notes-link span {
  font-weight: 950;
  letter-spacing: 0.04em;
}

@media (max-width: 980px) {
  .kif-note-entry-shell {
    width: 100%;
  }

  .section.module-shell.kif-notes-page {
    width: calc(100% - 20px);
    max-width: none;
  }

  .kif-notes-summary-row {
    flex: 1 1 100%;
    margin-left: 0;
  }

  .kif-note-section-head > span {
    margin-left: 0;
  }

  .kif-note-grid {
    grid-template-columns: 1fr;
  }

  .kif-note-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .kif-note-entry-shell .kif-notes-body,
  .kif-notes-body {
    width: calc(100% - 16px);
    margin: 8px;
  }

  .kif-note-form {
    min-width: 0;
    padding: 10px 9px;
    border-radius: 12px;
  }

  .kif-note-grid,
  .kif-note-form label,
  .kif-note-form input,
  .kif-note-form select,
  .kif-note-form textarea {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }

  .kif-note-form input:not([type="file"]),
  .kif-note-form select {
    min-height: 42px;
    padding: 8px 10px;
  }

  .kif-note-form input[type="date"] {
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1.2;
  }

  .kif-note-check-field {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
  }

  .kif-note-file-field input[type="file"] {
    width: 100%;
    min-width: 0;
    font-size: 0.86rem;
  }

  .kif-note-form .actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}

/* KIF entry form */
.kif-entry {
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

.kif-paper-head {
  display: grid;
  grid-template-columns: 180px 1fr 180px;
  border: 1px solid #3f4b5f;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 14px;
}

.kif-paper-brand {
  min-height: 84px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  border-right: 1px solid #3f4b5f;
  padding: 8px;
  background: #f8fbff;
}

.kif-paper-brand img {
  width: 72px;
  max-width: 100%;
  height: auto;
}

.kif-paper-brand small {
  font-size: 0.64rem;
  font-weight: 800;
  color: #334155;
  text-align: center;
}

.kif-paper-title {
  min-height: 84px;
  display: grid;
  place-items: center;
  font-size: 1.14rem;
  font-weight: 800;
  color: #111827;
  letter-spacing: 0.02em;
  text-align: center;
  padding: 6px 10px;
}

.kif-paper-serial {
  min-height: 84px;
  border-left: 1px solid #3f4b5f;
  display: grid;
  place-items: center;
  color: #b42318;
  font-size: 1.24rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  background: #fff8f8;
  padding: 6px 8px;
}

.kif-entry-form {
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

.kif-entry-form .grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.kif-entry-form .grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.kif-entry-form .kif-row-main {
  position: relative;
  grid-template-columns: minmax(12ch, 15ch) minmax(29ch, 36ch) minmax(36ch, 1fr) minmax(16ch, 20ch);
  align-items: end;
  gap: 12px;
}

.kif-entry-form .kif-datetime-combo {
  display: grid;
  grid-template-columns: minmax(16ch, 1.25fr) minmax(11ch, 0.85fr);
  align-items: end;
  min-width: 0;
  border: 1px solid #d7e2f3;
  border-radius: 13px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 251, 255, 0.96));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88), 0 8px 18px rgba(15, 23, 42, 0.035);
  overflow: hidden;
}

.kif-entry-form .kif-datetime-combo .kif-floating-field {
  min-width: 0;
}

.kif-entry-form .kif-datetime-combo .kif-floating-field + .kif-floating-field {
  border-left: 1px solid #e2e8f0;
}

.kif-entry-live .kif-datetime-combo .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]) {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.kif-entry-form .kif-row-firm,
.kif-entry-form .kif-row-signature {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.kif-entry-form label {
  min-width: 0;
}

.kif-entry-form .kif-label-sub {
  display: block;
  line-height: 1.1;
}

.kif-entry-form .kif-serial-hint {
  display: inline;
  margin-top: 0;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.2;
  font-weight: 700;
}

.kif-entry-live .kif-floating-field {
  position: relative;
  display: block;
  gap: 0;
}

.kif-entry-live .kif-floating-field .kif-field-caption {
  position: absolute;
  top: 6px;
  left: 12px;
  right: 34px;
  z-index: 1;
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: 0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

.kif-entry-live .kif-floating-field .kif-label-sub {
  display: inline;
}

.kif-entry-live .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]),
.kif-entry-live .kif-floating-field > select {
  min-height: 54px;
  padding-top: 23px;
  padding-bottom: 8px;
  font-weight: 800;
}

.kif-entry-form label > input:not([type="checkbox"]):not([type="radio"]),
.kif-entry-form label > select,
.kif-entry-form label > textarea {
  width: 100%;
  min-width: 0;
}

.kif-entry-form .kif-row-desc-attach {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 10px;
}

.kif-entry-form .kif-row-desc-attach textarea {
  min-height: 150px;
  resize: vertical;
}

.kif-entry-form .kif-attachment-panel {
  display: grid;
  gap: 10px;
  align-content: start;
}

.kif-entry-form .kif-attachment-panel > label {
  margin-bottom: 0;
}

.kif-entry-form .kif-attachment-panel .account-block {
  margin-top: 0;
}

.kif-entry-form .kif-signature-attachment-row {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(24ch, 0.82fr);
  grid-template-areas:
    "signature attachment"
    "description attachment";
  gap: 10px;
  align-items: start;
}

.kif-entry-form .kif-signature-attachment-row > .account-block,
.kif-entry-form .kif-signature-attachment-row > .kif-inline-description-panel,
.kif-entry-form .kif-signature-attachment-row > .kif-attachment-panel {
  min-width: 0;
}

.kif-entry-form .kif-signature-attachment-row > .kif-alt-signature-block {
  grid-area: signature;
}

.kif-entry-form .kif-signature-attachment-row > .kif-inline-description-panel {
  grid-area: description;
}

.kif-entry-form .kif-signature-attachment-row > .kif-attachment-panel {
  grid-area: attachment;
}

.kif-entry-form .kif-inline-description-panel textarea {
  min-height: 150px;
  resize: vertical;
}

.kif-entry-live .kif-textarea-floating-field .kif-field-caption {
  top: 8px;
  left: 10px;
  right: 12px;
  width: fit-content;
  max-width: calc(100% - 24px);
  padding: 3px 8px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: linear-gradient(135deg, #e0f2fe 0%, #eef2ff 100%);
  color: #1d4ed8;
  box-shadow: 0 4px 10px rgba(59, 130, 246, 0.12);
}

.kif-entry-live .kif-textarea-floating-field > textarea {
  padding-top: 38px;
  border-color: #c7d2fe;
  background:
    linear-gradient(90deg, rgba(132, 204, 22, 0.18), transparent 7px),
    linear-gradient(180deg, #fffdf7 0%, #f8fbff 100%);
  color: #0f172a;
  font-weight: 700;
  line-height: 1.42;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 10px 24px rgba(15, 23, 42, 0.05);
}

.kif-entry-live .kif-textarea-floating-field > textarea:focus {
  border-color: #60a5fa;
  background:
    linear-gradient(90deg, rgba(132, 204, 22, 0.22), transparent 7px),
    linear-gradient(180deg, #ffffff 0%, #eff6ff 100%);
  box-shadow:
    0 0 0 3px rgba(96, 165, 250, 0.18),
    0 12px 28px rgba(37, 99, 235, 0.1);
}

.kif-entry-live .kif-textarea-floating-field > textarea::placeholder {
  color: #64748b;
  font-weight: 700;
  opacity: 1;
}

.kif-entry-form .kif-signature-attachment-row .kif-attachment-panel {
  gap: 8px;
}

.kif-entry-form .entry-section-title {
  display: flex;
  width: 100%;
  max-width: 100%;
  padding-right: 0;
  margin: 4px 0 0;
  font-size: 1.08rem;
  gap: 7px;
  flex-wrap: wrap;
  line-height: 1.2;
}

.kif-entry-form .entry-section-title .section-icon {
  width: 22px;
  height: 22px;
  font-size: 0.78rem;
}

.kif-entry-form .kif-section-title-note {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
  min-width: 0;
}

.kif-entry-form .kif-previous-menu-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 30px;
  margin-left: auto;
  padding: 6px 12px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: linear-gradient(135deg, #ffffff, #eef2ff);
  color: #4338ca;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(79, 70, 229, 0.12);
}

.kif-entry-form .kif-previous-menu-btn:hover {
  border-color: #818cf8;
  background: linear-gradient(135deg, #eef2ff, #ffffff);
  color: #312e81;
  transform: translateY(-1px);
}

.kif-entry-form .kif-previous-menu-btn i {
  font-size: 0.78rem;
}

.kif-entry-form .account-block {
  padding: 10px 12px;
  gap: 8px;
  border-radius: 11px;
}

.kif-entry-form .account-block > strong {
  font-size: 0.96rem;
}

.kif-entry-form .small-note {
  line-height: 1.35;
}

.kif-entry-form .kif-penalty-dropdown {
  display: grid;
  gap: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fbfdff;
  padding: 12px 14px;
}

.kif-entry-form .kif-penalty-dropdown > summary {
  cursor: pointer;
  font-weight: 800;
  color: #1f2f49;
}

.kif-entry-form .kif-penalty-dropdown > summary.kif-penalty-summary {
  display: grid;
  grid-template-columns: auto minmax(280px, 1fr) minmax(250px, 0.68fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 44px;
}

.kif-entry-form .kif-penalty-dropdown > summary.kif-penalty-summary::-webkit-details-marker {
  display: none;
}

.kif-entry-form .kif-penalty-dropdown > summary.kif-penalty-summary::before {
  content: ">";
  color: #1f2f49;
  font-size: 1.05rem;
  line-height: 1;
  transform: rotate(90deg);
  transition: transform 0.18s ease;
}

.kif-entry-form .kif-penalty-dropdown:not([open]) > summary.kif-penalty-summary::before {
  transform: rotate(0deg);
}

.kif-entry-form .kif-penalty-summary-title {
  min-width: 0;
}

.kif-entry-form .kif-penalty-live-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #c7d2fe;
  border-radius: 11px;
  background:
    linear-gradient(90deg, rgba(37, 99, 235, 0.08), rgba(132, 204, 22, 0.08)),
    #ffffff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 8px 18px rgba(15, 23, 42, 0.05);
  cursor: text;
}

.kif-entry-form .kif-penalty-live-search i {
  flex: 0 0 auto;
  color: #2563eb;
  font-size: 0.95rem;
}

.kif-entry-form .kif-penalty-live-search input {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #0f172a;
  font-size: 0.92rem;
  font-weight: 800;
}

.kif-entry-form .kif-penalty-live-search input::placeholder {
  color: #64748b;
  font-weight: 700;
}

.kif-entry-form .kif-penalty-search-count {
  justify-self: end;
  white-space: nowrap;
  padding: 5px 10px;
  border: 0;
  border-radius: 999px;
  background: #eef2ff;
  color: #3152c8;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.76rem;
  font-weight: 900;
}

.kif-entry-form .kif-penalty-search-count.is-empty-result {
  background: #fee2e2;
  color: #991b1b;
}

.kif-entry-form .kif-penalty-search-count:hover {
  background: #dbeafe;
  color: #1d4ed8;
}

.kif-entry-form .kif-penalty-search-empty {
  margin: 0;
  padding: 10px 12px;
  border: 1px dashed #bfdbfe;
  border-radius: 10px;
  background: #f8fbff;
  color: #475569;
  font-weight: 800;
}

.kif-entry-form .kif-penalty-dropdown .rule-check-grid {
  margin-top: 6px !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 6px;
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item {
  min-height: 38px;
  padding: 7px 9px;
  border-radius: 9px;
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item[hidden] {
  display: none !important;
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item.is-search-match {
  border-color: #93c5fd;
  background: linear-gradient(135deg, #eff6ff 0%, #f7fee7 100%);
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.08);
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item span {
  font-size: 0.84rem;
  line-height: 1.25;
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item input[type="checkbox"] {
  margin-top: 1px;
}

.kif-entry-form .actions.actions-right {
  margin-top: 2px;
}

.kif-entry {
  --kif-ink: #14213d;
  --kif-muted: #64748b;
  --kif-blue: #2563eb;
  --kif-blue-soft: #eff6ff;
  --kif-cyan-soft: #ecfeff;
  --kif-green: #65a30d;
  --kif-green-soft: #f7fee7;
  --kif-amber: #d97706;
  --kif-amber-soft: #fffbeb;
  --kif-rose: #b42318;
  --kif-rose-soft: #fff1f2;
  --kif-violet: #5b5bd6;
  --kif-violet-soft: #f5f3ff;
  background:
    linear-gradient(180deg, rgba(239, 246, 255, 0.72) 0%, rgba(255, 255, 255, 0.96) 42%, rgba(248, 250, 252, 0.94) 100%);
}

.kif-entry-form {
  padding: 12px;
  border: 1px solid #dbe7fb;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.9) 0%, rgba(255, 255, 255, 0.96) 34%, rgba(247, 254, 231, 0.58) 100%);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
}

.kif-entry-form .entry-section-title {
  padding: 8px 10px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background:
    linear-gradient(90deg, rgba(219, 234, 254, 0.96), rgba(236, 254, 255, 0.74), rgba(255, 255, 255, 0.88));
  color: var(--kif-ink);
  letter-spacing: 0;
}

.kif-entry-form .entry-section-title .section-icon {
  box-shadow: 0 8px 16px rgba(37, 99, 235, 0.14);
}

.kif-entry-form .kif-section-title-note {
  color: #52617a;
}

.kif-entry-live .kif-floating-field .kif-field-caption {
  color: #52617a;
  letter-spacing: 0;
}

.kif-entry-live .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]),
.kif-entry-live .kif-floating-field > select,
.kif-entry-form label > textarea {
  border-color: #d7e2f3;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 251, 255, 0.96));
  color: var(--kif-ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88), 0 8px 18px rgba(15, 23, 42, 0.035);
}

.kif-entry-live .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]):focus,
.kif-entry-live .kif-floating-field > select:focus,
.kif-entry-form label > textarea:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.18), 0 10px 22px rgba(37, 99, 235, 0.08);
}

.kif-entry-form .kif-row-main .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]),
.kif-entry-form .kif-row-main .kif-floating-field > select {
  background:
    linear-gradient(180deg, #ffffff 0%, var(--kif-blue-soft) 100%);
}

.kif-entry-form .kif-row-firm .kif-floating-field > input:not([type="checkbox"]):not([type="radio"]) {
  border-color: #cdeee5;
  background:
    linear-gradient(180deg, #ffffff 0%, rgba(236, 254, 255, 0.92) 100%);
}

.kif-entry-form .kif-row-signature .kif-floating-field > select {
  border-color: #ddd6fe;
  background:
    linear-gradient(180deg, #ffffff 0%, var(--kif-violet-soft) 100%);
}

.kif-entry-form .kif-serial-field > input:not([type="checkbox"]):not([type="radio"]) {
  border-color: #fed7aa;
  background:
    linear-gradient(180deg, #ffffff 0%, var(--kif-amber-soft) 100%);
  color: #9a3412;
}

.kif-entry-form .account-block {
  border-color: #d8e8c0;
  background:
    linear-gradient(90deg, rgba(132, 204, 22, 0.16), transparent 8px),
    linear-gradient(135deg, #fbfff5 0%, #f6fbff 100%);
}

.kif-entry-form .kif-alt-signature-block {
  border-color: #bef264;
  background:
    linear-gradient(90deg, rgba(101, 163, 13, 0.26), transparent 8px),
    linear-gradient(135deg, #f7fee7 0%, #f8fbff 100%);
}

.kif-entry-form .kif-alt-signature-head strong {
  color: #1f3f12;
}

.kif-entry-form .kif-alt-signature-toggle {
  color: var(--kif-ink);
}

.kif-entry-form .kif-attachment-panel > label {
  color: #243563;
  font-weight: 900;
}

.kif-entry-form .kif-attachment-panel input[type="file"] {
  border-color: #d8d7ff;
  background:
    linear-gradient(90deg, rgba(91, 91, 214, 0.08), rgba(37, 99, 235, 0.05)),
    #ffffff;
}

.kif-entry-form .kif-attachment-panel .account-block {
  border-color: #d8d7ff;
  background:
    linear-gradient(90deg, rgba(91, 91, 214, 0.2), transparent 8px),
    linear-gradient(135deg, #f5f3ff 0%, #f8fbff 100%);
}

.kif-entry-live .kif-textarea-floating-field .kif-field-caption {
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #dbeafe 0%, #ecfeff 100%);
  color: #1d4ed8;
}

.kif-entry-live .kif-textarea-floating-field > textarea {
  border-color: #c7d2fe;
  background:
    linear-gradient(90deg, rgba(37, 99, 235, 0.13), transparent 8px),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.kif-entry-form .kif-penalty-dropdown {
  border-color: #fed7aa;
  background:
    linear-gradient(90deg, rgba(180, 35, 24, 0.12), transparent 8px),
    linear-gradient(135deg, #fff7ed 0%, #ffffff 45%, #f8fbff 100%);
  box-shadow: 0 14px 34px rgba(180, 35, 24, 0.055);
}

.kif-entry-form .kif-penalty-dropdown > summary {
  color: var(--kif-ink);
}

.kif-entry-form .kif-penalty-dropdown > summary.kif-penalty-summary::before {
  color: var(--kif-rose);
}

.kif-entry-form .kif-penalty-summary-title {
  color: var(--kif-ink);
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item {
  border-color: #f1d9c7;
  background:
    linear-gradient(180deg, #ffffff 0%, #fffaf5 100%);
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item:hover {
  border-color: #fdba74;
  background:
    linear-gradient(135deg, #fff7ed 0%, #ffffff 100%);
  box-shadow: 0 10px 20px rgba(217, 119, 6, 0.08);
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item:has(input[type="checkbox"]:checked) {
  border-color: #f87171;
  background:
    linear-gradient(135deg, #fff1f2 0%, #fff7ed 100%);
  box-shadow: 0 10px 22px rgba(180, 35, 24, 0.11);
}

.kif-entry-form .kif-penalty-dropdown .rule-check-item span strong {
  color: var(--kif-rose);
}

.kif-entry-form .kif-penalty-dropdown > .account-block {
  border-color: #fed7aa;
  background:
    linear-gradient(90deg, rgba(217, 119, 6, 0.18), transparent 8px),
    linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}

.kif-live-preview-head {
  border-color: #c7d2fe;
  background:
    linear-gradient(90deg, #eef2ff 0%, #ecfeff 100%);
  color: var(--kif-ink);
  box-shadow: 0 10px 24px rgba(37, 99, 235, 0.08);
}

.kif-live-preview-head span {
  color: #52617a;
}

.kif-live-paper {
  border-color: #dbe7fb;
  background:
    linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.075);
}

.kif-live-paper-top {
  border-color: #64748b;
  background: #f8fbff;
}

.kif-live-paper-top span,
.kif-live-paper-title {
  color: var(--kif-ink);
  letter-spacing: 0;
}

.kif-live-paper-top strong {
  border-left-color: #64748b;
  background: linear-gradient(180deg, #fff1f2 0%, #fff7ed 100%);
  color: var(--kif-rose);
}

.kif-live-meta div {
  border-color: #e0e7ff;
  background:
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.kif-live-meta dt,
.kif-live-signatures span {
  color: #64748b;
  letter-spacing: 0;
}

.kif-live-block b {
  color: var(--kif-ink);
}

.kif-live-tags span {
  background: #eef2ff;
  color: #3152c8;
}

.kif-entry-live {
  max-width: 1680px;
}

.kif-entry-live .kif-live-close {
  position: absolute;
  top: 14px;
  right: 18px;
  z-index: 3;
}

.kif-live-edit-shell {
  display: grid;
  grid-template-columns: minmax(680px, 2fr) minmax(360px, 1fr);
  gap: 18px;
  align-items: start;
}

.kif-live-edit-shell .kif-entry-form {
  min-width: 0;
}

@media (min-width: 1501px) {
  .app-shell:has(.kif-entry-live) .sidebar {
    transform: none;
  }

  .app-shell:has(.kif-entry-live) .main-pane {
    margin-left: var(--sidebar-width);
    width: calc(100% - var(--sidebar-width));
  }

  .app-shell:has(.kif-entry-live) .topbar {
    display: none;
  }

  .content:has(.kif-entry-live) {
    padding: 0 clamp(8px, 0.8vw, 14px) clamp(16px, 1.4vw, 22px) 0;
  }

  .section.personnel-entry.kif-entry-live {
    width: 100%;
    max-width: none;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .kif-live-edit-shell {
    grid-template-columns: minmax(720px, 2fr) minmax(380px, 1fr);
    gap: 16px;
  }

  .app-shell:has(.kif-entry-live) .kif-live-preview {
    top: 14px;
  }
}

.kif-live-preview {
  position: sticky;
  top: 86px;
  display: grid;
  gap: 12px;
  min-width: 0;
}

.kif-live-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid #93c5fd;
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(37, 99, 235, 0.24), rgba(13, 148, 136, 0.2)),
    #eef6ff;
  color: #172036;
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.13);
}

.kif-live-preview-head div {
  display: grid;
  gap: 2px;
}

.kif-live-preview-head strong {
  font-size: 1rem;
}

.kif-live-preview-head span {
  color: #52617a;
  font-size: 0.86rem;
  font-weight: 700;
}

.kif-live-preview-head i {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #60a5fa;
  border-radius: 8px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 1.1rem;
}

.kif-live-paper {
  position: relative;
  display: grid;
  gap: 12px;
  border: 1px solid #bfdbfe;
  border-top: 3px solid #4338ca;
  border-radius: 8px;
  background:
    linear-gradient(180deg, #ffffff 0%, #f1f7ff 100%);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.1);
  color: #20283a;
  padding: 18px;
  min-height: 390px;
}

.kif-live-common {
  min-height: 0;
  padding: 16px;
}

.kif-live-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 6px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.96), rgba(236, 253, 245, 0.92));
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.08);
}

.kif-live-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #475467;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1.2;
  cursor: pointer;
}

.kif-live-tab.active {
  border-color: #93c5fd;
  background:
    linear-gradient(135deg, #ffffff 0%, #eff6ff 100%);
  color: #1d4ed8;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.12);
}

.kif-live-tab:focus-visible {
  outline: 3px solid rgba(99, 102, 241, 0.28);
  outline-offset: 2px;
}

.kif-live-panel {
  min-height: 230px;
}

.kif-live-panel[hidden] {
  display: none;
}

.kif-live-note {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #dbeafe;
  border-radius: 7px;
  background:
    linear-gradient(135deg, #ffffff 0%, #eff6ff 100%);
  color: #52617a;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.45;
}

.kif-live-paper-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #64748b;
  border-radius: 6px;
  background: #eef6ff;
  overflow: hidden;
}

.kif-live-paper-top span,
.kif-live-paper-top strong {
  padding: 12px;
  min-width: 0;
}

.kif-live-paper-top span {
  color: #172036;
  font-weight: 900;
  letter-spacing: 0;
  text-align: center;
}

.kif-live-paper-top strong {
  align-self: stretch;
  display: grid;
  place-items: center;
  min-width: 110px;
  border-left: 1px solid #64748b;
  color: #991b1b;
  background: linear-gradient(180deg, #fff1f2 0%, #fff7ed 100%);
}

.kif-live-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.kif-live-meta div {
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 6px;
  background:
    linear-gradient(180deg, #ffffff 0%, #eef6ff 100%);
}

.kif-live-meta div:nth-child(2n) {
  border-color: #bae6fd;
  background:
    linear-gradient(180deg, #ffffff 0%, #eaf8ff 100%);
}

.kif-live-meta div:nth-child(3),
.kif-live-meta div:nth-child(4) {
  border-color: #a7f3d0;
  background:
    linear-gradient(180deg, #ffffff 0%, #ecfdf5 100%);
}

.kif-live-meta div:nth-child(5),
.kif-live-meta div:nth-child(6) {
  border-color: #d8b4fe;
  background:
    linear-gradient(180deg, #ffffff 0%, #f5edff 100%);
}

.kif-live-meta dt {
  margin-bottom: 3px;
  color: #667085;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.kif-live-meta dd {
  margin: 0;
  color: #182033;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.kif-live-meta [data-preview="firm_name"],
.kif-live-meta [data-preview="firm_person_name"] {
  font-style: italic;
  font-weight: 900;
}

.kif-live-meta [data-preview="firm_person_title"] {
  font-style: italic;
}

.kif-live-block {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #bfdbfe;
  border-radius: 7px;
  background:
    linear-gradient(135deg, #ffffff 0%, #eef6ff 100%);
}

.kif-live-block b {
  color: #172036;
}

.kif-live-block p,
.kif-live-tutanak p {
  margin: 0;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.kif-live-tutanak strong {
  font-weight: 900;
}

.kif-live-tutanak em {
  font-style: italic;
}

.kif-live-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.kif-live-tags span {
  max-width: 100%;
  padding: 5px 8px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 0.78rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.kif-live-tags .is-empty {
  background: #f2f4f7;
  color: #667085;
}

.kif-live-block small {
  color: #667085;
  font-weight: 700;
}

.kif-live-signatures {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: auto;
  padding-top: 22px;
}

.kif-live-signatures-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kif-live-signatures div {
  min-width: 0;
  text-align: center;
  border-top: 1px solid #98a2b3;
  padding-top: 8px;
}

.kif-live-signatures span {
  display: block;
  color: #667085;
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
}

.kif-live-signatures strong {
  display: block;
  color: #253047;
  font-size: 0.86rem;
  overflow-wrap: anywhere;
}

.kif-live-paper-title {
  padding: 8px 10px;
  border: 1px solid #93c5fd;
  border-radius: 7px;
  background:
    linear-gradient(90deg, #dbeafe 0%, #e0f2fe 100%);
  color: #1e3a8a;
  text-align: center;
  font-size: 1.35rem;
  font-weight: 900;
  letter-spacing: 0;
}

.kif-live-tutanak {
  gap: 10px;
  min-height: 350px;
  border-top-color: #0284c7;
  background:
    linear-gradient(135deg, #ffffff 0%, #eef6ff 56%, #fff4df 100%);
}

.kif-live-tutanak p {
  font-size: 0.94rem;
  line-height: 1.45;
}

.kif-live-tutanak .kif-live-signatures {
  margin-top: clamp(14px, 3vh, 26px);
  padding-top: 14px;
}

.kif-live-tutanak h3 {
  margin: 0;
  text-align: center;
  font-size: 1rem;
  color: #253047;
}

.kif-attachment-table {
  width: 100%;
  min-width: 0 !important;
  table-layout: fixed;
}

.kif-attachment-table th:nth-child(1),
.kif-attachment-table td:nth-child(1) {
  width: 52px;
}

.kif-attachment-table th:nth-child(3),
.kif-attachment-table td:nth-child(3) {
  width: 110px;
  white-space: nowrap;
}

.kif-attachment-table th:nth-child(4),
.kif-attachment-table td:nth-child(4) {
  width: 96px;
}

.kif-existing-attachment-name-cell {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.kif-existing-attachment-actions {
  justify-content: center;
  flex-wrap: nowrap;
}

.kif-existing-attachment-remove-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
}

.kif-existing-attachment-row.is-marked-for-removal td {
  background: #fef2f2;
}

.kif-existing-attachment-row.is-marked-for-removal .file-link {
  color: #991b1b;
  text-decoration: line-through;
}

.kif-existing-attachment-toggle.is-marked {
  background: #fff7ed;
  color: #c2410c;
  border-color: #fdba74;
}

.kif-alt-signature-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 8px;
  font-size: 0.94rem;
  font-weight: 700;
  color: #1f2f49;
  cursor: pointer;
}

.kif-alt-signature-block {
  align-content: start;
}

.kif-alt-signature-head {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.kif-alt-signature-head strong {
  font-size: 0.96rem;
}

.kif-alt-signature-head .kif-alt-signature-toggle {
  margin: 0;
}

.kif-alt-signature-toggle input[type="checkbox"] {
  width: 18px;
  height: 18px;
}

.kif-attachment-pending-list {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

.kif-attachment-pending-item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border: 1px solid #d8e1f0;
  border-radius: 9px;
  background: #f8fbff;
}

.kif-attachment-pending-name {
  font-size: 0.86rem;
  color: #334155;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kif-attachment-remove {
  min-height: 24px;
  height: 24px;
  min-width: 24px;
  width: 24px;
  padding: 0;
  border: 1px solid #fecaca;
  border-radius: 7px;
  background: #fff1f2;
  color: #b91c1c;
  font-weight: 800;
  line-height: 1;
}

.kif-attachment-remove:hover {
  transform: none;
  filter: brightness(0.97);
}

.kif-existing-remove-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.84rem;
  font-weight: 700;
  color: #475569;
  cursor: pointer;
}

.kif-existing-remove-label input[type="checkbox"] {
  width: 16px;
  height: 16px;
}

.kif-section-title {
  margin: 2px 0 0;
  padding: 8px 10px;
  font-size: 0.95rem;
  border-radius: 10px;
  border: 1px solid #d7deef;
  background: #f8faff;
  color: #1f2f49;
  font-weight: 800;
}

.rule-check-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
}

.rule-check-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border: 1px solid #dbe2f0;
  border-radius: 10px;
  background: #fff;
  min-height: 42px;
  padding: 8px 10px;
}

.rule-check-item input[type="checkbox"] {
  margin-top: 2px;
}

.rule-check-item span {
  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.3;
  color: #243349;
}

.rule-check-item span strong {
  color: #b42318;
  margin-right: 4px;
}

/* Personnel entry */
.personnel-entry {
  max-width: min(100%, 1440px);
  padding: 24px 24px 20px;
}

.personnel-entry-modal {
  position: relative;
  border-radius: 18px;
  margin-top: 10px;
  padding-top: 14px;
}

.personnel-entry-modal .entry-form {
  gap: 16px;
  --personnel-entry-content-width: 100%;
}

.personnel-entry-modal .entry-form > .entry-section-title,
.personnel-entry-modal .entry-form > .entry-grid-personnel,
.personnel-entry-modal .entry-form > .entry-check,
.personnel-entry-modal .entry-form > .entry-divider,
.personnel-entry-modal .entry-form > .entry-account-head,
.personnel-entry-modal .entry-form > .account-block,
.personnel-entry-modal .entry-form > .small-note,
.personnel-entry-modal .entry-form > .actions {
  width: var(--personnel-entry-content-width);
  max-width: 100%;
}

.personnel-entry-modal .entry-head.entry-head-compact {
  position: absolute;
  top: 14px;
  right: 18px;
  z-index: 2;
  margin: 0;
}

.personnel-entry-modal .entry-form > .entry-section-title {
  margin-top: 0;
  padding-right: 52px;
}

.personnel-entry-modal .kif-entry-form > .entry-section-title {
  padding-right: 0;
}

.personnel-entry-modal form .entry-grid-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: stretch;
}

.personnel-entry-modal form .entry-grid-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: stretch;
}

.asset-description-field {
  width: 100%;
}

.asset-entry-page .page-title {
  font-size: clamp(2rem, 4.2vw, 3.15rem);
  line-height: 1.02;
}

.asset-entry-page .page-subtitle {
  margin-top: 6px;
  font-size: 0.98rem;
}

.asset-entry-page .section {
  margin-top: 12px;
}

.asset-description-text {
  min-height: 58px;
  max-height: 86px;
  resize: vertical;
}

.section.asset-entry-section {
  width: min(100%, 960px);
  max-width: 960px;
  margin-right: auto;
  padding: 12px 14px;
  border-color: #bfdbfe;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98) 0%, rgba(255, 255, 255, 0.98) 46%, rgba(240, 253, 250, 0.96) 100%);
  box-shadow:
    inset 0 4px 0 #6d72ff,
    0 16px 34px rgba(31, 41, 55, 0.08);
}

.asset-entry-form {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(320px, 380px) minmax(360px, 440px) minmax(220px, 260px);
  gap: 8px 12px;
  align-items: start;
  justify-content: start;
}

.asset-type-hidden-select {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  border: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none;
}

.asset-entry-form .asset-maintenance-settings {
  grid-column: 1 / -1;
  padding: 8px 10px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8fbff 0%, #eef7ff 100%);
}

.asset-entry-form .asset-maintenance-note {
  grid-column: 1 / -1;
  line-height: 1.35;
}

.asset-type-picker {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 2px;
  padding: 7px;
  border: 1px solid rgba(99, 102, 241, 0.16);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
}

.asset-type-picker-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid #d9e2f3;
  border-radius: 8px;
  background: #f8fafc;
  color: #1f2a44;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 5px 12px rgba(31, 41, 55, 0.04);
}

.asset-type-picker-btn.active {
  border-color: #6366f1;
  background: linear-gradient(135deg, #eef2ff 0%, #ecfeff 100%);
  color: #172554;
  box-shadow:
    inset 0 -3px 0 #6366f1,
    0 8px 18px rgba(79, 70, 229, 0.12);
}

.asset-type-picker-btn i {
  color: #5661f4;
}

.asset-type-picker-btn:nth-child(1) i {
  color: #2563eb;
}

.asset-type-picker-btn:nth-child(2) i {
  color: #0891b2;
}

.asset-type-picker-btn:nth-child(3) i {
  color: #7c3aed;
}

.asset-type-picker-btn:nth-child(4) i {
  color: #ea580c;
}

.asset-entry-form #tracking_group {
  grid-column: 1;
  grid-row: 2;
  width: 100%;
  padding: 7px;
  border: 1px solid #c7d2fe;
  border-left: 4px solid #6366f1;
  border-radius: 12px;
  background: rgba(238, 242, 255, 0.72);
}

.asset-entry-form #quantity_group {
  grid-column: 2;
  grid-row: 2;
  width: min(100%, 260px);
  align-self: start;
}

.asset-entry-form .grid.two,
.asset-entry-form .grid.three {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 12px;
  align-items: end;
}

.asset-entry-form #inventory_group {
  grid-column: 2;
  grid-row: 2;
  grid-template-columns: 1fr;
  width: min(100%, 420px);
}

.asset-entry-form #inventory_group label {
  display: block;
  white-space: nowrap;
}

.asset-entry-form #inventory_group input {
  display: block;
  width: min(100%, 240px);
  margin-top: 4px;
}

.asset-entry-form #brand_model_group,
.asset-entry-form #serial_battery_group,
.asset-entry-form #plate_region_group {
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
}

.asset-entry-form #brand_model_group {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(180px, 0.7fr);
}

.asset-entry-form #plate_region_group {
  align-items: start;
}

.asset-entry-form label {
  min-width: 0;
}

.asset-entry-form label > input:not([type="checkbox"]):not([type="radio"]),
.asset-entry-form label > select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 38px;
  box-sizing: border-box;
}

.asset-entry-form .asset-maintenance-settings label > input[type="number"] {
  display: block;
  width: min(100%, 220px);
  max-width: 220px;
}

.asset-entry-form label > input::placeholder {
  color: #94a3b8;
  font-weight: 800;
  opacity: 0.72;
}

.asset-entry-form #asset_rules_note {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 0;
  padding: 8px 10px;
  border: 1px solid #bae6fd;
  border-radius: 12px;
  background: linear-gradient(135deg, #f0f9ff 0%, #f0fdfa 100%);
  color: #475569;
  line-height: 1.4;
}

.asset-entry-form label.field-invalid > input:not([type="checkbox"]):not([type="radio"]),
.asset-entry-form label.field-invalid > select,
.asset-entry-form label.field-invalid > textarea {
  border-color: #dc2626;
  background: #fff7f7;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.14);
}

.asset-entry-form .field-error-message {
  display: block;
  margin-top: 5px;
  color: #b91c1c;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

.asset-entry-form #status_group {
  grid-column: 3;
  grid-row: 2;
  width: min(100%, 190px);
  align-self: start;
}

.asset-entry-form #description_group {
  grid-column: 1 / span 2;
  align-self: start;
}

.asset-entry-form.mode-location #brand_model_group,
.asset-entry-form.mode-location #serial_battery_group {
  display: none !important;
}

.asset-entry-form.mode-location #plate_region_group {
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asset-entry-form.mode-location #inventory_group {
  grid-column: 3;
  grid-row: 2;
  width: min(100%, 260px);
}

.asset-entry-form.mode-location #inventory_group label {
  white-space: nowrap;
}

.asset-entry-form.mode-location #description_group {
  grid-column: 1 / span 2;
}

.asset-entry-form.mode-location #status_group {
  grid-column: 3;
  grid-row: 3;
  width: min(100%, 240px);
}

.asset-entry-form.mode-location #asset_rules_note {
  grid-column: 1 / -1;
}

.asset-entry-form.mode-telsiz #plate_region_group {
  display: none !important;
}

.asset-entry-form.mode-telsiz #brand_model_group {
  grid-column: 1 / span 2;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asset-entry-form.mode-telsiz #serial_battery_group {
  grid-column: 1 / span 2;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asset-entry-form.mode-telsiz #description_group {
  grid-column: 1 / span 2;
}

.asset-entry-form.mode-telsiz #asset_rules_note {
  grid-column: 1 / span 2;
}

.asset-entry-form.mode-telsiz #status_group,
.asset-entry-form.mode-other #status_group {
  grid-column: 3;
  grid-row: 2;
}

.asset-entry-form.mode-other #brand_model_group,
.asset-entry-form.mode-other #serial_battery_group,
.asset-entry-form.mode-other #plate_region_group {
  display: contents !important;
}

.asset-entry-form.mode-other #brand_model_group label:nth-child(1) {
  grid-column: 1;
  grid-row: 3;
}

.asset-entry-form.mode-other #brand_model_group label:nth-child(2) {
  grid-column: 2;
  grid-row: 3;
}

.asset-entry-form.mode-other #serial_group {
  grid-column: 1;
  grid-row: 4;
}

.asset-entry-form.mode-other #region_group {
  grid-column: 2;
  grid-row: 4;
}

.asset-entry-form.mode-other #place_group {
  grid-column: 1;
  grid-row: 5;
}

.asset-entry-form.mode-other #description_group {
  grid-column: 1 / span 2;
  grid-row: 6;
}

.asset-entry-form.mode-other #asset_rules_note {
  grid-column: 1 / span 2;
}

.asset-entry-form.mode-plate #plate_maintenance_group {
  grid-column: 1 / span 2;
  grid-row: 3;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asset-entry-form.mode-plate #brand_model_group,
.asset-entry-form.mode-plate #serial_battery_group,
.asset-entry-form.mode-plate #plate_region_group {
  display: contents !important;
}

.asset-entry-form.mode-plate #brand_model_group label:nth-child(1) {
  grid-column: 1;
  grid-row: 4;
}

.asset-entry-form.mode-plate #brand_model_group label:nth-child(2) {
  grid-column: 2;
  grid-row: 4;
}

.asset-entry-form.mode-plate #serial_group {
  grid-column: 1;
  grid-row: 5;
}

.asset-entry-form.mode-plate #region_group {
  grid-column: 2;
  grid-row: 5;
}

.asset-entry-form.mode-plate #vehicle_type_group {
  grid-column: 1;
  grid-row: 6;
}

.asset-entry-form.mode-plate #place_group {
  grid-column: 2;
  grid-row: 6;
}

.asset-entry-form.mode-plate #description_group {
  grid-column: 1 / span 2;
  grid-row: 7;
}

.asset-entry-form.mode-plate #asset_rules_note {
  grid-column: 1 / span 2;
}

.asset-entry-form > .actions {
  grid-column: 1 / -1;
  margin-top: 0;
}

@media (min-width: 721px) {
  .asset-entry-form .asset-maintenance-settings {
    grid-template-columns: minmax(0, 0.7fr) minmax(0, 0.95fr) minmax(220px, 1fr);
  }

  .asset-entry-form .asset-maintenance-note {
    grid-column: auto;
    margin-bottom: 7px;
  }
}

@media (max-width: 720px) {
  .section.asset-entry-section {
    width: 100%;
    max-width: 100%;
  }

  .assignment-personnel-grid,
  .assignment-top-grid,
  .assignment-meta-grid {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .operation-switch {
    padding-inline: 10px;
  }

  .operation-switch-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .operation-tab {
    justify-content: center;
    padding-inline: 8px;
    text-align: center;
  }

  .asset-type-picker {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .asset-type-picker-btn {
    justify-content: center;
  }

  .asset-entry-form .grid.two,
  .asset-entry-form .grid.three {
    grid-template-columns: 1fr;
  }

  .asset-entry-form,
  .asset-entry-form #tracking_group,
  .asset-entry-form #inventory_group,
  .asset-entry-form #quantity_group,
  .asset-entry-form #brand_model_group,
  .asset-entry-form #serial_battery_group,
  .asset-entry-form #plate_region_group,
  .asset-entry-form #status_group,
  .asset-entry-form #description_group,
  .asset-entry-form #asset_rules_note,
  .asset-entry-form > .actions {
    grid-column: 1;
  }

  .asset-entry-form #status_group,
  .asset-entry-form #description_group {
    grid-row: auto;
  }

  .asset-entry-form #status_group {
    width: 100%;
  }
}

.entry-head {
  display: grid;
  grid-template-columns: 54px 1fr auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 8px;
}

.entry-head.entry-head-compact {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0;
}

.entry-icon {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: linear-gradient(140deg, #dce6ff, #edf2ff);
  color: #3256d6;
  display: grid;
  place-items: center;
}

.entry-icon svg {
  width: 30px;
  height: 30px;
  fill: currentColor;
}

.entry-close {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 1px solid var(--border);
  display: inline-grid;
  place-items: center;
  color: #6f7d91;
  font-weight: 800;
  background: #fff;
}

.entry-close:hover {
  background: #f2f6fc;
}

.entry-form {
  gap: 14px;
}

.entry-section-title {
  margin: 8px 0 2px;
  font-size: 1.85rem;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.section-icon {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.82rem;
  line-height: 1;
  font-weight: 900;
}

.section-icon-blue {
  color: #3c63ea;
  background: #e5ecff;
}

.section-icon-green {
  color: #4f9f2f;
  background: #e7f4df;
}

.entry-grid-two {
  grid-template-columns: repeat(2, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

.entry-grid-three {
  grid-template-columns: repeat(3, minmax(var(--col-min-ch), var(--col-max-ch)));
  justify-content: start;
}

.entry-grid-personnel {
  justify-content: start;
  align-items: end;
  column-gap: 16px;
}

.personnel-entry .entry-grid-personnel {
  gap: 10px 12px;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-left: 5px solid #4f67f6;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 100%);
  box-shadow: 0 10px 22px rgba(79, 103, 246, 0.08);
}

.personnel-entry-modal .entry-form > .entry-grid-personnel {
  width: var(--personnel-entry-content-width);
  max-width: 100%;
}

.personnel-entry .entry-row-name {
  border-left-color: #14b8a6;
  background: linear-gradient(135deg, #f0fdfa 0%, #ecfeff 100%);
}

.personnel-entry .entry-row-senior-dept,
.personnel-entry .entry-row-team-dept {
  border-left-color: #f59e0b;
  background: linear-gradient(135deg, #fff7ed 0%, #fffbeb 100%);
}

.personnel-entry .entry-row-senior-dept {
  border-left-color: #0ea5e9;
  background: linear-gradient(135deg, #eff6ff 0%, #ecfeff 100%);
}

.personnel-entry .entry-row-email-phone {
  border-left-color: #8b5cf6;
  background: linear-gradient(135deg, #f5f3ff 0%, #eef2ff 100%);
}

.personnel-entry .entry-row-dates-team {
  border-left-color: #22c55e;
  background: linear-gradient(135deg, #f0fdf4 0%, #ecfdf5 100%);
}

.personnel-entry .entry-grid-personnel label {
  min-width: 0;
}

.personnel-entry .entry-grid-personnel label,
.personnel-entry .account-block label {
  color: #172033;
  line-height: 1.12;
}

.personnel-entry .entry-grid-personnel .personnel-label-note {
  display: block;
  margin-top: 2px;
  color: #475569;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.05;
}

.personnel-field-hint {
  display: block;
  margin-top: 5px;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.15;
}

.personnel-field-hint[hidden] {
  display: none !important;
}

.personnel-field-hint-error {
  color: #b91c1c;
}

.personnel-entry .entry-grid-personnel input:not([type="checkbox"]):not([type="radio"]),
.personnel-entry .entry-grid-personnel select,
.personnel-entry .account-block input:not([type="checkbox"]):not([type="radio"]),
.personnel-entry .account-block select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 42px;
  padding: 8px 12px;
  border-color: #cbd8ea;
  background-color: rgba(255, 255, 255, 0.94);
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
}

.personnel-entry .entry-grid-personnel input:focus,
.personnel-entry .entry-grid-personnel select:focus,
.personnel-entry .account-block input:focus,
.personnel-entry .account-block select:focus {
  border-color: #4f67f6;
  box-shadow: 0 0 0 3px rgba(79, 103, 246, 0.14);
}

.personnel-phone-field {
  display: grid;
  grid-template-columns: minmax(24ch, 30ch) minmax(16ch, 1fr);
  gap: 8px;
}

.personnel-phone-field select,
.personnel-phone-field input {
  min-width: 0;
}

.personnel-phone-field select {
  padding-left: 10px;
  padding-right: 8px;
  text-overflow: ellipsis;
}

.personnel-entry .entry-form select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.personnel-entry-modal form .entry-row-sicil-tc {
  grid-template-columns: minmax(10ch, 11ch) minmax(19ch, 20ch) minmax(48ch, 1.65fr) minmax(28ch, 1fr) minmax(16ch, 18ch);
}

.personnel-entry-modal .entry-form > .entry-row-sicil-tc {
  width: var(--personnel-entry-content-width);
  max-width: var(--personnel-entry-content-width);
}

.personnel-entry-modal form .entry-row-name {
  grid-template-columns: minmax(18ch, 1fr) minmax(18ch, 1fr) minmax(18ch, 1fr) minmax(22ch, 24ch);
}

.personnel-entry-modal form .entry-row-senior-dept {
  grid-template-columns: minmax(38ch, 1.3fr) minmax(28ch, 1fr) minmax(36ch, 1.25fr) minmax(22ch, 24ch);
  align-items: start;
}

.personnel-entry-modal .entry-form > .entry-row-senior-dept,
.personnel-entry-modal .entry-form > .entry-row-dates-team {
  width: var(--personnel-entry-content-width);
  max-width: var(--personnel-entry-content-width);
}

.personnel-entry-modal .entry-form > .entry-row-senior-dept {
  max-width: var(--personnel-entry-content-width);
}

.personnel-entry-modal form .entry-row-team-dept {
  grid-template-columns: minmax(42ch, 48ch);
}

.personnel-entry-modal form .entry-row-team-dept.has-terminal-unit {
  grid-template-columns: minmax(42ch, 48ch);
}

.personnel-entry-modal form .entry-row-email-phone {
  grid-template-columns: minmax(0, 1fr);
}

.personnel-entry-modal form .entry-row-dates-team {
  grid-template-columns: minmax(22ch, 24ch) minmax(22ch, 24ch);
}

.personnel-entry-modal form .entry-row-dates-team input[type="date"] {
  min-width: 0;
}

.personnel-sicil-duplicate {
  display: grid;
  gap: 12px;
  width: var(--personnel-entry-content-width);
  max-width: 100%;
  padding: 14px 16px;
  border: 1px solid #fecaca;
  border-left: 5px solid #dc2626;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff1f2 0%, #fff7ed 100%);
  box-shadow: 0 12px 28px rgba(220, 38, 38, 0.1);
}

.personnel-sicil-duplicate[hidden] {
  display: none !important;
}

.personnel-sicil-duplicate-head {
  display: grid;
  gap: 3px;
  color: #7f1d1d;
}

.personnel-sicil-duplicate-head strong {
  font-size: 1.02rem;
}

.personnel-sicil-duplicate-head span {
  color: #9a3412;
  font-weight: 750;
}

.personnel-sicil-duplicate-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(12ch, auto) minmax(18ch, 1fr));
  gap: 7px 12px;
  padding: 10px 12px;
  border: 1px solid #fed7aa;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
}

.personnel-sicil-duplicate-grid span {
  color: #64748b;
  font-size: 0.86rem;
  font-weight: 800;
}

.personnel-sicil-duplicate-grid strong {
  color: #172033;
  font-size: 0.9rem;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.personnel-sicil-duplicate-actions {
  display: flex;
  justify-content: flex-start;
}

.personnel-entry .entry-grid-personnel input.personnel-sicil-duplicate-input {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.12);
}

.personnel-entry .entry-grid-personnel input.personnel-sicil-checking-input {
  border-color: #f59e0b;
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);
}

.personnel-entry .entry-grid-personnel input.personnel-tc-invalid-input {
  border-color: #dc2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.12);
}

@media (max-width: 720px) {
  .personnel-sicil-duplicate-grid {
    grid-template-columns: minmax(10ch, auto) minmax(0, 1fr);
  }
}

.entry-stack {
  display: grid;
  gap: 8px;
}

.entry-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.entry-check input[type="checkbox"] {
  width: 18px;
  height: 18px;
}

.password-page {
  max-width: 980px;
}

.password-section {
  padding: 16px 18px;
  max-width: 860px;
}

.password-form {
  max-width: 760px;
}

.password-grid {
  grid-template-columns: repeat(2, minmax(18ch, 30ch));
  justify-content: start;
}

.password-grid-single {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(18ch, 30ch);
  justify-content: start;
}

.password-user-field {
  width: min(100%, 60ch);
}

.password-user-field select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.password-user-picker {
  position: relative;
}

.password-user-picker input[type="search"] {
  width: 100%;
  min-width: 0;
}

.password-user-options {
  position: absolute;
  inset-inline: 0;
  top: calc(100% + 6px);
  z-index: 40;
  display: grid;
  gap: 4px;
  max-height: 280px;
  overflow-y: auto;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(18, 32, 63, 0.18);
}

.password-user-options[hidden] {
  display: none !important;
}

.password-user-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  border: 0;
  border-radius: 10px;
  background: #f8fbff;
  color: var(--text);
  font: inherit;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.password-user-option:hover,
.password-user-option:focus-visible {
  background: #e9eeff;
  outline: 2px solid rgba(88, 101, 242, 0.28);
}

.password-user-option small {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.password-user-empty {
  padding: 10px 12px;
  color: var(--muted);
  font-weight: 700;
}

.password-user-picker .input-invalid {
  border-color: #c21f1a;
  box-shadow: 0 0 0 3px rgba(194, 31, 26, 0.12);
}

.password-actions {
  justify-content: flex-start;
}

.entry-check.compact {
  font-size: 0.9rem;
  font-weight: 600;
}

.entry-divider {
  border: 0;
  border-top: 1px solid var(--border);
  width: 100%;
  margin: 6px 0;
}

.entry-account-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.entry-account-head .entry-section-title {
  margin: 0;
}

.account-block {
  display: grid;
  gap: 12px;
  border: 1px solid #d7e5f7;
  border-left: 5px solid #84cc16;
  border-radius: 14px;
  background: linear-gradient(135deg, #f7fee7 0%, #f8fbff 58%, #eef6ff 100%);
  padding: 12px 14px;
  box-shadow: 0 10px 22px rgba(132, 204, 22, 0.08);
}

.personnel-account-block {
  gap: 10px;
  padding: 10px 12px;
}

.personnel-account-block .account-row {
  display: grid;
  gap: 10px;
  align-items: start;
}

.personnel-account-block .account-row-main {
  grid-template-columns: minmax(22ch, 1fr) minmax(32ch, 1fr) minmax(24ch, 30ch);
}

.personnel-account-block .account-row-password {
  grid-template-columns: minmax(20ch, 26ch) minmax(34ch, 1fr) minmax(20ch, 28ch);
  align-items: end;
}

.personnel-account-block .entry-stack {
  gap: 0;
}

.personnel-account-block .small-note {
  margin: 6px 0 0;
  line-height: 1.25;
}

.personnel-account-block .account-check-stack {
  padding-top: 30px;
}

.personnel-account-block .account-inline-check {
  min-height: 42px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f6f8fd;
  padding: 8px 10px;
  align-items: center;
}

.personnel-account-block .account-password-check {
  margin-bottom: 0;
}

.account-block .account-grid {
  justify-content: start;
}

.account-block .account-grid-user {
  grid-template-columns: minmax(18ch, 28ch) minmax(20ch, 34ch);
}

.account-block .account-grid-password {
  grid-template-columns: minmax(12ch, 18ch) minmax(20ch, 34ch);
}

.account-block.disabled {
  opacity: 0.56;
  pointer-events: none;
}

.password-head {
  min-height: 42px;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: #f6f8fd;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

.password-head strong {
  font-size: 0.98rem;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.account-block-readonly {
  background: linear-gradient(135deg, #f7fee7 0%, #f8fbff 58%, #eef6ff 100%);
}

.account-block-readonly .entry-check input[type="checkbox"] {
  opacity: 0.8;
}

@media (min-width: 721px) {
  .personnel-entry-modal form .entry-row-sicil-tc {
    grid-template-columns: minmax(10ch, 11ch) minmax(19ch, 20ch) minmax(48ch, 1.65fr) minmax(28ch, 1fr) minmax(16ch, 18ch) !important;
  }

  .personnel-entry-modal form .entry-row-name {
    grid-template-columns: minmax(18ch, 1fr) minmax(18ch, 1fr) minmax(18ch, 1fr) minmax(22ch, 24ch) !important;
  }

  .personnel-entry-modal form .entry-row-senior-dept {
    grid-template-columns: minmax(38ch, 1.3fr) minmax(28ch, 1fr) minmax(36ch, 1.25fr) minmax(22ch, 24ch) !important;
  }

  .personnel-entry-modal form .entry-row-team-dept {
    grid-template-columns: minmax(42ch, 48ch) !important;
  }

  .personnel-entry-modal form .entry-row-team-dept.has-terminal-unit {
    grid-template-columns: minmax(42ch, 48ch) !important;
  }

  .personnel-entry-modal form .entry-row-email-phone {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .personnel-entry-modal form .entry-row-dates-team {
    grid-template-columns: minmax(22ch, 24ch) minmax(22ch, 24ch) !important;
  }

  .personnel-entry-modal .account-block .account-grid-user {
    grid-template-columns: minmax(26ch, 1fr) minmax(32ch, 1fr) !important;
  }

  .personnel-entry-modal .account-block .account-grid-password {
    grid-template-columns: minmax(24ch, 32ch) minmax(34ch, 1fr) !important;
  }

  .personnel-entry-modal .personnel-account-block .account-row-main {
    grid-template-columns: minmax(26ch, 1fr) minmax(34ch, 1fr) minmax(26ch, 34ch) !important;
  }

  .personnel-entry-modal .personnel-account-block .account-row-password {
    grid-template-columns: minmax(22ch, 30ch) minmax(38ch, 1fr) minmax(24ch, 30ch) !important;
  }
}

.actions.actions-right {
  justify-content: flex-end;
}

.kif-penalties-page {
  --kif-penalty-content-width: min(1420px, calc(100% - 32px));
  --kif-penalty-left-col: minmax(300px, 0.34fr);
  --kif-penalty-right-col: minmax(0, 0.66fr);
  overflow: visible;
}

.kif-penalties-page .module-tabs {
  gap: 8px;
  padding: 13px 16px 10px;
}

.kif-penalties-page .module-tab {
  min-height: 42px;
  font-size: 1.05rem;
  gap: 8px;
  padding: 0 11px;
}

.kif-module-shell {
  margin-top: 0;
}

.kif-module-shell .module-tabs {
  padding-top: 10px;
  padding-bottom: 9px;
}

.kif-module-shell .module-tab {
  min-height: 38px;
  font-size: 0.98rem;
  padding-inline: 10px;
}

.kif-penalties-page .account-block {
  padding: 14px 16px;
  gap: 10px;
  margin: 16px 16px 0;
}

.kif-penalties-page .kif-penalties-top-grid {
  display: grid;
  width: var(--kif-penalty-content-width);
  grid-template-columns: var(--kif-penalty-left-col) var(--kif-penalty-right-col);
  gap: 8px;
  align-items: start;
  margin: 12px 16px 0;
}

.kif-penalties-page .kif-penalties-top-grid > .account-block {
  margin: 0;
}

.kif-penalties-page .account-block > strong {
  font-size: 0.97rem;
}

.kif-penalties-page .kif-compact-summary-block {
  min-height: 78px;
  padding: 10px 14px;
  align-content: center;
}

.kif-penalties-page .kif-annual-fee-block {
  display: contents;
}

.kif-penalties-page .kif-compact-summary-block {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  justify-content: stretch;
  gap: 8px;
}

.kif-penalties-page .kif-compact-summary-main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.kif-penalties-page .kif-compact-summary-main > strong {
  margin-right: 2px;
}

.kif-penalties-page .kif-compact-summary-main > strong,
.kif-penalties-page .kif-annual-fee-compact-row > strong {
  color: #14213d;
  font-size: 1rem;
  font-weight: 900;
  white-space: nowrap;
}

.kif-penalties-page .kif-stat-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid #d8e3f2;
  border-radius: 999px;
  background: #ffffff;
  color: #506078;
  font-size: 0.86rem;
  font-weight: 800;
  white-space: nowrap;
}

.kif-penalties-page .kif-stat-chip b {
  color: #4f67f6;
  font-size: 0.94rem;
}

.kif-penalties-page .kif-compact-info {
  position: relative;
  flex: 0 0 auto;
  color: #475569;
  font-size: 0.84rem;
  font-weight: 800;
}

.kif-penalties-page .kif-compact-info summary {
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 999px;
  background: #ffffff;
  color: #4f67f6;
  cursor: pointer;
  list-style: none;
  white-space: nowrap;
}

.kif-penalties-page .kif-compact-info summary::-webkit-details-marker {
  display: none;
}

.kif-penalties-page .kif-compact-info[open] summary {
  border-color: #b8c5ff;
  background: #eef2ff;
}

.kif-penalties-page .kif-compact-info > div {
  position: absolute;
  z-index: 18;
  right: 0;
  top: calc(100% + 6px);
  width: min(520px, 70vw);
  padding: 10px 12px;
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.15);
}

.kif-penalties-page .kif-compact-info p {
  margin: 0;
  line-height: 1.35;
}

.kif-penalties-page .kif-compact-info p + p {
  margin-top: 6px;
}

.kif-penalties-page .kif-annual-fee-compact-row {
  display: grid;
  grid-column: 2;
  grid-template-columns: minmax(78px, 92px) minmax(88px, 100px) minmax(82px, 96px) minmax(86px, 98px) minmax(130px, 1fr) auto;
  grid-template-areas:
    "title amount currency tcmb rate actions";
  align-items: end;
  justify-content: start;
  gap: 6px 8px;
  min-height: 78px;
  padding: 10px 14px;
  border: 1px solid #d7e5f7;
  border-left: 5px solid #84cc16;
  border-radius: 14px;
  background: linear-gradient(135deg, #f7fee7 0%, #f8fbff 58%, #eef6ff 100%);
  box-shadow: 0 10px 22px rgba(132, 204, 22, 0.08);
}

.kif-penalties-page .kif-annual-fee-compact-row > * {
  min-width: 0;
}

.kif-penalties-page .kif-annual-fee-compact-row > strong {
  grid-area: title;
  max-width: 92px;
  line-height: 1.12;
  white-space: normal;
}

.kif-penalties-page .kif-annual-fee-compact-row > label:not(.kif-tcmb-toggle):nth-of-type(1) {
  grid-area: amount;
}

.kif-penalties-page .kif-annual-fee-compact-row > label:not(.kif-tcmb-toggle):nth-of-type(2) {
  grid-area: currency;
}

.kif-penalties-page .kif-annual-fee-compact-row .kif-tcmb-toggle {
  grid-area: tcmb;
}

.kif-penalties-page .kif-annual-fee-compact-row .kif-tcmb-rate-note {
  grid-area: rate;
}

.kif-penalties-page .kif-annual-fee-compact-row .kif-annual-fee-action-row {
  grid-area: actions;
}

.kif-penalties-page .kif-annual-fee-compact-row label {
  display: grid;
  gap: 4px;
  margin: 0;
  color: #1e293b;
  font-size: 0.84rem;
  font-weight: 900;
}

.kif-penalties-page .kif-annual-fee-compact-row input[type="text"],
.kif-penalties-page .kif-annual-fee-compact-row select {
  width: 100%;
  min-height: 38px;
}

.kif-penalties-page .kif-annual-fee-compact-row .btn {
  min-height: 38px;
  padding-inline: 14px;
  white-space: nowrap;
}

.kif-penalties-page .kif-annual-fee-action-row {
  display: flex;
  align-items: end;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.kif-penalties-page .kif-annual-fee-action-row .kif-compact-info summary {
  padding-inline: 8px;
}

.kif-penalties-page .kif-annual-fee-compact-row .kif-tcmb-toggle {
  align-self: end;
  min-height: 38px;
  padding: 7px 8px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #eef2ff;
  color: #334155;
  font-size: 0.84rem;
  font-weight: 900;
  white-space: nowrap;
}

.kif-penalties-page .kif-annual-fee-compact-row .kif-tcmb-rate-note {
  align-self: center;
  margin: 0;
  color: #3f6d67;
  font-weight: 900;
  white-space: normal;
  display: grid;
  gap: 2px;
  line-height: 1.15;
}

.kif-penalties-page .kif-tcmb-rate-date {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  padding: 2px 7px;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #ffffff;
  color: #475569;
  font-size: 0.8rem;
  font-weight: 900;
}

.kif-penalties-page .kif-tcmb-rate-line {
  display: block;
}

.kif-penalties-page .kif-annual-fee-compact-row > strong {
  align-self: center;
}

.kif-penalties-page .kif-form-revision-config {
  display: grid;
  grid-column: 1 / -1;
  width: 100%;
  box-sizing: border-box;
  grid-template-columns: max-content minmax(140px, 1fr) minmax(110px, 0.72fr) minmax(180px, 1.15fr);
  grid-template-areas:
    "title code date restricted"
    "note note note history";
  align-items: end;
  justify-content: start;
  gap: 6px 8px;
  padding: 12px 14px;
  border: 1px solid #d7e5f7;
  border-left: 5px solid #84cc16;
  border-radius: 14px;
  background: linear-gradient(135deg, #fbfff5 0%, #f8fbff 58%, #eef6ff 100%);
  box-shadow: 0 10px 22px rgba(132, 204, 22, 0.08);
}

.kif-penalties-page .kif-form-revision-config > strong {
  grid-area: title;
  align-self: center;
  color: #14213d;
  font-size: 0.96rem;
  font-weight: 900;
  white-space: nowrap;
}

.kif-penalties-page .kif-form-revision-config label:nth-of-type(1) {
  grid-area: code;
}

.kif-penalties-page .kif-form-revision-config label:nth-of-type(2) {
  grid-area: date;
}

.kif-penalties-page .kif-form-revision-config label:nth-of-type(3) {
  grid-area: restricted;
}

.kif-penalties-page .kif-form-revision-config label:nth-of-type(4) {
  grid-area: note;
}

.kif-penalties-page .kif-form-revision-config label {
  display: grid;
  gap: 4px;
  min-width: 0;
  margin: 0;
  color: #1e293b;
  font-size: 0.82rem;
  font-weight: 900;
}

.kif-penalties-page .kif-form-revision-config input[type="text"] {
  width: 100%;
  min-height: 36px;
}

.kif-penalties-page .kif-revision-history {
  grid-area: history;
  align-self: end;
  justify-self: start;
}

.kif-penalties-page .kif-revision-history p + p {
  padding-top: 7px;
  border-top: 1px solid #e2e8f0;
}

.kif-penalties-page .kif-fee-help {
  align-self: end;
  justify-self: end;
}

.kif-penalties-page .small-note {
  line-height: 1.35;
}

.kif-penalties-page .kif-annual-fee-block,
.kif-penalties-page .kif-penalty-editor {
  margin-top: 0;
}

.kif-penalties-page .kif-annual-fee-grid,
.kif-penalties-page .kif-penalty-core-grid {
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(22ch, 1fr));
  align-items: start;
}

.kif-penalties-page .kif-annual-fee-grid {
  grid-template-columns: minmax(0, 1fr);
}

.kif-penalties-page .kif-annual-fee-inputs {
  display: grid;
  grid-template-columns: minmax(14ch, 1fr) minmax(12ch, 14ch);
  gap: 8px;
}

.kif-penalties-page .kif-annual-fee-inputs input,
.kif-penalties-page .kif-annual-fee-inputs select {
  width: 100%;
}

.kif-penalties-page .kif-annual-fee-inputs select {
  min-width: 12ch;
  text-overflow: clip;
}

.kif-penalties-page .kif-annual-fee-note {
  margin: 0;
}

.kif-penalties-page .kif-tcmb-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  max-width: 100%;
  min-height: 32px;
  margin: -2px 0 0;
  padding: 5px 9px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background: #eef2ff;
  color: #334155;
  font-size: 0.84rem;
  font-weight: 900;
}

.kif-penalties-page .kif-tcmb-toggle input {
  width: 16px;
  height: 16px;
  min-width: 16px;
}

.kif-penalties-page .kif-tcmb-toggle span {
  white-space: normal;
  line-height: 1.1;
}

.kif-penalties-page .kif-tcmb-rate-note {
  margin: -2px 0 0;
  color: #0f766e;
  font-size: 0.82rem;
  font-weight: 800;
}

.kif-penalties-page .kif-annual-fee-actions {
  margin-top: 0;
}

.kif-penalties-page .kif-penalty-amount-grid {
  display: grid;
  grid-template-columns: minmax(18ch, 28ch) minmax(22ch, 32ch) minmax(10ch, 16ch);
  gap: 10px;
  align-items: start;
}

.kif-penalties-page .kif-penalty-amount-grid > label {
  min-width: 0;
  max-width: none !important;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.kif-penalties-page .kif-penalty-amount-grid > label > select,
.kif-penalties-page .kif-penalty-amount-grid > label > input {
  min-width: 0;
  width: 100%;
  max-width: none !important;
}

.kif-penalties-page .kif-penalty-fixed-wrap {
  display: grid;
  grid-template-columns: minmax(9ch, 12ch) minmax(10ch, 12ch);
  gap: 6px;
}

.kif-penalties-page .kif-penalty-fixed-wrap > input,
.kif-penalties-page .kif-penalty-fixed-wrap > select {
  min-width: 0;
  width: 100%;
  max-width: none !important;
}

.kif-penalties-page .kif-penalty-fixed-wrap > select {
  text-overflow: clip;
}

.kif-penalties-page .kif-penalty-mode-field,
.kif-penalties-page .kif-penalty-fixed-field,
.kif-penalties-page .kif-penalty-multiplier-field {
  min-width: 0;
}

.kif-penalties-page .kif-penalty-mode-field {
  min-width: 18ch;
}

.kif-penalties-page .kif-penalty-multiplier-field input {
  min-width: 8ch;
  max-width: 12ch;
  font-variant-numeric: tabular-nums;
  text-align: center;
}

.kif-penalties-page .kif-penalty-editor select[name="penalty_amount_mode"] {
  min-width: 0;
  width: 100%;
  max-width: none !important;
  text-overflow: clip;
}

.kif-penalties-page .kif-penalty-editor #kifFixedAmountInput {
  min-width: 0;
}
.kif-penalties-page .kif-penalty-multiplier-field {
  grid-column: auto;
  max-width: none;
}

@media (max-width: 1280px) {
  .kif-penalties-page .kif-penalty-amount-grid {
    grid-template-columns: minmax(18ch, 1fr) minmax(18ch, 1fr);
  }

  .kif-penalties-page .kif-penalty-multiplier-field {
    grid-column: 1 / -1;
    max-width: 14ch;
  }
}

@media (max-width: 980px) {
  .kif-penalties-page .kif-penalty-amount-grid {
    grid-template-columns: 1fr;
  }

  .kif-penalties-page .kif-penalty-multiplier-field {
    max-width: 100%;
  }
}

@media (max-width: 900px) {
  .kif-penalties-page {
    --kif-penalty-content-width: calc(100% - 32px);
    --kif-penalty-left-col: minmax(0, 1fr);
    --kif-penalty-right-col: minmax(0, 1fr);
  }

  .kif-penalties-page .kif-penalties-top-grid {
    grid-template-columns: 1fr;
  }

  .kif-penalties-page .kif-annual-fee-compact-row,
  .kif-penalties-page .module-toolbar {
    grid-template-columns: 1fr;
  }

  .kif-penalties-page .module-toolbar {
    align-items: stretch;
  }

  .kif-penalties-page .search-inline {
    flex-basis: 100%;
  }

  .kif-penalties-page .kif-annual-fee-compact-row {
    grid-column: 1 / -1;
    grid-template-areas:
      "title"
      "amount"
      "currency"
      "tcmb"
      "rate"
      "actions";
  }

  .kif-penalties-page .kif-form-revision-config {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "code"
      "date"
      "restricted"
      "note"
      "history";
  }

  .kif-penalties-page .toolbar-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .kif-penalties-page .kif-penalty-amount-grid {
    grid-template-columns: 1fr;
  }

  .kif-penalties-page .kif-penalty-fixed-wrap {
    grid-template-columns: 1fr;
  }
}

.kif-penalties-page .module-toolbar {
  box-sizing: border-box;
  width: var(--kif-penalty-content-width);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 10px 12px;
  margin: 12px 16px 12px;
  gap: 10px;
  border: 1px solid #dbe4f6;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(79, 103, 246, 0.06), rgba(15, 157, 147, 0.04)),
    #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.kif-penalties-page .toolbar-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.kif-penalties-page .search-inline {
  flex: 1 1 520px;
  width: auto;
  min-width: 0;
  max-width: none;
}

.kif-penalties-page .search-inline input {
  flex: 1 1 auto;
  min-width: 0;
}

.kif-penalties-page .search-inline i {
  flex: 0 0 auto;
}

.kif-penalties-page .toolbar-actions .btn {
  white-space: nowrap;
}

.kif-penalties-page .module-table-wrap {
  width: calc(100% - 32px);
  margin: 0 16px;
}

.kif-penalties-page .kif-penalty-list-section {
  width: var(--kif-penalty-content-width);
  margin: 0 16px 16px;
  border: 1px solid #dbe4f6;
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff;
}

.kif-penalties-page .kif-penalty-list-section .dashboard-section-head {
  padding: 12px 14px;
  border-bottom: 1px solid #e7edf7;
  background:
    linear-gradient(135deg, rgba(79, 103, 246, 0.08), rgba(15, 157, 147, 0.06)),
    #f8fbff;
}

.kif-penalties-page .kif-penalty-list-section .dashboard-section-head h2 {
  margin: 0;
  font-size: 1.05rem;
}

.kif-penalties-page .kif-penalty-list-section .dashboard-section-head .small-note {
  margin: 4px 0 0;
}

.kif-penalties-page .kif-penalty-list-section .module-table-wrap {
  width: 100%;
  min-height: 0;
  max-height: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  overflow-x: auto;
  overflow-y: hidden;
}

.kif-penalties-page .kif-penalty-list-section .module-list-pagination {
  width: 100%;
  max-width: none;
}

.kif-penalties-page [data-kif-penalty-pages] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.kif-penalties-page .kif-penalty-list-section {
  margin-left: 16px;
  margin-right: 16px;
}

.kif-penalties-page .kif-penalty-items-table {
  width: 100% !important;
  min-width: 930px;
  table-layout: fixed;
}

.kif-penalties-page .kif-penalty-items-table th,
.kif-penalties-page .kif-penalty-items-table td {
  padding-left: 6px;
  padding-right: 6px;
  font-size: 0.86rem;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(1),
.kif-penalties-page .kif-penalty-items-table td:nth-child(1) {
  width: 44px !important;
  max-width: 44px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(2),
.kif-penalties-page .kif-penalty-items-table td:nth-child(2) {
  width: 72px !important;
  max-width: 72px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(3),
.kif-penalties-page .kif-penalty-items-table td:nth-child(3) {
  width: 112px !important;
  max-width: 112px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(4),
.kif-penalties-page .kif-penalty-items-table td:nth-child(4) {
  width: 360px !important;
  max-width: 360px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(5),
.kif-penalties-page .kif-penalty-items-table td:nth-child(5) {
  width: 160px !important;
  max-width: 160px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(6),
.kif-penalties-page .kif-penalty-items-table td:nth-child(6) {
  width: 74px !important;
  max-width: 74px !important;
}

.kif-penalties-page .kif-penalty-items-table th:nth-child(7),
.kif-penalties-page .kif-penalty-items-table td:nth-child(7) {
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
}

.kif-penalties-page .kif-penalty-items-table td:nth-child(7) .icon-actions {
  justify-content: center;
}

.kif-penalties-page .kif-penalty-description-preview {
  display: block;
  line-height: 1.18;
  overflow: visible;
}

.kif-penalties-page .kif-help-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-wrap: wrap;
  white-space: normal;
  line-height: 1.08;
}

.kif-penalties-page .kif-help-label span {
  white-space: nowrap;
}

.kif-penalties-page .kif-help-label i {
  font-size: 0.82em;
  color: #64748b;
}

.kif-penalties-page .kif-penalty-description textarea,
.kif-penalties-page .kif-penalty-note-field textarea {
  min-height: 90px;
}

/* Login */
.login-page {
  position: relative;
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  padding: 24px;
  overflow: hidden;
  background:
    radial-gradient(circle at 20% 20%, rgba(110, 162, 255, 0.26), transparent 34%),
    radial-gradient(circle at 88% 15%, rgba(37, 168, 227, 0.24), transparent 28%),
    linear-gradient(135deg, #1748aa 0%, #2f63e3 58%, #43b8df 100%);
}

.login-brand {
  position: absolute;
  left: 32px;
  bottom: 24px;
  z-index: 1;
  pointer-events: none;
  color: #eef4ff;
  padding: 0;
  max-width: min(46vw, 760px);
  display: grid;
  gap: 12px;
}

.login-logo {
  width: 138px;
  height: 138px;
  border-radius: 20px;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.15);
  padding: 8px;
}

.login-brand h1 {
  margin: 8px 0 0;
  font-size: clamp(2.3rem, 4vw, 4rem);
  font-weight: 800;
}

.login-brand h2 {
  margin: 0;
  font-size: clamp(1.08rem, 1.8vw, 1.8rem);
  font-weight: 500;
}

.login-brand p {
  margin-top: 12px;
  max-width: 680px;
  font-size: 1.04rem;
  line-height: 1.78;
}

.login-panel {
  display: grid;
  place-items: center;
  width: min(520px, 100%);
  padding: 0;
  z-index: 2;
}

.login-card {
  width: min(460px, 100%);
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 20px;
  box-shadow: 0 24px 50px rgba(7, 23, 61, 0.28);
  padding: 24px;
}

.login-card-brand {
  display: grid;
  justify-items: center;
  gap: 10px;
  margin-bottom: 12px;
  text-align: center;
}

.login-card-brand .login-logo {
  width: 96px;
  height: 96px;
  border-radius: 16px;
  padding: 6px;
}

.login-card-brand h1 {
  margin: 0;
  color: #1f2f49;
  font-size: clamp(1.45rem, 2.1vw, 2.05rem);
  font-weight: 800;
  letter-spacing: 0.02em;
}

.login-card h3 {
  margin: 0 0 12px;
  font-size: 1.5rem;
  text-align: center;
}

.login-footer {
  margin-top: 8px;
  color: #64748b;
  font-size: 0.86rem;
  line-height: 1.6;
}

.login-credit {
  margin: 10px 0 0;
  color: #475569;
  font-size: 0.8rem;
  line-height: 1.4;
  text-align: center;
}

.asset-types-section {
  width: min(100%, 1180px);
}

.asset-types-list-section {
  width: fit-content;
  max-width: 100%;
}

.asset-types-list-section .table-wrap {
  width: fit-content;
  max-width: 100%;
}

.asset-types-form-grid.grid.three {
  grid-template-columns: minmax(18ch, 24ch) minmax(28ch, 32ch) minmax(24ch, 32ch);
  align-items: end;
}

.asset-types-tracking-field select {
  width: 100%;
  min-width: 28ch;
  max-width: none;
}

.asset-types-rule-field {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  align-content: end;
  column-gap: 8px;
  min-height: 66px;
  line-height: 1.25;
}

.asset-types-rule-field input[type="checkbox"] {
  align-self: start;
  margin-top: 2px;
}

.asset-types-rule-field span {
  max-width: 30ch;
}

.asset-types-table input,
.asset-types-table select {
  width: 100%;
  min-height: 38px;
  border: 1px solid #d7e0f3;
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  font-weight: 700;
  padding: 8px 10px;
}

.asset-types-table select {
  padding-right: 34px;
  text-overflow: clip;
}

.asset-types-table {
  width: max-content;
  min-width: 0;
  table-layout: auto;
}

.asset-types-table th,
.asset-types-table td {
  padding: 8px 10px;
  white-space: nowrap;
  overflow-wrap: normal;
}

.asset-types-table input:focus,
.asset-types-table select:focus {
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.16);
  outline: none;
}

.asset-types-table input:disabled,
.asset-types-table select:disabled {
  background: #f8fafc;
  color: #1e293b;
  opacity: 1;
  cursor: default;
}

.asset-type-row.is-editing input,
.asset-type-row.is-editing select {
  background: #fff;
  border-color: #818cf8;
}

.asset-types-table th:nth-child(2),
.asset-types-table td:nth-child(2) {
  width: var(--asset-title-ch, 18ch);
  min-width: var(--asset-title-ch, 18ch);
}

.asset-types-table th:nth-child(3),
.asset-types-table td:nth-child(3) {
  width: var(--asset-tracking-ch, 36ch);
  min-width: var(--asset-tracking-ch, 36ch);
}

.asset-types-table td:nth-child(3) select {
  min-width: var(--asset-tracking-ch, 36ch);
}

.asset-types-table th:nth-child(4),
.asset-types-table td:nth-child(4) {
  width: 18ch;
  min-width: 18ch;
}

.asset-types-row-rule {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-weight: 700;
}

.asset-types-row-rule input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: #6366f1;
}

.asset-types-actions {
  width: 104px;
  min-width: 104px;
  text-align: center;
  white-space: nowrap;
}

.asset-types-action-row {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.asset-types-action-row form {
  margin: 0;
}

.icon-save {
  background: #dcfce7;
  color: #166534;
}

.asset-type-save-btn {
  display: none;
}

.asset-type-row.is-editing .asset-type-edit-btn {
  display: none;
}

.asset-type-row.is-editing .asset-type-save-btn {
  display: inline-grid;
}

@media (min-width: 1500px) {
  .asset-types-section {
    width: min(58vw, 1180px);
  }

  .asset-types-list-section {
    width: fit-content;
    max-width: 100%;
  }
}

@media (max-width: 900px) {
  .asset-types-form-grid.grid.three {
    grid-template-columns: 1fr;
  }

  .asset-types-tracking-field select {
    min-width: 0;
  }
}

/* Utility */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

@media (max-width: 1200px) {
  .grid.four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid.three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kif-paper-head {
    grid-template-columns: 1fr;
  }

  .kif-paper-brand,
  .kif-paper-title,
  .kif-paper-serial {
    border: 0;
    border-bottom: 1px solid #3f4b5f;
  }

  .kif-paper-serial {
    border-bottom: 0;
  }

  .kif-entry-form .kif-row-main {
    grid-template-columns: minmax(11ch, 0.8fr) minmax(27ch, 1.3fr) minmax(26ch, 1.7fr) minmax(15ch, 1fr);
  }

  .kif-entry-form .kif-row-main > label:last-child {
    grid-column: auto;
  }

  .personnel-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: 10px;
  }

  .personnel-toolbar .toolbar-search,
  .personnel-toolbar select[name="title_id"],
  .personnel-toolbar select[name="department_id"],
  .personnel-toolbar select[name="senior_unit"],
  .personnel-toolbar select[name="terminal_unit"] {
    grid-column: span 1;
    max-width: none;
  }

  .status-chips,
  .team-chips {
    grid-column: 1 / -1;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .personnel-toolbar .toolbar-actions {
    grid-column: 2 / span 1;
    justify-content: flex-end;
  }

  .service-entry-form {
    width: 100%;
    max-width: 1180px;
  }

  .service-inline-fields {
    grid-template-columns: minmax(430px, 1.45fr) minmax(300px, 0.85fr);
    grid-template-areas:
      "asset date"
      "asset destination"
      "asset battery"
      "note note";
    gap: 10px;
  }

  .service-inline-field,
  .service-inline-field-wide,
  .service-inline-field-note {
    min-width: 0;
    max-width: 100%;
  }

  .service-battery-delivery-field {
    min-width: 0;
  }

  .service-edit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas:
      "record record"
      "date destination"
      "note note"
      "battery battery";
  }
}

@media (max-width: 1180px) {
  .kif-live-edit-shell {
    grid-template-columns: 1fr;
  }

  .kif-live-preview {
    position: static;
  }
}

@media (max-width: 1500px) {
  .sidebar {
    transform: translateX(-100%);
    left: 0;
  }

  .app-shell.sidebar-open .sidebar {
    transform: translateX(0);
  }

  .main-pane {
    margin-left: 0;
    width: 100%;
    max-width: none;
  }

  .sidebar-toggle {
    display: inline-flex;
  }

  .topbar {
    justify-content: space-between;
  }
}

@media (max-width: 1024px) {
  .sidebar {
    transform: translateX(-100%);
    left: 0;
  }

  .app-shell.sidebar-open .sidebar {
    transform: translateX(0);
  }

  .main-pane {
    margin-left: 0;
    max-width: none;
  }

  .sidebar-toggle {
    display: inline-flex;
  }

  .topbar {
    justify-content: space-between;
    padding: 0 14px;
  }

  .content {
    padding: 16px;
  }
}

@media (max-width: 1100px), (max-height: 820px) {
  .sidebar {
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .brand-head {
    flex: 0 0 auto;
    padding: 10px 12px;
  }

  .brand-logo {
    width: 38px;
    height: 38px;
    border-radius: 10px;
  }

  .brand-title {
    font-size: 0.9rem;
    line-height: 1.18;
  }

  .brand-subtitle {
    font-size: 0.68rem;
  }

  .brand-credit {
    display: none;
  }

  .menu {
    flex: 0 0 auto;
    overflow: visible;
    padding: 8px;
    gap: 2px;
  }

  .menu a {
    min-height: 30px;
    padding: 5px 8px;
    border-radius: 8px;
    font-size: 0.84rem;
  }

  .menu a i {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    font-size: 0.76rem;
  }

  .sidebar-kif-reminder {
    margin: 6px 8px;
    padding: 7px;
    gap: 6px;
    max-height: 130px;
    overflow-y: auto;
    flex: 0 0 auto;
  }

  .sidebar-kif-reminder-head {
    grid-template-columns: 24px 1fr auto;
    gap: 6px;
  }

  .sidebar-kif-reminder-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    font-size: 0.72rem;
  }

  .sidebar-kif-reminder-body {
    padding: 6px;
  }

  .sidebar-kif-reminder-person,
  .sidebar-kif-reminder-detail {
    font-size: 0.7rem;
  }

  .sidebar-kif-reminder-plate,
  .sidebar-kif-reminder-date {
    font-size: 0.62rem;
  }

  .sidebar-user-card {
    flex: 0 0 auto;
    margin: 6px 8px 8px;
    padding: 8px;
  }
}

@media (max-width: 920px) {
  .login-page {
    place-items: start stretch;
    padding: 0;
  }

  .login-brand {
    position: static;
    pointer-events: auto;
    max-width: none;
    padding: 24px;
  }

  .login-panel {
    width: 100%;
    padding: 0 16px 24px;
  }

  .grid.two,
  .grid.four,
  .grid.three,
  .entry-grid-two,
  .entry-grid-three,
  .check-grid,
  .perm-grid,
  .rule-check-grid,
  .password-grid-single,
  .password-grid {
    grid-template-columns: 1fr;
  }

  form .tutanak-meta-grid.grid.two {
    grid-template-columns: 1fr;
  }

  form.gumruk-form .grid.two,
  form.gumruk-form .tutanak-meta-grid.grid.two {
    grid-template-columns: 1fr;
  }

  form .gumruk-material-row-head {
    display: none;
  }

  form .gumruk-material-title-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .personnel-modern-table th:nth-child(9),
  .personnel-modern-table td:nth-child(9) {
    position: static;
    right: auto;
    width: auto;
    max-width: none;
    white-space: normal;
  }

  .personnel-modern-card .person-cell,
  .personnel-modern-card .person-meta {
    min-width: 0;
  }

  .personnel-modern-card .person-meta strong,
  .personnel-modern-card .person-meta small {
    overflow-wrap: anywhere;
  }

  .personnel-pager {
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  .personnel-list-toolbar-row {
    flex-direction: column;
    align-items: stretch;
  }

  .personnel-list-toolbar-row .personnel-pager-top {
    width: 100%;
  }

  .personnel-pager button {
    padding: 0 8px;
  }

  .personnel-pager span {
    min-width: 52px;
  }

  .personnel-modern-table .personnel-actions.icon-actions,
  .personnel-modern-table .personnel-actions.icon-actions form,
  .personnel-actions .mini-transfer {
    flex-wrap: wrap;
    white-space: normal;
  }

  .personnel-actions .mini-transfer select {
    min-width: 0;
    max-width: none;
    flex: 1 1 100%;
  }

  form .gumruk-material-row {
    grid-template-columns: 1fr;
  }

  form .gumruk-row-remove-btn {
    justify-self: start;
  }

  .kif-entry-form .kif-row-main > label:last-child {
    grid-column: auto;
  }

  .kif-entry-form .kif-row-main,
  .kif-entry-form .kif-row-firm,
  .kif-entry-form .kif-row-signature,
  .kif-entry-form .kif-signature-attachment-row,
  .kif-entry-form .kif-row-desc-attach {
    grid-template-columns: 1fr;
  }

  .kif-entry-form .kif-signature-attachment-row {
    grid-template-areas: none;
  }

  .kif-entry-form .kif-signature-attachment-row > .kif-alt-signature-block,
  .kif-entry-form .kif-signature-attachment-row > .kif-inline-description-panel,
  .kif-entry-form .kif-signature-attachment-row > .kif-attachment-panel {
    grid-area: auto;
  }

  .kif-entry-form .kif-penalty-dropdown > summary.kif-penalty-summary {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .kif-entry-form .kif-penalty-live-search,
  .kif-entry-form .kif-penalty-search-count {
    grid-column: 1 / -1;
  }

  .kif-entry-form .kif-penalty-search-count {
    justify-self: start;
  }

  .kif-live-meta,
  .kif-live-signatures,
  .kif-live-signatures-three,
  .kif-live-paper-top {
    grid-template-columns: 1fr;
  }

  .kif-live-paper-top strong {
    border-left: 0;
    border-top: 1px solid #344054;
  }

  .personnel-entry .entry-grid-personnel {
    grid-template-columns: 1fr !important;
  }

  .entry-head {
    grid-template-columns: 44px 1fr auto;
  }

  .settings-reporter-field {
    width: 100%;
  }

  .settings-reporter-team-field {
    width: 100%;
  }

  .settings-tabs {
    width: 100%;
  }

  .settings-tab {
    flex: 1 1 24ch;
    justify-content: center;
  }

  .settings-subtab {
    flex: 1 1 20ch;
  }

  .settings-reporter-grid {
    grid-template-columns: 1fr;
  }

  .settings-team-reporter-grid {
    grid-template-columns: 1fr;
  }

  .settings-reporter-panels,
  .settings-inventory-clerk-layout,
  .settings-master-grid {
    grid-template-columns: 1fr;
  }

  .settings-team-reporter-item {
    min-height: auto;
  }

  .settings-assignment-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .settings-assignment-toggle {
    justify-content: center;
  }

  .settings-backup-grid {
    grid-template-columns: 1fr;
  }

  .settings-backup-grid label:nth-child(3),
  .settings-backup-grid label:nth-child(4) {
    grid-column: auto;
  }

  .settings-local-server-backups-head {
    flex-direction: column;
  }

  .settings-local-server-backups-head .btn {
    width: 100%;
    justify-content: center;
  }

  .settings-archive-grid {
    grid-template-columns: 1fr;
  }

  .settings-system-update-section,
  .settings-system-update-workspace,
  .settings-system-update-panel,
  .settings-system-update-summary {
    width: 100%;
  }

  .settings-system-update-panel,
  .settings-system-update-apply-form,
  .settings-system-update-summary,
  .settings-system-update-env {
    grid-template-columns: 1fr;
  }

  .settings-system-update-apply-form {
    align-items: stretch;
  }

  .settings-system-update-grid {
    grid-template-columns: 1fr;
  }

  form .grid.two.settings-system-update-grid {
    grid-template-columns: 1fr;
  }

  .settings-control-50 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .settings-system-update-checkline {
    margin-top: 0;
  }

  .roles-layout {
    grid-template-columns: 1fr;
  }

  .role-module-grid {
    grid-template-columns: 1fr;
  }

  .role-assign-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .role-filter-row {
    grid-template-columns: 1fr;
  }

  .role-assign-row > select {
    grid-column: 1 / -1;
    width: 100%;
    max-width: 100%;
  }

  .role-assign-row .btn {
    width: 100%;
    min-width: 0;
  }

  .role-modal-overlay {
    padding: 12px 8px;
  }

  .role-modal-card {
    width: 100%;
    border-radius: 12px;
  }

  .pdf-inline-modal {
    padding: 10px 8px;
  }

  .pdf-inline-card {
    padding: 10px;
  }

  .pdf-inline-frame-wrap {
    height: 78vh;
  }

  .inline-disposal-layout {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
  }

  .disposal-tutanak-form {
    grid-template-columns: 1fr;
  }

  .inline-disposal-form > .grid.two,
  .inline-disposal-selection,
  .inline-disposal-meta .inline-reason-wrap,
  .inline-disposal-form > .grid.two > label:nth-child(1),
  .inline-disposal-form > .grid.two > label:nth-child(2),
  .inline-disposal-meta > label:nth-of-type(1),
  .inline-disposal-meta > label:nth-of-type(2) {
    grid-column: 1;
    grid-row: auto;
  }

  .inline-disposal-selection,
  .inline-disposal-meta {
    max-width: 100%;
    min-width: 0;
    flex-basis: 100%;
  }

  .inline-checkbox-scroll {
    width: 100%;
  }

  .inline-checkbox-item {
    width: 100%;
    white-space: normal;
  }

  .inline-disposal-form > .grid.two,
  .inline-reason-box .grid.two {
    display: grid;
    grid-template-columns: 1fr;
  }

  .inline-disposal-form > .grid.two {
    grid-template-columns: minmax(0, 1fr) 170px;
  }

  .inline-disposal-form > .grid.two > label:nth-child(1) {
    grid-column: 1;
  }

  .inline-disposal-form > .grid.two > label:nth-child(2) {
    grid-column: 2;
  }

  .shift-plan-grid,
  .shift-filter-grid,
  .shift-override-grid,
  .shift-metric-grid {
    grid-template-columns: 1fr;
  }

  .shift-filter-grid > label,
  .shift-filter-grid > .shift-filter-person-search {
    grid-column: 1 / -1;
  }

  .service-inline-fields {
    grid-template-columns: 1fr;
    grid-template-areas:
      "asset"
      "destination"
      "date"
      "battery"
      "note";
  }

  .service-entry-form {
    width: 100%;
  }

  .service-battery-delivery-field select {
    min-width: 0;
  }

  .service-edit-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "record"
      "date"
      "destination"
      "note"
      "battery";
  }

  .service-inline-field-wide,
  .service-inline-field-note {
    grid-column: 1 / -1;
  }

  .service-edit-panel,
  .service-edit-heading {
    padding: 12px;
  }

  .settings-reporter-select {
    min-width: 0;
  }

  .settings-reporter-team-select {
    min-width: 0;
  }

  .entry-icon {
    width: 44px;
    height: 44px;
  }

  .entry-section-title {
    font-size: 1.45rem;
  }

  .personnel-toolbar .toolbar-search,
  .personnel-toolbar select[name="title_id"],
  .personnel-toolbar select[name="department_id"],
  .personnel-toolbar select[name="terminal_unit"],
  .status-chips,
  .team-chips,
  .personnel-toolbar .toolbar-actions {
    grid-column: 1 / -1;
    max-width: none;
    min-width: 0;
    justify-content: flex-start;
  }

  .status-chips,
  .team-chips {
    flex-wrap: wrap;
  }

  .assignment-form-section {
    width: 100%;
  }

  .assignment-mode-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .assignment-mode-tab {
    width: 100%;
  }

  .assignment-panel-heading {
    width: 100%;
    align-items: flex-start;
  }

  .assignment-top-grid,
  .assignment-meta-grid,
  .assignment-operation-grid {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .assignment-device-selected,
  .assignment-device-list,
  .assignment-personnel-field {
    width: 100%;
  }

  .assignment-device-option {
    grid-template-columns: 1fr;
  }

  .assignment-device-option span {
    white-space: normal;
  }

  .personnel-toolbar {
    grid-template-columns: 1fr;
  }

  .module-tabs {
    overflow: auto;
    white-space: nowrap;
    padding-top: 8px;
  }

  .list-logo-strip {
    justify-content: flex-start;
    padding-top: 8px;
  }

  .module-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .signature-list-shell {
    width: 100%;
  }

  .signature-list-shell .holiday-auto-panel {
    margin-inline: 10px;
  }

  .signature-list-shell .holiday-auto-panel > .btn {
    display: none;
  }

  .signature-list-shell .holiday-auto-link-list,
  .signature-list-shell .holiday-auto-status-list,
  .signature-list-shell .holiday-auto-upcoming-list {
    grid-template-columns: 1fr;
  }

  .signature-list-toolbar {
    grid-template-columns: 1fr;
    padding-inline: 10px;
  }

  .signature-list-toolbar .search-inline,
  .signature-list-toolbar > label:not(.search-inline),
  .signature-list-toolbar > label:not(.search-inline) select {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  .signature-list-toolbar .toolbar-actions {
    justify-content: flex-start;
  }

  .signature-list-table-wrap {
    margin-inline: 10px;
    width: calc(100% - 20px);
  }

  .signature-list-table {
    min-width: 860px;
  }

  .signature-list-pagination .asset-list-page-buttons {
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .zimmet-filter-form {
    align-items: stretch;
    gap: 10px;
  }

  .zimmet-filter-form label,
  .zimmet-filter-actions {
    width: 100%;
    max-width: none;
  }

  .zimmet-cihaz-filter-panel,
  .zimmet-cihaz-table-wrap,
  .zimmet-hareket-filter-panel,
  .zimmet-hareket-table-wrap,
  .vardiya-zimmet-filter-panel,
  .vardiya-zimmet-table-wrap,
  .zimmet-imha-record-filter-panel,
  .zimmet-imha-record-table-wrap,
  .zimmet-service-record-filter-panel,
  .zimmet-service-record-table-wrap,
  .shift-assignment-list-pagination,
  .asset-list-pagination {
    width: 100%;
  }

  .vardiya-zimmet-filter-form {
    grid-template-columns: 1fr;
  }

  .vardiya-zimmet-window em {
    margin-left: 0;
  }

  .asset-list-pagination {
    flex-direction: column;
    align-items: stretch;
    padding-inline: 12px;
  }

  .asset-list-page-summary {
    white-space: normal;
  }

  .asset-list-page-buttons {
    justify-content: flex-start;
  }

  .zimmet-context-strip {
    margin: 10px 12px 0;
    align-items: flex-start;
  }

  .zimmet-action-row {
    display: grid;
    gap: 8px;
  }

  .zimmet-action-row .btn {
    width: 100%;
    justify-content: center;
  }

  .zimmet-available-panel {
    margin: 0 12px 14px;
  }

  .zimmet-available-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .zimmet-available-table-wrap {
    max-height: 360px;
  }

  .account-block.plaka-manual-form {
    grid-template-columns: 1fr;
    max-width: 100%;
    min-width: 0;
  }

  .plaka-manual-compact-row {
    grid-template-columns: 1fr;
    width: 100%;
    min-width: 0;
  }

  .plaka-edit-callout {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .plaka-edit-callout-mode {
    margin-left: 50px;
  }

  .plaka-manual-compact-row .plaka-five-toggle {
    padding-top: 0;
  }

  .asset-pdf-inline {
    margin-left: 0;
  }

  .module-toolbar .toolbar-actions {
    justify-content: flex-start;
  }

  .search-inline {
    width: 100%;
  }

  .menu {
    gap: 4px;
  }

  .table-wrap table,
  .personnel-modern-table {
    min-width: 92ch;
  }
}

@media (max-width: 640px) {
  .signature-list-table-wrap {
    display: none;
  }

  .signature-mobile-list {
    display: grid;
    gap: 10px;
    width: calc(100% - 20px);
    margin: 10px;
  }

  .signature-mobile-facts {
    grid-template-columns: 1fr;
  }

  .signature-mobile-card-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .signature-mobile-actions {
    justify-content: flex-start;
  }

  .topbar-actions .topbar-btn span {
    display: none;
  }

  .topbar-btn {
    width: 32px;
    padding: 0;
    justify-content: center;
  }

  .entry-account-head,
  .password-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .actions .btn,
  .actions button {
    width: 100%;
  }

  .sig-grid {
    grid-template-columns: 1fr;
  }

  .sig-card.mid {
    max-width: none;
    grid-column: auto;
  }
}

@media print {
  .sidebar,
  .topbar,
  .actions,
  .sidebar-user-card {
    display: none !important;
  }

  .main-pane {
    margin-left: 0 !important;
  }

  .content {
    padding: 0;
  }
}


/* 1. alan: Ekip SayÄ±sÄ± */
.shift-plan-grid > label:nth-of-type(1) {
  width: 240px;
  max-width: 240px;
}

/* 2. alan: Ã‡alÄ±ÅŸma DÃ¼zeni */
.shift-plan-grid > label:nth-of-type(2) {
  width: 520px;
  max-width: 520px;
}

/* 3. alan: DÃ¶ngÃ¼ BaÅŸlangÄ±Ã§ Tarihi */
.shift-plan-grid > label:nth-of-type(3) {
  width: 320px;
  max-width: 320px;
}

/* 4. alan: Yemek MolasÄ± */
.shift-plan-grid > label:nth-of-type(4) {
  width: 230px;
  max-width: 230px;
}

.shift-plan-grid > label:nth-of-type(1) select,
.shift-plan-grid > label:nth-of-type(2) select,
.shift-plan-grid > label:nth-of-type(3) input,
.shift-plan-grid > label:nth-of-type(4) input {
  width: 100%;
  box-sizing: border-box;
}

#shift-team-count {
  min-width: 0;
}

#shift-pattern {
  min-width: 0;
  text-overflow: ellipsis;
}

/* Daha dar ekranlarda taÅŸmayÄ± engelle */
@media (max-width: 1300px) {
  .shift-plan-grid {
    grid-template-columns: 220px minmax(420px, 1fr) 280px 210px;
  }

  .shift-plan-grid > label:nth-of-type(1),
  .shift-plan-grid > label:nth-of-type(2),
  .shift-plan-grid > label:nth-of-type(3),
  .shift-plan-grid > label:nth-of-type(4) {
    width: auto;
    max-width: none;
  }
}

@media (max-width: 900px) {
  .shift-plan-grid {
    grid-template-columns: 1fr;
  }
}

/* Tirtir patch: Vardiya Ã¼st satÄ±r kompakt dÃ¼zen */
.shift-plan-grid {
  display: grid !important;
  grid-template-columns: 190px 560px 250px 190px !important;
  column-gap: 14px !important;
  row-gap: 12px !important;
  align-items: end !important;
  justify-content: start !important;
  width: max-content !important;
  max-width: 100% !important;
}

/* Ekip SayÄ±sÄ± */
.shift-plan-grid > label:nth-of-type(1) {
  width: 190px !important;
  max-width: 190px !important;
}

/* Ã‡alÄ±ÅŸma DÃ¼zeni */
.shift-plan-grid > label:nth-of-type(2) {
  width: 560px !important;
  max-width: 560px !important;
}

/* DÃ¶ngÃ¼ BaÅŸlangÄ±Ã§ Tarihi */
.shift-plan-grid > label:nth-of-type(3) {
  width: 250px !important;
  max-width: 250px !important;
}

/* Yemek MolasÄ± */
.shift-plan-grid > label:nth-of-type(4) {
  width: 190px !important;
  max-width: 190px !important;
}

.shift-plan-grid > label:nth-of-type(1) select,
.shift-plan-grid > label:nth-of-type(2) select,
.shift-plan-grid > label:nth-of-type(3) input,
.shift-plan-grid > label:nth-of-type(4) input {
  width: 100% !important;
  box-sizing: border-box !important;
}

#shift-pattern {
  min-width: 560px !important;
}

#shift-team-count {
  min-width: 190px !important;
}

@media (max-width: 1250px) {
  .shift-plan-grid {
    grid-template-columns: 170px minmax(420px, 1fr) 230px 170px !important;
    width: 100% !important;
  }

  .shift-plan-grid > label:nth-of-type(1),
  .shift-plan-grid > label:nth-of-type(2),
  .shift-plan-grid > label:nth-of-type(3),
  .shift-plan-grid > label:nth-of-type(4) {
    width: auto !important;
    max-width: none !important;
  }

  #shift-pattern,
  #shift-team-count {
    min-width: 0 !important;
  }
}

@media (max-width: 900px) {
  .shift-plan-grid {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }
}

/* Tirtir patch: kullanÄ±cÄ± Ã¶zeti kompakt kart dÃ¼zeni */
.user-summary-section {
  margin-top: 0;
  padding: 12px 14px;
}

.user-summary-section .grid.four.dashboard-metric-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px;
}

.user-summary-section .metric-card {
  min-height: 108px;
  padding: 12px 12px 10px;
  align-content: space-between;
}

.user-summary-section .metric-head {
  align-items: flex-start;
  gap: 8px;
}

.user-summary-section .metric-icon {
  width: 30px;
  height: 30px;
  border-radius: 9px;
  font-size: 0.86rem;
  flex: 0 0 auto;
}

.user-summary-section .metric-title {
  max-width: 100%;
  text-align: right;
  font-size: 0.88rem;
  line-height: 1.18;
}

.user-summary-section .metric-value {
  font-size: clamp(1.7rem, 2.2vw, 2.15rem);
  line-height: 1;
}

form.gumruk-form .gumruk-material-grid {
  gap: 8px;
}

form.gumruk-form .gumruk-material-block {
  padding: 8px 10px 10px;
  border-radius: 10px;
}

form.gumruk-form .gumruk-material-title-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}

form.gumruk-form .gumruk-material-label {
  min-width: 0;
  font-size: 0.9rem;
  line-height: 1.2;
}

form.gumruk-form .gumruk-material-row-head,
form.gumruk-form .gumruk-material-row {
  grid-template-columns: minmax(0, 1fr) 112px 32px;
  gap: 6px;
}

form.gumruk-form .gumruk-material-row-head {
  margin-bottom: 3px;
  padding: 0 1px;
  font-size: 0.72rem;
  line-height: 1.1;
}

form.gumruk-form .gumruk-material-row input:not([type="checkbox"]):not([type="radio"]) {
  min-height: 34px;
  padding: 6px 9px;
  border-radius: 9px;
  font-size: 0.88rem;
  line-height: 1.15;
}

form.gumruk-form .gumruk-row-remove-btn {
  width: 32px;
  height: 32px;
  min-height: 32px;
  border-radius: 9px;
}

form.gumruk-form .gumruk-row-add-btn {
  min-height: 32px;
  padding: 5px 9px;
  border-radius: 9px;
  font-size: 0.86rem;
}

form.gumruk-form .gumruk-row-add-btn i {
  font-size: 0.84rem;
}

form.gumruk-form {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.gumruk-live-section,
.gumruk-live-layout,
.gumruk-live-layout > form.gumruk-form,
.gumruk-live-layout > .gumruk-live-preview {
  min-width: 0;
  max-width: 100%;
}

.gumruk-live-layout > form.gumruk-form {
  width: 100%;
}

form.gumruk-form label,
form.gumruk-form .grid,
form.gumruk-form .gumruk-material-block,
form.gumruk-form .gumruk-material-row,
form.gumruk-form .gumruk-material-row-head {
  min-width: 0;
  max-width: 100%;
}

form.gumruk-form input:not([type="checkbox"]):not([type="radio"]),
form.gumruk-form select,
form.gumruk-form textarea {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.gumruk-live-preview {
  width: 100%;
}

.gumruk-live-preview .gumruk-preview-head {
  min-width: 0;
}

.gumruk-live-preview .gumruk-preview-head h2,
.gumruk-live-preview .gumruk-preview-head span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gumruk-live-layout {
  grid-template-columns: minmax(700px, 780px) minmax(0, 1fr);
  gap: 18px;
}

.gumruk-live-layout form.gumruk-form .grid.two {
  justify-content: stretch;
}

.gumruk-live-layout form.gumruk-form .gumruk-doc-grid.grid.two {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.78fr) minmax(0, 1.42fr);
  gap: 10px;
}

.gumruk-live-layout form.gumruk-form .gumruk-direction-grid.grid.two {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
}

.gumruk-live-layout form.gumruk-form .gumruk-detail-grid.grid.two {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
}

.gumruk-live-layout form.gumruk-form .gumruk-detail-grid label:first-child,
.gumruk-live-layout form.gumruk-form .gumruk-detail-grid .tutanak-editor-field {
  grid-column: 1 / -1;
}

.gumruk-live-layout form.gumruk-form label {
  gap: 5px;
  font-size: 0.92rem;
  line-height: 1.18;
}

.gumruk-live-layout form.gumruk-form input:not([type="checkbox"]):not([type="radio"]),
.gumruk-live-layout form.gumruk-form select {
  min-height: 38px;
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 0.92rem;
  line-height: 1.2;
}

.gumruk-live-layout .gumruk-material-grid.grid.two {
  grid-template-columns: 1fr;
}

.gumruk-live-layout .gumruk-live-preview {
  align-self: start;
}

.gumruk-live-layout .gumruk-preview-head {
  margin-bottom: 8px;
}

.gumruk-live-layout .gumruk-preview-head h2 {
  font-size: 1.2rem;
}

.gumruk-live-layout .gumruk-preview-paper {
  width: min(100%, 640px);
  padding: 24px 28px 20px;
  font-size: 0.66rem;
  line-height: 1.32;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}

.gumruk-live-layout .gumruk-preview-title {
  gap: 2px;
  margin: 20px 0 16px;
}

.gumruk-live-layout .gumruk-preview-top img {
  width: 46px;
  height: 46px;
}

.gumruk-live-layout .gumruk-preview-body {
  gap: 7px;
}

.gumruk-live-layout .gumruk-preview-body p {
  text-indent: 18px;
}

.gumruk-live-layout [data-preview-materials],
.gumruk-live-layout .gumruk-preview-material-box {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.gumruk-live-layout .gumruk-preview-material-box table {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  table-layout: fixed;
}

.gumruk-live-layout .gumruk-preview-material-box {
  gap: 4px;
  padding: 7px;
}

.gumruk-live-layout .gumruk-preview-material-box strong {
  font-size: 0.9em;
}

.gumruk-live-layout .gumruk-preview-material-box th,
.gumruk-live-layout .gumruk-preview-material-box td {
  max-width: none;
  padding: 3px 4px;
  font-size: 0.64rem !important;
  line-height: 1.14;
}

.gumruk-live-layout .gumruk-preview-material-box th:first-child,
.gumruk-live-layout .gumruk-preview-material-box td:first-child {
  width: 36px;
  white-space: nowrap;
}

.gumruk-live-layout .gumruk-preview-material-box th:last-child,
.gumruk-live-layout .gumruk-preview-material-box td:last-child {
  width: 56px;
  white-space: nowrap;
}

.gumruk-live-layout .gumruk-preview-signature {
  font-size: 0.92em;
}

.gumruk-live-layout .gumruk-preview-footer {
  font-size: 0.82em;
  line-height: 1.2;
}

.gumruk-preview-material-box table {
  font-size: inherit !important;
}

.gumruk-preview-material-box thead th,
.gumruk-preview-material-box tbody td {
  font-size: 0.64rem !important;
  line-height: 1.14 !important;
  padding: 3px 4px !important;
}

@media (max-width: 1400px) {
  .gumruk-live-layout {
    grid-template-columns: minmax(660px, 720px) minmax(0, 1fr);
  }

  .gumruk-live-layout .gumruk-preview-paper {
    width: min(100%, 600px);
  }
}

@media (max-width: 1180px) {
  .gumruk-live-layout {
    grid-template-columns: 1fr;
  }

  .gumruk-live-layout form.gumruk-form .gumruk-doc-grid.grid.two,
  .gumruk-live-layout form.gumruk-form .gumruk-direction-grid.grid.two,
  .gumruk-live-layout form.gumruk-form .gumruk-detail-grid.grid.two {
    grid-template-columns: 1fr;
  }

  .gumruk-live-layout .gumruk-preview-paper {
    width: min(100%, 640px);
    font-size: 0.76rem;
  }
}

@media (max-width: 700px) {
  form.gumruk-form .gumruk-material-title-row {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  form.gumruk-form .gumruk-material-row {
    grid-template-columns: 1fr;
  }

  form.gumruk-form .gumruk-row-remove-btn {
    justify-self: start;
  }
}

@media (max-width: 640px) {
  .user-summary-section .grid.four.dashboard-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .user-summary-section .metric-head {
    flex-direction: row;
  }
}

@media (max-width: 420px) {
  .user-summary-section .grid.four.dashboard-metric-grid {
    grid-template-columns: 1fr !important;
  }
}

.ops-report-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding: 16px 18px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.content:has(.ops-report-heading) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.content:has(.ops-report-heading) > .ops-report-heading,
.content:has(.ops-report-heading) > .section {
  width: min(100%, 1360px);
  max-width: 1360px;
}

.ops-report-title-lockup {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.ops-report-logo {
  width: 82px;
  height: 58px;
  object-fit: contain;
  flex: 0 0 auto;
  padding: 6px;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.ops-report-heading-copy {
  min-width: 0;
}

.ops-report-heading .page-title {
  margin: 0;
  color: #172033;
  font-size: clamp(2rem, 3.2vw, 3rem);
  font-weight: 950;
  line-height: 1.02;
}

.ops-report-heading .page-subtitle {
  margin-top: 6px;
  color: #64748b;
  font-size: 1rem;
  font-weight: 700;
}

.ops-report-period-badge {
  display: grid;
  gap: 4px;
  min-width: 220px;
  padding: 10px 14px;
  border: 1px solid #dbe4f2;
  border-radius: 8px;
  background: #ffffff;
  color: #1f2f49;
  text-align: right;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.ops-report-period-badge span {
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.ops-report-period-badge strong {
  font-size: 1rem;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.ops-report-filter {
  display: flex;
  align-items: end;
  gap: 12px;
  flex-wrap: wrap;
  padding: 14px;
}

.ops-report-filter label {
  display: grid;
  gap: 6px;
  min-width: 180px;
  margin: 0;
  color: #64748b;
  font-weight: 800;
}

.ops-report-filter input[type="date"] {
  width: 100%;
}

.ops-report-filter-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.ops-report-summary {
  padding: 14px;
  border-color: #dbeafe;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.92), rgba(248, 250, 252, 0.96)),
    #ffffff;
}

.ops-report-card-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}

.ops-report-card {
  min-height: 82px;
  padding: 10px;
}

.ops-report-card .metric-head {
  gap: 8px;
}

.ops-report-card .metric-icon {
  width: 32px;
  height: 32px;
}

.ops-report-card .metric-title {
  font-size: 0.82rem;
}

.ops-report-card .metric-value {
  font-size: 1.9rem;
}

.ops-report-card:nth-child(1) {
  background: linear-gradient(135deg, #fff1f2, #ffe4e6);
}

.ops-report-card:nth-child(2) {
  background: linear-gradient(135deg, #ecfdf5, #dcfce7);
}

.ops-report-card:nth-child(3) {
  background: linear-gradient(135deg, #fef2f2, #fee2e2);
}

.ops-report-card:nth-child(4) {
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
}

.ops-report-card:nth-child(5) {
  background: linear-gradient(135deg, #f5f3ff, #ede9fe);
}

.ops-report-card:nth-child(6) {
  background: linear-gradient(135deg, #fff7ed, #ffedd5);
}

.ops-report-management-section {
  border-color: #dbeafe;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(239, 246, 255, 0.86)),
    #ffffff;
}

.ops-report-management-grid {
  display: block;
}

.ops-report-executive-card,
.ops-report-repeat-panel,
.ops-report-risk-card {
  min-width: 0;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.ops-report-executive-card {
  padding: 14px 16px;
}

.ops-report-executive-card h3 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  color: #172033;
  font-size: 1.05rem;
}

.ops-report-executive-card h3 i {
  color: #4f67f6;
}

.ops-report-executive-card ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 20px;
  color: #334155;
  font-weight: 700;
  line-height: 1.36;
}

.ops-report-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.ops-report-highlight-panel {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dbe4f2;
  border-top: 4px solid #4f67f6;
  border-radius: 10px;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.ops-report-highlight-panel.company {
  border-top-color: #14b8a6;
  background: linear-gradient(135deg, #ecfdf5, #ffffff);
}

.ops-report-highlight-panel.person {
  border-top-color: #4f67f6;
  background: linear-gradient(135deg, #eef2ff, #ffffff);
}

.ops-report-highlight-panel.penalty {
  border-top-color: #f59e0b;
  background: linear-gradient(135deg, #fffbeb, #ffffff);
}

.ops-report-highlight-panel.period {
  border-top-color: #7c3aed;
  background: linear-gradient(135deg, #f5f3ff, #ffffff);
}

.ops-report-highlight-panel h3 {
  margin: 0;
  padding: 9px 11px;
  border-bottom: 1px solid #e5edfb;
  color: #172033;
  font-size: 0.96rem;
  font-weight: 900;
}

.ops-report-highlight-panel ol {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ops-report-highlight-panel li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 34px;
  padding: 7px 10px;
  border-top: 1px solid rgba(219, 228, 242, 0.72);
}

.ops-report-highlight-panel li:nth-child(even) {
  background: rgba(238, 242, 255, 0.56);
}

.ops-report-highlight-panel li span {
  min-width: 0;
  overflow: hidden;
  color: #172033;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-highlight-panel li strong {
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
  white-space: nowrap;
}

.ops-report-highlight-panel li.is-empty {
  display: block;
  color: #64748b;
  font-weight: 800;
}

.ops-report-risk-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ops-report-risk-card {
  display: grid;
  gap: 6px;
  padding: 12px;
  border-top: 4px solid #4f67f6;
}

.ops-report-risk-card.company {
  border-top-color: #14b8a6;
  background: linear-gradient(135deg, #ecfdf5, #ffffff);
}

.ops-report-risk-card.person {
  border-top-color: #4f67f6;
  background: linear-gradient(135deg, #eef2ff, #ffffff);
}

.ops-report-risk-card.penalty {
  border-top-color: #f59e0b;
  background: linear-gradient(135deg, #fffbeb, #ffffff);
}

.ops-report-risk-card.period {
  border-top-color: #7c3aed;
  background: linear-gradient(135deg, #f5f3ff, #ffffff);
}

.ops-report-risk-card.inventory {
  border-top-color: #0f766e;
  background: linear-gradient(135deg, #ecfdf5, #ffffff);
}

.ops-report-risk-card.inventory-move {
  border-top-color: #2563eb;
  background: linear-gradient(135deg, #eff6ff, #ffffff);
}

.ops-report-risk-card.inventory-critical {
  border-top-color: #dc2626;
  background: linear-gradient(135deg, #fef2f2, #ffffff);
}

.ops-report-risk-card span,
.ops-report-risk-card small {
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
}

.ops-report-risk-card strong {
  min-width: 0;
  color: #172033;
  font-size: 1rem;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-repeat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.ops-report-inventory-section {
  order: 20;
  border-color: #ccfbf1;
  background:
    linear-gradient(135deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0.98)),
    #ffffff;
}

.ops-report-inventory-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  gap: 12px;
  align-items: stretch;
}

.ops-report-inventory-card h3 i {
  color: #0f766e;
}

.ops-report-inventory-tables {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.ops-report-inventory-tables .ops-report-repeat-panel h3 {
  color: #0f3f3a;
  background: rgba(20, 184, 166, 0.12);
}

.ops-report-repeat-panel {
  overflow: hidden;
}

.ops-report-repeat-panel h3 {
  margin: 0;
  padding: 10px 12px;
  color: #1f2f49;
  font-size: 0.95rem;
  text-align: center;
  background: rgba(79, 103, 246, 0.08);
  border-bottom: 1px solid #e5edfb;
}

.ops-report-repeat-list {
  display: grid;
}

.ops-report-repeat-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid #edf2f7;
}

.ops-report-repeat-row:nth-child(even) {
  background: #eef2ff;
}

.ops-report-repeat-row strong,
.ops-report-repeat-row span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-repeat-row strong {
  color: #172033;
  font-weight: 900;
}

.ops-report-repeat-row span {
  margin-top: 3px;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 700;
}

.ops-report-repeat-row em {
  display: grid;
  place-items: center;
  width: 36px;
  height: 28px;
  justify-self: end;
  border-radius: 999px;
  color: #991b1b;
  background: #fee2e2;
  font-style: normal;
  font-weight: 900;
}

.ops-report-grid {
  display: grid;
  gap: 12px;
}

.ops-report-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ops-report-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ops-report-grid.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ops-report-section {
  padding: 14px;
}

.ops-report-section .dashboard-section-head {
  justify-content: center;
  text-align: center;
}

.ops-report-visual-section {
  border-color: #d7e1f3;
  background:
    linear-gradient(135deg, rgba(248, 250, 252, 0.98), rgba(239, 246, 255, 0.82)),
    #ffffff;
}

.ops-report-panel {
  border: 1px solid #dbe4f2;
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  min-width: 0;
  overflow: hidden;
}

.ops-report-panel h3 {
  margin: 0;
  padding: 10px 12px;
  color: #1f2f49;
  font-size: 0.98rem;
  text-align: center;
  background: rgba(79, 103, 246, 0.08);
  border-bottom: 1px solid #e5edfb;
}

.ops-report-panel-note {
  margin: 0;
  padding: 8px 12px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 700;
  background: #f8fbff;
  border-bottom: 1px solid #e5edfb;
}

.ops-report-panel-table-wrap,
.ops-report-table-wrap {
  margin-top: 10px;
}

.ops-report-panel .ops-report-panel-table-wrap {
  margin: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
  border-radius: 0;
  max-height: 330px;
  overflow-y: auto;
  overflow-x: hidden;
}

.ops-report-panel-table,
.ops-report-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.ops-report-panel-table.module-table,
.ops-report-table.module-table {
  min-width: 0;
}

.ops-report-panel-table th,
.ops-report-panel-table td,
.ops-report-table th,
.ops-report-table td {
  font-size: 0.88rem;
  vertical-align: top;
  padding: 8px 10px;
  line-height: 1.24;
}

.ops-report-kif-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}

.ops-report-kif-inline-layout {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 118px;
  gap: 0;
  min-width: 0;
  min-height: 0;
}

.ops-report-penalty-panel {
  margin-top: 12px;
}

.ops-report-penalty-inline-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 128px;
  gap: 0;
  min-width: 0;
}

.ops-report-kif-inline-donut {
  display: grid;
  place-items: center;
  min-width: 0;
  padding: 8px;
  border-left: 1px solid #e5edfb;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.ops-report-penalty-donut {
  align-content: center;
}

.ops-report-mini-donut {
  display: grid;
  place-items: center;
  align-content: center;
  width: 70px;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #ffffff 0 55%, transparent 56%),
    conic-gradient(var(--donut, #e2e8f0 0% 100%));
  box-shadow:
    inset 0 0 0 1px rgba(148, 163, 184, 0.34),
    0 8px 18px rgba(15, 23, 42, 0.08);
}

.ops-report-mini-donut span {
  color: #172033;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.ops-report-mini-donut small {
  color: #64748b;
  font-size: 0.56rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ops-report-kif-legend {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.ops-report-kif-legend-row {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr) 7ch;
  gap: 6px;
  align-items: center;
  min-width: 0;
  color: #243349;
  font-size: 0.72rem;
  font-weight: 800;
}

.ops-report-kif-legend-row i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--dot, #94a3b8);
}

.ops-report-kif-legend-row span {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.16;
}

.ops-report-kif-legend-row strong {
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
}

.ops-report-panel .ops-report-compact-table-wrap {
  max-height: 104px;
  min-width: 0;
  border-top: 0;
}

.ops-report-panel .ops-report-penalty-table-wrap {
  max-height: 220px;
}

.ops-report-compact-table th,
.ops-report-compact-table td {
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: 0.8rem;
}

.ops-report-compact-table .ops-report-count-cell {
  gap: 0;
}

.ops-report-count-col {
  width: 76px;
}

.ops-report-code-col {
  width: 120px;
}

.ops-report-panel-table th:last-child,
.ops-report-panel-table td:last-child,
.ops-report-table th:last-child,
.ops-report-table td:last-child {
  width: 76px;
  min-width: 0;
  max-width: 76px;
  text-align: right;
}

.ops-report-panel-table.module-table th:last-child,
.ops-report-panel-table.module-table td:last-child,
.ops-report-table.module-table th:last-child,
.ops-report-table.module-table td:last-child {
  width: 76px;
  min-width: 0;
  max-width: 76px;
}

.ops-report-panel-table td:last-child,
.ops-report-table td:last-child {
  white-space: nowrap;
  font-weight: 800;
}

.ops-report-table th:first-child,
.ops-report-table td:first-child {
  width: 120px;
}

.ops-report-count-value {
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
  overflow: visible;
}

.ops-report-count-stack {
  display: inline-grid;
  justify-items: end;
  gap: 2px;
  min-width: 54px;
}

.ops-report-count-stack strong {
  line-height: 1;
}

.ops-report-count-stack small {
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
}

.ops-report-count-cell {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.ops-report-colored-cell {
  grid-template-columns: 10px minmax(0, 1fr);
  align-items: center;
  column-gap: 8px;
}

.ops-report-colored-cell::before {
  content: "";
  grid-row: 1 / span 2;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--row-color, #4f67f6);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--row-color, #4f67f6) 16%, transparent);
}

.ops-report-colored-cell span,
.ops-report-colored-cell i {
  grid-column: 2;
}

.ops-report-count-cell span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-count-cell i {
  display: block;
  width: 100%;
  height: 5px;
  border-radius: 999px;
  background: #e5ecf8;
  overflow: hidden;
}

.ops-report-count-cell i::before {
  content: "";
  display: block;
  width: var(--bar, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--row-color, #4f67f6), #14b8a6);
}

.ops-report-penalty-cell span {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ops-report-penalty-table .ops-report-code-col {
  width: 96px;
}

.ops-report-penalty-table th:first-child,
.ops-report-penalty-table td:first-child {
  width: 96px;
}

.ops-report-penalty-table td {
  padding-top: 6px;
  padding-bottom: 6px;
}

.ops-report-penalty-legend {
  align-content: start;
}

.ops-report-penalty-legend .ops-report-kif-legend-row span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-height: 1.18;
}

.ops-report-chart-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.ops-report-chart-card {
  min-width: 0;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  padding: 12px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.ops-report-chart-head {
  margin-bottom: 10px;
}

.ops-report-chart-card h3 {
  margin: 0;
  color: #1f2f49;
  font-size: 0.98rem;
  text-align: center;
}

.ops-report-chart-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 64px;
  gap: 10px;
  align-items: center;
}

.ops-report-chart-donut {
  display: grid;
  place-items: center;
  align-content: center;
  justify-self: end;
  width: 58px;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #ffffff 0 54%, transparent 55%),
    conic-gradient(var(--donut, #e2e8f0 0% 100%));
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.28);
}

.ops-report-chart-donut strong {
  color: #172033;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.ops-report-chart-donut span {
  color: #64748b;
  font-size: 0.54rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.ops-report-bar-list {
  display: grid;
  gap: 8px;
}

.ops-report-bar-row {
  display: grid;
  gap: 5px;
}

.ops-report-bar-meta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 13ch;
  gap: 8px;
  align-items: center;
  color: #243349;
  font-size: 0.86rem;
  font-weight: 800;
}

.ops-report-bar-meta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-bar-meta span i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 999px;
  background: var(--row-color, #4f67f6);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--row-color, #4f67f6) 14%, transparent);
}

.ops-report-bar-meta strong {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.ops-report-bar-track {
  height: 10px;
  border-radius: 999px;
  background: #e8eef9;
  overflow: hidden;
}

.ops-report-bar-track span {
  display: block;
  width: var(--bar, 0%);
  height: 100%;
  min-width: 3px;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--row-color, #4f67f6), #14b8a6);
}

.ops-report-chart-overflow {
  position: relative;
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  margin-top: 12px;
  color: #475569;
  font-size: 0.8rem;
  font-weight: 800;
  cursor: help;
}

.ops-report-chart-overflow > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  padding: 6px 9px;
  border-radius: 999px;
  background: #eef2ff;
  color: #334155;
}

.ops-report-chart-tooltip {
  position: absolute;
  left: 0;
  bottom: calc(100% + 8px);
  z-index: 20;
  width: min(360px, calc(100vw - 48px));
  max-height: 220px;
  overflow: auto;
  padding: 10px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  background: #0f172a;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.35;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.24);
  opacity: 0;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.ops-report-chart-overflow:hover .ops-report-chart-tooltip,
.ops-report-chart-overflow:focus .ops-report-chart-tooltip,
.ops-report-chart-overflow:focus-within .ops-report-chart-tooltip {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.ops-report-donut-section {
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.ops-report-donut-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.ops-report-donut-card {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
  padding: 14px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}

.ops-report-donut-visual {
  display: grid;
  place-items: center;
  align-content: center;
  width: 108px;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #ffffff 0 54%, transparent 55%),
    conic-gradient(var(--donut, #e2e8f0 0% 100%));
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.3);
}

.ops-report-donut-visual span {
  color: #172033;
  font-size: 1.5rem;
  font-weight: 900;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.ops-report-donut-visual small {
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.ops-report-donut-content {
  min-width: 0;
}

.ops-report-donut-content h3 {
  margin: 0 0 8px;
  color: #1f2f49;
  font-size: 0.95rem;
}

.ops-report-donut-content ul {
  display: grid;
  gap: 6px;
  max-height: 156px;
  margin: 0;
  padding: 0;
  overflow: auto;
  list-style: none;
}

.ops-report-donut-content li {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  color: #243349;
  font-size: 0.78rem;
  font-weight: 800;
}

.ops-report-donut-content li.muted {
  grid-template-columns: 1fr;
  color: #64748b;
}

.ops-report-donut-content i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--dot, #94a3b8);
}

.ops-report-donut-content span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-report-donut-content strong {
  color: #0f172a;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.ops-report-mini-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0;
}

.ops-report-mini-summary span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #1f2f49;
  background: #edf2ff;
  font-weight: 800;
}

@media (max-width: 1280px) {
  .ops-report-card-grid,
  .ops-report-repeat-grid,
  .ops-report-grid.three,
  .ops-report-grid.four,
  .ops-report-chart-grid,
  .ops-report-donut-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ops-report-donut-card {
    grid-template-columns: 100px minmax(0, 1fr);
  }

  .ops-report-donut-visual {
    width: 96px;
  }

  .ops-report-kif-inline-layout {
    grid-template-columns: minmax(180px, 1fr) 112px;
  }

  .ops-report-penalty-inline-layout {
    grid-template-columns: minmax(0, 1fr) 122px;
  }
}

@media (max-width: 1280px) and (min-width: 901px) {
  .ops-report-card-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .ops-report-heading {
    display: grid;
  }

  .ops-report-title-lockup {
    align-items: flex-start;
  }

  .ops-report-period-badge {
    width: 100%;
    text-align: left;
  }

  .ops-report-card-grid,
  .ops-report-management-grid,
  .ops-report-repeat-grid,
  .ops-report-grid.two,
  .ops-report-grid.three,
  .ops-report-grid.four,
  .ops-report-chart-grid,
  .ops-report-donut-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ops-report-kif-inline-layout {
    grid-template-columns: 1fr;
  }

  .ops-report-penalty-inline-layout {
    grid-template-columns: 1fr;
  }

  .ops-report-kif-inline-donut {
    border-top: 1px solid #e5edfb;
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .ops-report-title-lockup {
    display: grid;
    justify-items: center;
    text-align: center;
  }

  .ops-report-logo {
    width: 72px;
    height: 52px;
  }

  .ops-report-card-grid,
  .ops-report-management-grid,
  .ops-report-risk-card-grid,
  .ops-report-repeat-grid,
  .ops-report-grid.two,
  .ops-report-grid.three,
  .ops-report-grid.four,
  .ops-report-chart-grid,
  .ops-report-donut-grid {
    grid-template-columns: 1fr;
  }
}

body.gumruk-preview-open {
  overflow: hidden;
}

.gumruk-live-layout {
  display: block;
  max-width: 1080px;
}

.gumruk-live-layout > form.gumruk-form {
  width: 100%;
}

.gumruk-preview-modal[hidden] {
  display: none !important;
}

.gumruk-preview-modal {
  position: fixed;
  inset: 0;
  z-index: 2500;
  display: grid;
  place-items: center;
  padding: 20px;
}

.gumruk-preview-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.58);
}

.gumruk-preview-modal-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(1120px, calc(100vw - 40px));
  max-height: calc(100vh - 40px);
  padding: 18px;
  border: 1px solid #d7dce6;
  border-radius: 18px;
  background: #f8fafc;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.28);
}

.gumruk-preview-modal-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.gumruk-preview-modal .gumruk-preview-head {
  margin: 0;
}

.gumruk-preview-close {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
}

.gumruk-preview-scroll {
  min-height: 0;
  overflow: auto;
  padding: 12px;
  border-radius: 12px;
  background: #e5e7eb;
}

.gumruk-preview-modal .gumruk-preview-paper {
  width: min(100%, 820px);
  margin: 0 auto;
  padding: 78px 64px 36px;
  font-size: 0.86rem;
  line-height: 1.45;
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.16);
}

.gumruk-preview-modal .gumruk-preview-top,
.gumruk-preview-modal .gumruk-preview-title,
.gumruk-preview-modal .gumruk-preview-body,
.gumruk-preview-modal .gumruk-preview-signature {
  width: min(100%, 650px);
  margin-left: auto;
  margin-right: auto;
}

.gumruk-preview-modal .gumruk-preview-top img {
  width: 64px;
  height: 64px;
}

.gumruk-preview-modal .gumruk-preview-title {
  gap: 4px;
  margin: 42px 0 30px;
  margin-left: auto;
  margin-right: auto;
}

.gumruk-preview-modal .gumruk-preview-body {
  gap: 12px;
  overflow: visible;
}

.gumruk-preview-modal .gumruk-preview-body p {
  text-indent: 34px;
}

.gumruk-preview-modal .gumruk-preview-material-box {
  gap: 7px;
  padding: 10px;
}

.gumruk-preview-modal .gumruk-preview-material-box strong {
  font-size: 0.94em;
}

.gumruk-preview-modal .gumruk-preview-material-box thead th,
.gumruk-preview-modal .gumruk-preview-material-box tbody td {
  padding: 5px 7px !important;
  font-size: 0.82rem !important;
  line-height: 1.22 !important;
}

.gumruk-preview-modal .gumruk-preview-material-box th:first-child,
.gumruk-preview-modal .gumruk-preview-material-box td:first-child {
  width: 44px;
}

.gumruk-preview-modal .gumruk-preview-material-box th:last-child,
.gumruk-preview-modal .gumruk-preview-material-box td:last-child {
  width: 72px;
}

.gumruk-preview-modal .gumruk-preview-signature {
  margin-top: 92px;
  font-size: 0.98em;
}

.gumruk-preview-modal .gumruk-preview-footer {
  width: min(100%, 650px);
  margin-left: auto;
  margin-right: auto;
  margin-top: 44px;
  font-size: 0.78em;
  line-height: 1.28;
}

.gumruk-detail-section {
  display: grid;
  grid-template-columns: minmax(520px, 0.9fr) minmax(440px, 1fr);
  gap: 14px 28px;
  width: min(100%, 1480px);
  margin-right: auto;
}

.gumruk-detail-grid.grid.two {
  display: block;
  min-width: 0;
}

.gumruk-detail-grid.grid.two > div + div {
  margin-top: 28px;
}

.gumruk-detail-section p {
  max-width: 100%;
}

.gumruk-detail-actions {
  grid-column: 1;
  margin-top: 0;
}

.gumruk-detail-sig-grid {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
  width: 100%;
  margin: 0;
  grid-template-columns: 1fr;
  gap: 14px;
}

.gumruk-detail-sig-grid .sig-card,
.gumruk-detail-sig-grid .sig-card.mid {
  grid-column: auto;
  max-width: none;
  justify-self: stretch;
}

@media (max-width: 900px) {
  .gumruk-preview-modal {
    padding: 10px;
  }

  .gumruk-preview-modal-panel {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    padding: 12px;
  }

  .gumruk-preview-modal .gumruk-preview-paper {
    width: 760px;
  }
}

@media (max-width: 1180px) {
  .gumruk-detail-section {
    display: block;
    width: 100%;
  }

  .gumruk-detail-grid.grid.two {
    display: block;
  }

  .gumruk-detail-sig-grid {
    width: 100%;
    margin-top: 16px;
  }

}

.gumruk-module-shell {
  display: grid;
  grid-template-columns: minmax(480px, 720px) minmax(560px, 720px);
  align-items: start;
  gap: 18px;
  width: min(100%, 1480px);
  margin-right: auto;
}

.gumruk-module-form,
.gumruk-module-preview {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.gumruk-module-form {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.gumruk-module-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.gumruk-module-fields label,
.gumruk-module-photo {
  min-width: 0;
}

.gumruk-module-fields input,
.gumruk-module-fields select,
.gumruk-module-photo input {
  width: 100%;
  max-width: none;
}

.gumruk-module-span {
  grid-column: 1 / -1;
}

.gumruk-module-material {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #d8e1f2;
  border-radius: 12px;
  background: #fbfdff;
}

.gumruk-module-material[hidden] {
  display: none !important;
}

.gumruk-module-material-head,
.gumruk-module-material-labels,
.gumruk-module-material-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 130px 48px;
  gap: 8px;
  align-items: end;
}

.gumruk-module-material-head {
  align-items: center;
}

.gumruk-module-material-head h2 {
  margin: 0;
  font-size: 1rem;
}

.gumruk-module-material-head .btn {
  grid-column: 2 / -1;
  justify-self: end;
}

.gumruk-module-material-labels {
  color: #64748b;
  font-weight: 800;
  font-size: 0.8rem;
}

.gumruk-module-material-row input {
  width: 100%;
  max-width: none;
}

.gumruk-module-remove {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #fff0d6;
  color: #a65000;
  display: inline-grid;
  place-items: center;
}

.gumruk-module-note {
  margin: 0;
}

.gumruk-module-actions {
  margin-top: 2px;
}

.gumruk-module-preview {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 10px;
  padding: 14px;
}

.gumruk-module-preview-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.gumruk-module-preview-head h2 {
  margin: 0;
  font-size: 1.1rem;
}

.gumruk-module-preview-head span {
  color: #64748b;
  font-weight: 800;
}

.gumruk-module-paper {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  width: min(100%, 650px);
  aspect-ratio: 210 / 297;
  margin: 0 auto;
  padding: 50px 58px 30px;
  border: 1px solid #d7dce6;
  background: #fff;
  color: #1f2937;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
  overflow: hidden;
  font-size: 0.74rem;
  line-height: 1.42;
}

.gumruk-module-paper > * {
  min-width: 0;
  max-width: 100%;
}

.gumruk-module-paper-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.gumruk-module-paper-top img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.gumruk-module-paper-title {
  display: grid;
  gap: 3px;
  margin: 34px 0 24px;
  text-align: center;
}

.gumruk-module-paper-title strong {
  font-size: 1.06em;
}

.gumruk-module-paper-title span {
  justify-self: end;
  width: 100%;
  text-align: right;
  font-weight: 800;
  font-size: 0.86em;
}

.gumruk-module-paper-body {
  display: grid;
  gap: 10px;
  align-content: start;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.gumruk-module-paper-body p {
  margin: 0;
  text-align: justify;
  text-indent: 30px;
  overflow-wrap: break-word;
}

.gumruk-module-preview-table {
  display: grid;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
  padding: 9px;
  border: 1px solid #475569;
  border-radius: 5px;
  overflow: hidden;
}

.gumruk-module-preview-table > strong {
  font-size: 0.9em;
}

.gumruk-module-preview-table p {
  margin: 0;
  color: #64748b;
  text-align: left;
  text-indent: 0;
}

.gumruk-module-preview-table table {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.gumruk-module-preview-table th,
.gumruk-module-preview-table td {
  border: 1px solid #334155;
  padding: 4px 6px;
  line-height: 1.16;
  overflow-wrap: anywhere;
  text-align: left;
}

.gumruk-module-preview-table th {
  background: #eef2ff;
  color: #64748b;
  font-weight: 800;
}

.gumruk-module-preview-table th:first-child,
.gumruk-module-preview-table td:first-child {
  width: 42px;
  text-align: center;
}

.gumruk-module-preview-table th:last-child,
.gumruk-module-preview-table td:last-child {
  width: 70px;
  text-align: center;
}

.gumruk-module-paper-signature {
  display: grid;
  justify-items: center;
  align-self: end;
  gap: 3px;
  margin-top: 0;
  margin-bottom: 56px;
  font-weight: 800;
}

.gumruk-module-paper-footer {
  align-self: end;
  display: grid;
  font-size: 0.78em;
  line-height: 1.28;
}

@media (max-width: 1320px) {
  .gumruk-module-shell {
    grid-template-columns: minmax(440px, 620px) minmax(500px, 1fr);
  }

  .gumruk-module-paper {
    width: min(100%, 590px);
    padding: 44px 52px 28px;
    font-size: 0.68rem;
  }
}

@media (max-width: 1080px) {
  .gumruk-module-shell {
    grid-template-columns: 1fr;
  }

  .gumruk-module-preview {
    position: static;
  }
}

@media (max-width: 720px) {
  .gumruk-module-fields,
  .gumruk-module-material-head,
  .gumruk-module-material-labels,
  .gumruk-module-material-row {
    grid-template-columns: 1fr;
  }

  .gumruk-module-material-head .btn {
    grid-column: auto;
    justify-self: start;
  }

  .gumruk-module-material-labels {
    display: none;
  }
}

.tutanak-module-shell {
  display: grid;
  grid-template-columns: minmax(520px, 760px) minmax(560px, 720px);
  align-items: start;
  gap: 18px;
  width: min(100%, 1500px);
  margin-right: auto;
}

.tutanak-module-form,
.tutanak-module-preview {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.tutanak-module-form {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.tutanak-module-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.tutanak-module-fields label,
.tutanak-module-photo {
  min-width: 0;
}

.tutanak-module-fields input,
.tutanak-module-fields select,
.tutanak-module-fields textarea,
.tutanak-module-photo input,
.tutanak-module-card textarea {
  width: 100%;
  max-width: none;
}

.tutanak-module-span {
  grid-column: 1 / -1;
}

.tutanak-module-card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #d8e1f2;
  border-radius: 12px;
  background: #fbfdff;
}

.tutanak-module-card[hidden],
.tutanak-module-card [hidden],
.tutanak-module-fields [hidden] {
  display: none !important;
}

.tutanak-module-card-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.tutanak-module-card-head h2 {
  margin: 0;
  font-size: 1rem;
}

.tutanak-module-card-head span {
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
}

.tutanak-module-card textarea {
  min-height: 84px;
}

.tutanak-module-signature-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.tutanak-module-signature-summary > div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid #dbe4f6;
  border-radius: 10px;
  background: #fff;
}

.tutanak-module-signature-summary span {
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 800;
}

.tutanak-module-signature-summary strong,
.tutanak-module-signature-summary small {
  overflow-wrap: anywhere;
}

.tutanak-module-signature-summary small {
  color: #475569;
  font-weight: 700;
}

.tutanak-module-actions {
  margin-top: 2px;
}

.tutanak-module-preview {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 10px;
  padding: 14px;
}

.tutanak-module-preview-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.tutanak-module-preview-head h2 {
  margin: 0;
  font-size: 1.1rem;
}

.tutanak-module-preview-head span {
  color: #64748b;
  font-weight: 800;
}

.tutanak-module-paper {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto auto auto;
  width: min(100%, 650px);
  aspect-ratio: 210 / 297;
  margin: 0 auto;
  padding: 50px 58px 30px;
  border: 1px solid #d7dce6;
  background: #fff;
  color: #1f2937;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
  overflow: hidden;
  font-size: 0.76rem;
  line-height: 1.45;
}

.tutanak-module-paper > * {
  min-width: 0;
  max-width: 100%;
}

.tutanak-module-paper-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.tutanak-module-paper-top img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.tutanak-module-paper h2 {
  margin: 44px 0 28px;
  text-align: center;
  font-size: 1.25em;
  letter-spacing: 0;
}

.tutanak-module-paper-body {
  display: grid;
  gap: 12px;
  align-content: start;
  overflow: hidden;
}

.tutanak-module-paper-body p {
  margin: 0;
  text-align: justify;
  text-indent: 30px;
  overflow-wrap: break-word;
}

.tutanak-module-paper-body p:empty {
  display: none;
}

.tutanak-module-paper-signatures {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 190px));
  justify-content: space-between;
  gap: 48px;
  align-self: end;
  margin: 24px 0 30px;
  text-align: center;
  font-weight: 800;
}

.tutanak-module-paper-signatures div,
.tutanak-module-paper-manager-signature div {
  display: grid;
  grid-template-rows: 72px auto auto;
  gap: 4px;
  align-items: end;
  min-height: 116px;
}

.tutanak-module-signature-placeholder {
  display: block;
  width: 100%;
  height: 72px;
}

.tutanak-module-paper-manager-signature {
  display: grid;
  justify-items: center;
  margin: 0 0 34px;
  text-align: center;
  font-weight: 800;
}

.tutanak-module-paper-manager-signature div {
  width: min(100%, 260px);
}

.tutanak-module-paper-signatures span,
.tutanak-module-paper-manager-signature span {
  font-size: 0.82em;
  color: #475569;
}

.tutanak-module-paper-footer {
  align-self: end;
  display: grid;
  font-size: 0.78em;
  line-height: 1.28;
}

@media (max-width: 1320px) {
  .tutanak-module-shell {
    grid-template-columns: minmax(460px, 620px) minmax(500px, 1fr);
  }

  .tutanak-module-paper {
    width: min(100%, 590px);
    padding: 44px 52px 28px;
    font-size: 0.7rem;
  }
}

@media (max-width: 1080px) {
  .tutanak-module-shell {
    grid-template-columns: 1fr;
  }

  .tutanak-module-preview {
    position: static;
  }
}

@media (max-width: 720px) {
  .tutanak-module-fields,
  .tutanak-module-signature-summary,
  .tutanak-module-paper-signatures {
    grid-template-columns: 1fr;
  }
}

/* Inventory trial module */
.inventory-page {
  display: grid;
  gap: 14px;
}

.main-pane:has(.inventory-page) .topbar {
  display: none;
}

.content:has(.inventory-page) {
  padding-top: 16px;
}

.inventory-page > .inventory-summary-grid,
.inventory-page > .inventory-warehouse-card-strip,
.inventory-page > .inventory-stock-focus-panel,
.inventory-page > .inventory-workspace:not(.inventory-movement-workspace),
.inventory-page > .section {
  width: min(66.666%, 1320px);
  min-width: 0;
}

.inventory-page > .inventory-toolbar {
  width: 100%;
  min-width: 0;
}

.inventory-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  border: 1px solid #dbe4f2;
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
  box-shadow: var(--shadow-sm);
}

.inventory-toolbar .page-title {
  order: 1;
  flex: 0 0 auto;
  margin: 0 12px 0 0;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.1;
  white-space: nowrap;
}

.inventory-toolbar .page-title::after {
  display: none;
}

.inventory-toolbar .inventory-tabs {
  order: 3;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.inventory-toolbar .inventory-search {
  order: 2;
  flex: 0 1 400px;
  min-width: min(330px, 100%);
  margin-left: 0;
}

.inventory-toolbar .inventory-tab {
  gap: 6px;
  padding: 9px 12px;
}

.inventory-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: min(520px, 100%);
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

.inventory-search i {
  color: #64748b;
  padding-left: 6px;
}

.inventory-search input {
  min-width: 0;
  flex: 1;
}

.inventory-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.inventory-summary-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 88px;
  padding: 14px;
  border: 1px solid #dbe4f2;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fbff, #eef2ff);
  box-shadow: var(--shadow-sm);
}

.inventory-summary-card.warning {
  background: linear-gradient(135deg, #fff7ed, #fee2e2);
}

.inventory-summary-card span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  color: #fff;
  background: #4f67f6;
  box-shadow: 0 10px 24px rgba(79, 103, 246, 0.22);
}

.inventory-summary-card.warning span {
  background: #dc2626;
}

.inventory-summary-card small,
.inventory-table small {
  display: block;
  color: #64748b;
  font-weight: 700;
}

.inventory-summary-card strong {
  display: block;
  margin-top: 4px;
  color: #172033;
  font-size: 1.8rem;
  line-height: 1;
}

.inventory-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px;
  border: 1px solid #dbe4f2;
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
  box-shadow: var(--shadow-sm);
}

.inventory-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid #dbe4f2;
  border-radius: 11px;
  color: #44536c;
  background: #f8fbff;
  font-weight: 900;
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.inventory-tab.movement {
  color: #0f766e;
  border-color: #99f6e4;
  background: linear-gradient(135deg, #ecfdf5, #f0fdfa);
}

.inventory-tab.definitions {
  color: #5b21b6;
  border-color: #ddd6fe;
  background: linear-gradient(135deg, #f5f3ff, #eef2ff);
}

.inventory-tab.stock {
  color: #1d4ed8;
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #eff6ff, #f8fbff);
}

.inventory-tab:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm);
}

.inventory-tab.movement.active {
  color: #ffffff;
  border-color: #0f766e;
  background: linear-gradient(135deg, #0f766e, #14b8a6);
  box-shadow: 0 12px 26px rgba(15, 118, 110, 0.22);
}

.inventory-tab.definitions.active {
  color: #ffffff;
  border-color: #6d28d9;
  background: linear-gradient(135deg, #6d28d9, #4f67f6);
  box-shadow: 0 12px 26px rgba(109, 40, 217, 0.22);
}

.inventory-tab.stock.active {
  color: #ffffff;
  border-color: #1d4ed8;
  background: linear-gradient(135deg, #1d4ed8, #4f67f6);
  box-shadow: 0 12px 26px rgba(29, 78, 216, 0.22);
}

.inventory-workspace {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.inventory-movement-workspace {
  grid-template-columns: minmax(0, 1fr);
}

.inventory-page > .inventory-movement-workspace {
  width: min(66.666%, 1320px);
  min-width: 0;
}

.inventory-movement-workspace .inventory-form-panel {
  width: 100%;
  min-width: 0;
}

.inventory-unified-movement-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 8px 10px;
}

.inventory-unified-movement-form > label,
.inventory-unified-movement-form > div {
  grid-column: span 4;
}

.inventory-unified-movement-form .inventory-movement-type-field {
  grid-column: span 3;
}

.inventory-unified-movement-form .inventory-movement-warehouse-field {
  grid-column: span 5;
}

.inventory-unified-movement-form .inventory-transfer-target-field {
  grid-column: span 4;
}

.inventory-unified-movement-form .inventory-movement-item-field {
  grid-column: span 8;
}

.inventory-unified-movement-form .inventory-movement-stock-field {
  grid-column: span 4;
}

.inventory-unified-movement-form .inventory-movement-preview-field,
.inventory-unified-movement-form .inventory-movement-barcode-field {
  grid-column: span 6;
}

.inventory-unified-movement-form .inventory-movement-image-field {
  grid-column: span 5;
}

.inventory-unified-movement-form .inventory-movement-quantity-field,
.inventory-unified-movement-form .inventory-movement-date-field,
.inventory-unified-movement-form .inventory-movement-document-field {
  grid-column: span 2;
}

.inventory-unified-movement-form .inventory-movement-reason-field,
.inventory-unified-movement-form .inventory-movement-counterparty-field {
  grid-column: span 3;
}

.inventory-unified-movement-form .inventory-movement-location-code-field,
.inventory-unified-movement-form .inventory-movement-location-text-field {
  grid-column: span 3;
}

.inventory-unified-movement-form .inventory-movement-note-field {
  grid-column: span 6;
}

.inventory-unified-movement-form .btn-success {
  grid-column: span 4;
  justify-self: start;
  min-width: 240px;
}

.inventory-unified-movement-form .inventory-selected-item {
  --inventory-preview-image-size: 74px;
  min-height: 92px;
  padding: 8px 10px;
}

.inventory-unified-movement-form .inventory-live-stock,
.inventory-unified-movement-form .inventory-scan-field {
  padding: 9px 11px;
}

.inventory-unified-movement-form .inventory-scan-row {
  grid-template-columns: minmax(0, 1fr) 42px 42px;
  gap: 6px;
}

.inventory-unified-movement-form .inventory-scan-row .btn {
  width: 42px;
  min-width: 42px;
  padding: 0;
}

.inventory-unified-movement-form .inventory-scan-row .btn span {
  display: none;
}

.inventory-unified-movement-form .inventory-location-scan-row {
  grid-template-columns: minmax(72px, 1fr) 38px;
  gap: 4px;
}

.inventory-unified-movement-form .inventory-location-scan-row .btn {
  width: 38px;
  min-width: 38px;
}

.inventory-form-panel[data-movement-tone="in"] {
  border-top-color: #15803d;
  background: linear-gradient(135deg, #dcfce7, #f0fdf4 36%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(21, 128, 61, 0.16), var(--shadow-sm);
}

.inventory-form-panel[data-movement-tone="out"] {
  border-top-color: #b91c1c;
  background: linear-gradient(135deg, #fee2e2, #fef2f2 36%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(185, 28, 28, 0.16), var(--shadow-sm);
}

.inventory-form-panel[data-movement-tone="transfer"] {
  border-top-color: #b45309;
  background: linear-gradient(135deg, #fef3c7, #fffbeb 36%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(180, 83, 9, 0.16), var(--shadow-sm);
}

.inventory-form-panel[data-movement-tone="adjustment"] {
  border-top-color: #1d4ed8;
  background: linear-gradient(135deg, #dbeafe, #eff6ff 36%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.16), var(--shadow-sm);
}

.inventory-unified-movement-form[data-movement-tone="in"] .inventory-selected-item,
.inventory-unified-movement-form[data-movement-tone="in"] .inventory-scan-field {
  border-color: #86efac;
  background: linear-gradient(135deg, #dcfce7, #ffffff);
}

.inventory-unified-movement-form[data-movement-tone="out"] .inventory-selected-item,
.inventory-unified-movement-form[data-movement-tone="out"] .inventory-scan-field {
  border-color: #fca5a5;
  background: linear-gradient(135deg, #fee2e2, #ffffff);
}

.inventory-unified-movement-form[data-movement-tone="transfer"] .inventory-selected-item,
.inventory-unified-movement-form[data-movement-tone="transfer"] .inventory-scan-field {
  border-color: #fcd34d;
  background: linear-gradient(135deg, #fef3c7, #ffffff);
}

.inventory-unified-movement-form[data-movement-tone="adjustment"] .inventory-selected-item,
.inventory-unified-movement-form[data-movement-tone="adjustment"] .inventory-scan-field {
  border-color: #93c5fd;
  background: linear-gradient(135deg, #dbeafe, #ffffff);
}

.inventory-warehouse-panel {
  border-top-color: #1d4ed8;
  background: linear-gradient(135deg, #dbeafe, #eff6ff 38%, #ffffff 72%);
  box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.15), var(--shadow-sm);
}

.inventory-warehouse-panel h2 i,
.inventory-warehouse-list-panel h2 i,
.inventory-stock-status-panel h2 i {
  color: #2563eb;
}

.inventory-item-panel {
  border-top-color: #6d28d9;
  background: linear-gradient(135deg, #ede9fe, #f5f3ff 38%, #ffffff 72%);
  box-shadow: inset 0 0 0 1px rgba(109, 40, 217, 0.15), var(--shadow-sm);
}

.inventory-item-panel h2 i,
.inventory-item-list-panel h2 i {
  color: #7c3aed;
}

.inventory-warehouse-list-panel {
  border-top-color: #0e7490;
  background: linear-gradient(135deg, #cffafe, #ecfeff 38%, #ffffff 72%);
  box-shadow: inset 0 0 0 1px rgba(14, 116, 144, 0.15), var(--shadow-sm);
}

.inventory-item-list-panel {
  border-top-color: #5b21b6;
  background: linear-gradient(135deg, #ede9fe, #f5f3ff 38%, #ffffff 72%);
  box-shadow: inset 0 0 0 1px rgba(91, 33, 182, 0.15), var(--shadow-sm);
}

.inventory-stock-status-panel {
  border-top-color: #1d4ed8;
  background: linear-gradient(135deg, #dbeafe, #eff6ff 34%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.15), var(--shadow-sm);
}

.inventory-stock-movements-panel {
  border-top-color: #0f766e;
  background: linear-gradient(135deg, #ccfbf1, #f0fdfa 34%, #ffffff 70%);
  box-shadow: inset 0 0 0 1px rgba(15, 118, 110, 0.15), var(--shadow-sm);
}

.inventory-stock-movements-panel h2 i {
  color: #0f766e;
}

.inventory-warehouse-panel .inventory-form-grid input,
.inventory-warehouse-panel .inventory-form-grid select,
.inventory-warehouse-panel .inventory-form-grid textarea,
.inventory-stock-status-panel .table-wrap {
  border-color: #93c5fd;
}

.inventory-item-panel .inventory-form-grid input,
.inventory-item-panel .inventory-form-grid select,
.inventory-item-panel .inventory-form-grid textarea,
.inventory-item-panel .inventory-item-preview {
  border-color: #c4b5fd;
}

.inventory-stock-movements-panel .table-wrap {
  border-color: #5eead4;
}

.inventory-warehouse-movements-panel {
  width: 66.666%;
  max-width: 1120px;
  margin-right: auto;
}

.inventory-warehouse-movement-title {
  display: flex;
  align-items: center;
  gap: 8px 12px;
  flex-wrap: wrap;
  padding: 10px 12px;
  border: 1px solid #b9e7df;
  border-radius: 12px;
  background: #f0fdfa;
  color: #134e4a;
  font-weight: 900;
}

.inventory-warehouse-movement-title strong,
.inventory-warehouse-movement-title span,
.inventory-warehouse-movement-title small {
  min-width: 0;
}

.inventory-warehouse-movement-title small {
  padding: 3px 8px;
  border-radius: 999px;
  background: #ccfbf1;
  color: #115e59;
}

.inventory-warehouse-movement-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.inventory-warehouse-movement-table th,
.inventory-warehouse-movement-table td {
  padding: 7px 8px;
  vertical-align: middle;
  white-space: normal;
}

.inventory-warehouse-movement-table th:nth-child(1),
.inventory-warehouse-movement-table td:nth-child(1) {
  width: 13ch;
}

.inventory-warehouse-movement-table th:nth-child(2),
.inventory-warehouse-movement-table td:nth-child(2) {
  width: 14ch;
}

.inventory-warehouse-movement-table th:nth-child(3),
.inventory-warehouse-movement-table td:nth-child(3) {
  width: 21ch;
}

.inventory-warehouse-movement-table th:nth-child(4),
.inventory-warehouse-movement-table td:nth-child(4) {
  width: 9ch;
  text-align: center;
}

.inventory-warehouse-movement-table th:nth-child(5),
.inventory-warehouse-movement-table td:nth-child(5) {
  width: 17ch;
}

.inventory-warehouse-movement-table td > strong,
.inventory-warehouse-movement-table td > small {
  display: block;
  overflow-wrap: anywhere;
}

.inventory-warehouse-movement-table td > small {
  margin-top: 2px;
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 800;
}

.inventory-warehouse-movement-table tr.is-incoming td {
  background: #f0fdf4;
}

.inventory-warehouse-movement-table tr.is-outgoing td {
  background: #fff7ed;
}

.inventory-movement-limit-note {
  margin: 8px 0 0;
}

@media (max-width: 1100px) {
  .inventory-warehouse-movements-panel {
    width: 100%;
  }
}

.inventory-warehouse-card-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 14px 0 18px;
}

.inventory-warehouse-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "code title"
    "code location"
    "metrics metrics";
  gap: 8px 14px;
  min-height: 132px;
  padding: 16px 16px 14px;
  border: 2px solid var(--inventory-stock-border, #cbd5e1);
  border-left: 12px solid var(--inventory-stock-accent, #4f46e5);
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.62)),
    var(--inventory-stock-row-bg, #f8fafc);
  color: #172033;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.inventory-warehouse-card:hover,
.inventory-warehouse-card:focus-visible {
  transform: translateY(-2px);
  border-color: var(--inventory-stock-accent, #4f46e5);
  box-shadow: 0 16px 30px rgba(15, 23, 42, 0.11);
  outline: none;
}

.inventory-warehouse-card.active {
  background:
    linear-gradient(135deg, #ffffff, var(--inventory-stock-head-bg, #eef2ff) 72%);
  border-color: var(--inventory-stock-accent, #4f46e5);
  color: #172033;
  box-shadow:
    inset 0 0 0 1px var(--inventory-stock-border, #c7d2fe),
    0 18px 34px rgba(15, 23, 42, 0.1);
}

.inventory-warehouse-card.has-summary,
.inventory-warehouse-card.has-action,
.inventory-warehouse-card.has-activity {
  grid-template-columns: auto minmax(0, 0.8fr) minmax(250px, 1.05fr);
  grid-template-areas:
    "code title actions"
    "code location actions"
    "metrics metrics actions";
  min-height: 152px;
}

.inventory-warehouse-card-code {
  grid-area: code;
  display: grid;
  place-items: center;
  align-self: start;
  min-width: 58px;
  min-height: 58px;
  padding: 8px;
  border-radius: 10px;
  background: var(--inventory-stock-accent, #4f46e5);
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 1000;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.inventory-warehouse-card.active .inventory-warehouse-card-code {
  background: var(--inventory-stock-accent, #4f46e5);
}

.inventory-warehouse-card > strong {
  grid-area: title;
  min-width: 0;
  color: inherit;
  font-size: 1.02rem;
  font-weight: 1000;
  line-height: 1.16;
  overflow: visible;
  overflow-wrap: anywhere;
  white-space: normal;
}

.inventory-warehouse-card > small {
  grid-area: location;
  color: #52627a;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.18;
  overflow: visible;
  overflow-wrap: anywhere;
  white-space: normal;
}

.inventory-warehouse-card.active > small {
  color: #52627a;
}

.inventory-warehouse-card-metrics {
  grid-area: metrics;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.inventory-warehouse-card-metrics em {
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.76);
  color: var(--inventory-stock-strong, #312e81);
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 1000;
}

.inventory-warehouse-card.active .inventory-warehouse-card-metrics em {
  background: #ffffff;
  color: var(--inventory-stock-strong, #312e81);
}

.inventory-warehouse-card-metrics em.critical {
  background: #fee2e2;
  color: #991b1b;
}

.inventory-card-critical-link {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: #fee2e2;
  color: #991b1b;
  font-size: 0.78rem;
  font-weight: 1000;
  line-height: 1;
  cursor: pointer;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.inventory-card-critical-link:hover,
.inventory-card-critical-link:focus-visible {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.14);
  outline: none;
  transform: translateY(-1px);
}

.inventory-warehouse-card.has-action .inventory-warehouse-card-activity {
  display: none;
}

.inventory-warehouse-card.has-summary > .inventory-warehouse-card-actions:not(.inventory-warehouse-card-summary-actions) {
  display: none;
}

.inventory-warehouse-card-actions {
  grid-area: actions;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 12px;
  min-width: 0;
  padding-left: 14px;
  border-left: 1px solid var(--inventory-stock-border, #c7d2fe);
}

.inventory-warehouse-card-summary-actions {
  align-content: center;
}

.inventory-card-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  width: 100%;
}

.inventory-card-summary-grid > span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 7px 8px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.62);
  color: #172033;
  overflow: hidden;
}

.inventory-card-summary-grid i {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 8px;
  background: #eef2ff;
  color: #4f46e5;
  font-size: 0.72rem;
}

.inventory-card-summary-grid small {
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-card-summary-grid strong {
  color: #172033;
  font-size: 0.95rem;
  font-weight: 1000;
  line-height: 1;
}

.inventory-card-summary-grid > span.warning {
  background: #fff1f2;
  border-color: #fecdd3;
}

.inventory-card-summary-grid > span.warning i {
  background: #fee2e2;
  color: #b91c1c;
}

.inventory-warehouse-card-actions > span:first-child strong,
.inventory-warehouse-card-actions > span:first-child small {
  display: block;
}

.inventory-warehouse-card-actions > span:first-child strong {
  color: var(--inventory-stock-strong, #3730a3);
  font-size: 0.82rem;
  font-weight: 1000;
  text-transform: uppercase;
}

.inventory-warehouse-card-actions > span:first-child small {
  margin-top: 4px;
  color: #64748b;
  font-size: 0.74rem;
  font-weight: 900;
}

.inventory-card-movement-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 12px;
  border: 1px solid var(--inventory-stock-border, #c7d2fe);
  border-radius: 10px;
  background: #ffffff;
  color: var(--inventory-stock-strong, #3730a3);
  cursor: pointer;
  font-size: 0.86rem;
  font-weight: 1000;
  line-height: 1;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.inventory-card-movement-link:hover,
.inventory-card-movement-link:focus-visible {
  border-color: var(--inventory-stock-accent, #4f46e5);
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
  outline: none;
  transform: translateY(-1px);
}

.inventory-warehouse-card-activity {
  grid-area: activity;
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  padding-left: 14px;
  border-left: 1px solid var(--inventory-stock-border, #c7d2fe);
}

.inventory-card-activity-head,
.inventory-card-activity-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.inventory-card-activity-head strong {
  color: var(--inventory-stock-strong, #3730a3);
  font-size: 0.78rem;
  font-weight: 1000;
  text-transform: uppercase;
}

.inventory-card-activity-head small {
  padding: 3px 7px;
  border-radius: 999px;
  background: var(--inventory-stock-chip-bg, #eef2ff);
  color: var(--inventory-stock-strong, #3730a3);
  font-size: 0.7rem;
  font-weight: 1000;
}

.inventory-card-activity-row {
  padding: 6px 8px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.72);
}

.inventory-card-activity-row strong,
.inventory-card-activity-row small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-card-activity-row strong {
  color: #172033;
  font-size: 0.76rem;
  font-weight: 1000;
}

.inventory-card-activity-row small {
  margin-top: 2px;
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 800;
}

.inventory-card-activity-row em {
  padding: 4px 7px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--inventory-stock-strong, #3730a3);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 1000;
  white-space: nowrap;
}

.inventory-card-activity-empty {
  padding: 8px 10px;
  border: 1px dashed var(--inventory-stock-border, #c7d2fe);
  border-radius: 9px;
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
  background: rgba(255, 255, 255, 0.56);
}

.inventory-stock-focus-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid #dbe4f2;
  border-left: 8px solid #4f46e5;
  border-radius: 12px;
  background: linear-gradient(135deg, #ffffff, #f7f9ff);
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08);
}

.inventory-focus-eyebrow {
  display: inline-flex;
  margin-bottom: 4px;
  color: #4f46e5;
  font-size: 0.78rem;
  font-weight: 1000;
  text-transform: uppercase;
}

.inventory-stock-focus-panel h2 {
  margin: 0;
  color: #172033;
  font-size: 1.28rem;
}

.inventory-stock-focus-panel p {
  margin: 4px 0 0;
  color: #52627a;
  font-weight: 800;
}

.inventory-focus-metrics {
  display: flex;
  gap: 8px;
}

.inventory-focus-metrics span {
  min-width: 88px;
  padding: 8px 10px;
  border-radius: 10px;
  background: #eef2ff;
  text-align: center;
}

.inventory-focus-metrics span.critical {
  background: #fee2e2;
}

.inventory-focus-metrics strong,
.inventory-focus-metrics small {
  display: block;
  line-height: 1.08;
}

.inventory-focus-metrics strong {
  color: #172033;
  font-size: 1rem;
  font-weight: 1000;
}

.inventory-focus-metrics small {
  margin-top: 4px;
  color: #64748b;
  font-size: 0.76rem;
  font-weight: 900;
}

.inventory-focus-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.inventory-selected-item-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #ecfeff;
  color: #155e75;
  font-size: 0.82rem;
  font-weight: 1000;
}

.inventory-selected-item-pill strong {
  color: #172033;
}

.inventory-form-panel {
  margin-top: 0;
}

.inventory-form-panel h2,
.inventory-section-head h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #172033;
}

.inventory-form-panel h2 i {
  color: #4f67f6;
}

.inventory-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 10px;
}

.inventory-form-grid.inventory-unified-movement-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 8px 10px;
}

.inventory-warehouse-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: start;
}

.inventory-warehouse-form > label {
  grid-column: span 6;
}

.inventory-warehouse-form .inventory-warehouse-code-field {
  grid-column: span 4;
}

.inventory-warehouse-form .inventory-warehouse-name-field {
  grid-column: span 8;
}

.inventory-warehouse-form .inventory-warehouse-location-code-field {
  grid-column: span 4;
}

.inventory-warehouse-form .inventory-warehouse-location-text-field {
  grid-column: span 8;
}

.inventory-warehouse-location-code-field .inventory-location-scan-row {
  grid-template-columns: minmax(72px, 1fr) 38px;
  gap: 4px;
}

.inventory-warehouse-location-code-field .inventory-location-scan-row .btn {
  width: 38px;
  min-width: 38px;
  padding: 0;
}

.inventory-warehouse-location-code-field .inventory-location-scan-row .btn span {
  display: none;
}

.inventory-warehouse-code-field input[readonly] {
  color: #64748b;
  background: #f8fafc;
}

.inventory-item-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: start;
}

.inventory-item-form > label {
  grid-column: span 6;
}

.inventory-item-form .inventory-item-code-field {
  grid-column: span 4;
}

.inventory-item-form .inventory-item-name-field {
  grid-column: span 8;
}

.inventory-item-code-field input[readonly] {
  color: #172033;
  background: #f8fafc;
}

.inventory-form-grid label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.inventory-form-grid [hidden],
.inventory-form-grid .is-hidden {
  display: none !important;
}

.inventory-form-grid label span {
  color: #1f2f49;
  font-size: 0.9rem;
  font-weight: 800;
}

.inventory-form-grid select,
.inventory-form-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.inventory-form-grid textarea {
  width: 100%;
  max-width: 100% !important;
  min-width: 0;
}

.inventory-form-grid select {
  text-overflow: clip;
}

.inventory-form-grid .inventory-select-full {
  grid-column: 1 / -1;
}

.inventory-form-grid .inventory-select-fill,
.inventory-form-grid .inventory-select-full {
  min-width: 0;
}

.inventory-form-grid .inventory-select-fill select,
.inventory-form-grid .inventory-select-full select {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
}

.inventory-list-panels {
  align-items: start;
}

.inventory-compact-list {
  display: grid;
  gap: 8px;
  overflow: visible;
  padding-right: 0;
}

.inventory-compact-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  background: #f8fbff;
}

.inventory-compact-row strong {
  display: block;
  overflow: hidden;
  color: #172033;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-compact-row small {
  display: block;
  overflow: hidden;
  color: #64748b;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-row-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.inventory-row-actions form {
  display: inline-flex;
  margin: 0;
}

.inventory-scan-field {
  padding: 10px;
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background: #f8fbff;
}

.inventory-scan-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
}

.inventory-location-scan-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.inventory-scan-row .btn {
  min-height: 42px;
  white-space: nowrap;
}

.inventory-scan-field [data-status="success"],
[data-inventory-location-status][data-status="success"] {
  color: #166534;
}

.inventory-scan-field [data-status="error"],
[data-inventory-location-status][data-status="error"] {
  color: #991b1b;
}

.inventory-scan-field [data-status="pending"],
[data-inventory-location-status][data-status="pending"] {
  color: #854d0e;
}

.inventory-live-stock {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid #bfdbfe;
  border-left: 5px solid #4f67f6;
  border-radius: 12px;
  background: linear-gradient(135deg, #eff6ff, #ffffff);
}

.inventory-live-stock span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #1e40af;
  font-size: 0.82rem;
  font-weight: 900;
}

.inventory-live-stock strong {
  color: #172033;
  font-size: 1.05rem;
}

.inventory-live-stock small {
  color: #475569;
  font-weight: 800;
}

.inventory-live-stock[data-status="success"] {
  border-color: #86efac;
  border-left-color: #22c55e;
  background: linear-gradient(135deg, #f0fdf4, #ffffff);
}

.inventory-live-stock[data-status="warning"] {
  border-color: #fde68a;
  border-left-color: #f59e0b;
  background: linear-gradient(135deg, #fffbeb, #ffffff);
}

.inventory-live-stock[data-status="danger"] {
  border-color: #fecaca;
  border-left-color: #dc2626;
  background: linear-gradient(135deg, #fef2f2, #ffffff);
}

.inventory-live-stock[data-status="pending"] {
  border-left-color: #f59e0b;
}

.inventory-camera-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.62);
}

.inventory-camera-modal[hidden] {
  display: none !important;
}

.inventory-camera-panel {
  width: min(520px, 100%);
  padding: 14px;
  border: 1px solid #c7d2fe;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.28);
}

.inventory-camera-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.inventory-camera-head strong {
  color: #172033;
}

.inventory-camera-panel video {
  display: block;
  width: 100%;
  max-height: 62vh;
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background: #0f172a;
  cursor: crosshair;
  object-fit: cover;
}

.inventory-camera-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.inventory-camera-tools .btn {
  min-height: 38px;
  padding: 7px 12px;
}

.inventory-camera-tools .btn.active {
  border-color: #f59e0b;
  background: #fff7ed;
  color: #9a3412;
}

.icon-action {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
  border: 0;
  border-radius: 10px;
  text-decoration: none;
  cursor: pointer;
}

.icon-action.edit {
  color: #854d0e;
  background: #fef3c7;
}

.icon-action.pdf {
  color: #1d4ed8;
  background: #dbeafe;
}

.icon-action.delete {
  color: #991b1b;
  background: #fee2e2;
}

.inventory-wide {
  grid-column: 1 / -1;
}

.inventory-unified-movement-form .inventory-movement-item-field {
  grid-column: span 8;
}

.inventory-unified-movement-form .inventory-movement-stock-field {
  grid-column: span 4;
}

.inventory-unified-movement-form .inventory-movement-preview-field,
.inventory-unified-movement-form .inventory-movement-barcode-field {
  grid-column: span 6;
}

.inventory-unified-movement-form .inventory-movement-image-field {
  grid-column: span 5;
}

.inventory-unified-movement-form .inventory-movement-note-field {
  grid-column: span 6;
}

.inventory-unified-movement-form .btn-success {
  grid-column: span 4;
}

.inventory-movement-image-field[hidden] {
  display: none !important;
}

.inventory-item-preview,
.inventory-selected-item {
  --inventory-preview-image-size: 5cm;
  display: grid;
  grid-template-columns: var(--inventory-preview-image-size) minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 10px;
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8fbff, #ffffff);
}

.inventory-selected-item {
  grid-template-columns: var(--inventory-preview-image-size) minmax(0, 1fr);
}

.inventory-selected-image,
.inventory-item-thumb {
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #4f67f6;
  background: #eef2ff;
}

.inventory-selected-image {
  width: var(--inventory-preview-image-size);
  height: var(--inventory-preview-image-size);
  border: 1px solid #dbe4f2;
  border-radius: 12px;
  font-size: 1.5rem;
}

.inventory-item-preview .inventory-selected-image {
  width: var(--inventory-preview-image-size);
  height: var(--inventory-preview-image-size);
}

.inventory-selected-image img,
.inventory-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.inventory-item-preview strong,
.inventory-selected-item strong {
  display: block;
  overflow: hidden;
  color: #172033;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-item-preview small,
.inventory-selected-item small,
.inventory-selected-item p {
  display: block;
  margin: 3px 0 0;
  overflow: hidden;
  color: #64748b;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inventory-image-remove {
  display: inline-flex !important;
  grid-template-columns: auto;
  align-items: center;
  gap: 7px !important;
  width: fit-content;
  margin-top: 8px;
  color: #991b1b;
  font-size: 0.82rem;
  font-weight: 900;
}

.inventory-image-remove input {
  margin: 0;
}

.inventory-form-grid label.inventory-image-remove span {
  color: #991b1b;
  font-size: 0.82rem;
}

.inventory-item-cell {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.inventory-item-thumb {
  width: 54px;
  height: 54px;
  border: 1px solid #dbe4f2;
  border-radius: 10px;
  font-size: 0.95rem;
}

.inventory-item-cell > span:last-child {
  min-width: 0;
}

.inventory-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.inventory-stock-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.inventory-stock-col-warehouse {
  width: 12%;
}

.inventory-stock-col-location {
  width: 16%;
}

.inventory-stock-col-material {
  width: 30%;
}

.inventory-stock-col-category {
  width: 14%;
}

.inventory-stock-col-quantity {
  width: 11%;
}

.inventory-stock-col-min {
  width: 9%;
}

.inventory-stock-col-status {
  width: 8%;
}

.inventory-stock-table th,
.inventory-stock-table td {
  padding: 8px 9px;
  vertical-align: middle;
  overflow-wrap: anywhere;
  word-break: normal;
}

.inventory-stock-table th:nth-child(1),
.inventory-stock-table td:nth-child(1) {
  width: 12%;
}

.inventory-stock-table th:nth-child(2),
.inventory-stock-table td:nth-child(2) {
  width: 16%;
}

.inventory-stock-table th:nth-child(3),
.inventory-stock-table td:nth-child(3) {
  width: 30%;
}

.inventory-stock-table th:nth-child(4),
.inventory-stock-table td:nth-child(4) {
  width: 14%;
}

.inventory-stock-table th:nth-child(5),
.inventory-stock-table td:nth-child(5),
.inventory-stock-table th:nth-child(6),
.inventory-stock-table td:nth-child(6) {
  width: 9%;
  white-space: nowrap;
}

.inventory-stock-table th:nth-child(7),
.inventory-stock-table td:nth-child(7) {
  width: 8%;
  text-align: center;
  white-space: nowrap;
}

.inventory-stock-table-selected {
  min-width: 0;
}

.inventory-stock-table-selected th:nth-child(1),
.inventory-stock-table-selected td:nth-child(1) {
  width: 44%;
  min-width: 0;
}

.inventory-stock-table-selected th:nth-child(2),
.inventory-stock-table-selected td:nth-child(2) {
  width: 20%;
}

.inventory-stock-table-selected th:nth-child(3),
.inventory-stock-table-selected td:nth-child(3),
.inventory-stock-table-selected th:nth-child(4),
.inventory-stock-table-selected td:nth-child(4) {
  width: 12%;
  white-space: nowrap;
}

.inventory-stock-table-selected th:nth-child(5),
.inventory-stock-table-selected td:nth-child(5) {
  width: 12%;
  text-align: center;
  white-space: nowrap;
}

.inventory-stock-table-selected .inventory-stock-col-material {
  width: 44%;
}

.inventory-stock-table-selected .inventory-stock-col-category {
  width: 20%;
}

.inventory-stock-table-selected .inventory-stock-col-quantity,
.inventory-stock-table-selected .inventory-stock-col-min,
.inventory-stock-table-selected .inventory-stock-col-status {
  width: 12%;
}

.inventory-list-pagination {
  padding: 8px 0 0;
  margin-top: 8px;
}

.inventory-list-pagination .asset-list-page-summary {
  white-space: normal;
}

.inventory-list-pagination .asset-list-page-buttons {
  justify-content: flex-end;
}

.inventory-stock-table .inventory-item-cell {
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 7px;
}

.inventory-stock-table .inventory-item-cell > span:last-child,
.inventory-movement-table .inventory-item-cell > span:last-child {
  min-width: 0;
  overflow: visible;
}

.inventory-stock-table .inventory-item-thumb {
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.inventory-stock-table .inventory-item-thumb-button {
  position: relative;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: #f8fafc;
  cursor: zoom-in;
  overflow: hidden;
  transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.inventory-stock-table .inventory-item-thumb-button img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.inventory-stock-table .inventory-item-thumb-button:hover,
.inventory-stock-table .inventory-item-thumb-button:focus-visible {
  transform: scale(1.08);
  border-color: #6366f1;
  box-shadow: 0 10px 22px rgba(79, 70, 229, 0.22);
  outline: none;
}

.inventory-stock-table .inventory-item-thumb-button:disabled {
  cursor: default;
}

.inventory-stock-item-link {
  display: inline-flex;
  color: #172033;
  font-weight: 1000;
  line-height: 1.12;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}

.inventory-stock-item-link:hover,
.inventory-stock-item-link:focus-visible,
.inventory-stock-item-link.active {
  color: #4f46e5;
  text-decoration: underline;
  text-underline-offset: 3px;
  outline: none;
}

.inventory-image-hover-preview {
  position: fixed;
  z-index: 1200;
  width: 280px;
  max-width: calc(100vw - 24px);
  padding: 8px;
  border: 1px solid rgba(99, 102, 241, 0.28);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 22px 50px rgba(15, 23, 42, 0.22);
  pointer-events: none;
}

.inventory-image-hover-preview img {
  width: 100%;
  height: 210px;
  object-fit: contain;
  display: block;
  border-radius: 7px;
  background: #f8fafc;
}

.inventory-image-hover-preview strong {
  display: block;
  margin-top: 7px;
  color: #111827;
  font-size: 0.82rem;
  line-height: 1.15;
}

.inventory-image-modal {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(15, 23, 42, 0.72);
}

.inventory-image-modal[hidden],
.inventory-image-hover-preview[hidden] {
  display: none !important;
}

.inventory-image-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(900px, 96vw);
  max-height: 92vh;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 28px 70px rgba(15, 23, 42, 0.35);
  overflow: hidden;
}

.inventory-image-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid #e5e7eb;
}

.inventory-image-head strong,
.inventory-image-head small {
  display: block;
  line-height: 1.2;
}

.inventory-image-head strong {
  color: #111827;
  font-size: 1rem;
}

.inventory-image-head small {
  margin-top: 3px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 800;
}

.inventory-image-frame {
  display: grid;
  place-items: center;
  min-height: 320px;
  padding: 14px;
  background: #0f172a;
}

.inventory-image-frame img {
  max-width: 100%;
  max-height: calc(92vh - 92px);
  object-fit: contain;
  border-radius: 8px;
  background: #ffffff;
}

.inventory-stock-table .inventory-item-cell strong,
.inventory-stock-table td > strong {
  line-height: 1.12;
}

.inventory-stock-table .inventory-item-cell small,
.inventory-stock-table td > small {
  line-height: 1.1;
}

.inventory-stock-tone-0 {
  --inventory-stock-accent: #6366f1;
  --inventory-stock-strong: #3730a3;
  --inventory-stock-head-bg: #f1f4ff;
  --inventory-stock-row-bg: #f7f8ff;
  --inventory-stock-border: #c7d2fe;
  --inventory-stock-chip-bg: #eef2ff;
}

.inventory-stock-tone-1 {
  --inventory-stock-accent: #14b8a6;
  --inventory-stock-strong: #0f766e;
  --inventory-stock-head-bg: #effdfa;
  --inventory-stock-row-bg: #f2fbf8;
  --inventory-stock-border: #99f6e4;
  --inventory-stock-chip-bg: #ccfbf1;
}

.inventory-stock-tone-2 {
  --inventory-stock-accent: #f59e0b;
  --inventory-stock-strong: #b45309;
  --inventory-stock-head-bg: #fff8ed;
  --inventory-stock-row-bg: #fffaf0;
  --inventory-stock-border: #fed7aa;
  --inventory-stock-chip-bg: #fef3c7;
}

.inventory-stock-tone-3 {
  --inventory-stock-accent: #38bdf8;
  --inventory-stock-strong: #0369a1;
  --inventory-stock-head-bg: #f0f9ff;
  --inventory-stock-row-bg: #f4f9ff;
  --inventory-stock-border: #bae6fd;
  --inventory-stock-chip-bg: #e0f2fe;
}

.inventory-stock-tone-4 {
  --inventory-stock-accent: #fb7185;
  --inventory-stock-strong: #be123c;
  --inventory-stock-head-bg: #fff5f7;
  --inventory-stock-row-bg: #fff8f9;
  --inventory-stock-border: #fecdd3;
  --inventory-stock-chip-bg: #ffe4e6;
}

.inventory-stock-tone-5 {
  --inventory-stock-accent: #94a3b8;
  --inventory-stock-strong: #475569;
  --inventory-stock-head-bg: #f8fafc;
  --inventory-stock-row-bg: #fbfdff;
  --inventory-stock-border: #cbd5e1;
  --inventory-stock-chip-bg: #e2e8f0;
}

.inventory-stock-group-row td,
.inventory-stock-group-row th {
  padding: 11px 0 0 !important;
  border-top: 12px solid #ffffff;
  border-bottom: 3px solid var(--inventory-stock-border, #c7d2fe);
  background: transparent !important;
  text-align: left;
}

.inventory-stock-group-head-row th {
  width: auto !important;
  padding-top: 0 !important;
}

.inventory-stock-group-row:first-child td,
.inventory-stock-group-row:first-child th {
  border-top-width: 0;
}

.inventory-stock-group-title {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  min-height: 54px;
  padding: 10px 16px 10px 30px;
  border-left: 10px solid var(--inventory-stock-accent, #4f46e5);
  border-radius: 0 14px 14px 0;
  background:
    linear-gradient(90deg, #ffffff, var(--inventory-stock-head-bg, #eef2ff));
  color: #172033;
  box-shadow:
    inset 0 0 0 1px var(--inventory-stock-border, #c7d2fe),
    0 10px 22px rgba(15, 23, 42, 0.08);
}

.inventory-stock-group-title::before {
  content: "";
  position: absolute;
  left: 11px;
  top: 50%;
  width: 8px;
  height: 34px;
  border-radius: 999px;
  background: var(--inventory-stock-accent, #4f46e5);
  box-shadow: 0 0 0 4px var(--inventory-stock-chip-bg, #eef2ff);
  transform: translateY(-50%);
}

.inventory-stock-group-title strong {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 4px 14px;
  border-radius: 999px;
  border: 1px solid var(--inventory-stock-border, #c7d2fe);
  background: #ffffff;
  color: var(--inventory-stock-strong, #312e81);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 6px 14px rgba(15, 23, 42, 0.06);
}

.inventory-stock-group-title span,
.inventory-stock-group-title small {
  color: #52627a;
  font-weight: 800;
}

.inventory-stock-group-title small {
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--inventory-stock-chip-bg, rgba(79, 70, 229, 0.1));
  color: var(--inventory-stock-strong, #3730a3);
}

.inventory-stock-row td {
  border-bottom: 2px solid #ffffff;
  background: var(--inventory-stock-row-bg, #ffffff) !important;
}

.inventory-stock-row td:first-child {
  border-left: 10px solid var(--inventory-stock-accent, #4f46e5);
}

.inventory-stock-row.is-critical td {
  background:
    linear-gradient(90deg, rgba(220, 38, 38, 0.1), rgba(220, 38, 38, 0.035) 28%, var(--inventory-stock-row-bg, #ffffff) 58%) !important;
}

.inventory-stock-row.is-critical td:first-child {
  border-left: 10px solid #dc2626;
}

.inventory-movement-table {
  min-width: 1220px;
  table-layout: auto;
}

.inventory-movement-table th,
.inventory-movement-table td {
  padding: 8px 8px;
  vertical-align: middle;
}

.inventory-movement-table th:nth-child(1),
.inventory-movement-table td:nth-child(1) {
  width: 12ch;
  white-space: nowrap;
}

.inventory-movement-table th:nth-child(2),
.inventory-movement-table td:nth-child(2) {
  width: 14ch;
  white-space: nowrap;
}

.inventory-movement-table th:nth-child(3),
.inventory-movement-table td:nth-child(3) {
  width: 16ch;
}

.inventory-movement-table th:nth-child(4),
.inventory-movement-table td:nth-child(4) {
  width: 36ch;
}

.inventory-movement-table th:nth-child(5),
.inventory-movement-table td:nth-child(5) {
  width: 10ch;
  text-align: center;
  white-space: nowrap;
}

.inventory-movement-table th:nth-child(6),
.inventory-movement-table td:nth-child(6) {
  width: 16ch;
}

.inventory-movement-table th:nth-child(7),
.inventory-movement-table td:nth-child(7) {
  width: 16ch;
}

.inventory-movement-table th:nth-child(8),
.inventory-movement-table td:nth-child(8) {
  width: 16ch;
}

.inventory-movement-table th:nth-child(9),
.inventory-movement-table td:nth-child(9) {
  width: 9ch;
  text-align: center;
  white-space: nowrap;
}

.inventory-movement-table .inventory-item-cell {
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 7px;
}

.inventory-movement-table .inventory-item-thumb {
  width: 38px;
  height: 38px;
  border-radius: 8px;
}

.inventory-movement-table td > strong,
.inventory-movement-table .inventory-item-cell strong {
  display: block;
  overflow: visible;
  line-height: 1.12;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

.inventory-movement-table td > small,
.inventory-movement-table .inventory-item-cell small {
  display: block;
  overflow: visible;
  line-height: 1.12;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

.inventory-movement-table .inventory-pill {
  min-height: 24px;
  padding: 3px 8px;
  font-size: 0.78rem;
}

.inventory-movement-table .inventory-row-actions {
  justify-content: center;
  flex-wrap: nowrap;
}

.inventory-table td strong {
  color: #172033;
}

.inventory-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  color: #1f2f49;
  background: #eef2ff;
  font-size: 0.82rem;
  font-weight: 900;
  white-space: nowrap;
}

.inventory-pill.in,
.inventory-pill.adjustment_in,
.inventory-pill.transfer_in {
  color: #166534;
  background: #dcfce7;
}

.inventory-pill.out,
.inventory-pill.adjustment_out,
.inventory-pill.transfer_out {
  color: #991b1b;
  background: #fee2e2;
}

@media (max-width: 1180px) {
  .inventory-page > .inventory-toolbar,
  .inventory-page > .inventory-summary-grid,
  .inventory-page > .inventory-warehouse-card-strip,
  .inventory-page > .inventory-stock-focus-panel,
  .inventory-page > .inventory-workspace:not(.inventory-movement-workspace),
  .inventory-page > .inventory-movement-workspace,
  .inventory-page > .section {
    width: 100%;
  }

  .inventory-toolbar,
  .inventory-workspace {
    display: grid;
    grid-template-columns: 1fr;
  }

  .inventory-toolbar .inventory-search {
    margin-left: 0;
  }

  .inventory-movement-workspace .inventory-form-panel {
    width: 100%;
    min-width: 0;
  }

  .inventory-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .inventory-page {
    min-width: 0;
  }

  .inventory-page > .inventory-toolbar,
  .inventory-page > .inventory-summary-grid,
  .inventory-page > .inventory-warehouse-card-strip,
  .inventory-page > .inventory-stock-focus-panel,
  .inventory-page > .inventory-workspace,
  .inventory-page > .section {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .inventory-toolbar {
    gap: 12px;
  }

  .inventory-toolbar .page-title {
    white-space: normal;
  }

  .inventory-search {
    width: 100%;
    min-width: 0;
  }

  .inventory-tabs {
    align-items: stretch;
  }

  .inventory-tab {
    flex: 1 1 100%;
    justify-content: center;
    min-width: 0;
    white-space: normal;
    text-align: center;
  }

  .inventory-summary-grid,
  .inventory-warehouse-card-strip,
  .inventory-stock-focus-panel,
  .inventory-form-grid,
  .inventory-form-grid.inventory-unified-movement-form,
  .inventory-warehouse-form,
  .inventory-item-form {
    grid-template-columns: 1fr;
  }

  .inventory-warehouse-card.has-summary,
  .inventory-warehouse-card.has-action,
  .inventory-warehouse-card.has-activity {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas:
      "code title"
      "code location"
      "metrics metrics"
      "actions actions";
  }

  .inventory-warehouse-card-actions {
    padding: 10px 0 0;
    border-left: 0;
    border-top: 1px solid var(--inventory-stock-border, #c7d2fe);
  }

  .inventory-card-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .inventory-warehouse-card-activity {
    padding: 10px 0 0;
    border-left: 0;
    border-top: 1px solid var(--inventory-stock-border, #c7d2fe);
  }

  .inventory-summary-card,
  .inventory-warehouse-card,
  .inventory-stock-focus-panel,
  .inventory-form-panel,
  .inventory-stock-status-panel,
  .inventory-stock-movements-panel,
  .inventory-warehouse-list-panel,
  .inventory-item-list-panel {
    min-width: 0;
  }

  .inventory-scan-row,
  .inventory-unified-movement-form .inventory-scan-row,
  .inventory-unified-movement-form .inventory-location-scan-row,
  .inventory-warehouse-location-code-field .inventory-location-scan-row {
    grid-template-columns: 1fr;
  }

  .inventory-scan-row .btn,
  .inventory-unified-movement-form .inventory-scan-row .btn,
  .inventory-unified-movement-form .inventory-location-scan-row .btn,
  .inventory-warehouse-location-code-field .inventory-location-scan-row .btn {
    width: 100%;
    min-width: 0;
  }

  .inventory-unified-movement-form .inventory-scan-row .btn span,
  .inventory-unified-movement-form .inventory-location-scan-row .btn span,
  .inventory-warehouse-location-code-field .inventory-location-scan-row .btn span {
    display: inline;
  }

  .inventory-wide,
  .inventory-form-grid .inventory-select-full,
  .inventory-unified-movement-form > label,
  .inventory-unified-movement-form > div,
  .inventory-unified-movement-form .inventory-movement-type-field,
  .inventory-unified-movement-form .inventory-movement-warehouse-field,
  .inventory-unified-movement-form .inventory-transfer-target-field,
  .inventory-unified-movement-form .inventory-movement-item-field,
  .inventory-unified-movement-form .inventory-movement-stock-field,
  .inventory-unified-movement-form .inventory-movement-preview-field,
  .inventory-unified-movement-form .inventory-movement-barcode-field,
  .inventory-unified-movement-form .inventory-movement-image-field,
  .inventory-unified-movement-form .inventory-movement-quantity-field,
  .inventory-unified-movement-form .inventory-movement-date-field,
  .inventory-unified-movement-form .inventory-movement-document-field,
  .inventory-unified-movement-form .inventory-movement-reason-field,
  .inventory-unified-movement-form .inventory-movement-counterparty-field,
  .inventory-unified-movement-form .inventory-movement-location-code-field,
  .inventory-unified-movement-form .inventory-movement-location-text-field,
  .inventory-unified-movement-form .inventory-movement-note-field,
  .inventory-unified-movement-form .btn-success,
  .inventory-item-form > label,
  .inventory-item-form .inventory-item-code-field,
  .inventory-item-form .inventory-item-name-field,
  .inventory-warehouse-form > label,
  .inventory-warehouse-form .inventory-warehouse-code-field,
  .inventory-warehouse-form .inventory-warehouse-name-field,
  .inventory-warehouse-form .inventory-warehouse-location-code-field,
  .inventory-warehouse-form .inventory-warehouse-location-text-field {
    grid-column: 1 / -1;
  }

  .inventory-unified-movement-form .btn-success {
    justify-self: stretch;
    min-width: 0;
  }

  .inventory-form-grid select,
  .inventory-form-grid input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
  .inventory-form-grid textarea {
    min-height: 42px;
    font-size: 0.98rem;
  }

  .inventory-form-grid input[type="file"] {
    max-width: 100%;
  }

  .inventory-item-preview,
  .inventory-selected-item {
    --inventory-preview-image-size: 96px;
    grid-template-columns: var(--inventory-preview-image-size) minmax(0, 1fr);
  }

  .inventory-selected-image,
  .inventory-item-preview .inventory-selected-image {
    width: var(--inventory-preview-image-size);
    height: var(--inventory-preview-image-size);
  }

  .inventory-item-preview strong,
  .inventory-selected-item strong,
  .inventory-item-preview small,
  .inventory-selected-item small,
  .inventory-selected-item p,
  .inventory-compact-row strong,
  .inventory-compact-row small {
    overflow-wrap: anywhere;
    text-overflow: clip;
    white-space: normal;
  }

  .inventory-section-head {
    display: grid;
    align-items: start;
  }

  .inventory-section-head .btn {
    width: 100%;
  }

  .inventory-camera-panel {
    width: 100%;
    max-height: calc(100vh - 32px);
    overflow: auto;
  }

  .inventory-form-panel[data-movement-tone="in"] {
    background: linear-gradient(135deg, #bbf7d0, #dcfce7 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(21, 128, 61, 0.26), var(--shadow-sm);
  }

  .inventory-form-panel[data-movement-tone="out"] {
    background: linear-gradient(135deg, #fecaca, #fee2e2 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(185, 28, 28, 0.26), var(--shadow-sm);
  }

  .inventory-form-panel[data-movement-tone="transfer"] {
    background: linear-gradient(135deg, #fde68a, #fef3c7 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(180, 83, 9, 0.26), var(--shadow-sm);
  }

  .inventory-form-panel[data-movement-tone="adjustment"],
  .inventory-warehouse-panel,
  .inventory-stock-status-panel {
    background: linear-gradient(135deg, #bfdbfe, #dbeafe 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(29, 78, 216, 0.24), var(--shadow-sm);
  }

  .inventory-item-panel,
  .inventory-item-list-panel {
    background: linear-gradient(135deg, #ddd6fe, #ede9fe 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(109, 40, 217, 0.24), var(--shadow-sm);
  }

  .inventory-warehouse-list-panel,
  .inventory-stock-movements-panel {
    background: linear-gradient(135deg, #99f6e4, #ccfbf1 42%, #ffffff 78%);
    box-shadow: inset 0 0 0 1px rgba(15, 118, 110, 0.24), var(--shadow-sm);
  }

  .inventory-unified-movement-form[data-movement-tone="in"] .inventory-selected-item,
  .inventory-unified-movement-form[data-movement-tone="in"] .inventory-scan-field {
    border-color: #4ade80;
    background: linear-gradient(135deg, #bbf7d0, #ffffff);
  }

  .inventory-unified-movement-form[data-movement-tone="out"] .inventory-selected-item,
  .inventory-unified-movement-form[data-movement-tone="out"] .inventory-scan-field {
    border-color: #f87171;
    background: linear-gradient(135deg, #fecaca, #ffffff);
  }

  .inventory-unified-movement-form[data-movement-tone="transfer"] .inventory-selected-item,
  .inventory-unified-movement-form[data-movement-tone="transfer"] .inventory-scan-field {
    border-color: #fbbf24;
    background: linear-gradient(135deg, #fde68a, #ffffff);
  }

  .inventory-unified-movement-form[data-movement-tone="adjustment"] .inventory-selected-item,
  .inventory-unified-movement-form[data-movement-tone="adjustment"] .inventory-scan-field {
    border-color: #60a5fa;
    background: linear-gradient(135deg, #bfdbfe, #ffffff);
  }

  .plate-lookup-hero {
    border-color: #60a5fa;
    background:
      linear-gradient(135deg, rgba(191, 219, 254, 0.98), rgba(153, 246, 228, 0.96)),
      #ffffff;
  }

  .plate-lookup-icon {
    color: #0f766e;
    background: #99f6e4;
    border-color: #2dd4bf;
  }
}

@media (max-width: 480px) {
  .inventory-summary-grid {
    grid-template-columns: 1fr;
  }

  .inventory-form-panel,
  .inventory-stock-status-panel,
  .inventory-stock-movements-panel,
  .inventory-warehouse-list-panel,
  .inventory-item-list-panel {
    padding: 12px;
  }

  .inventory-form-panel h2,
  .inventory-section-head h2 {
    align-items: flex-start;
    font-size: 1.05rem;
    line-height: 1.2;
  }

  .inventory-item-preview,
  .inventory-selected-item {
    --inventory-preview-image-size: 82px;
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .inventory-selected-image,
  .inventory-item-preview .inventory-selected-image {
    width: var(--inventory-preview-image-size);
    height: var(--inventory-preview-image-size);
  }

  .inventory-compact-row,
  .inventory-item-cell {
    grid-template-columns: 1fr;
  }

  .inventory-row-actions {
    justify-content: flex-start;
  }
}
.zimmet-operation-layout {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr);
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.asset-module-shell.zimmet-operation-shell {
  overflow-x: clip;
}

.asset-module-shell.zimmet-operation-shell .operation-switch,
.asset-module-shell.zimmet-operation-shell .zimmet-operation-layout,
.asset-module-shell.zimmet-operation-shell .zimmet-operation-panel {
  max-width: 100%;
  min-width: 0;
}

.asset-module-shell.zimmet-operation-shell .zimmet-operation-panel {
  width: min(100%, 1500px);
}

.asset-module-shell.zimmet-operation-shell .vardiya-zimmet-table-wrap,
.asset-module-shell.zimmet-operation-shell .zimmet-hareket-table-wrap {
  max-width: 100%;
  overflow: auto;
  overscroll-behavior: contain;
}

.asset-module-shell.zimmet-operation-shell .vardiya-zimmet-table-wrap {
  overflow-x: hidden;
}

.zimmet-operation-panel {
  border-top: 1px solid rgba(126, 143, 176, 0.2);
  padding: 14px 16px 4px;
}

.zimmet-operation-quick-panel {
  background: linear-gradient(180deg, rgba(248, 251, 255, 0.96), rgba(255, 255, 255, 0.96));
}

.zimmet-operation-panel-head {
  align-items: center;
  display: flex;
  gap: 12px;
  margin-bottom: 12px;
}

.zimmet-operation-panel-head > i {
  align-items: center;
  background: #eef4ff;
  border: 1px solid #dbe6ff;
  border-radius: 8px;
  color: #4f5cf0;
  display: inline-flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.zimmet-operation-panel-head strong {
  color: #17233c;
  display: block;
  font-size: 1.05rem;
  font-weight: 900;
}

.zimmet-operation-panel-head span {
  color: #61708b;
  display: block;
  font-size: 0.86rem;
  font-weight: 700;
  margin-top: 2px;
}

.zimmet-operation-assign-form {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(150px, 180px) minmax(260px, 1.1fr) minmax(260px, 1.1fr) minmax(210px, 250px) minmax(150px, 0.7fr) max-content;
  align-items: end;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.zimmet-operation-assign-form label {
  color: #17233c;
  display: grid;
  font-weight: 900;
  gap: 6px;
  min-width: 0;
  position: relative;
}

.zimmet-operation-assign-form > .btn {
  justify-self: start;
  white-space: nowrap;
  width: auto;
}

.zimmet-operation-assign-form input,
.zimmet-operation-assign-form select {
  min-width: 0;
}

.zimmet-operation-assign-form label.operation-field-invalid input {
  border-color: #f59e0b;
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.16);
}

.operation-field-warning {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  width: fit-content;
  max-width: 100%;
  border: 1px solid #facc15;
  border-radius: 999px;
  background: #fffbeb;
  color: #92400e;
  padding: 2px 8px;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.operation-field-warning[hidden] {
  display: none !important;
}

.zimmet-operation-assign-form .assignment-device-list,
.zimmet-operation-assign-form .assignment-personnel-list {
  left: 0;
  max-height: 280px;
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  z-index: 30;
}

@media (max-width: 1380px) {
  .zimmet-operation-assign-form {
    grid-template-columns: repeat(2, minmax(240px, 1fr));
  }
}

@media (max-width: 760px) {
  .asset-module-shell.zimmet-operation-shell {
    overflow-x: hidden;
  }

  .asset-module-shell.zimmet-operation-shell .operation-switch {
    padding-inline: 8px;
  }

  .asset-module-shell.zimmet-operation-shell .operation-switch-list {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding-bottom: 4px;
    scroll-snap-type: x proximity;
  }

  .asset-module-shell.zimmet-operation-shell .operation-tab {
    flex: 0 0 auto;
    min-height: 38px;
    padding: 8px 10px;
    scroll-snap-align: start;
  }

  .asset-module-shell.zimmet-operation-shell .operation-tab span {
    white-space: nowrap;
  }

  .zimmet-operation-layout {
    gap: 8px;
  }

  .zimmet-operation-layout > .vardiya-zimmet-filter-panel {
    order: 2;
  }

  .zimmet-operation-quick-panel {
    order: 1;
  }

  .zimmet-operation-panel:not(.zimmet-operation-quick-panel) {
    order: 3;
  }

  .zimmet-operation-panel {
    padding: 12px 10px 6px;
  }

  .zimmet-operation-panel-head {
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid #dbe4f2;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
  }

  .zimmet-operation-panel-head > i {
    height: 42px;
    width: 42px;
    border-radius: 12px;
  }

  .zimmet-operation-panel-head strong {
    font-size: 1rem;
  }

  .zimmet-operation-panel-head span {
    font-size: 0.78rem;
    line-height: 1.25;
  }

  .zimmet-operation-filter-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .zimmet-operation-filter-form label {
    min-height: auto;
    padding: 7px 8px 8px;
    font-size: 0.78rem;
  }

  .zimmet-operation-filter-form .operation-filter-date,
  .zimmet-operation-filter-form .operation-filter-team,
  .zimmet-operation-filter-form .operation-filter-shift,
  .zimmet-operation-filter-form .operation-filter-search {
    flex: none;
    min-width: 0;
    width: 100%;
  }

  .zimmet-operation-filter-form .operation-filter-search,
  .zimmet-operation-filter-form .operation-filter-shift,
  .zimmet-operation-filter-form .zimmet-filter-actions {
    grid-column: 1 / -1;
  }

  .zimmet-operation-filter-form .zimmet-filter-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .zimmet-operation-filter-form .zimmet-filter-actions .js-inline-pdf-link {
    display: none;
  }

  .zimmet-operation-filter-form .zimmet-filter-actions .btn {
    min-height: 38px;
    justify-content: center;
  }

  .vardiya-zimmet-window {
    display: grid;
    gap: 8px;
    padding: 9px 10px;
  }

  .vardiya-zimmet-window-main {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
  }

  .vardiya-zimmet-window-main .vardiya-zimmet-range {
    font-size: 0.78rem;
    overflow-wrap: anywhere;
  }

  .vardiya-zimmet-window em {
    justify-self: start;
    margin-left: 0;
    font-size: 0.82rem;
  }

  .zimmet-operation-assign-form {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 10px;
    border: 1px solid #dbe4f2;
    border-left: 5px solid #4f67f6;
    border-radius: 16px;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
  }

  .zimmet-operation-assign-form label {
    gap: 7px;
    padding: 10px;
    border: 1px solid #dbe4f2;
    border-radius: 14px;
    background: #ffffff;
    font-size: 0.9rem;
  }

  .zimmet-operation-assign-form .assignment-device-picker,
  .zimmet-operation-assign-form .assignment-personnel-field {
    border-color: #c7d2fe;
    background: #f8faff;
  }

  .zimmet-operation-assign-form .assignment-device-picker::before,
  .zimmet-operation-assign-form .assignment-personnel-field::before {
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    margin-bottom: -2px;
    border-radius: 999px;
    background: #4f67f6;
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 950;
  }

  .zimmet-operation-assign-form .assignment-device-picker::before {
    content: "1";
  }

  .zimmet-operation-assign-form .assignment-personnel-field::before {
    content: "2";
  }

  .zimmet-operation-assign-form .assignment-device-picker {
    order: 1;
  }

  .zimmet-operation-assign-form .assignment-personnel-field {
    order: 2;
  }

  .zimmet-operation-assign-form > .btn {
    order: 3;
  }

  .zimmet-operation-assign-form .operation-unit-field {
    order: 4;
  }

  .zimmet-operation-assign-form .operation-taken-at-field {
    order: 5;
  }

  .zimmet-operation-assign-form .operation-notes-field {
    order: 6;
  }

  .zimmet-operation-assign-form input,
  .zimmet-operation-assign-form select {
    min-height: 48px;
    font-size: 1rem;
    border-radius: 12px;
  }

  .zimmet-operation-assign-form > .btn {
    justify-self: stretch;
    min-height: 52px;
    border-radius: 14px;
    justify-content: center;
    font-size: 1rem;
    width: 100%;
  }

  .zimmet-operation-assign-form label:nth-child(9),
  .zimmet-operation-assign-form label:nth-child(10) {
    display: grid;
  }

  .zimmet-operation-assign-form .assignment-device-list,
  .zimmet-operation-assign-form .assignment-personnel-list,
  .assignment-inline-transfer-form .assignment-personnel-list {
    max-height: 46vh;
    border-radius: 14px;
    box-shadow: 0 18px 34px rgba(15, 23, 42, 0.18);
  }

  .zimmet-operation-assign-form .assignment-device-option,
  .zimmet-operation-assign-form .assignment-personnel-option,
  .assignment-inline-transfer-form .assignment-personnel-option {
    min-height: 50px;
    padding: 10px 12px;
  }

  .zimmet-operation-assign-form .assignment-device-option span,
  .zimmet-operation-assign-form .assignment-personnel-option span,
  .assignment-inline-transfer-form .assignment-personnel-option span {
    font-size: 0.98rem;
    line-height: 1.2;
  }

  .zimmet-operation-assign-form .assignment-device-option small,
  .zimmet-operation-assign-form .assignment-personnel-option small,
  .assignment-inline-transfer-form .assignment-personnel-option small {
    font-size: 0.78rem;
  }

  .zimmet-operation-shell .vardiya-zimmet-table-wrap,
  .zimmet-operation-shell .zimmet-hareket-table-wrap {
    overflow: visible;
    max-height: none;
  }

  .zimmet-operation-shell .vardiya-zimmet-table,
  .zimmet-operation-shell .assignment-history-table,
  .zimmet-operation-shell .vardiya-zimmet-table thead,
  .zimmet-operation-shell .assignment-history-table thead,
  .zimmet-operation-shell .vardiya-zimmet-table tbody,
  .zimmet-operation-shell .assignment-history-table tbody,
  .zimmet-operation-shell .vardiya-zimmet-table tr,
  .zimmet-operation-shell .assignment-history-table tr,
  .zimmet-operation-shell .vardiya-zimmet-table td,
  .zimmet-operation-shell .assignment-history-table td {
    display: block;
    width: 100% !important;
  }

  .zimmet-operation-shell .vardiya-zimmet-table,
  .zimmet-operation-shell .assignment-history-table {
    min-width: 0;
    border-spacing: 0;
  }

  .zimmet-operation-shell .vardiya-zimmet-table thead,
  .zimmet-operation-shell .assignment-history-table thead {
    display: none;
  }

  .zimmet-operation-shell .vardiya-zimmet-table tbody tr.shift-assignment-row,
  .zimmet-operation-shell .assignment-history-table tbody tr:not(.assignment-inline-row):not(.zimmet-operation-filter-empty) {
    display: grid;
    gap: 8px;
    margin: 0 0 10px;
    padding: 10px;
    border: 1px solid #dbe4f2;
    border-left: 5px solid #4f67f6;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
  }

  .zimmet-operation-shell .vardiya-zimmet-table tbody tr.shift-assignment-row::before,
  .zimmet-operation-shell .assignment-history-table tbody tr:not(.assignment-inline-row):not(.zimmet-operation-filter-empty)::before {
    content: "HÄ±zlÄ± Ä°ÅŸlem";
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    padding: 4px 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3456df;
    font-size: 0.72rem;
    font-weight: 950;
  }

  .zimmet-operation-shell .vardiya-zimmet-table tbody tr.assignment-row-even,
  .zimmet-operation-shell .assignment-history-table tbody tr.assignment-row-even {
    background: #eef3ff;
  }

  .zimmet-operation-shell .vardiya-zimmet-table td,
  .zimmet-operation-shell .assignment-history-table td {
    padding: 0;
    border: 0;
    background: transparent !important;
  }

  .zimmet-operation-shell .vardiya-zimmet-table td:nth-child(1),
  .zimmet-operation-shell .vardiya-zimmet-table td:nth-child(3),
  .zimmet-operation-shell .vardiya-zimmet-table td:nth-child(5),
  .zimmet-operation-shell .vardiya-zimmet-table td:nth-child(6),
  .zimmet-operation-shell .vardiya-zimmet-table td:nth-child(7),
  .zimmet-operation-shell .assignment-history-table td:nth-child(1),
  .zimmet-operation-shell .assignment-history-table td:nth-child(4),
  .zimmet-operation-shell .assignment-history-table td:nth-child(5) {
    display: none !important;
  }

  .zimmet-operation-shell .assignment-person-cell strong {
    font-size: 1.05rem;
    line-height: 1.15;
  }

  .zimmet-operation-shell .shift-assignment-device-list,
  .zimmet-operation-shell .assignment-device-stack {
    gap: 6px;
  }

  .zimmet-operation-shell .shift-assignment-device-card,
  .zimmet-operation-shell .assignment-device-item {
    padding: 9px 10px;
    border-radius: 10px;
  }

  .zimmet-operation-shell .assignment-row-person-group .assignment-device-item,
  .zimmet-operation-shell .assignment-row-person-group .assignment-date-row,
  .zimmet-operation-shell .assignment-row-person-group .assignment-group-action-row {
    min-height: 0;
  }

  .zimmet-operation-shell .assignment-group-status,
  .zimmet-operation-shell .status-pill {
    width: fit-content;
    max-width: 100%;
  }

  .zimmet-operation-shell .assignment-group-actions,
  .zimmet-operation-shell .assignment-group-action-row {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
    gap: 8px;
  }

  .zimmet-operation-shell .assignment-action-code {
    display: none;
  }

  .zimmet-operation-shell .icon-actions,
  .zimmet-operation-shell .assignment-history-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    gap: 8px;
    width: 100%;
  }

  .zimmet-operation-shell .icon-btn-mini {
    display: inline-flex;
    width: 100%;
    min-width: 0;
    min-height: 48px;
    gap: 8px;
    border-radius: 14px;
    font-size: 0.92rem;
    font-weight: 950;
    text-decoration: none;
  }

  .zimmet-operation-shell .icon-btn-mini i {
    font-size: 1rem;
  }

  .zimmet-operation-shell .assignment-action-label {
    display: inline;
  }

  .zimmet-operation-shell .assignment-history-actions form,
  .zimmet-operation-shell .icon-actions form,
  .zimmet-operation-shell .assignment-group-action-row form {
    width: 100%;
  }

  .zimmet-operation-shell .icon-actions form:has(.icon-delete),
  .zimmet-operation-shell .assignment-history-actions form:has(.icon-delete),
  .zimmet-operation-shell .assignment-group-action-row form:has(.icon-delete),
  .zimmet-operation-shell .icon-delete {
    grid-column: 1 / -1;
  }

  .zimmet-operation-shell .assignment-inline-row {
    display: block !important;
    margin: -6px 0 10px;
  }

  .zimmet-operation-shell .assignment-inline-row[hidden] {
    display: none !important;
  }

  .zimmet-operation-shell .assignment-inline-row td {
    display: block !important;
  }

  .zimmet-operation-shell .assignment-inline-transfer-panel {
    grid-template-columns: 1fr;
    padding: 12px;
    border-radius: 16px;
    background: #fff8ed;
  }

  .zimmet-operation-shell .assignment-inline-transfer-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .zimmet-operation-shell .assignment-inline-transfer-actions .btn {
    min-height: 48px;
    border-radius: 14px;
    justify-content: center;
    width: 100%;
  }
}

@media (max-width: 440px) {
  .inline-disposal-form > .grid.two {
    grid-template-columns: 1fr;
  }

  .inline-disposal-form > .grid.two > label:nth-child(1),
  .inline-disposal-form > .grid.two > label:nth-child(2) {
    grid-column: 1;
  }
}

@media (max-width: 760px) {
  .plate-maintenance-edit-form {
    grid-template-columns: 1fr;
  }

  .plate-maintenance-edit-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .plate-maintenance-edit-actions .btn {
    justify-content: center;
    width: 100%;
  }
}

.kif-entry-form .kif-row-main .kif-serial-field > input:not([type="checkbox"]):not([type="radio"]) {
  border-color: #fed7aa;
  background:
    linear-gradient(180deg, #ffffff 0%, #fffbeb 100%);
  color: #9a3412;
}

.kif-entry-form .account-block {
  border-color: #d8e8c0;
  border-left-color: #84cc16;
  background:
    linear-gradient(90deg, rgba(132, 204, 22, 0.16), transparent 8px),
    linear-gradient(135deg, #fbfff5 0%, #f6fbff 100%);
  box-shadow: 0 10px 22px rgba(101, 163, 13, 0.08);
}

.kif-entry-form .kif-alt-signature-block {
  border-color: #bef264;
  border-left-color: #65a30d;
  background:
    linear-gradient(90deg, rgba(101, 163, 13, 0.26), transparent 8px),
    linear-gradient(135deg, #f7fee7 0%, #f8fbff 100%);
  box-shadow: 0 10px 22px rgba(101, 163, 13, 0.1);
}

.kif-entry-form .kif-attachment-panel .account-block {
  border-color: #d8d7ff;
  border-left-color: #5b5bd6;
  background:
    linear-gradient(90deg, rgba(91, 91, 214, 0.2), transparent 8px),
    linear-gradient(135deg, #f5f3ff 0%, #f8fbff 100%);
  box-shadow: 0 10px 22px rgba(91, 91, 214, 0.09);
}

.kif-entry-form .kif-penalty-dropdown > .account-block {
  border-color: #fed7aa;
  border-left-color: #d97706;
  background:
    linear-gradient(90deg, rgba(217, 119, 6, 0.18), transparent 8px),
    linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
  box-shadow: 0 10px 22px rgba(217, 119, 6, 0.08);
}

.kif-entry .kif-live-preview-head {
  border-color: #93c5fd;
  background:
    linear-gradient(90deg, #dbeafe 0%, #ccfbf1 100%);
  color: #14213d;
  box-shadow: 0 10px 24px rgba(37, 99, 235, 0.13);
}

.kif-entry .kif-live-preview-head span {
  color: #52617a;
}

.kif-entry .kif-live-paper {
  border-color: #bfdbfe;
  border-top: 3px solid #4338ca;
  background:
    linear-gradient(180deg, #ffffff 0%, #f1f7ff 100%);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.1);
}

.kif-entry .kif-live-paper-top {
  border-color: #64748b;
  background: #eef6ff;
}

.kif-entry .kif-live-paper-top span,
.kif-entry .kif-live-paper-title,
.kif-entry .kif-live-meta dt,
.kif-entry .kif-live-signatures span {
  letter-spacing: 0;
}

.kif-entry .kif-live-paper-top strong {
  border-left-color: #64748b;
  background: linear-gradient(180deg, #fff1f2 0%, #fff7ed 100%);
  color: #b42318;
}

.kif-entry .kif-live-meta div {
  border-color: #bfdbfe;
  background:
    linear-gradient(180deg, #ffffff 0%, #eef6ff 100%);
}

.kif-entry .kif-live-meta div:nth-child(2n) {
  border-color: #bae6fd;
  background:
    linear-gradient(180deg, #ffffff 0%, #eaf8ff 100%);
}

.kif-entry .kif-live-meta div:nth-child(3),
.kif-entry .kif-live-meta div:nth-child(4) {
  border-color: #a7f3d0;
  background:
    linear-gradient(180deg, #ffffff 0%, #ecfdf5 100%);
}

.kif-entry .kif-live-meta div:nth-child(5),
.kif-entry .kif-live-meta div:nth-child(6) {
  border-color: #d8b4fe;
  background:
    linear-gradient(180deg, #ffffff 0%, #f5edff 100%);
}

.kif-entry .kif-live-tutanak {
  gap: 10px;
  min-height: 350px;
  border-color: #93c5fd;
  border-top-color: #0284c7;
  background:
    linear-gradient(135deg, #ffffff 0%, #eef6ff 56%, #fff4df 100%);
}

.kif-entry .kif-live-tutanak .kif-live-paper-title {
  border: 1px solid #93c5fd;
  background:
    linear-gradient(90deg, #dbeafe 0%, #e0f2fe 100%);
  color: #1e3a8a;
}

/* Contact information module */
.contact-info-page {
  padding: 0;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.74), rgba(255, 251, 235, 0.58)),
    #ffffff;
}

.contact-toolbar {
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px;
}

.contact-search {
  flex: 1 1 540px;
  min-width: min(100%, 460px);
  width: auto;
  max-width: none;
}

.contact-filter-select {
  flex: 0 0 220px;
  min-width: 220px;
  min-height: 42px;
  border: 1px solid #d9e2f1;
  border-radius: 10px;
  padding: 0 34px 0 14px;
  color: #1f2a44;
  font-weight: 800;
  background: #ffffff;
}

.contact-count-total {
  color: #1e3a8a;
  background: #eff6ff;
  border-color: #bfdbfe;
}

.contact-count-due {
  color: #92400e;
  background: #fffbeb;
  border-color: #fde68a;
}

.contact-count-expired {
  color: #991b1b;
  background: #fef2f2;
  border-color: #fecaca;
}

.contact-count-processed {
  color: #166534;
  background: #f0fdf4;
  border-color: #bbf7d0;
}

.contact-count-archived {
  color: #334155;
  background: #f8fafc;
  border-color: #cbd5e1;
}

.contact-create-panel,
.contact-card {
  margin: 14px 16px;
  border: 1px solid #dbe4f3;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(248, 251, 255, 0.94));
  box-shadow: 0 12px 28px rgba(31, 41, 55, 0.06);
}

.contact-create-panel {
  overflow: hidden;
}

@media (min-width: 1501px) {
  .contact-info-page > .contact-toolbar,
  .contact-info-page > .contact-create-panel,
  .contact-info-page > .contact-list {
    width: calc((100% - 32px) * 0.6667);
    margin-left: 16px;
    margin-right: auto;
  }

  .contact-info-page > .contact-toolbar {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .contact-info-page > .contact-list .contact-card {
    margin-left: 0;
    margin-right: 0;
  }
}

.contact-create-panel summary,
.contact-edit-panel summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  color: #14213d;
  font-weight: 900;
}

.contact-create-panel summary::-webkit-details-marker,
.contact-edit-panel summary::-webkit-details-marker {
  display: none;
}

.contact-create-panel summary span,
.contact-edit-panel summary {
  display: flex;
  align-items: center;
  gap: 8px;
}

.contact-create-panel summary em,
.contact-document-head em {
  color: #64748b;
  font-size: 0.87rem;
  font-style: normal;
  font-weight: 700;
}

.contact-form-grid,
.contact-doc-form {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
  padding: 0 16px 16px;
}

.contact-form-grid label,
.contact-doc-form label {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.contact-form-grid > label {
  grid-column: span 4;
}

.contact-form-grid .contact-field-phone {
  grid-column: span 5;
}

.contact-form-grid .contact-field-email {
  grid-column: span 3;
}

.contact-form-grid .contact-field-region {
  grid-column: span 4;
}

.contact-form-grid .contact-field-title,
.contact-form-grid .contact-field-topic {
  grid-column: span 6;
}

.contact-form-grid .contact-field-work {
  grid-column: 1 / -1;
}

.contact-form-grid label[class*="contact-field-"] {
  --contact-field-color: #4f67f6;
  border-left: 4px solid var(--contact-field-color);
  border-radius: 10px;
  padding-left: 9px;
  background: linear-gradient(90deg, rgba(79, 103, 246, 0.07), rgba(255, 255, 255, 0));
}

.contact-field-company {
  --contact-field-color: #2563eb;
}

.contact-field-person {
  --contact-field-color: #0891b2;
}

.contact-field-role {
  --contact-field-color: #7c3aed;
}

.contact-field-phone {
  --contact-field-color: #16a34a;
}

.contact-field-email {
  --contact-field-color: #0284c7;
}

.contact-field-region {
  --contact-field-color: #ca8a04;
}

.contact-field-title {
  --contact-field-color: #4f46e5;
}

.contact-field-topic {
  --contact-field-color: #db2777;
}

.contact-field-work {
  --contact-field-color: #ea580c;
}

.contact-form-grid label span,
.contact-doc-form label span {
  color: #64748b;
  font-size: 0.83rem;
  font-weight: 900;
}

.contact-form-grid input,
.contact-form-grid select,
.contact-form-grid textarea,
.contact-doc-form input {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d9e2f1;
  border-radius: 10px;
  padding: 9px 11px;
  background: #ffffff;
  color: #111827;
  font-weight: 800;
}

.contact-form-grid select {
  padding-right: 30px;
  color: #111827;
  background-color: #ffffff;
  text-overflow: ellipsis;
}

.contact-phone-field {
  --contact-phone-code-width: 142px;
  --contact-phone-number-min: 9ch;
  display: grid;
  grid-template-columns: minmax(142px, var(--contact-phone-code-width)) minmax(var(--contact-phone-number-min), 1fr);
  gap: 8px;
}

.contact-phone-field select {
  min-width: 0;
  width: 100%;
  max-width: none;
  font-weight: 900;
}

.contact-phone-field option {
  color: #111827;
  background: #ffffff;
}

.contact-form-grid textarea {
  resize: vertical;
  min-height: 86px;
  font-weight: 700;
}

.contact-span-2 {
  grid-column: 1 / -1;
}

.contact-document-toggle {
  grid-column: 1 / -1;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  justify-self: flex-start;
  min-height: 42px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  padding: 8px 14px;
  background: #eef3ff;
  cursor: pointer;
}

.contact-document-toggle input[type="checkbox"] {
  width: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
  accent-color: #4f67f6;
}

.contact-document-toggle small {
  color: #475569;
  font-size: 0.82rem;
  font-weight: 800;
}

.contact-form-actions {
  grid-column: 1 / -1;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

.contact-create-document-fields {
  grid-column: 1 / -1;
  display: grid;
  gap: 12px;
  border: 1px solid #bfdbfe;
  border-left: 5px solid #2563eb;
  border-radius: 12px;
  padding: 12px;
  background: linear-gradient(135deg, #eff6ff 0%, #ffffff 52%, #fff7ed 100%);
}

.contact-create-document-fields[hidden] {
  display: none !important;
}

.contact-create-document-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  gap: 8px;
}

.contact-create-document-head strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #1e3a8a;
  font-size: 1rem;
  font-weight: 950;
}

.contact-create-document-head span {
  color: #475569;
  font-size: 0.86rem;
  font-weight: 850;
}

.contact-create-document-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
}

.contact-create-document-grid label {
  grid-column: span 3;
  padding-left: 0;
  border-left: 0;
  background: transparent;
}

.contact-create-document-grid label:nth-child(1),
.contact-create-document-grid label:nth-child(2) {
  grid-column: span 3;
}

.contact-create-document-grid label:nth-child(3),
.contact-create-document-grid label:nth-child(4) {
  grid-column: span 3;
}

.contact-create-document-grid input {
  min-height: 42px;
}

.contact-alert-help-create {
  margin: 0;
}

.contact-list {
  padding: 2px 0 16px;
}

.contact-info-page > .contact-list {
  max-width: 1120px;
}

.contact-card {
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.contact-card.is-focused {
  border-color: #4f67f6;
  box-shadow: 0 0 0 4px rgba(79, 103, 246, 0.12), 0 16px 34px rgba(31, 41, 55, 0.08);
}

.contact-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 14px;
  border-bottom: 1px solid #e2e8f0;
  background:
    linear-gradient(90deg, rgba(79, 103, 246, 0.10), rgba(14, 165, 233, 0.08), rgba(132, 204, 22, 0.08));
}

.contact-card-head strong {
  display: block;
  color: #111827;
  font-size: 1.04rem;
  font-weight: 950;
}

.contact-card-head span {
  color: #526078;
  font-weight: 800;
}

.contact-card-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.contact-card-badges span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 0 10px;
  color: #3859d8;
  background: #eef3ff;
  font-size: 0.82rem;
  font-weight: 900;
}

.contact-card-badges .is-alert {
  color: #9a3412;
  background: #ffedd5;
}

.contact-info-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 8px;
  padding: 10px 12px;
}

.contact-info-grid > div {
  grid-column: span 2;
  min-width: 0;
  border: 1px solid #e1e9f6;
  border-radius: 8px;
  padding: 8px 10px;
  background: rgba(255, 255, 255, 0.78);
}

.contact-info-grid > div:nth-child(1),
.contact-info-grid > div:nth-child(2) {
  grid-column: span 3;
}

.contact-info-grid > div:nth-child(6) {
  grid-column: span 6;
}

.contact-info-grid > .contact-span-2 {
  grid-column: 1 / -1;
}

.contact-info-grid small {
  display: block;
  margin-bottom: 3px;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 900;
}

.contact-info-grid b {
  display: block;
  color: #111827;
  font-size: 0.92rem;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.contact-info-grid span,
.contact-info-grid p {
  margin: 3px 0 0;
  color: #334155;
  font-size: 0.9rem;
  font-weight: 750;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.contact-edit-panel {
  margin: 0 16px 14px;
  border: 1px dashed #cad7ea;
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.8);
}

.contact-edit-panel .contact-form-grid {
  padding-top: 0;
}

.contact-document-panel {
  margin: 0 16px 16px;
  border: 1px solid #d7e2fb;
  border-left: 5px solid #4f67f6;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.78), rgba(255, 251, 235, 0.58));
  overflow: hidden;
}

.contact-document-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 12px;
  padding: 13px 16px 10px;
}

.contact-document-head strong {
  display: block;
  color: #14213d;
  font-size: 1.08rem;
  font-weight: 950;
}

.contact-document-head span {
  color: #526078;
  font-weight: 800;
}

.contact-doc-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: stretch;
  border-top: 1px solid rgba(203, 213, 225, 0.72);
  padding-top: 12px;
}

.contact-doc-form > label {
  grid-column: span 3;
}

.contact-doc-form > label:nth-of-type(1),
.contact-doc-form > label:nth-of-type(2) {
  grid-column: span 3;
}

.contact-doc-form > label:nth-of-type(3),
.contact-doc-form > label:nth-of-type(4) {
  grid-column: span 3;
}

.contact-doc-form > button {
  grid-column: span 3;
  align-self: end;
}

.contact-alert-help {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 16px 14px;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  padding: 10px 12px;
  background: linear-gradient(90deg, #eff6ff, #fff7ed);
  color: #1f2a44;
}

.contact-alert-help strong,
.contact-alert-help span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  padding: 0 10px;
  font-size: 0.82rem;
  font-weight: 950;
}

.contact-alert-help span {
  width: auto;
  border-radius: 999px;
}

.contact-alert-help strong {
  color: #1e3a8a;
  background: #dbeafe;
}

.contact-alert-help .is-watch {
  color: #92400e;
  background: #fef3c7;
}

.contact-alert-help .is-warning {
  color: #9a3412;
  background: #ffedd5;
}

.contact-alert-help .is-critical,
.contact-alert-help .is-expired {
  color: #991b1b;
  background: #fee2e2;
}

.contact-doc-file {
  grid-column: span 4;
}

.contact-doc-list {
  display: grid;
  gap: 10px;
  padding: 0 16px 16px;
}

.contact-doc-card {
  display: grid;
  grid-template-columns: minmax(260px, 1.25fr) minmax(260px, 0.9fr) minmax(250px, 0.9fr) max-content;
  gap: 14px;
  align-items: start;
  border: 1px solid #dbe4f3;
  border-left: 5px solid #64748b;
  border-radius: 12px;
  padding: 14px;
  background: rgba(255, 255, 255, 0.92);
}

.contact-doc-main {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.contact-doc-time,
.contact-doc-state {
  min-width: 0;
}

.contact-doc-actions {
  min-width: 58px;
}

.contact-doc-card.is-watch {
  border-left-color: #f59e0b;
  background: #fff7ed;
}

.contact-doc-card.is-warning {
  border-left-color: #ea580c;
  background: #fff1e6;
}

.contact-doc-card.is-critical,
.contact-doc-card.is-expired {
  border-left-color: #dc2626;
  background: #fff1f2;
}

.contact-doc-card.is-processed {
  border-left-color: #16a34a;
  background: #f0fdf4;
}

.contact-doc-card.is-planned {
  border-left-color: #0284c7;
  background: #f0f9ff;
}

.contact-doc-card.is-archived {
  border-left-color: #64748b;
  background: #f8fafc;
}

.contact-doc-main a {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  min-width: 0;
  color: #243b9f;
  font-weight: 950;
  line-height: 1.2;
  text-decoration: none;
}

.contact-doc-main a i {
  flex: 0 0 auto;
  margin-top: 2px;
}

.contact-doc-main a strong {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.contact-doc-main span,
.contact-doc-main small,
.contact-doc-time span,
.contact-doc-state span,
.contact-doc-state em {
  display: block;
  color: #475569;
  font-size: 0.88rem;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.contact-doc-time {
  display: grid;
  gap: 7px;
}

.contact-doc-time .contact-doc-time-row {
  min-height: 38px;
  border: 1px solid rgba(203, 213, 225, 0.85);
  border-radius: 8px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 6px;
  background: rgba(255, 255, 255, 0.72);
}

.contact-doc-time .contact-doc-time-row em,
.contact-doc-time .contact-doc-time-row strong {
  display: inline;
  color: #0f172a;
  font-style: normal;
  font-weight: 950;
}

.contact-doc-time .contact-doc-time-row strong {
  color: #1d4ed8;
}

.contact-doc-state {
  display: grid;
  align-content: start;
  gap: 7px;
  border: 1px solid rgba(203, 213, 225, 0.72);
  border-radius: 10px;
  padding: 10px;
  background: rgba(255, 255, 255, 0.62);
}

.contact-doc-main small {
  color: #64748b;
}

.contact-doc-time b {
  color: #111827;
}

.contact-doc-state strong {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  border-radius: 999px;
  padding: 0 10px;
  color: #1e3a8a;
  background: #e0e7ff;
  font-weight: 950;
}

.contact-doc-card.is-critical .contact-doc-state strong,
.contact-doc-card.is-expired .contact-doc-state strong {
  color: #991b1b;
  background: #fee2e2;
}

.contact-doc-card.is-processed .contact-doc-state strong {
  color: #166534;
  background: #dcfce7;
}

.contact-doc-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
}

.contact-doc-actions form {
  width: 100%;
  display: flex;
  gap: 6px;
  align-items: center;
}

.contact-doc-actions input {
  width: min(100%, 260px);
  min-height: 36px;
  border: 1px solid #d9e2f1;
  border-radius: 8px;
  padding: 7px 9px;
}

.contact-delete-form {
  display: flex;
  justify-content: flex-end;
  padding: 0 16px 16px;
}

.contact-empty {
  padding: 18px;
}

@media (max-width: 1200px) {
  .contact-form-grid,
  .contact-info-grid,
  .contact-create-document-grid,
  .contact-doc-form {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .contact-form-grid > label,
  .contact-form-grid .contact-field-phone,
  .contact-form-grid .contact-field-email,
  .contact-form-grid .contact-field-region,
  .contact-form-grid .contact-field-title,
  .contact-form-grid .contact-field-topic {
    grid-column: span 3;
  }

  .contact-form-grid .contact-field-work,
  .contact-create-document-fields,
  .contact-info-grid > .contact-span-2 {
    grid-column: 1 / -1;
  }

  .contact-create-document-grid label,
  .contact-create-document-grid label:nth-child(1),
  .contact-create-document-grid label:nth-child(2),
  .contact-create-document-grid label:nth-child(3),
  .contact-create-document-grid label:nth-child(4),
  .contact-doc-form > label,
  .contact-doc-form > label:nth-of-type(1),
  .contact-doc-form > label:nth-of-type(2),
  .contact-doc-form > label:nth-of-type(3),
  .contact-doc-form > label:nth-of-type(4),
  .contact-doc-form > button,
  .contact-info-grid > div,
  .contact-info-grid > div:nth-child(1),
  .contact-info-grid > div:nth-child(2),
  .contact-info-grid > div:nth-child(6) {
    grid-column: span 3;
  }

  .contact-doc-card {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .contact-doc-main {
    grid-column: 1 / -1;
  }

  .contact-doc-time,
  .contact-doc-state,
  .contact-doc-actions {
    grid-column: span 3;
  }

  .contact-doc-actions {
    align-items: flex-start;
  }
}

@media (max-width: 760px) {
  .contact-form-grid,
  .contact-info-grid,
  .contact-create-document-grid,
  .contact-doc-form {
    grid-template-columns: 1fr;
  }

  .contact-form-grid > label,
  .contact-form-grid .contact-field-phone,
  .contact-form-grid .contact-field-email,
  .contact-form-grid .contact-field-region,
  .contact-form-grid .contact-field-title,
  .contact-form-grid .contact-field-topic,
  .contact-form-grid .contact-field-work,
  .contact-create-document-grid label,
  .contact-create-document-grid label:nth-child(1),
  .contact-create-document-grid label:nth-child(2),
  .contact-create-document-grid label:nth-child(3),
  .contact-create-document-grid label:nth-child(4),
  .contact-doc-form > label,
  .contact-doc-form > label:nth-of-type(1),
  .contact-doc-form > label:nth-of-type(2),
  .contact-doc-form > label:nth-of-type(3),
  .contact-doc-form > label:nth-of-type(4),
  .contact-doc-form > button,
  .contact-info-grid > div,
  .contact-info-grid > div:nth-child(1),
  .contact-info-grid > div:nth-child(2),
  .contact-info-grid > div:nth-child(6) {
    grid-column: 1 / -1;
  }

  .contact-span-2,
  .contact-doc-file {
    grid-column: 1 / -1;
  }

  .contact-phone-field {
    grid-template-columns: 1fr;
  }

  .contact-doc-time,
  .contact-doc-state,
  .contact-doc-actions {
    grid-column: 1 / -1;
  }

  .contact-doc-time .contact-doc-time-row {
    grid-template-columns: 1fr;
    gap: 2px;
  }

  .contact-card-head,
  .contact-document-head,
  .contact-create-panel summary {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Contact information module - notes-like fixed layout */
.section.module-shell.contact-info-page {
  width: min(46vw, calc(100% - 32px), 980px);
  max-width: 980px;
  margin-left: 0;
  margin-right: auto;
  padding: 0;
  background: #ffffff;
}

.contact-info-page > .contact-toolbar,
.contact-info-page > .contact-create-panel,
.contact-info-page > .contact-list {
  width: calc(100% - 32px);
  max-width: none;
  margin-left: 16px;
  margin-right: 16px;
}

.contact-info-page > .contact-toolbar {
  align-items: center;
  gap: 8px;
  margin-bottom: 22px;
  padding: 10px 0 18px;
  border-bottom: 1px solid #e2e8f0;
}

.contact-search {
  flex: 0 1 36ch;
  width: min(100%, 36ch);
  min-width: min(100%, 28ch);
}

.contact-filter-select {
  flex: 0 0 190px;
  margin-left: auto;
  min-width: 180px;
  min-height: 36px;
  border-radius: 9px;
  font-size: 0.9rem;
}

.contact-toolbar .btn {
  min-height: 36px;
  padding: 8px 12px;
}

.contact-info-page .notes-summary-chip {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 0.82rem;
}

.contact-list {
  display: grid;
  gap: 14px;
  padding: 0 0 14px;
}

.contact-create-panel,
.contact-card {
  border: 1px solid #dbeafe;
  border-left: 5px solid #0ea5e9;
  border-radius: 13px;
  background: #ffffff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}

.contact-create-panel {
  border-left-color: #4f46e5;
  margin-top: 0;
  margin-bottom: 18px;
}

.contact-create-panel:not([open]) {
  display: none;
}

.contact-info-page .contact-card {
  margin: 0;
  padding: 11px 12px;
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n + 1) {
  border-color: #bfdbfe;
  border-left-color: #2563eb;
  background: linear-gradient(135deg, #eff6ff 0%, #ffffff 70%);
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n + 2) {
  border-color: #bbf7d0;
  border-left-color: #16a34a;
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 70%);
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n + 3) {
  border-color: #fed7aa;
  border-left-color: #ea580c;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 70%);
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n + 4) {
  border-color: #c4b5fd;
  border-left-color: #7c3aed;
  background: linear-gradient(135deg, #f5f3ff 0%, #ffffff 70%);
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n + 5) {
  border-color: #a5f3fc;
  border-left-color: #0891b2;
  background: linear-gradient(135deg, #ecfeff 0%, #ffffff 70%);
}

.contact-info-page .contact-list > .contact-card:not(.is-passive):nth-of-type(6n) {
  border-color: #fecdd3;
  border-left-color: #e11d48;
  background: linear-gradient(135deg, #fff1f2 0%, #ffffff 70%);
}

.contact-info-page .contact-card.has-documents {
  border-right: 5px solid #f59e0b;
  box-shadow: inset -8px 0 0 rgba(245, 158, 11, 0.16), 0 10px 24px rgba(15, 23, 42, 0.06);
}

.contact-info-page .contact-card.is-passive {
  border-color: #fecaca;
  border-left-color: #b91c1c;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 70%);
}

.contact-create-panel summary,
.contact-edit-panel summary {
  padding: 11px 12px;
}

.contact-form-grid,
.contact-doc-form {
  gap: 9px;
  padding: 0 12px 12px;
}

.contact-form-grid label[class*="contact-field-"] {
  border: 1px solid #dbeafe;
  border-radius: 12px;
  padding: 8px 9px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.035);
}

.contact-form-grid .contact-field-company {
  border-color: #fecaca;
  border-left: 5px solid #dc2626;
  background: linear-gradient(135deg, #fff1f2 0%, #ffffff 72%);
}

.contact-form-grid .contact-field-person {
  border-color: #fde68a;
  border-left: 5px solid #d97706;
  background: linear-gradient(135deg, #fffbeb 0%, #ffffff 72%);
}

.contact-form-grid .contact-field-role {
  border-color: #bae6fd;
  border-left: 5px solid #0284c7;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 72%);
}

.contact-form-grid .contact-field-company > span {
  color: #991b1b;
}

.contact-form-grid .contact-field-person > span {
  color: #92400e;
}

.contact-form-grid .contact-field-role > span {
  color: #075985;
}

.contact-form-grid .contact-field-company input:focus {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.14);
}

.contact-form-grid .contact-field-person input:focus {
  border-color: #f59e0b;
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);
}

.contact-form-grid .contact-field-role input:focus {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

.contact-form-grid input,
.contact-form-grid select,
.contact-form-grid textarea,
.contact-doc-form input {
  min-height: 36px;
  border-radius: 9px;
  padding: 7px 10px;
}

.contact-form-grid textarea {
  min-height: 82px;
}

.contact-form-grid label.is-invalid {
  border-color: #ef4444 !important;
  border-left-color: #dc2626 !important;
  background:
    linear-gradient(135deg, rgba(254, 242, 242, 0.98), rgba(255, 255, 255, 0.96)) !important;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.1), 0 12px 24px rgba(127, 29, 29, 0.08) !important;
}

.contact-form-grid label.is-invalid > span {
  color: #991b1b !important;
}

.contact-form-grid label.is-invalid input,
.contact-form-grid label.is-invalid select,
.contact-form-grid label.is-invalid textarea {
  border-color: #ef4444 !important;
  background: #fffafa;
}

.contact-field-error,
.contact-inline-error {
  color: #991b1b;
  font-weight: 900;
}

.contact-field-error {
  display: block;
  margin-top: 2px;
  font-size: 0.76rem;
  line-height: 1.25;
}

.contact-inline-error {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  border: 1px solid #fca5a5;
  border-left: 5px solid #dc2626;
  border-radius: 12px;
  padding: 8px 11px;
  background: #fef2f2;
}

.contact-document-toggle {
  min-height: 36px;
  border-radius: 12px;
  padding: 8px 10px;
  background: #f8fafc;
}

.contact-create-panel[open] {
  border-color: #c7d2fe;
  border-left-color: #4f46e5;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.98) 0%, rgba(240, 249, 255, 0.9) 45%, rgba(255, 255, 255, 0.98) 100%),
    #ffffff;
  box-shadow: 0 18px 38px rgba(79, 70, 229, 0.1);
}

.contact-create-panel[open] > summary {
  margin: 0 0 4px;
  border-bottom: 1px solid rgba(199, 210, 254, 0.8);
  background:
    linear-gradient(90deg, rgba(79, 70, 229, 0.1), rgba(14, 165, 233, 0.08), rgba(255, 255, 255, 0));
}

.contact-create-panel[open] > summary span {
  color: #1e1b4b;
}

.contact-create-panel[open] > summary i {
  color: #4f46e5;
}

.contact-create-panel[open] > summary em {
  color: #475569;
}

.contact-create-panel .contact-form-grid label[class*="contact-field-"] {
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.contact-create-panel .contact-form-grid label[class*="contact-field-"]:focus-within {
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
}

.contact-create-panel .contact-field-phone {
  border-color: #bbf7d0 !important;
  border-left: 5px solid #16a34a !important;
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-email {
  border-color: #bae6fd !important;
  border-left: 5px solid #0284c7 !important;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-region {
  border-color: #fde68a !important;
  border-left: 5px solid #ca8a04 !important;
  background: linear-gradient(135deg, #fffbeb 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-title {
  border-color: #c7d2fe !important;
  border-left: 5px solid #4f46e5 !important;
  background: linear-gradient(135deg, #eef2ff 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-topic {
  border-color: #fbcfe8 !important;
  border-left: 5px solid #db2777 !important;
  background: linear-gradient(135deg, #fdf2f8 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-work {
  border-color: #fed7aa !important;
  border-left: 5px solid #ea580c !important;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 72%) !important;
}

.contact-create-panel .contact-field-phone > span {
  color: #166534;
}

.contact-create-panel .contact-field-email > span {
  color: #075985;
}

.contact-create-panel .contact-field-region > span {
  color: #92400e;
}

.contact-create-panel .contact-field-title > span {
  color: #3730a3;
}

.contact-create-panel .contact-field-topic > span {
  color: #9d174d;
}

.contact-create-panel .contact-field-work > span {
  color: #9a3412;
}

.contact-create-panel .contact-document-toggle {
  border-color: #c7d2fe;
  border-left: 5px solid #4f46e5;
  background:
    linear-gradient(135deg, rgba(238, 242, 255, 0.98), rgba(255, 251, 235, 0.95)),
    #ffffff;
  color: #1e1b4b;
  box-shadow: 0 10px 22px rgba(79, 70, 229, 0.08);
}

.contact-create-panel .contact-document-toggle:hover,
.contact-create-panel .contact-document-toggle:focus-within {
  border-color: #818cf8;
  box-shadow: 0 12px 26px rgba(79, 70, 229, 0.12);
}

.contact-create-panel .contact-document-toggle span {
  color: #3730a3;
}

.contact-create-panel .contact-document-toggle small {
  color: #475569;
}

.contact-form-grid .contact-field-title,
.contact-form-grid .contact-field-topic,
.contact-form-grid .contact-field-region {
  grid-column: span 4;
}

.contact-form-grid .contact-field-phone,
.contact-form-grid .contact-field-email {
  grid-column: span 3;
}

.contact-form-grid .contact-field-work {
  grid-column: span 4;
}

.contact-form-grid .contact-span-2.contact-field-work {
  grid-column: span 4;
}

.contact-create-panel .contact-form-grid .contact-field-phone {
  grid-column: span 5;
}

.contact-create-panel .contact-form-grid .contact-field-email {
  grid-column: span 7;
}

.contact-create-panel .contact-form-grid.is-wide-phone-code .contact-field-phone {
  grid-column: span 6;
}

.contact-create-panel .contact-form-grid.is-wide-phone-code .contact-field-email {
  grid-column: span 6;
}

.contact-create-panel .contact-form-grid.is-extra-wide-phone-code .contact-field-phone {
  grid-column: span 7;
}

.contact-create-panel .contact-form-grid.is-extra-wide-phone-code .contact-field-email {
  grid-column: span 5;
}

.contact-create-panel .contact-form-grid .contact-field-work {
  order: 20;
  grid-column: span 5;
}

.contact-create-panel .contact-document-toggle {
  order: 19;
  grid-column: span 4;
  align-self: stretch;
  justify-self: stretch;
  justify-content: flex-start;
  align-content: center;
  align-items: center;
  min-height: 54px;
  text-align: left;
}

.contact-create-panel .contact-document-toggle small {
  flex: 1 1 auto;
}

.contact-create-panel .contact-form-actions {
  order: 21;
  grid-column: span 3;
  align-self: stretch;
  align-items: center;
  flex-wrap: nowrap;
}

.contact-create-panel .contact-create-document-fields {
  order: 22;
}

.contact-edit-panel .contact-form-actions {
  grid-column: 1 / -1;
}

.contact-create-document-fields,
.contact-document-panel,
.contact-edit-panel {
  border-radius: 12px;
  background: #ffffff;
  box-shadow: none;
}

.contact-card-head {
  align-items: flex-start;
  padding: 0;
  border-bottom: 0;
  background: transparent;
}

.contact-card-head strong {
  font-size: 1rem;
}

.contact-card-head span {
  font-size: 0.9rem;
}

.contact-card-badges span {
  min-height: 26px;
  padding: 0 9px;
  font-size: 0.78rem;
}

.contact-card-badges .is-passive {
  color: #991b1b;
  background: #fee2e2;
}

.contact-card-badges .contact-document-badge.has-documents {
  color: #7c2d12;
  background: #ffedd5;
  box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.35);
}

.contact-card.has-documents .contact-document-panel:not([open]) {
  border-color: #fed7aa;
  border-left-color: #f59e0b;
  background: #fff7ed;
}

.contact-card.has-documents .contact-document-summary {
  color: #7c2d12;
}

.contact-info-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  padding: 8px 0 0;
  border-top: 1px solid #e2e8f0;
}

.contact-info-grid > div,
.contact-info-grid > div:nth-child(1),
.contact-info-grid > div:nth-child(2) {
  grid-column: span 1;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
}

.contact-info-grid > div:nth-child(6) {
  grid-column: span 2;
}

.contact-info-grid small {
  margin-bottom: 2px;
  font-size: 0.74rem;
}

.contact-info-grid b,
.contact-info-grid span,
.contact-info-grid p {
  font-size: 0.86rem;
  line-height: 1.28;
}

.contact-info-grid > div:nth-child(6) p {
  max-height: 4.9em;
  overflow: auto;
  padding-right: 4px;
}

.contact-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-start;
  margin-top: 8px;
}

.contact-action-strip {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 46px max-content;
  align-items: start;
  gap: 8px;
  margin-top: 9px;
}

.contact-action-strip .contact-edit-panel,
.contact-action-strip .contact-document-panel,
.contact-action-strip .contact-record-actions,
.contact-action-strip .contact-delete-form {
  min-width: 0;
}

.contact-action-strip .contact-document-panel {
  order: 1;
}

.contact-action-strip .contact-edit-panel {
  order: 2;
}

.contact-action-strip .contact-record-actions {
  order: 3;
}

.contact-action-strip .contact-edit-panel > summary,
.contact-action-strip .contact-document-summary,
.contact-action-strip .contact-delete-form .btn {
  min-height: 42px;
}

.contact-action-strip .contact-edit-panel > summary {
  width: 46px;
  justify-content: center;
  padding: 0;
}

.contact-action-strip .contact-edit-panel > summary span {
  display: none;
}

.contact-action-strip .contact-delete-form {
  align-self: start;
}

.contact-record-actions {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  gap: 7px;
}

.contact-action-strip .contact-record-actions .contact-delete-form {
  padding: 0;
}

.contact-action-strip .contact-delete-form .btn {
  white-space: nowrap;
  padding-inline: 12px;
}

.contact-hard-delete-btn {
  background: linear-gradient(135deg, #991b1b, #dc2626);
  color: #ffffff;
  box-shadow: 0 10px 20px rgba(220, 38, 38, 0.16);
}

.contact-hard-delete-btn:hover {
  background: linear-gradient(135deg, #7f1d1d, #b91c1c);
  color: #ffffff;
}

.contact-action-strip .contact-edit-panel[open],
.contact-action-strip .contact-document-panel[open] {
  grid-column: 1 / -1;
}

.contact-action-strip:has(.contact-document-panel[open]) {
  grid-template-columns: 46px minmax(0, 1fr) max-content;
  row-gap: 12px;
}

.contact-action-strip:has(.contact-document-panel[open]) .contact-document-panel[open] {
  grid-column: 1 / -1;
  grid-row: 1;
}

.contact-action-strip:has(.contact-document-panel[open]) .contact-edit-panel:not([open]) {
  grid-column: 1;
  grid-row: 2;
}

.contact-action-strip:has(.contact-document-panel[open]) .contact-record-actions {
  grid-column: 3;
  grid-row: 2;
  justify-self: end;
  align-self: start;
}

.contact-action-strip .contact-edit-panel[open] {
  order: 4;
}

.contact-whatsapp-btn,
.contact-whatsapp-icon-btn {
  min-height: 34px;
  border: 1px solid #86efac;
  background: linear-gradient(135deg, #16a34a, #22c55e);
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(34, 197, 94, 0.18);
}

.contact-whatsapp-icon-btn {
  width: 46px;
  height: 46px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 46px;
  border-radius: 14px;
  text-decoration: none;
}

.contact-whatsapp-btn:hover,
.contact-whatsapp-icon-btn:hover {
  background: linear-gradient(135deg, #15803d, #16a34a);
  color: #ffffff;
  transform: translateY(-1px);
}

.contact-whatsapp-logo {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #86efac;
  border-radius: 9px;
  font-size: 1rem;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
}

.contact-whatsapp-icon-btn .contact-whatsapp-logo {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #ffffff;
  font-size: 1.55rem;
  box-shadow: none;
}

.contact-whatsapp-badge-btn {
  width: 34px;
  height: 34px;
  min-height: 34px;
  flex: 0 0 34px;
  border-radius: 12px;
  box-shadow: 0 8px 18px rgba(34, 197, 94, 0.16);
}

.contact-whatsapp-badge-btn .contact-whatsapp-logo {
  width: 22px;
  height: 22px;
  font-size: 1.25rem;
}

.contact-whatsapp-share-btn {
  flex: 0 1 360px;
  min-height: 34px;
  justify-content: center;
  white-space: normal;
  border: 1px solid #86efac;
  background: linear-gradient(135deg, #15803d, #22c55e);
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(34, 197, 94, 0.16);
}

.contact-whatsapp-share-btn:hover {
  background: linear-gradient(135deg, #166534, #16a34a);
  color: #ffffff;
  transform: translateY(-1px);
}

.contact-restore-btn {
  background: linear-gradient(135deg, #2563eb, #4f46e5);
  color: #ffffff;
}

.contact-confirm-modal {
  position: fixed;
  inset: 0;
  z-index: 1600;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.46);
}

.contact-confirm-modal[hidden] {
  display: none !important;
}

.contact-confirm-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  width: min(460px, 100%);
  padding: 18px;
  border: 1px solid #bfdbfe;
  border-top: 5px solid #4f67f6;
  border-radius: 14px;
  background: linear-gradient(135deg, #eff6ff, #ffffff 74%);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.26);
  animation: settings-confirm-pop 0.18s ease-out;
}

.contact-confirm-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 1.35rem;
}

.contact-confirm-copy h2 {
  margin: 0;
  color: #172033;
  font-size: 1.08rem;
}

.contact-confirm-copy p {
  margin: 6px 0 0;
  color: #475569;
  font-weight: 800;
  line-height: 1.35;
}

.contact-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.contact-confirm-actions .btn {
  min-height: 38px;
}

.contact-edit-panel,
.contact-document-panel {
  margin: 0;
}

.contact-document-panel {
  border-left-color: #4f67f6;
}

.contact-document-panel:not([open]) {
  border-left-color: #cbd5e1;
  background: #f8fafc;
}

.contact-document-summary,
.contact-doc-upload-panel > summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #14213d;
  font-weight: 950;
}

.contact-document-summary {
  padding: 9px 11px;
  border-radius: 10px;
  transition: background-color 0.16s ease, box-shadow 0.16s ease;
}

.contact-document-summary:hover,
.contact-document-summary:focus-visible {
  background: rgba(239, 246, 255, 0.9);
  box-shadow: 0 0 0 2px rgba(79, 103, 246, 0.12);
}

.contact-document-summary::-webkit-details-marker,
.contact-doc-upload-panel > summary::-webkit-details-marker {
  display: none;
}

.contact-document-summary-title,
.contact-doc-upload-panel > summary span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.contact-document-summary-title {
  flex: 0 0 auto;
}

.contact-document-summary-note {
  min-width: 0;
  flex: 1 1 320px;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 850;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-document-summary-meta {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}

.contact-document-summary em,
.contact-doc-upload-panel > summary em {
  color: #64748b;
  font-size: 0.82rem;
  font-style: normal;
  font-weight: 800;
}

.contact-document-toggle-hint {
  flex: 0 0 auto;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  padding: 3px 9px;
  color: #1e40af;
  background: #eef2ff;
  font-size: 0.78rem;
  font-weight: 950;
}

.contact-document-toggle-hint i {
  transition: transform 0.18s ease;
}

.contact-document-panel[open] .contact-document-toggle-hint i {
  transform: rotate(90deg);
}

.contact-document-panel[open] .contact-document-toggle-hint .hint-closed,
.contact-document-panel:not([open]) .contact-document-toggle-hint .hint-open {
  display: none;
}

.contact-document-panel[open] .contact-document-toggle-hint {
  color: #7c2d12;
  border-color: #fed7aa;
  background: #fff7ed;
}

.contact-document-body {
  display: grid;
  gap: 9px;
  padding: 0 11px 11px;
}

.contact-document-head-compact {
  gap: 4px;
  padding: 8px 0 0;
}

.contact-document-head-compact strong {
  font-size: 0.96rem;
}

.contact-document-head-compact span,
.contact-document-head-compact em {
  font-size: 0.82rem;
}

.contact-doc-empty {
  margin: 0;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  padding: 9px 10px;
  background: #f8fafc;
}

.contact-doc-upload-panel {
  border: 1px dashed #cbd5e1;
  border-radius: 11px;
  background: #f8fafc;
  overflow: hidden;
}

.contact-doc-upload-panel > summary {
  padding: 8px 10px;
}

.contact-doc-upload-panel[open] > summary {
  border-bottom: 1px solid #e2e8f0;
}

.contact-doc-upload-panel .contact-doc-form {
  border-top: 0;
  padding: 10px;
}

.contact-doc-upload-panel .contact-alert-help {
  margin: 0 10px 10px;
}

.contact-doc-list {
  padding: 0;
}

.contact-delete-form {
  padding: 0;
}

@media (max-width: 980px) {
  .section.module-shell.contact-info-page {
    width: calc(100% - 20px);
    max-width: none;
  }

  .contact-info-page > .contact-toolbar,
  .contact-info-page > .contact-create-panel,
  .contact-info-page > .contact-list {
    width: calc(100% - 16px);
    margin-left: 8px;
    margin-right: 8px;
  }

  .contact-form-grid,
  .contact-create-document-grid,
  .contact-doc-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-info-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .contact-action-strip {
    grid-template-columns: minmax(0, 1fr);
  }

  .contact-action-strip:has(.contact-document-panel[open]) {
    grid-template-columns: minmax(0, 1fr);
  }

  .contact-action-strip:has(.contact-document-panel[open]) .contact-edit-panel:not([open]),
  .contact-action-strip:has(.contact-document-panel[open]) .contact-record-actions {
    grid-column: 1;
    grid-row: auto;
  }

  .contact-record-actions {
    width: 100%;
    justify-content: stretch;
  }

  .contact-record-actions .contact-delete-form {
    flex: 1 1 0;
  }

  .contact-action-strip .contact-delete-form .btn {
    width: 100%;
  }

  .contact-info-grid > div:nth-child(6) {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .contact-info-page > .contact-toolbar,
  .contact-info-page > .contact-create-panel,
  .contact-info-page > .contact-list {
    width: calc(100% - 16px);
    margin: 8px;
  }

  .contact-info-page > .contact-toolbar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    align-items: stretch;
    padding: 12px;
    border: 1px solid #dbeafe;
    border-top: 4px solid #6366f1;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
  }

  .contact-search,
  .contact-filter-select {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }

  .contact-search {
    min-height: 46px;
    padding-inline: 12px;
  }

  .contact-search input {
    min-width: 0;
    font-size: 0.94rem;
    font-weight: 800;
  }

  .contact-filter-select {
    flex: 1 1 auto;
    margin-left: 0;
    min-height: 42px;
    max-width: none;
    font-size: 0.95rem;
    justify-self: stretch;
    text-align: center;
  }

  .contact-toolbar .btn {
    width: 100%;
    justify-content: center;
    min-height: 42px;
    padding: 9px 10px;
  }

  .contact-info-page .notes-summary-chip {
    width: 100%;
    justify-content: center;
    min-width: 0;
    min-height: 38px;
    border-radius: 12px;
    padding: 7px 8px;
    text-align: center;
    white-space: normal;
  }

  .contact-info-page .contact-count-archived,
  .contact-info-page .contact-count-passive {
    grid-column: 1 / -1;
  }

  .contact-form-grid,
  .contact-info-grid,
  .contact-create-document-grid,
  .contact-doc-form {
    grid-template-columns: 1fr;
  }

  .contact-info-grid > div,
  .contact-info-grid > div:nth-child(1),
  .contact-info-grid > div:nth-child(2),
  .contact-info-grid > div:nth-child(6) {
    grid-column: 1 / -1;
  }

  .contact-card-head,
  .contact-document-head,
  .contact-create-panel summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-document-summary {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .contact-document-summary-note {
    flex-basis: 100%;
    white-space: normal;
  }

  .contact-record-actions {
    flex-direction: column;
  }
}

@media (max-width: 1400px) {
  .contact-create-panel .contact-form-grid .contact-field-phone {
    grid-column: 1 / -1;
  }

  .contact-create-panel .contact-form-grid .contact-field-email,
  .contact-create-panel .contact-form-grid .contact-field-work,
  .contact-create-panel .contact-form-actions,
  .contact-create-panel .contact-document-toggle {
    grid-column: 1 / -1;
  }

  .contact-create-panel .contact-form-grid .contact-field-work,
  .contact-create-panel .contact-document-toggle,
  .contact-create-panel .contact-form-actions,
  .contact-create-panel .contact-create-document-fields {
    order: initial;
  }

  .contact-create-panel .contact-form-actions {
    flex-wrap: wrap;
  }
}

.kif-entry .kif-live-a4-frame {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  min-height: calc(100vh - 172px);
  padding: 14px 12px 18px;
  border: 1px solid #c7d2fe;
  border-radius: 10px;
  background:
    linear-gradient(180deg, rgba(239, 246, 255, 0.88) 0%, rgba(248, 250, 252, 0.9) 48%, rgba(255, 251, 235, 0.5) 100%);
  overflow: auto;
}

.kif-entry .kif-live-a4-paper {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: min(100%, 620px);
  aspect-ratio: 210 / 297;
  min-height: 0;
  border: 1px solid #d0d7e2;
  border-top: 1px solid #d0d7e2;
  border-radius: 2px;
  padding: clamp(26px, 4.1vw, 38px);
  background: #ffffff;
  box-shadow:
    0 22px 44px rgba(15, 23, 42, 0.14),
    0 0 0 1px rgba(255, 255, 255, 0.86) inset;
  color: #172036;
}

.kif-entry .kif-live-a4-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: clamp(34px, 5.6vw, 58px);
}

.kif-entry .kif-live-a4-logo {
  width: clamp(56px, 6.8vw, 72px);
  height: auto;
  display: block;
}

.kif-entry .kif-live-a4-header time {
  color: #273043;
  font-size: clamp(0.78rem, 0.9vw, 0.96rem);
  font-weight: 500;
  line-height: 1.25;
  text-align: right;
  white-space: nowrap;
}

.kif-entry .kif-live-a4-title {
  margin: 0 0 clamp(28px, 4.2vw, 48px);
  color: #172036;
  text-align: center;
  font-size: clamp(1.28rem, 1.95vw, 1.75rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0;
}

.kif-entry .kif-live-a4-body {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow: hidden;
  padding: 0;
}

.kif-entry .kif-live-a4-body p,
.kif-entry .kif-live-tutanak .kif-live-a4-body p {
  margin: 0 0 clamp(16px, 2.1vw, 24px);
  color: #253047;
  font-size: clamp(0.76rem, 0.92vw, 0.92rem);
  font-weight: 400;
  line-height: 1.55;
  text-align: justify;
  text-indent: clamp(22px, 3vw, 34px);
  overflow-wrap: anywhere;
}

.kif-entry .kif-live-a4-body strong {
  font-weight: 700;
}

.kif-entry .kif-live-a4-body em {
  font-style: italic;
}

.kif-entry .kif-live-a4-signatures-top,
.kif-entry .kif-live-a4-signatures-bottom {
  display: flex;
  justify-content: space-between;
  gap: clamp(24px, 5vw, 52px);
  width: 100%;
  color: #273043;
}

.kif-entry .kif-live-a4-signatures-top {
  margin-top: auto;
  padding: 0 clamp(16px, 3.2vw, 28px);
}

.kif-entry .kif-live-a4-signatures-bottom {
  justify-content: center;
  margin-top: clamp(22px, 3.3vw, 34px);
}

.kif-entry .kif-live-a4-sign-box {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-width: 0;
  width: 48%;
  min-height: clamp(78px, 10.5vw, 108px);
  text-align: center;
  line-height: 1.28;
}

.kif-entry .kif-live-a4-signatures-bottom .kif-live-a4-sign-box {
  width: min(58%, 260px);
}

.kif-entry .kif-live-a4-footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: min(190px, 44%);
  margin-top: clamp(18px, 3.2vw, 30px);
  color: #253047;
  font-size: clamp(0.62rem, 0.74vw, 0.78rem);
  font-weight: 400;
  line-height: 1.35;
}

.kif-entry .kif-live-a4-footer strong {
  font-weight: 700;
}

.kif-entry .kif-live-a4-sign-space {
  display: block;
  flex: 0 0 clamp(44px, 7.2vw, 70px);
  min-height: clamp(44px, 7.2vw, 70px);
}

.kif-entry .kif-live-a4-sign-name {
  display: block;
  color: #253047;
  font-size: clamp(0.75rem, 0.9vw, 0.95rem);
  font-weight: 500;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.kif-entry .kif-live-a4-sign-box small {
  display: block;
  color: #253047;
  font-size: clamp(0.66rem, 0.78vw, 0.82rem);
  font-weight: 400;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

@media (max-width: 1240px) {
  .kif-entry .kif-live-a4-paper {
    width: min(100%, 560px);
  }
}

@media (max-width: 760px) {
  .kif-entry .kif-live-a4-frame {
    min-height: auto;
  }

  .kif-entry .kif-live-a4-paper {
    width: 100%;
    min-height: 680px;
    aspect-ratio: auto;
  }

  .kif-entry .kif-live-a4-header,
  .kif-entry .kif-live-a4-signatures-top {
    grid-template-columns: 1fr;
  }

  .kif-entry .kif-live-a4-header {
    flex-direction: column;
  }

  .kif-entry .kif-live-a4-signatures-top {
    flex-direction: column;
    gap: 12px;
    padding: 0;
  }

  .kif-entry .kif-live-a4-sign-box,
  .kif-entry .kif-live-a4-signatures-bottom .kif-live-a4-sign-box {
    width: 100%;
  }
}

