/* =====================================================
   UOK PhoneBook — Academic UI (FINAL)
   ===================================================== */
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800&display=swap');

/* ========== پایه ========== */
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html { scroll-behavior: smooth; }

body.metro {
  font-family: 'Vazirmatn','Yekan',Tahoma,sans-serif !important;
  background: #f4f6f9 !important;
  color: #1e2a36;
  min-height: 100vh;
}

::selection { background: #1a4a8a; color: #fff; }
:focus-visible { outline: 2px solid #1a4a8a; outline-offset: 2px; }

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f4f6f9; }
::-webkit-scrollbar-thumb { background: #12365c; border-radius: 8px; border: 2px solid #f4f6f9; }

/* ========== هدر ========== */
body.metro header.bg-dark,
body.metro form#form1 > div[dir="rtl"] > header.bg-dark {
  background: #ffffff !important;
  background-image: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 2px solid #b08d2f !important;
  box-shadow: 0 2px 14px rgba(12,36,64,.08) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 200 !important;
}

header.bg-dark::before, header.bg-dark::after,
nav.navigation-bar::before, nav.navigation-bar::after,
nav.navigation-bar.dark::before, nav.navigation-bar.dark::after {
  content: none !important; display: none !important;
}

nav.navigation-bar, nav.navigation-bar.dark {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 auto !important;
  box-shadow: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: 1200px;
  overflow: visible !important;
  display: block !important;
}

/* خنثی‌سازی fixed-top مترو */
body.metro nav.navigation-bar.fixed-top,
body.metro header.bg-dark nav.navigation-bar.fixed-top {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: auto !important;
  z-index: auto !important;
}
body.metro nav.navigation-bar.shadow { box-shadow: none !important; }

nav .navigation-bar-content {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 9px 16px !important;
  margin: 0 !important;
  height: auto !important;
  background: transparent !important;
}

nav .navigation-bar-content input[type="submit"],
nav .navigation-bar-content .element {
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  background: transparent !important;
  color: #12365c !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  padding: 7px 13px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  height: auto !important;
  line-height: 1.8 !important;
  box-shadow: none !important;
  margin: 0 !important;
  float: none !important;
  display: inline-block !important;
  cursor: pointer;
  transition: all .2s;
}
nav .navigation-bar-content input[type="submit"]:hover {
  background: #eef3fa !important;
  border-color: #dce4ee !important;
}
nav .navigation-bar-content input[type="submit"]:active { transform: scale(.97); }

nav .navigation-bar-content input#btnlogin,
nav .navigation-bar-content input#btnlogout {
  background: #12365c !important;
  color: #fff !important;
}
nav .navigation-bar-content input#btnlogin:hover,
nav .navigation-bar-content input#btnlogout:hover { background: #0c2440 !important; }

nav .navigation-bar-content .fg-green {
  background: #fdf6e8 !important;
  color: #8a6d1f !important;
  border: 1px solid #e4cf9a !important;
  border-radius: 999px !important;
  padding: 7px 14px !important;
}

/* ========== بنر سربرگ ========== */
.uok-banner,
header.bg-dark ~ div[style*="16499A"]:first-of-type {
  background: linear-gradient(135deg, #0c2440 0%, #1a4a8a 100%) !important;
  max-width: 1200px !important;
  margin: 24px auto 28px !important;
  border-radius: 16px !important;
  border-bottom: 3px solid #b08d2f !important;
  height: auto !important;
  min-height: 180px !important;
  box-shadow: 0 12px 32px rgba(12,36,64,.22) !important;
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.uok-banner::before,
header.bg-dark ~ div[style*="16499A"]:first-of-type::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 15% 50%, rgba(176,141,47,.14) 0%, transparent 45%),
    repeating-linear-gradient(45deg, rgba(255,255,255,.03) 0 2px, transparent 2px 14px);
  pointer-events: none;
}

.uok-banner .container,
header.bg-dark ~ div[style*="16499A"]:first-of-type .container {
  padding: 30px 36px !important;
  position: relative;
  z-index: 1;
  max-width: none;
  margin: 0;
}

.uok-banner h1,
header.bg-dark ~ div[style*="16499A"]:first-of-type h1 {
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 27px !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 14px !important;
  line-height: 1.5 !important;
}

