/* ==========================================================================
   DBR savitarna - tema "Modernus"
   Spalvos: #18507c (DBR melyna), juoda, sviesiai pilka
   ========================================================================== */

:root {
  --dbr:        #18507c;
  --dbr-tamsi:  #123c5c;
  --dbr-sviesi: #e8eef4;
  --juoda:      #1a1a1a;
  --pilka:      #6b7280;
  --fonas:      #f4f5f7;
  --remas:      #e3e6ea;
  --balta:      #ffffff;
  --zalia:      #1e7e46;
  --zalia-bg:   #e7f4ec;
  --raudona:    #b3261e;
  --raudona-bg: #fdeceb;
  --geltona:    #8a6d3b;
  --geltona-bg: #fdf6e3;
  --r:          8px;
}

* { box-sizing: border-box; }

html, body {
  margin: 0; padding: 0;
  background: var(--fonas);
  color: var(--juoda);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 15px; line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

/* --- karkasas ----------------------------------------------------------- */
.m-juosta {
  background: var(--dbr);
  color: #fff;
  padding: 14px 0;
  box-shadow: 0 1px 3px rgba(0,0,0,.12);
}
.m-vidus { max-width: 1060px; margin: 0 auto; padding: 0 16px; }
.m-juosta .m-vidus { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.m-juosta img { height: 38px; width: auto; display: block; border-radius: 4px; background: #fff; padding: 2px; }
.m-juosta .m-pav { font-weight: 600; font-size: 15px; letter-spacing: .2px; }
.m-juosta .m-des { margin-left: auto; font-size: 13px; display: flex; align-items: center; gap: 14px; }
.m-juosta .m-des a { color: #cfe0ee; text-decoration: none; }
.m-juosta .m-des a:hover { color: #fff; text-decoration: underline; }

.m-turinys { max-width: 1060px; margin: 26px auto 40px; padding: 0 16px; }
.m-siauras { max-width: 460px; }

/* --- kortele ------------------------------------------------------------ */
.m-kort {
  background: var(--balta);
  border: 1px solid var(--remas);
  border-radius: var(--r);
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
  margin-bottom: 18px;
}
.m-kort-galva {
  padding: 15px 20px;
  border-bottom: 1px solid var(--remas);
  font-weight: 500; font-size: 15.5px; letter-spacing: -.1px;
}
.m-kort-kunas { padding: 18px; }

/* numeruota zyme korteles antrasteje */
.m-nr {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; border-radius: 50%;
  background: var(--dbr-sviesi); color: var(--dbr);
  font-size: 13px; font-weight: 700;
  margin-right: 10px; vertical-align: middle;
  flex: 0 0 auto;
}
.m-kort-galva { display: flex; align-items: center; }

h1.m-antraste { font-size: 26px; font-weight: 400; margin: 0 0 6px; letter-spacing: -.3px; }
p.m-poantraste { margin: 0 0 22px; color: var(--pilka); font-size: 14.5px; font-weight: 400; line-height: 1.6; }

/* --- logotipas prisijungime --------------------------------------------- */
.m-logo { text-align: center; margin: 44px 0 30px; }
.m-logo img { width: 104px; height: 104px; display: inline-block; }
.m-logo .m-logo-txt {
  margin-top: 14px; font-size: 22px; font-weight: 400; color: var(--dbr);
  letter-spacing: -.2px;
}
.m-logo .m-logo-sub { font-size: 14px; color: var(--pilka); margin-top: 5px; font-weight: 400; }

/* --- laukai ------------------------------------------------------------- */
.m-lauk { margin-bottom: 14px; }
.m-lauk > label { display: block; font-size: 13px; font-weight: 500; margin-bottom: 6px; color: #6b7280; }
.m-lauk .m-uzuomina { font-size: 12px; color: var(--pilka); margin-top: 4px; }
.m-btn-eile { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }

input[type=text], input[type=password], input[type=email], input[type=tel], textarea, select {
  width: 100%;
  padding: 9px 11px;
  border: 1px solid #cfd4da;
  border-radius: 6px;
  font: inherit;
  font-size: 14px;
  color: var(--juoda);
  background: #fff;
  transition: border-color .12s, box-shadow .12s;
}
input[type=text]:focus, input[type=password]:focus, input[type=email]:focus,
input[type=tel]:focus, textarea:focus, select:focus {
  outline: none;
  border-color: var(--dbr);
  box-shadow: 0 0 0 3px rgba(24,80,124,.13);
}
input[readonly], input:disabled { background: #f3f4f6; color: #6b7280; }
input[type=file] { font-size: 13px; max-width: 100%; }

/* --- mygtukai ----------------------------------------------------------- */
.m-btn {
  display: inline-block;
  padding: 9px 18px;
  border: 1px solid var(--dbr);
  border-radius: 6px;
  background: var(--dbr);
  color: #fff;
  font: inherit; font-size: 14.5px; font-weight: 500;
  cursor: pointer; text-decoration: none; text-align: center;
  transition: background .12s, border-color .12s;
}
.m-btn:hover { background: var(--dbr-tamsi); border-color: var(--dbr-tamsi); color: #fff; }
.m-btn-pilnas { width: 100%; }
.m-btn-antrinis { background: #fff; color: var(--dbr); }
.m-btn-antrinis:hover { background: var(--dbr-sviesi); color: var(--dbr-tamsi); }
.m-btn-tylus { background: #fff; color: #374151; border-color: #cfd4da; }
.m-btn-tylus:hover { background: #f3f4f6; color: var(--juoda); }

/* --- nuorodos ----------------------------------------------------------- */
a { color: var(--dbr); }
.m-nuorodos { text-align: center; margin-top: 16px; font-size: 14px; }
.m-nuorodos a { color: var(--dbr); text-decoration: none; }
.m-nuorodos a:hover { text-decoration: underline; }
.m-nuorodos .m-skirt { color: #cbd1d8; margin: 0 8px; }

/* --- pranesimai --------------------------------------------------------- */
.m-zinute { padding: 11px 14px; border-radius: 6px; font-size: 14px; margin-bottom: 16px; border: 1px solid; }
.m-klaida  { background: var(--raudona-bg); border-color: #f2c4c0; color: var(--raudona); }
.m-gerai   { background: var(--zalia-bg);   border-color: #bfe0cd; color: var(--zalia); }
.m-info    { background: var(--dbr-sviesi); border-color: #c5d7e6; color: var(--dbr-tamsi); }
.m-desis   { background: var(--geltona-bg); border-color: #efd9a3; color: var(--geltona); }

/* --- busenos zymes ------------------------------------------------------ */
.m-zyme {
  display: inline-block; padding: 3px 10px; border-radius: 999px;
  font-size: 12px; font-weight: 600; border: 1px solid;
}
.m-z-gerai  { background: var(--zalia-bg);   border-color: #bfe0cd; color: var(--zalia); }
.m-z-blogai { background: var(--raudona-bg); border-color: #f2c4c0; color: var(--raudona); }
.m-z-laukia { background: #f3f4f6; border-color: var(--remas); color: var(--pilka); }
.m-z-eiga   { background: var(--dbr-sviesi); border-color: #c5d7e6; color: var(--dbr-tamsi); }

/* --- pasirinkimo korteles ----------------------------------------------- */
.m-pasirink { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; max-width: 840px; margin: 0 auto; }
.m-pasirink .m-kort {
  display: flex; flex-direction: column; margin-bottom: 0;
  border-radius: 12px; text-decoration: none; color: inherit;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.m-pasirink a.m-kort:hover {
  border-color: #b9cfe2; box-shadow: 0 6px 18px rgba(24,80,124,.10); transform: translateY(-2px);
}
.m-pasirink .m-kort-kunas { flex: 1; display: flex; flex-direction: column; padding: 26px 24px; }
.m-pasirink .m-pav2 { font-size: 17px; font-weight: 500; color: var(--dbr); margin-bottom: 10px; letter-spacing: -.2px; }
.m-pasirink .m-apr { color: var(--pilka); font-size: 14px; font-weight: 400; line-height: 1.65; flex: 1; margin-bottom: 22px; }
.m-pasirink .m-apr b { font-weight: 500; color: #374151; }
.m-pasirink .m-zenk {
  width: 40px; height: 40px; border-radius: 10px; margin-bottom: 14px;
  background: var(--dbr-sviesi); color: var(--dbr);
  display: flex; align-items: center; justify-content: center; font-size: 19px;
}
.m-pasirink .m-eiti { color: var(--dbr); font-size: 14.5px; font-weight: 500; }
.m-pasirink .m-eiti span { transition: margin-left .15s; display: inline-block; }
.m-pasirink a.m-kort:hover .m-eiti span { margin-left: 5px; }


/* --- dokumentu sarasas -------------------------------------------------- */
.m-dok { border-top: 1px solid var(--remas); padding: 15px 0; }
.m-dok:first-child { border-top: 0; padding-top: 0; }
.m-dok:last-child { padding-bottom: 0; }
.m-dok-galva { display: flex; align-items: flex-start; gap: 12px; flex-wrap: wrap; }
.m-dok-pav { font-weight: 600; font-size: 14px; flex: 1; min-width: 200px; }
.m-dok-meta { font-size: 12.5px; color: var(--pilka); margin-top: 3px; line-height: 1.5; }
.m-dok-meta a { color: var(--dbr); }
.m-butinas { color: var(--raudona); font-weight: 700; }
.m-failas {
  margin-top: 9px; font-size: 13px;
  background: #fafbfc; border: 1px solid var(--remas); border-radius: 6px; padding: 8px 11px;
}
.m-failas a { color: var(--dbr); font-weight: 500; }
.m-ikelti { margin-top: 9px; }

/* --- lentele ------------------------------------------------------------ */
table.m-lent { width: 100%; border-collapse: collapse; font-size: 14px; }
table.m-lent th {
  text-align: left; font-size: 12px; text-transform: uppercase; letter-spacing: .4px;
  color: var(--pilka); font-weight: 600;
  padding: 9px 10px; border-bottom: 1px solid var(--remas); background: #fafbfc;
}
table.m-lent td { padding: 10px; border-bottom: 1px solid #f0f2f4; vertical-align: top; }
table.m-lent tr:last-child td { border-bottom: 0; }

/* --- kita --------------------------------------------------------------- */
.m-poraste { text-align: center; color: var(--pilka); font-size: 12.5px; padding: 8px 0 28px; }
.m-captcha { display: flex; align-items: center; gap: 12px; }
.m-captcha img { border: 1px solid var(--remas); border-radius: 6px; }
.m-captcha input { max-width: 150px; }
.m-eile2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }

/* --- telefonams --------------------------------------------------------- */
@media (max-width: 720px) {
  .m-pasirink, .m-eile2 { grid-template-columns: 1fr; }
  .m-juosta .m-des { margin-left: 0; width: 100%; padding-top: 8px; }
  .m-turinys { margin-top: 18px; }
  .m-kort-kunas { padding: 15px; }
}

/* --- jQuery UI dialogo suderinimas -------------------------------------- */
.ui-dialog { border-radius: var(--r) !important; font-family: inherit !important; }
.ui-dialog .ui-dialog-titlebar { background: var(--dbr) !important; color: #fff !important; border: 0 !important; }
.ui-dialog .ui-dialog-content { font-size: 14px !important; }

/* ==========================================================================
   Nario paskyra (account) - jQuery UI skirtuku ir lauku modernizavimas
   ========================================================================== */

/* --- skirtukai: jokio melyno fono, apvalūs viršutiniai kampai ------------ */
.ui-tabs { padding: 0 !important; border: 0 !important; background: none !important; }

.ui-tabs .ui-tabs-nav {
  padding: 0 !important; margin: 0 !important;
  border: 0 !important; background: none !important; border-radius: 0 !important;
  display: flex; flex-wrap: wrap; gap: 4px;
}
.ui-tabs .ui-tabs-nav li {
  margin: 0 !important; padding: 0 !important; top: 0 !important;
  float: none !important; white-space: nowrap;
  border: 1px solid transparent !important;
  border-bottom: 0 !important;
  border-radius: 8px 8px 0 0 !important;
  background: none !important;
}
.ui-tabs .ui-tabs-nav li a {
  display: block; padding: 10px 16px !important; float: none !important;
  font-size: 14px; font-weight: 600; color: var(--pilka) !important;
  text-decoration: none; border-radius: 8px 8px 0 0;
}
.ui-tabs .ui-tabs-nav li:hover { background: #eceff2 !important; }
.ui-tabs .ui-tabs-nav li:hover a { color: var(--juoda) !important; }

.ui-tabs .ui-tabs-nav li.ui-state-active,
.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
  background: var(--balta) !important;
  border-color: var(--remas) !important;
  margin-bottom: -1px !important;
  position: relative; z-index: 2;
}
.ui-tabs .ui-tabs-nav li.ui-state-active a,
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a { color: var(--dbr) !important; }

.ui-tabs .ui-tabs-panel {
  background: var(--balta) !important;
  border: 1px solid var(--remas) !important;
  border-radius: 0 8px 8px 8px !important;
  padding: 22px !important;
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
}

/* jQuery UI "smoothness" gradientai - salin, bet TIK skirtukuose.
   Anksciau si taisykle buvo be .ui-tabs prefikso ir nuplesdavo fona
   kalendoriui bei dialogams - jie atrodydavo peršviečiami. */
.ui-tabs > .ui-widget-header { background: none !important; border: 0 !important; color: inherit !important; }
.ui-tabs > .ui-widget-content { background: none; border: 0; color: inherit; }
.ui-tabs .ui-state-default, .ui-tabs .ui-state-active, .ui-tabs .ui-state-hover { background-image: none !important; }
.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
  font-family: inherit !important; font-size: inherit !important;
}
.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-right { border-radius: 6px; }

/* --- uzpildyti / neredaguojami laukai ------------------------------------ */
/* buvo: pilkas "excel" fonas. dabar - svelnus, su radiusu */
input.disabled, textarea.disabled,
input[readonly], textarea[readonly] {
  background: #f7f8f9 !important;
  color: #4b5563 !important;
  border-color: #e3e6ea !important;
  cursor: default;
}
input.disabled:focus, input[readonly]:focus { box-shadow: none !important; border-color: #e3e6ea !important; }

/* --- rodikliu juosta virsuje (valandos, skola) -------------------------- */
.m-rodikliai { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.m-rod {
  background: var(--balta); border: 1px solid var(--remas); border-radius: var(--r);
  padding: 12px 16px; min-width: 132px; flex: 0 1 auto;
}
.m-rod-antr { font-size: 11.5px; text-transform: uppercase; letter-spacing: .4px; color: var(--pilka); font-weight: 600; }
.m-rod-sk { font-size: 20px; font-weight: 650; margin-top: 3px; line-height: 1.2; }
.m-rod-gerai  { border-left: 3px solid var(--zalia); }
.m-rod-blogai { border-left: 3px solid var(--raudona); }
.m-rod-gerai  .m-rod-sk { color: var(--zalia); }
.m-rod-blogai .m-rod-sk { color: var(--raudona); }

/* --- lauku tinklelis paskyroje ------------------------------------------ */
.m-forma { display: grid; grid-template-columns: 210px 1fr; gap: 12px 18px; align-items: start; max-width: 720px; }
.m-forma > label { font-size: 13.5px; color: #6b7280; font-weight: 400; padding-top: 10px; }
.m-forma .m-reiksme { min-width: 0; }
.m-forma .m-uzuomina { font-size: 12px; color: var(--pilka); margin-top: 4px; }
@media (max-width: 720px) {
  .m-forma { grid-template-columns: 1fr; gap: 4px; }
  .m-forma > label { padding-top: 10px; }
  .ui-tabs .ui-tabs-panel { padding: 16px !important; border-radius: 8px !important; }
  .ui-tabs .ui-tabs-nav li a { padding: 8px 12px !important; font-size: 13px; }
}

/* ==========================================================================
   dataTables valdikliai (filtras, puslapiavimas, info)
   ========================================================================== */
.dataTables_wrapper { position: relative; }

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
  display: inline-block; font-size: 13px; color: var(--pilka); margin-bottom: 12px;
}
.dataTables_wrapper .dataTables_length { float: left; }
.dataTables_wrapper .dataTables_filter { float: right; }

/* laukai valdikliuose - NE per visa ploti */
.dataTables_wrapper .dataTables_length select {
  width: auto !important; min-width: 68px; display: inline-block;
  padding: 5px 8px; margin: 0 6px; font-size: 13px;
}
.dataTables_wrapper .dataTables_filter input {
  width: auto !important; min-width: 200px; display: inline-block;
  padding: 6px 10px; margin-left: 8px; font-size: 13px;
}

.dataTables_wrapper table { clear: both; }

.dataTables_wrapper .dataTables_info {
  float: left; font-size: 12.5px; color: var(--pilka); padding-top: 12px;
}
.dataTables_wrapper .dataTables_paginate {
  float: right; padding-top: 9px; display: flex; gap: 5px; align-items: center;
}
.dataTables_wrapper .dataTables_paginate a,
.dataTables_wrapper .dataTables_paginate span > a,
.dataTables_wrapper .paginate_button,
.dataTables_wrapper .paginate_active {
  display: inline-block; padding: 5px 11px; margin: 0;
  border: 1px solid var(--remas); border-radius: 6px;
  background: var(--balta); color: var(--dbr) !important;
  font-size: 13px; cursor: pointer; text-decoration: none;
}
.dataTables_wrapper .paginate_button:hover { background: var(--dbr-sviesi); }
.dataTables_wrapper .paginate_active,
.dataTables_wrapper .paginate_button.current {
  background: var(--dbr); border-color: var(--dbr); color: #fff !important;
}
.dataTables_wrapper .paginate_button_disabled,
.dataTables_wrapper .paginate_disabled_previous,
.dataTables_wrapper .paginate_disabled_next {
  color: #b9c0c7 !important; background: #fafbfc; cursor: default;
}
.dataTables_wrapper:after { content: ""; display: table; clear: both; }

/* rusiavimo antrastes */
table.m-lent thead th { cursor: pointer; white-space: nowrap; }
table.m-lent thead th.sorting_disabled { cursor: default; }

@media (max-width: 720px) {
  .dataTables_wrapper .dataTables_length,
  .dataTables_wrapper .dataTables_filter,
  .dataTables_wrapper .dataTables_info,
  .dataTables_wrapper .dataTables_paginate { float: none; display: block; text-align: left; }
  .dataTables_wrapper .dataTables_filter input { min-width: 0; width: 100% !important; margin: 4px 0 0; }
  table.m-lent { font-size: 13px; }
}


/* ==========================================================================
   Kalendorius ir dialogo langai (jQuery UI) - balti, su remeliu ir seseliu
   ========================================================================== */
.ui-datepicker {
  background: var(--balta) !important;
  border: 1px solid var(--remas) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 28px rgba(16,24,40,.16) !important;
  padding: 8px !important;
  font-family: inherit !important;
  font-size: 13.5px !important;
  z-index: 1200 !important;
}
.ui-datepicker .ui-datepicker-header {
  background: var(--dbr) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 7px !important;
  padding: 7px 4px !important;
  background-image: none !important;
}
.ui-datepicker .ui-datepicker-title { font-weight: 500; }
.ui-datepicker .ui-datepicker-title select {
  width: auto !important; display: inline-block; padding: 2px 4px;
  font-size: 13px; margin: 0 2px; color: var(--juoda);
}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  background: none !important; border: 0 !important; cursor: pointer; top: 8px !important;
}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { filter: invert(1) brightness(2); }
.ui-datepicker table { margin: 6px 0 0 !important; font-size: 13.5px; }
.ui-datepicker th { color: var(--pilka) !important; font-weight: 600; font-size: 11.5px; padding: 5px 0 !important; }
.ui-datepicker td { padding: 1px !important; border: 0 !important; }
.ui-datepicker td a, .ui-datepicker td span {
  display: block; text-align: center; padding: 6px 0 !important;
  border: 1px solid transparent !important; border-radius: 6px !important;
  background: none !important; color: var(--juoda) !important; text-decoration: none;
}
.ui-datepicker td a:hover { background: var(--dbr-sviesi) !important; color: var(--dbr) !important; }
.ui-datepicker td .ui-state-active, .ui-datepicker td a.ui-state-active {
  background: var(--dbr) !important; color: #fff !important; border-color: var(--dbr) !important;
}
.ui-datepicker td .ui-state-highlight { border-color: var(--dbr) !important; color: var(--dbr) !important; }
.ui-datepicker .ui-datepicker-unselectable span { color: #c3c8ce !important; }

/* dialogas ("Dėmesio", patvirtinimai) */
.ui-widget-overlay {
  background: #0f172a !important; opacity: .42 !important;
  position: fixed !important; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000;
}
.ui-dialog {
  background: var(--balta) !important;
  border: 1px solid var(--remas) !important;
  border-radius: 10px !important;
  box-shadow: 0 16px 44px rgba(16,24,40,.22) !important;
  padding: 0 !important;
  z-index: 1100 !important;
  font-family: inherit !important;
}
.ui-dialog .ui-dialog-titlebar {
  background: var(--dbr) !important; background-image: none !important;
  color: #fff !important; border: 0 !important;
  border-radius: 9px 9px 0 0 !important;
  padding: 11px 15px !important; font-size: 14.5px; font-weight: 500;
}
.ui-dialog .ui-dialog-titlebar-close { background: none !important; border: 0 !important; }
.ui-dialog .ui-dialog-titlebar-close span { filter: invert(1) brightness(2); }
.ui-dialog .ui-dialog-content {
  background: var(--balta) !important; color: var(--juoda) !important;
  font-size: 14px !important; padding: 16px 15px !important; line-height: 1.55;
}
.ui-dialog .ui-dialog-buttonpane {
  background: #fafbfc !important; border-top: 1px solid var(--remas) !important;
  border-radius: 0 0 9px 9px; margin: 0 !important; padding: 10px 12px !important;
}
.ui-dialog .ui-dialog-buttonpane button {
  background: var(--dbr) !important; background-image: none !important;
  border: 1px solid var(--dbr) !important; border-radius: 6px !important;
  color: #fff !important; font: inherit !important; font-size: 14px !important; font-weight: 500 !important;
  padding: 7px 16px !important; cursor: pointer; margin-left: 6px;
}
.ui-dialog .ui-dialog-buttonpane button:hover { background: var(--dbr-tamsi) !important; }
