/* Global mobile layer for Tepekent Rehber. */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.rehber-mobile-ready {
  --rehber-portal-width: 1400px;
  overflow-x: hidden;
  padding-bottom: calc(76px + env(safe-area-inset-bottom));
}

body.rehber-mobile-ready.job-report-page,
body.rehber-mobile-ready.election-admin-page {
  --rehber-portal-width: 1280px;
  --election-content-width: 1280px;
}

body.rehber-mobile-ready *,
body.rehber-mobile-ready *::before,
body.rehber-mobile-ready *::after {
  box-sizing: border-box;
}

body.rehber-mobile-ready img,
body.rehber-mobile-ready svg,
body.rehber-mobile-ready video,
body.rehber-mobile-ready canvas {
  max-width: 100%;
}

body.rehber-mobile-ready .container,
body.rehber-mobile-ready .container-fluid,
body.rehber-mobile-ready .page,
body.rehber-mobile-ready .shell,
body.rehber-mobile-ready .portal-shell,
body.rehber-mobile-ready .wrap,
body.rehber-mobile-ready .wrapper,
body.rehber-mobile-ready main {
  max-width: 100%;
}

@media (min-width: 768px) {
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) {
    --rehber-content-width: var(--rehber-portal-width) !important;
    --election-content-width: var(--rehber-portal-width) !important;
  }

  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) .rehber-shared-topbar-shell,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .container,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .container-fluid,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .wrap,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .wrapper,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .page,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > .shell,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) > main,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) .election-page,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) .report-wrap,
  body.rehber-mobile-ready.rehber-page .wrap {
    width: 100% !important;
    max-width: var(--rehber-portal-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: clamp(10px, 2.4vw, 18px) !important;
    padding-right: clamp(10px, 2.4vw, 18px) !important;
  }

  body.rehber-mobile-ready.rehber-page .wrap > .container-fluid {
    max-width: 100% !important;
  }

  body.rehber-mobile-ready.job-report-page .report-wrap.container-fluid,
  body.rehber-mobile-ready.election-admin-page .election-page.container-fluid {
    width: min(var(--rehber-portal-width), calc(100vw - 32px)) !important;
    max-width: var(--rehber-portal-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) .table-responsive,
  body.rehber-mobile-ready:not(.portal-user-page):not(.personel-portal-page) .election-table-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}

body.rehber-mobile-ready input,
body.rehber-mobile-ready select,
body.rehber-mobile-ready textarea,
body.rehber-mobile-ready button {
  max-width: 100%;
  font: inherit;
}

body.rehber-mobile-ready textarea {
  min-height: 92px;
}

body.rehber-mobile-ready .btn,
body.rehber-mobile-ready button,
body.rehber-mobile-ready a.btn,
body.rehber-mobile-ready .button,
body.rehber-mobile-ready [role="button"] {
  min-height: 28px;
  white-space: normal;
  overflow-wrap: anywhere;
}

body.rehber-mobile-ready .btn-group,
body.rehber-mobile-ready .toolbar,
body.rehber-mobile-ready .actions,
body.rehber-mobile-ready .filters,
body.rehber-mobile-ready .filter-row,
body.rehber-mobile-ready .top-actions,
body.rehber-mobile-ready .page-actions {
  max-width: 100%;
}

body.rehber-mobile-ready .card,
body.rehber-mobile-ready .panel,
body.rehber-mobile-ready .box,
body.rehber-mobile-ready .modal-content,
body.rehber-mobile-ready .dropdown-menu,
body.rehber-mobile-ready .alert {
  min-width: 0;
}

body.rehber-mobile-ready .row {
  max-width: 100%;
}

body.rehber-mobile-ready .table-responsive {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

body.rehber-mobile-ready .table-responsive > table,
body.rehber-mobile-ready table.rehber-responsive-table {
  width: max-content;
  min-width: 100%;
}

body.rehber-mobile-ready table {
  max-width: 100%;
}

body.rehber-mobile-ready th,
body.rehber-mobile-ready td {
  overflow-wrap: anywhere;
}

body.rehber-mobile-ready .modal,
body.rehber-mobile-ready .offcanvas {
  max-width: 100vw;
}

body.rehber-mobile-ready.modal-open .rehber-bottom-nav,
body.rehber-mobile-ready.modal-open .rehber-mobile-menu-button,
body.rehber-mobile-ready:has(.modal.show) .rehber-bottom-nav,
body.rehber-mobile-ready:has(.modal.show) .rehber-mobile-menu-button {
  display: none !important;
}

body.rehber-mobile-ready .modal-dialog {
  max-width: min(96vw, var(--modal-max-width, 1240px));
  margin-inline: auto;
}

body.rehber-mobile-ready .modal-body {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 767.98px) {
  body.rehber-mobile-ready .modal.show,
  body.rehber-mobile-ready .modal[style*="display: block"],
  body.rehber-mobile-ready .modal[style*="display:block"] {
    padding: 0 !important;
  }

  body.rehber-mobile-ready .modal.show .modal-dialog,
  body.rehber-mobile-ready .modal[style*="display: block"] .modal-dialog,
  body.rehber-mobile-ready .modal[style*="display:block"] .modal-dialog {
    width: 100% !important;
    max-width: none !important;
    height: 100dvh !important;
    margin: 0 !important;
  }

  body.rehber-mobile-ready .modal.show .modal-content,
  body.rehber-mobile-ready .modal[style*="display: block"] .modal-content,
  body.rehber-mobile-ready .modal[style*="display:block"] .modal-content {
    height: 100dvh !important;
    max-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  body.rehber-mobile-ready .modal.show form,
  body.rehber-mobile-ready .modal[style*="display: block"] form,
  body.rehber-mobile-ready .modal[style*="display:block"] form {
    min-height: 0 !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }

  body.rehber-mobile-ready .modal .modal-header {
    flex: 0 0 auto !important;
    padding: 10px 12px !important;
  }

  body.rehber-mobile-ready .modal .modal-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 10px 12px calc(14px + env(safe-area-inset-bottom)) !important;
  }

  body.rehber-mobile-ready .modal .modal-footer {
    flex: 0 0 auto !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 12 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
    background: #fff !important;
    border-top: 1px solid #e2e8f0 !important;
    box-shadow: 0 -12px 24px rgba(15, 23, 42, 0.1) !important;
  }

  body.rehber-mobile-ready .modal .modal-footer .btn,
  body.rehber-mobile-ready .modal .modal-footer button {
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
  }

  body.rehber-mobile-ready .modal .btn-close {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    margin-left: auto !important;
  }
}

body.rehber-mobile-ready .dropdown-menu {
  max-width: calc(100vw - 20px);
}

.rehber-mobile-menu-button,
.rehber-bottom-nav,
.rehber-mobile-drawer,
.rehber-mobile-scrim {
  display: none;
}

@media (max-width: 1024px) {
  body.rehber-mobile-ready {
    min-width: 0 !important;
  }

  body.rehber-mobile-ready.rehber-page {
    background: #eef4fb;
  }

  body.rehber-mobile-ready.rehber-page .wrap,
  body.rehber-mobile-ready.rehber-page > .wrap,
  body.rehber-mobile-ready.rehber-page main,
  body.rehber-mobile-ready.rehber-page .page,
  body.rehber-mobile-ready.rehber-page .wrapper {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.rehber-mobile-ready.rehber-page .wrap > .container-fluid,
  body.rehber-mobile-ready.rehber-page .wrap > .container,
  body.rehber-mobile-ready.rehber-page > .container-fluid,
  body.rehber-mobile-ready.rehber-page > .container {
    width: 100% !important;
    max-width: none !important;
    padding-left: clamp(6px, 2vw, 10px) !important;
    padding-right: clamp(6px, 2vw, 10px) !important;
  }

  body.rehber-mobile-ready .container,
  body.rehber-mobile-ready .container-fluid {
    width: 100%;
    padding-left: clamp(10px, 3vw, 16px);
    padding-right: clamp(10px, 3vw, 16px);
  }

  body.rehber-mobile-ready .row {
    --bs-gutter-x: 0.9rem;
    --bs-gutter-y: 0.9rem;
  }

  body.rehber-mobile-ready .d-flex {
    min-width: 0;
  }

  body.rehber-mobile-ready .table-responsive {
    border-radius: 10px;
  }

  body.rehber-mobile-ready .rehber-shared-topbar-shell {
    width: 100% !important;
    max-width: none !important;
    padding-inline: clamp(6px, 2vw, 10px) !important;
  }

  body.rehber-mobile-ready .rehber-shared-topbar {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }

  body.rehber-mobile-ready .rehber-shared-controls {
    min-width: 0 !important;
    width: 100%;
    justify-content: flex-start !important;
  }

  body.rehber-mobile-ready .rehber-shared-nav,
  body.rehber-mobile-ready .rehber-shared-profile {
    width: 100%;
    max-width: none !important;
  }

  body.rehber-mobile-ready .btsk-global-profile-widget {
    top: 10px !important;
    right: 10px !important;
    z-index: 1020 !important;
  }
}

@media (max-width: 768px) {
  body.rehber-mobile-ready h1 {
    font-size: clamp(1.35rem, 7vw, 1.9rem);
    line-height: 1.15;
  }

  body.rehber-mobile-ready h2 {
    font-size: clamp(1.15rem, 5.5vw, 1.55rem);
    line-height: 1.18;
  }

  body.rehber-mobile-ready h3 {
    font-size: clamp(1.02rem, 4.8vw, 1.35rem);
    line-height: 1.2;
  }

  body.rehber-mobile-ready .card-body,
  body.rehber-mobile-ready .panel,
  body.rehber-mobile-ready .box {
    padding: 14px;
  }

  body.rehber-mobile-ready .btn-group,
  body.rehber-mobile-ready .toolbar,
  body.rehber-mobile-ready .actions,
  body.rehber-mobile-ready .filters,
  body.rehber-mobile-ready .filter-row,
  body.rehber-mobile-ready .top-actions,
  body.rehber-mobile-ready .page-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  body.rehber-mobile-ready .btn-group > .btn,
  body.rehber-mobile-ready .toolbar > .btn,
  body.rehber-mobile-ready .actions > .btn,
  body.rehber-mobile-ready .top-actions > .btn,
  body.rehber-mobile-ready .page-actions > .btn {
    flex: 1 1 150px;
  }

  body.rehber-mobile-ready .form-control,
  body.rehber-mobile-ready .form-select,
  body.rehber-mobile-ready input[type="text"],
  body.rehber-mobile-ready input[type="search"],
  body.rehber-mobile-ready input[type="tel"],
  body.rehber-mobile-ready input[type="email"],
  body.rehber-mobile-ready input[type="password"],
  body.rehber-mobile-ready input[type="number"],
  body.rehber-mobile-ready input[type="date"],
  body.rehber-mobile-ready select,
  body.rehber-mobile-ready textarea {
    min-height: 42px;
  }

  body.rehber-mobile-ready .modal-dialog {
    width: calc(100vw - 16px);
    max-width: calc(100vw - 16px);
    margin: 8px auto;
  }

  body.rehber-mobile-ready .modal-content {
    max-height: calc(100vh - 16px);
  }

  body.rehber-mobile-ready .modal-body {
    max-height: calc(100vh - 150px);
  }

  body.rehber-mobile-ready .table-responsive table,
  body.rehber-mobile-ready table.rehber-responsive-table {
    min-width: 720px;
  }

  body.rehber-mobile-ready .login-card,
  body.rehber-mobile-ready .auth-card {
    width: min(100%, 440px);
  }

  body.rehber-mobile-ready .floating-home-logo,
  body.rehber-mobile-ready .scroll-top-btn {
    display: none !important;
  }

  .rehber-mobile-menu-button {
    position: fixed;
    left: 12px;
    bottom: calc(18px + env(safe-area-inset-bottom));
    z-index: 10030;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border: 1px solid rgba(15, 118, 110, 0.28) !important;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.18);
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    color: #0f766e;
    font-size: 0 !important;
    line-height: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    overflow: visible !important;
    transform: none !important;
  }

  .rehber-mobile-menu-button::before {
    content: "";
    display: block;
    width: 25px !important;
    height: 20px !important;
    min-width: 25px !important;
    min-height: 20px !important;
    background:
      linear-gradient(currentColor, currentColor) left 0 top 1px / 25px 2.5px no-repeat,
      linear-gradient(currentColor, currentColor) left 0 top 6.5px / 25px 2.5px no-repeat,
      linear-gradient(currentColor, currentColor) left 0 top 12px / 25px 2.5px no-repeat,
      linear-gradient(currentColor, currentColor) left 0 top 17.5px / 25px 2.5px no-repeat !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .rehber-mobile-menu-button span {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .rehber-bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10020;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(46px, 1fr));
    gap: 2px;
    overflow: visible;
    padding: 6px 6px calc(6px + env(safe-area-inset-bottom)) 58px;
    background: rgba(255, 255, 255, 0.97);
    border-top: 1px solid rgba(15, 23, 42, 0.12);
    box-shadow: 0 -14px 34px rgba(15, 23, 42, 0.13);
    backdrop-filter: blur(12px);
  }

  .rehber-bottom-nav-link {
    min-width: 0;
    min-height: 52px;
    display: grid;
    grid-template-rows: 25px 13px;
    justify-items: center;
    align-content: start;
    place-items: center;
    gap: 1px;
    color: #475569;
    text-decoration: none;
    border-radius: 12px;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.05;
    text-align: center;
  }

  .rehber-bottom-nav-link span {
    display: block;
    width: 100%;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: clip;
  }

  .rehber-bottom-nav-link svg,
  .rehber-mobile-drawer-link svg {
    width: 22px;
    height: 22px;
    fill: currentColor;
  }

  .rehber-mobile-drawer-link svg {
    width: 19px;
    height: 19px;
  }

  .rehber-bottom-nav-link.is-active,
  .rehber-bottom-nav-link:hover {
    color: #0f766e;
    background: #e6fffb;
  }

  .rehber-mobile-scrim {
    position: fixed;
    inset: 0;
    z-index: 10040;
    display: block;
    background: rgba(15, 23, 42, 0.46);
  }

  .rehber-mobile-scrim[hidden],
  .rehber-mobile-drawer[hidden] {
    display: none !important;
  }

  .rehber-mobile-drawer {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(74px + env(safe-area-inset-bottom));
    z-index: 10050;
    display: block;
    overflow: hidden;
    border: 1px solid rgba(15, 118, 110, 0.22);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.28);
  }

  .rehber-mobile-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    color: #0f172a;
    border-bottom: 1px solid #e2e8f0;
  }

  .rehber-mobile-drawer-head strong {
    font-size: 17px;
  }

  .rehber-mobile-drawer-head button {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: #f1f5f9;
    color: #0f172a;
    font-size: 24px;
    line-height: 1;
  }

  .rehber-mobile-drawer-links {
    display: grid;
    gap: 6px;
    padding: 10px;
  }

  .rehber-mobile-drawer-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: 12px;
    color: #334155;
    text-decoration: none;
    font-weight: 800;
  }

  .rehber-mobile-drawer-link.is-active,
  .rehber-mobile-drawer-link:hover {
    color: #0f766e;
    background: #ecfdf5;
  }
}