.uok-banner h1::after,
header.bg-dark ~ div[style*="16499A"]:first-of-type h1::after {
  content: '';
  display: block;
  width: 64px;
  height: 3px;
  border-radius: 2px;
  background: #b08d2f;
  margin-top: 10px;
}

.uok-banner h1 a,
header.bg-dark ~ div[style*="16499A"]:first-of-type h1 a {
  color: #fff !important;
  text-decoration: none !important;
  border: 0 !important;
}
.uok-banner h1 a:hover,
header.bg-dark ~ div[style*="16499A"]:first-of-type h1 a:hover { color: #d6b65a !important; }

.uok-banner br,
header.bg-dark ~ div[style*="16499A"]:first-of-type br { display: none !important; }

.uok-banner h2,
header.bg-dark ~ div[style*="16499A"]:first-of-type h2 {
  display: inline-block !important;
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #d6b65a !important;
  border: 1px solid rgba(214,182,90,.5) !important;
  background: rgba(255,255,255,.06) !important;
  padding: 5px 16px !important;
  border-radius: 999px !important;
  margin: 0 !important;
}

div.bg-steel { display: none !important; }

/* ========== چیدمان ========== */
.grid.fluid { max-width: 1200px; margin: 0 auto; padding: 0 16px !important; }
.grid.fluid > .row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 22px !important;
  margin: 0 !important;
}
.grid.fluid > .row::before, .grid.fluid > .row::after { content: none !important; display: none !important; }
.grid.fluid > .row > [class*="span"] { float: none !important; width: auto !important; margin: 0 !important; min-width: 0; }
.grid.fluid > .row > .span8 { flex: 2 1 430px !important; }
.grid.fluid > .row > .span2 { flex: 1 1 250px !important; }

/* ========== کارت‌ها ========== */
.panel {
  background: #ffffff !important;
  border: 1px solid #dce4ee !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 16px rgba(12,36,64,.06) !important;
  padding: 22px !important;
  transition: .25s;
}
.panel:hover { box-shadow: 0 8px 24px rgba(12,36,64,.10) !important; transform: translateY(-2px); }
.panel-content { padding: 0 !important; background: transparent !important; }

.panel-header,
.panel-header.bg-lightBlue,
.panel-header.bg-blue {
  background: #12365c !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  border-bottom: 2px solid #b08d2f !important;
  border-radius: 10px !important;
  padding: 11px 16px !important;
  margin: 0 0 18px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center;
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
}

.panel .row.label, .panel .row { background: transparent !important; }
.panel .row.label:empty { display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }

#lblsearchtype {
  display: block !important;
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 13px !important;
  color: #5c6b7a !important;
  background: #eef3fa !important;
  border-right: 3px solid #b08d2f !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  margin-bottom: 18px !important;
  line-height: 1.9;
  width: auto !important;
}

/* ========== ورودی‌ها ========== */
input[type="text"], input[type="password"], textarea {
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 14px !important;
  color: #1e2a36;
  background: #fbfcfe;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  padding: 10px 14px !important;
  transition: .2s;
}
input[type="text"]:focus, input[type="password"]:focus, textarea:focus {
  outline: none !important;
  border-color: #1a4a8a !important;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(26,74,138,.12) !important;
}

.input-control {
  background: #fbfcfe !important;
  border: 1px solid #dce4ee !important;
  border-radius: 10px !important;
  transition: .2s;
}
.input-control input { border: 0 !important; background: transparent !important; box-shadow: none !important; width: 100%; }
.input-control:focus-within {
  border-color: #1a4a8a !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(26,74,138,.12) !important;
}

#txtsearch { padding: 14px 16px !important; font-size: 15px !important; font-weight: 600; text-align: center; }

/* ========== دکمه‌ها ========== */
input[type="submit"], button, .button {
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  border-radius: 10px !important;
  border: 1px solid transparent;
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.8 !important;
  height: auto !important;
  cursor: pointer;
  transition: .2s;
}

.primary, #btnsearch, #btnnew, #btneditperson, #btnregperson {
  background: #1a4a8a !important;
  color: #fff !important;
  text-shadow: none !important;
}
.primary:hover, #btnsearch:hover, #btnnew:hover {
  background: #12365c !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(18,54,92,.25);
}