@media (max-width: 560px) {
  body.rehber-mobile-ready {
    font-size: 15px;
  }

  body.rehber-mobile-ready .container,
  body.rehber-mobile-ready .container-fluid {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.rehber-mobile-ready .card,
  body.rehber-mobile-ready .panel,
  body.rehber-mobile-ready .box,
  body.rehber-mobile-ready .alert {
    border-radius: 12px;
  }

  body.rehber-mobile-ready .card-body,
  body.rehber-mobile-ready .panel,
  body.rehber-mobile-ready .box {
    padding: 12px;
  }

  body.rehber-mobile-ready .row > [class*="col-"] {
    width: 100%;
  }

  body.rehber-mobile-ready .d-flex.justify-content-between,
  body.rehber-mobile-ready .d-flex.align-items-center.justify-content-between {
    align-items: stretch !important;
    flex-direction: column;
  }

  body.rehber-mobile-ready .d-flex.justify-content-between > *,
  body.rehber-mobile-ready .d-flex.align-items-center.justify-content-between > * {
    max-width: 100%;
  }

  body.rehber-mobile-ready .btn,
  body.rehber-mobile-ready a.btn {
    width: auto;
  }

  body.rehber-mobile-ready .btn.w-100,
  body.rehber-mobile-ready .d-grid .btn {
    width: 100%;
  }

  body.rehber-mobile-ready .rehber-shared-brand-title {
    font-size: 17px;
  }

  body.rehber-mobile-ready .rehber-shared-welcome h1 {
    font-size: 20px !important;
  }

  body.rehber-mobile-ready .btsk-global-profile-widget {
    display: none !important;
  }
}

@media (max-width: 480px) {
  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll),
  body.rehber-mobile-ready .table-responsive table.rehber-responsive-table:not(.table-force-scroll) {
    width: 100%;
    min-width: 0;
  }

  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) thead {
    display: none;
  }

  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll),
  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) tbody,
  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) tr,
  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) td {
    display: block;
  }

  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) tr {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 8px;
    margin-bottom: 10px;
    background: #fff;
  }

  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) td {
    border: 0 !important;
    padding: 7px 4px !important;
  }

  body.rehber-mobile-ready table.rehber-responsive-table:not(.table-force-scroll) td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
  }
}

@media print {
  body.rehber-mobile-ready {
    padding-bottom: 0 !important;
  }

  .rehber-mobile-menu-button,
  .rehber-bottom-nav,
  .rehber-mobile-drawer,
  .rehber-mobile-scrim {
    display: none !important;
  }
}