.success { background: #1e6b4f !important; color: #fff !important; }
.success:hover { filter: brightness(1.1); transform: translateY(-1px); }

.danger { background: #9e2b25 !important; color: #fff !important; }
.danger:hover { filter: brightness(1.15); transform: translateY(-1px); }

.warning, #btnreset, #btncancel1, #btncancel2 {
  background: #ffffff !important;
  color: #a9761f !important;
  border: 1px solid #b08d2f !important;
  text-shadow: none !important;
}
.warning:hover, #btnreset:hover { background: #fdf6e8 !important; }

.default { background: #fff !important; color: #12365c !important; border: 1px solid #dce4ee !important; }
.default:hover { background: #eef3fa !important; }

/* ========== رادیو باتن‌ها ========== */
table#RadioButtonList1, table#RadioButtonList2 {
  display: block;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
table#RadioButtonList1 tr, table#RadioButtonList2 tr { display: block; margin-bottom: 10px; background: transparent !important; }
table#RadioButtonList1 td, table#RadioButtonList2 td { display: block; padding: 0 !important; border: 0 !important; background: transparent !important; }
table#RadioButtonList1 input[type="radio"], table#RadioButtonList2 input[type="radio"] { display: none !important; }

table#RadioButtonList1 label, table#RadioButtonList2 label {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  background: #f8fafc;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  cursor: pointer;
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 13px !important;
  color: #5c6b7a;
  transition: .2s;
}
table#RadioButtonList1 label::before, table#RadioButtonList2 label::before {
  content: '';
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  border: 2px solid #b9c6d6;
  border-radius: 50%;
  background: #fff;
  transition: .2s;
}
table#RadioButtonList1 label:hover, table#RadioButtonList2 label:hover { background: #eef3fa; }
table#RadioButtonList1 input:checked + label, table#RadioButtonList2 input:checked + label {
  background: #eef3fa;
  border-color: #1a4a8a;
  color: #12365c;
  font-weight: 700;
}
table#RadioButtonList1 input:checked + label::before, table#RadioButtonList2 input:checked + label::before {
  background: #1a4a8a;
  border-color: #1a4a8a;
  box-shadow: inset 0 0 0 3px #fff;
}

/* ========== جدول‌ها ========== */
.container table:not([id^="RadioButtonList"]) {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(12,36,64,.06);
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 13px !important;
}

/* حاشیه گرادیانی متحرک */
.container table:not([id^="RadioButtonList"]):not(.bg-transparent) {
  border: 2px solid transparent !important;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(120deg, #b08d2f, #12365c, #d6b65a, #12365c, #b08d2f) border-box !important;
  background-size: 100% 100%, 300% 100% !important;
  animation: uokBorder 8s linear infinite !important;
}
@keyframes uokBorder {
  0% { background-position: 0 0, 0% 50%; }
  100% { background-position: 0 0, 300% 50%; }
}

.container table:not([id^="RadioButtonList"]):not(.bg-transparent) th {
  background: #12365c !important;
  color: #fff !important;
  padding: 12px 14px !important;
  border: 0 !important;
  font-weight: 700 !important;
}
.container table:not([id^="RadioButtonList"]):not(.bg-transparent) th a { color: #fff !important; text-decoration: none !important; }
.container table:not([id^="RadioButtonList"]):not(.bg-transparent) tr { background: transparent !important; }

.container table:not([id^="RadioButtonList"]):not(.bg-transparent) td {
  padding: 11px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid #edf1f7 !important;
  color: #1e2a36 !important;
  background: #fff !important;
}
.container table:not([id^="RadioButtonList"]):not(.bg-transparent) tbody tr:nth-child(even) td { background: #f7f9fc !important; }
.container table:not([id^="RadioButtonList"]):not(.bg-transparent) tbody tr:hover td { background: #eef3fa !important; }
.container table caption { caption-side: top; text-align: right; padding: 12px 4px; font-weight: 800; font-size: 16px; color: #12365c; }

/* pill شماره تلفن */
.uok-phone {
  direction: ltr;
  unicode-bidi: embed;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 999px;
  background: #eef3fa;
  border: 1px solid #dce4ee;
  color: #12365c;
  font-weight: 600;
  font-size: 12px;
  cursor: pointer;
  transition: .2s;
  font-family: 'Vazirmatn', Tahoma;
  margin: 0 4px;
  vertical-align: middle;
}
.uok-phone::before { content: '📞'; font-size: 11px; }
.uok-phone:hover {
  background: #12365c;
  color: #fff;
  border-color: #12365c;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(18,54,92,.3);
}
.uok-phone:active { transform: scale(.95); }

/* نام برجسته */
.uok-name {
  font-weight: 700 !important;
  color: #12365c !important;
}

table a[href^="javascript:"] {
  display: inline-block;
  min-width: 34px;
  padding: 6px 11px;
  margin: 2px;
  border: 1px solid #dce4ee;
  border-radius: 8px;
  background: #fff;
  color: #12365c !important;
  text-align: center;
  font-weight: 700;
  text-decoration: none !important;
  transition: .2s;
}
table a[href^="javascript:"]:hover { background: #12365c; color: #fff !important; }

table.bg-transparent { background: transparent !important; border: 0 !important; box-shadow: none !important; }
table.bg-transparent td { background: transparent !important; border: 0 !important; padding: 7px 6px !important; color: #1e2a36 !important; font-weight: 600; }

.container.span8, .container.span9 {
  float: none !important;
  width: auto !important;
  max-width: 880px;
  margin: 26px auto !important;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 16px;
  padding: 28px 30px !important;
  box-shadow: 0 4px 16px rgba(12,36,64,.06);
}

.container h1, .container h2, .container h3, .container h4 { color: #12365c !important; font-weight: 800 !important; }
.container p { line-height: 2.1; color: #5c6b7a; }
.fg-red { color: #9e2b25 !important; }

/* ========== فوتر ========== */
.uok-footer,
div.container ~ div[style*="16499A"] {
  background: #0c2440 !important;
  border-top: 2px solid #b08d2f !important;
  margin-top: 48px !important;
  height: auto !important;
  min-height: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  max-width: none !important;
}

.uok-footer .container,
div.container ~ div[style*="16499A"] .container { padding: 18px 16px !important; max-width: 1200px; margin: 0 auto; }

.uok-footer *,
div.container ~ div[style*="16499A"] span,
div.container ~ div[style*="16499A"] * { color: #b9c8d8 !important; font-size: 13px !important; }

div.bg-dark { background: #0a1e33 !important; border-top: 1px solid rgba(176,141,47,.3); }
div.bg-dark .container {
  padding: 14px 16px !important;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center !important;
  font-family: 'Vazirmatn','Yekan',Tahoma !important;
  font-size: 13px !important;
  color: #8a9aa8 !important;
}
div.bg-dark a, div.bg-dark .fg-yellow { color: #d6b65a !important; text-decoration: none !important; font-weight: 700; }
div.bg-dark a:hover { color: #f0d78a !important; }

/* دکمه‌های شناور */
.uok-fab:hover { transform: translateY(-3px) scale(1.06); }
.uok-fab:active { transform: scale(.94); }

/* ========== حالت تاریک ========== */
body.uok-dark { background: #0b1220 !important; color: #e2e8f0; }
body.uok-dark header.bg-dark { background: #101a2e !important; }
body.uok-dark nav .navigation-bar-content input[type="submit"] { color: #cdd8e6 !important; }
body.uok-dark nav .navigation-bar-content input[type="submit"]:hover { background: #182742 !important; border-color: #23324d !important; }
body.uok-dark nav .navigation-bar-content .fg-green { background: #2a2410 !important; color: #d6b65a !important; border-color: #6b5518 !important; }

body.uok-dark .panel { background: #12203a !important; border-color: #23324d !important; box-shadow: 0 4px 16px rgba(0,0,0,.35) !important; }
body.uok-dark .panel-header, body.uok-dark .panel-header.bg-lightBlue, body.uok-dark .panel-header.bg-blue { background: #0e2440 !important; }
body.uok-dark #lblsearchtype { background: #16294a !important; color: #b9c8d8 !important; }

body.uok-dark input[type="text"], body.uok-dark input[type="password"], body.uok-dark textarea { background: #0f1b31 !important; border-color: #23324d !important; color: #e2e8f0 !important; }
body.uok-dark .input-control { background: #0f1b31 !important; border-color: #23324d !important; }

body.uok-dark table#RadioButtonList1 label, body.uok-dark table#RadioButtonList2 label { background: #0f1b31; border-color: #23324d; color: #b9c8d8; }
body.uok-dark table#RadioButtonList1 input:checked + label, body.uok-dark table#RadioButtonList2 input:checked + label { background: #16294a; border-color: #4a7dd0; color: #dbe4f0; }
body.uok-dark table#RadioButtonList1 label::before, body.uok-dark table#RadioButtonList2 label::before { background: #0f1b31; border-color: #3b4c6b; }

body.uok-dark .container table:not([id^="RadioButtonList"]):not(.bg-transparent) {
  background: linear-gradient(#12203a, #12203a) padding-box,
    linear-gradient(120deg, #b08d2f, #1a4a8a, #d6b65a, #1a4a8a, #b08d2f) border-box !important;
}
body.uok-dark .container table:not([id^="RadioButtonList"]):not(.bg-transparent) td { background: #12203a !important; color: #dbe4f0 !important; border-bottom-color: #1c2c47 !important; }
body.uok-dark .container table:not([id^="RadioButtonList"]):not(.bg-transparent) tbody tr:nth-child(even) td { background: #0f1b31 !important; }
body.uok-dark .container table:not([id^="RadioButtonList"]):not(.bg-transparent) tbody tr:hover td { background: #16294a !important; }
body.uok-dark .container table:not([id^="RadioButtonList"]):not(.bg-transparent) td:first-child { color: #eaf0f8 !important; }
body.uok-dark table a[href^="javascript:"] { background: #0f1b31; border-color: #23324d; color: #dbe4f0 !important; }
body.uok-dark table a[href^="javascript:"]:hover { background: #1a4a8a !important; }
body.uok-dark .container table td a[href^="mailto"], body.uok-dark .container table td a[href^="http"] { background: #16294a; border-color: #23324d; color: #dbe4f0 !important; }

body.uok-dark .uok-phone { background: #16294a; border-color: #23324d; color: #dbe4f0; }
body.uok-dark .uok-phone:hover { background: #1a4a8a; color: #fff; }
body.uok-dark .uok-name { color: #eaf0f8 !important; }
body.uok-dark .uok-mark {
  background: linear-gradient(180deg, transparent 50%, #6b5518 50%);
  color: #fff !important;
}

body.uok-dark .warning, body.uok-dark #btnreset, body.uok-dark #btncancel1, body.uok-dark #btncancel2 { background: #12203a !important; color: #d6b65a !important; border-color: #6b5518 !important; }
body.uok-dark .default { background: #12203a !important; color: #cdd8e6 !important; border-color: #23324d !important; }
body.uok-dark .container.span8, body.uok-dark .container.span9 { background: #12203a; border-color: #23324d; }
body.uok-dark .container h1, body.uok-dark .container h2, body.uok-dark .container h3, body.uok-dark .container h4 { color: #eaf0f8 !important; }
body.uok-dark .container p { color: #9fb0c5; }
body.uok-dark .container table caption { color: #eaf0f8 !important; }
body.uok-dark div.bg-dark { background: #0a1424 !important; }
body.uok-dark ::-webkit-scrollbar-track { background: #0b1220; }
body.uok-dark ::-webkit-scrollbar-thumb { background: #1a4a8a; }

/* هایلایت جستجو */
.uok-mark {
  background: linear-gradient(180deg, transparent 50%, #f6d883 50%);
  color: inherit !important;
  padding: 0 2px;
  border-radius: 2px;
}

/* ========== ریسپانسیو ========== */
@media (max-width: 992px) { .grid.fluid > .row > .span8 { flex: 1 1 100% !important; } }

@media (max-width: 768px) {
  nav .navigation-bar-content { gap: 3px !important; padding: 8px 10px !important; }
  nav .navigation-bar-content input[type="submit"] { padding: 6px 10px !important; font-size: 11.5px !important; }
  
  .uok-banner, header.bg-dark ~ div[style*="16499A"]:first-of-type { margin: 14px 12px 20px !important; min-height: 150px !important; }
  .uok-banner .container, header.bg-dark ~ div[style*="16499A"]:first-of-type .container { padding: 22px 20px !important; }
  .uok-banner h1, header.bg-dark ~ div[style*="16499A"]:first-of-type h1 { font-size: 20px !important; }
  
  .panel { padding: 18px !important; }
  input[class*="span6"], input[class*="span4"], .button[class*="span4"] { width: 100% !important; margin-bottom: 8px; }
  .container table:not([id^="RadioButtonList"]) { display: block; overflow-x: auto; }
  .container.span8, .container.span9 { margin: 16px 10px !important; padding: 20px !important; }
}

@media (max-width: 480px) {
  nav .navigation-bar-content { justify-content: flex-start !important; overflow-x: auto !important; flex-wrap: nowrap !important; }
  nav .navigation-bar-content input[type="submit"] { flex-shrink: 0; white-space: nowrap; }
}

/* ========== چاپ تمیز ========== */
@media print {
  @page { margin: 12mm; }
  body { background: #fff !important; }
  * { box-shadow: none !important; text-shadow: none !important; animation: none !important; }
}

body.uok-print header,
body.uok-print .uok-banner,
body.uok-print .uok-fab,
body.uok-print .panel,
body.uok-print .grid.fluid,
body.uok-print div.bg-dark,
body.uok-print div.container ~ div[style*="16499A"],
body.uok-print .uok-toast { display: none !important; }

body.uok-print::before {
  content: 'دفترچه تلفن دانشگاه کردستان — ' attr(data-printdate);
  display: block;
  text-align: center;
  font-family: 'Vazirmatn', Tahoma;
  font-size: 17px;
  font-weight: 800;
  color: #000;
  padding: 0 0 12px;
  border-bottom: 2px solid #000;
  margin-bottom: 16px;
}

body.uok-print .container table:not([id^="RadioButtonList"]) {
  background: #fff !important;
  border: 1px solid #777 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  animation: none !important;
}

body.uok-print .container table:not([id^="RadioButtonList"]) th,
body.uok-print .container table:not([id^="RadioButtonList"]) th a {
  background: #e6e6e6 !important;
  color: #000 !important;
  text-shadow: none !important;
  box-shadow: none !important;
  border: 1px solid #999 !important;
}

body.uok-print .container table:not([id^="RadioButtonList"]) td {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #ccc !important;
}

body.uok-print .uok-phone {
  background: #fff !important;
  border: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-weight: 700;
}
body.uok-print .uok-phone::before { content: none !important; }

body.uok-print .uok-mark {
  background: #fff !important;
  color: #000 !important;
  font-weight: 800;
  text-decoration: underline;
}

body.uok-print .uok-reveal,
body.uok-print tbody tr {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

body.uok-print tr { page-break-inside: avoid; }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }
/* ===== ویژگی‌های پیشرفته ===== */

/* جستجوی Real-time - نشانگر loading */
.uok-search-loading {
  position: relative;
}
.uok-search-loading::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, transparent, #b08d2f, transparent);
  animation: uokSearchPulse 1.5s ease-in-out infinite;
}
@keyframes uokSearchPulse {
  0%, 100% { transform: translateX(-100%); }
  50% { transform: translateX(100%); }
}

/* تاریخچه جستجو */
.uok-search-history {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  margin-top: 4px;
  box-shadow: 0 8px 24px rgba(12,36,64,.15);
  z-index: 100;
  max-height: 200px;
  overflow-y: auto;
  display: none;
}
.uok-search-history.show { display: block; }
.uok-search-history-item {
  padding: 10px 14px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: .15s;
}
.uok-search-history-item:hover { background: #eef3fa; }
.uok-search-history-item .delete {
  color: #9e2b25;
  font-size: 16px;
  padding: 2px 6px;
  border-radius: 4px;
}
.uok-search-history-item .delete:hover { background: #fee; }

body.uok-dark .uok-search-history { background: #12203a; border-color: #23324d; }
body.uok-dark .uok-search-history-item:hover { background: #16294a; }

/* Auto-complete */
.uok-autocomplete {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  margin-top: 4px;
  box-shadow: 0 8px 24px rgba(12,36,64,.15);
  z-index: 100;
  max-height: 250px;
  overflow-y: auto;
  display: none;
}
.uok-autocomplete.show { display: block; }
.uok-autocomplete-item {
  padding: 10px 14px;
  cursor: pointer;
  transition: .15s;
}
.uok-autocomplete-item:hover,
.uok-autocomplete-item.active { background: #eef3fa; }
.uok-autocomplete-item .match { color: #b08d2f; font-weight: 700; }

body.uok-dark .uok-autocomplete { background: #12203a; border-color: #23324d; }
body.uok-dark .uok-autocomplete-item:hover { background: #16294a; }


/* Bookmark ستاره */
.uok-bookmark {
  cursor: pointer;
  font-size: 18px;
  transition: .2s;
  display: inline-block;
}
.uok-bookmark:hover { transform: scale(1.2); }
.uok-bookmark.active { color: #b08d2f; }

/* حالت فشرده */
body.uok-compact .panel { padding: 14px !important; }
body.uok-compact .container table td { padding: 6px 10px !important; }
body.uok-compact .container table th { padding: 8px 10px !important; }
body.uok-compact .uok-phone { padding: 2px 8px; font-size: 11px; }
body.uok-compact #txtsearch { padding: 10px 14px !important; }

/* دکمه‌های جدید FAB */
.uok-fab-compact { bottom: 90px; }
.uok-fab-bookmarks { bottom: 154px; }

/* Loading Skeleton */
.uok-skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: uokSkeletonLoading 1.5s infinite;
  border-radius: 6px;
  height: 20px;
}
@keyframes uokSkeletonLoading {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

body.uok-dark .uok-skeleton {
  background: linear-gradient(90deg, #16294a 25%, #1a3a5f 50%, #16294a 75%);
  background-size: 200% 100%;
}

/* آمار داشبورد */
.uok-stats {
  position: fixed;
  bottom: 22px;
  right: 22px;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 12px;
  padding: 12px 16px;
  font-size: 12px;
  box-shadow: 0 4px 16px rgba(12,36,64,.1);
  z-index: 9997;
  font-family: 'Vazirmatn', Tahoma;
}
.uok-stats-item { margin-bottom: 4px; }
.uok-stats-item:last-child { margin-bottom: 0; }
.uok-stats-value { font-weight: 700; color: #12365c; }

body.uok-dark .uok-stats { background: #12203a; border-color: #23324d; color: #e2e8f0; }
body.uok-dark .uok-stats-value { color: #d6b65a; }

/* QR Code Modal */
.uok-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  opacity: 0;
  pointer-events: none;
  transition: .3s;
}
.uok-modal.show { opacity: 1; pointer-events: auto; }
.uok-modal-content {
  background: #fff;
  border-radius: 16px;
  padding: 30px;
  max-width: 400px;
  text-align: center;
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
}
.uok-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 0;
  background: #fee;
  color: #9e2b25;
  cursor: pointer;
  font-size: 18px;
}

body.uok-dark .uok-modal-content { background: #12203a; color: #e2e8f0; }

/* Context Menu */
.uok-context-menu {
  position: fixed;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(12,36,64,.2);
  z-index: 10000;
  min-width: 180px;
  overflow: hidden;
}
.uok-context-menu-item {
  padding: 10px 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: .15s;
  font-family: 'Vazirmatn', Tahoma;
  font-size: 13px;
}
.uok-context-menu-item:hover { background: #eef3fa; }
.uok-context-menu-item .icon { font-size: 16px; }

body.uok-dark .uok-context-menu { background: #12203a; border-color: #23324d; color: #e2e8f0; }
body.uok-dark .uok-context-menu-item:hover { background: #16294a; }

/* Voice Search */
.uok-voice-btn {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: 0;
  font-size: 20px;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  transition: .2s;
}
.uok-voice-btn:hover { background: #eef3fa; }
.uok-voice-btn.listening {
  background: #fee;
  animation: uokPulse 1s ease-in-out infinite;
}
@keyframes uokPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(158,43,37,.4); }
  50% { box-shadow: 0 0 0 10px rgba(158,43,37,0); }
}

body.uok-dark .uok-voice-btn:hover { background: #16294a; }

/* Keyboard Navigation */
.uok-kb-focused {
  outline: 3px solid #b08d2f !important;
  outline-offset: -3px;
  background: #fff9e6 !important;
}

body.uok-dark .uok-kb-focused { background: #1a3a5f !important; }

/* Tooltip */
.uok-tooltip {
  position: fixed;
  background: #12365c;
  color: #fff;
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 13px;
  max-width: 300px;
  z-index: 10001;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
  font-family: 'Vazirmatn', Tahoma;
}
.uok-tooltip::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-bottom-color: #12365c;
}

/* Share Menu */
.uok-share-menu {
  position: absolute;
  background: #fff;
  border: 1px solid #dce4ee;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(12,36,64,.15);
  padding: 8px;
  z-index: 100;
  display: none;
}
.uok-share-menu.show { display: block; }
.uok-share-item {
  padding: 8px 12px;
  cursor: pointer;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: .15s;
  font-size: 13px;
}
.uok-share-item:hover { background: #eef3fa; }

body.uok-dark .uok-share-menu { background: #12203a; border-color: #23324d; }
body.uok-dark .uok-share-item:hover { background: #16294a; }