/* sportinn shared UI styles (auth + client menu)
   NOTE: Auth pages use <body class="auth"> so these rules don't affect the app pages.
*/
* {
  box-sizing: border-box;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

body {
  margin: 0;
  color: #111827;
}

body.auth {
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
}

/* login / register container */
.auth-container {
  width: 100%;
  max-width: 420px;
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 10px 25px rgba(15,23,42,0.08);
  padding: 40px 32px;
  text-align: center;
}

/* logo */
.auth-logo img {
  width: 220px;
  height: 220px;
  object-fit: contain;
  padding: 22px;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  background: #fff;
  opacity: 0.95;
}
.auth-logo span {
  display: block;
  font-size: 26px;
  font-weight: 700;
  color: #111827;
  margin-top: 8px;
}

/* headings */
h1 {
  font-size: 22px;
  font-weight: 600;
  margin: 16px 0 8px;
}
.subtitle {
  font-size: 14px;
  color: #6b7280;
  margin-bottom: 20px;
}

/* form inputs */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"] {
  width: 100%;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  background: #f9fafb;
  transition: all 0.2s ease;
  font-size: 14px;
  margin-bottom: 12px;
}
input:focus {
  border-color: #111827;
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(17,24,39,0.05);
}

/* checkbox */
.checkbox {
  display: flex;
  align-items: center;
  font-size: 13px;
  margin-bottom: 10px;
}
.checkbox input {
  margin-right: 8px;
}

/* buttons */
.btn {
  width: 100%;
  background: #111827;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 12px;
  font-size: 15px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.btn:hover {
  background: #030712;
}

/* link section */
.links {
  text-align: center;
  margin-top: 16px;
  font-size: 14px;
  color: #4b5563;
}
.links a {
  color: #111827;
  text-decoration: none;
  font-weight: 500;
}
.links a:hover {
  text-decoration: underline;
}

/* separator line */
.separator {
  height: 1px;
  background: #e5e7eb;
  margin: 16px auto;
  width: 80%;
  border-radius: 1px;
}

/* alert messages */
.alert {
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 14px;
  margin-bottom: 14px;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 8px;
}
.alert-error {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  color: #b91c1c;
}
.alert-error::before {
  content: "⚠️";
}
.alert-success {
  background-color: #ecfdf5;
  border: 1px solid #a7f3d0;
  color: #065f46;
}
.alert-success::before {
  content: "✅";
}

/* input error text */
.input-error {
  color: #b91c1c;
  font-size: 13px;
  margin-top: -6px;
  margin-bottom: 10px;
  display: block;
  text-align: left;
}

/* responsive */
@media (max-width: 480px) {
  .auth-container {
    padding: 32px 22px;
    border-radius: 18px;
  }
}

/* ------------------------------
   Client sidebar (registracijos.html)
   ------------------------------ */

:root{
  --sp-blue:#1e4ea8;
  --sp-blue-dark:#1a4290;
  --sp-white:#ffffff;
  --sp-line: rgba(255,255,255,.16);
  --sp-hover: rgba(255,255,255,.08);
  --sp-active: rgba(255,255,255,.12);
}

.sp-app{background:#f3f4f6; min-height:100vh;}

.sp-sidebar{
  background: #fbfbfc;
  color: var(--sp-white);
  height: 100%;
  min-height: 100vh;
  display:flex;
  flex-direction:column;
}

.sp-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding: 18px 18px 16px;
  text-decoration:none;
  color: var(--sp-white);
}

.sp-brand img{
  width: 120px;
  height: auto;
  object-fit:contain;
  filter: drop-shadow(0 8px 16px rgba(0,0,0,.25));
}

.sp-section-title{
  padding: 10px 18px 6px;
  font-size: 18px;
  font-weight: 500;
  opacity: .85;
}

.sp-nav{padding: 2px 0 6px;}

.sp-nav-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding: 14px 14px;
  margin: 6px 8px;
  border-radius: 14px;
  text-decoration:none;
  color: var(--sp-white);
  font-size: 20px;
  font-weight: 700;
}

.sp-nav-item .sp-ico{
  width: 30px;
  text-align:center;
  font-size: 22px;
  opacity:.95;
}

.sp-nav-item:hover{background: var(--sp-hover);}
.sp-nav-item.is-active{background: var(--sp-active);}

.sp-divider{
  height: 1px;
  background: var(--sp-line);
  margin: 14px 18px;
  border-radius: 999px;
}

/* Bottom navigation (phones) */
.sp-bottom-nav{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: #0b0f14;
  border-top: 1px solid rgba(255,255,255,.10);
  padding: 10px 8px 12px;
  display:none;
}

.sp-bottom-nav-inner{
  display:grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 6px;
  align-items:center;
}

.sp-bottom-item{
  text-decoration:none;
  color: rgba(255,255,255,.78);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap: 4px;
  padding: 6px 4px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
}

.sp-bottom-item i{font-size: 18px;}
.sp-bottom-item.is-active{color: #fff; background: rgba(255,255,255,.08);}

/* Responsive behavior */
@media (max-width: 768px){
  .sp-bottom-nav{display:block;}
  .left-side.sidebar-offcanvas{display:none !important;}
  .right-side{padding-bottom: 84px;}
}

/* Define 2 column template */
.right-side,
.left-side {
  min-height: 100%;
  display: block;
}
/*right side - contins main content*/
.right-side {
  background-color: #f9f9f9;
  margin-left: 220px;
}
/*left side - contains sidebar*/
.left-side {
  position: absolute;
  width: 220px;
  top: 0;
}
@media screen and (min-width: 992px) {
  .left-side {
    top: 70px;
  }
  /*Right side strech mode*/
  .right-side.strech {
    margin-left: 0;
  }
  .right-side.strech > .content-header {
    margin-top: 0px;
  }
  /* Left side collapse */
  .left-side.collapse-left {
    left: -220px;
  }
}
/*Give content full width on xs screens*/
@media screen and (max-width: 992px) {
  .right-side {
    margin-left: 0;
  }
}

/* --- Updated typography to match reference screenshot --- */
.class-row {
  padding: 14px 0;
}

.class-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 6px;
}

.class-instructor {
  font-size: 14px;
  font-weight: 500;
  color: #6b7280;
}

.class-meta {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: #8a8f98;
  gap: 12px;
}

.class-meta i {
  font-size: 13px;
  opacity: 0.7;
}

/* Sidebar/menu typography & grouping (inherits colors from existing variables in AdminLTE.css) */
  .sp-menu-groups{padding-bottom: 18px;}
  .sp-group-title{
    padding: 10px 18px 6px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .85;
    display:flex;
    align-items:center;
    gap: 10px;
  }
  .sp-group-emoji{font-size: 14px; line-height: 1;}
  .sp-nav-item{
    font-size: 16px;
    font-weight: 600;
    padding: 12px 14px;
  }
  .sp-nav-item[aria-disabled="true"]{
    opacity: .6;
    pointer-events: none;
  }

  /* Bottom nav uses existing styles but allow button */
  .sp-bottom-btn{
    border:0;
    background:transparent;
    width:100%;
  }
  .sp-bottom-btn:focus{outline: none;}
  .sp-bottom-item{cursor:pointer;}
  .sp-bottom-item[aria-disabled="true"]{opacity:.7; pointer-events:none;}

  /* Mobile drawer */
  .sp-no-scroll{overflow:hidden;}
  .sp-mobile-drawer{
    position:fixed;
    inset:0;
    z-index:10000;
    display:none;
  }
  .sp-mobile-drawer.is-open{display:block;}
  .sp-mobile-drawer-backdrop{
    position:absolute;
    inset:0;
    background: rgba(0,0,0,.45);
  }
  .sp-mobile-drawer-sheet{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    background: var(--sp-blue);
    color: var(--sp-white);
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
    max-height: 80vh;
    overflow:auto;
    box-shadow: 0 -18px 45px rgba(0,0,0,.35);
  }
  .sp-mobile-drawer-handle{
    width: 46px;
    height: 5px;
    border-radius: 999px;
    background: rgba(255,255,255,.35);
    margin: 10px auto 2px;
  }
  .sp-mobile-drawer-content{padding: 8px 0 18px;}
  .sp-mobile-title{
    padding: 10px 18px 0;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    opacity: .95;
  }

  @media (max-width: 768px){
    /* Make bottom labels fit better */
    .sp-bottom-item span{font-size: 11px;}
  }
</style>
<style id="sp-menu-light-override">
.left-side.sidebar-offcanvas,
.sp-sidebar,
.sp-mobile-drawer-sheet{
  background:#fbfbfc !important;
  color:#101828 !important;
}

/* Hide any legacy brand/user header (logo + name) */
.sp-brand{ display:none !important; }

/* Remove icons everywhere in menu */
.sp-sidebar i,
.sp-sidebar svg,
.sp-sidebar img,
.sp-sidebar [class*="icon"],
.sp-group-title .sp-group-emoji,
.sp-group-title:before,
.sp-group-title:after{
  display:none !important;
  content:none !important;
}

/* Group titles */
.sp-group-title{
  color:#98a2b3 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-size:12px !important;
  font-weight:600 !important;
  margin:10px 20px 6px 20px;
}

/* Links */
.sp-nav-item{
  color:#475467 !important;
  font-weight:500 !important;
  padding:14px 20px !important;
}
.sp-nav-item:hover{
  background:#f2f4f7 !important;
  color:#344054 !important;
}

/* Active */
.sp-nav-item.is-active,
.sp-nav-item[aria-current="page"]{
  background:#eef2f6 !important;
  color:#101828 !important;
  border-radius:14px !important;
}

/* Horizontal line after each section */
.sp-group{
  padding-bottom:14px;
  border-bottom:1px solid #eaecf0;
  margin-bottom:14px;
}
.sp-menu-groups .sp-group:last-child{
  border-bottom:none;
  margin-bottom:0;
}

/* Drawer handle */
.sp-mobile-drawer-handle{
  background: rgba(16,24,40,.18) !important;
}


/* Ensure sidebar wide enough for labels */
@media (min-width: 769px){
  .left-side.sidebar-offcanvas{width:260px !important;}
  .right-side{margin-left:260px !important;}
}
.sp-nav-item{display:block !important; white-space:nowrap !important;}
.sp-nav-item .sp-txt{display:block !important; overflow:hidden; text-overflow:ellipsis;}

</style>
<style id="sp-grey-override">
.left-side.sidebar-offcanvas,.sp-sidebar,.sp-mobile-drawer-sheet{background:#fafafa!important;color:#475467!important}
.sp-group-title{color:#98a2b3!important;letter-spacing:.08em}
.sp-nav-item{color:#344054!important}
.sp-nav-item:hover{background:#f2f4f7!important}
.sp-nav-item.is-active{background:#e4e7ec!important;color:#101828!important}
</style>
<style id="sp-logo-offset">
.sp-menu-groups{
  margin-top:6px !important;
}
</style>
<style id="dark-mode-custom-style" lang="en" type="text/css">
/* --- Sticky header fix + prevent overlap --- */
.header{
  z-index: 9999 !important;
  display:flex !important;
  align-items:center !important;
}

/* Desktop: keep top header visible and prevent overlap */
header.header{
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: #ffffff !important;
  border-bottom: 1px solid rgba(16,24,40,.08) !important;
  z-index: 10000 !important;
}


.header > .logo{
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  flex: 0 0 auto !important;
  height: 32px !important;
  margin-left: 16px !important;
  background-size: contain !important;
  background-position: left center !important;
}
.header > .navbar.navbar-static-top{
  flex: 1 1 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content: space-between !important;
  padding: 0 16px !important;
}
.header .sidebar-toggle{ margin-left: 0 !important; }
.header .sportinn-nav-right{
  margin-left: auto !important;
  display:flex !important;
  align-items:center !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
}
:root{--sp-header-offset:72px;}
@media (max-width: 768px){:root{--sp-header-offset:64px;}}
.header, header{position:fixed !important; top:0; left:0; right:0; z-index:9999; background:#fff;}
body, .sp-content, .content-wrapper, .right-side{padding-top:var(--sp-header-offset)!important;}

/* ===== Fixed top header (desktop + mobile) ===== */
.header{ position:fixed; top:0; left:0; right:0; z-index:9999; background:#fff; }
.content-wrapper{ padding-top: var(--sp-header-offset, 72px) !important; }
@media (max-width: 768px){
  .content-wrapper{ padding-top: var(--sp-header-offset, 56px) !important; }
}


/* Sticky header su fonu (slenkant fonas lieka) */
.header, header{
  background:#ffffff !important;
  box-shadow:0 2px 10px rgba(16, 24, 40, 0.06) !important;
}

</style><style>
        :root{
            --s-bg:#f5f6f8;
            --s-card:#ffffff;
            /* Typography/colors tuned to match reference screenshot */
            --s-text:#1f2933;   /* primary text */
            --s-muted:#8a8f98;  /* secondary/meta text */
            --s-line:#e6e8ee;
            --s-danger:#b42318;
            --s-warn:#b26a00;
            --s-success:#027a48;
            --s-pill:#1f2933;
        }
        body.skin-black{
            background:var(--s-bg) !important;
            color:var(--s-text);
            font-family:'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
        }

        /* Header */
        header.header{background:transparent !important; border:none !important; box-shadow:none !important;}
        header.header .logo{background:transparent !important; width:auto !important; padding:16px 18px !important;}
        header.header .logo{background-image:none !important;}
        header.header .logo:after{font-weight:800; font-size:22px; letter-spacing:-0.02em; vertical-align:middle; color:var(--s-text);}
        header.header nav.navbar{background:transparent !important; border:none !important; box-shadow:none !important;}
        .navbar-btn.sidebar-toggle{margin-top:18px;}

        /* Make top bar resilient on mobile (prevent user pill from dropping/overlapping) */
        header.header nav.navbar.navbar-static-top{
            display:flex;
            align-items:center;
            gap:12px;
            padding:8px 12px;
            min-height:56px;
            flex-wrap:nowrap;
        }
        header.header nav.navbar.navbar-static-top .sidebar-toggle{
            float:none !important;
            margin:0 !important;
        }
        .sportinn-nav-right{margin-left:auto;}

        /* Wrapper */
        .wrapper{background:transparent !important;}

        /* Sidebar container (menu itself styled in ./AdminLTE.css) */
        .left-side{background:transparent !important;}
        .left-side .sidebar{background:transparent !important; border-right:none !important; padding:0 !important;}

        /* Page header */
        .content-header{padding:22px 28px 10px 28px;}
        .content-header h1{font-size:28px; font-weight:800; letter-spacing:-0.02em;}

        /* Replace legacy callout with modern top bar (name + initials) */
        .callout.callout-info{display:none !important;}
        .sportinn-user{
            display:flex; align-items:center; gap:10px;
            background:var(--s-card);
            border:1px solid var(--s-line);
            border-radius:14px;
            padding:10px 12px;
            box-shadow:0 6px 18px rgba(16,24,40,.06);
        }
        .sportinn-initials{
            width:34px; height:34px; border-radius:999px;
            display:flex; align-items:center; justify-content:center;
            background:var(--s-pill);
            color:#fff; font-weight:800; font-size:13px;
        }
        .sportinn-user .name{font-weight:700;}
        .sportinn-user .code{color:var(--s-muted); font-weight:600; margin-left:6px;}
        .sportinn-nav-right{display:flex; align-items:center; gap:12px;}
        .sportinn-user-meta{display:flex; align-items:baseline; gap:6px; white-space:nowrap;}
        .sportinn-logout-link{
            display:inline-flex; align-items:center; gap:8px;
            color:var(--s-text); text-decoration:none; font-weight:700;
            padding:6px 8px; border-radius:10px;
        }
        .sportinn-logout-link:hover{text-decoration:underline;}
        @media (max-width: 768px){
            .sportinn-nav-right{margin-left:auto; padding-right:0;}
            .sportinn-user{padding:8px 10px;}
            .sportinn-user .code{display:none;}
        }
        @media (max-width: 520px){
            .sportinn-user .name{max-width:120px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
            header.header nav.navbar.navbar-static-top{flex-wrap:wrap; row-gap:8px; min-height:unset; padding-bottom:10px;}
            .sportinn-nav-right{width:100%; justify-content:flex-end; gap:10px;}
            .sportinn-logout-link{padding:4px 6px;}
        }

        /* Extra-small phones: allow header to grow instead of overlapping */
        @media (max-width: 420px){
            header.header nav.navbar.navbar-static-top{flex-wrap:wrap; min-height:unset; padding-bottom:10px;}
            .sportinn-nav-right{width:100%; flex-direction:row; justify-content:flex-end;}
            .sportinn-user{max-width:100%;}
        }
/* Registrations container */
        .box{border:none !important; box-shadow:none !important; background:transparent !important;}
        .sportinn-card{
            background:var(--s-card);
            border:1px solid var(--s-line);
            border-radius:18px;
            box-shadow:0 10px 30px rgba(16,24,40,.06);
            overflow:hidden;
        }
        .sportinn-card-header{padding:22px 22px 14px; border-bottom:1px solid var(--s-line);}
        .sportinn-card-header h2{margin:0; font-size:28px; font-weight:800; letter-spacing:-0.02em;}

        .reg-list{list-style:none; margin:0; padding:0;}
        .reg-item{display:grid; grid-template-columns:160px 1fr 240px 44px 120px; gap:16px; align-items:center; padding:18px 22px; border-bottom:1px solid var(--s-line);}
        .reg-item:last-child{border-bottom:none;}
        .reg-time{font-size:22px; font-weight:600; letter-spacing:-0.02em;}
        .reg-title{font-size:20px; font-weight:600; margin:0; color:var(--s-text);}
        .reg-sub{color:var(--s-muted); margin-top:3px; font-size:14px;}
        .reg-abon{justify-self:end; text-align:right;}
        .reg-abon .lbl{color:var(--s-muted); font-weight:700; font-size:12px; letter-spacing:.02em; text-transform:uppercase;}
        .reg-abon .val{font-weight:700; margin-top:4px;}

        .bell-btn{
            width:40px; height:40px; border-radius:12px;
            border:1px solid var(--s-line);
            background:var(--s-card);
            display:flex; align-items:center; justify-content:center;
            cursor:pointer;
        }
        .bell-btn:hover{background:#eef2f7;}
        .bell-btn.is-on{border-color:rgba(15,23,42,.35);}
        .bell-btn.is-on i{color:var(--s-pill);}

        .cancel-btn{
            justify-self:end;
            border:1px solid rgba(180,35,24,.25);
            color:var(--s-danger);
            background:rgba(180,35,24,.06);
            border-radius:14px;
            padding:10px 14px;
            font-weight:800;
            cursor:pointer;
        }
        .cancel-btn:hover{background:rgba(180,35,24,.10);}
        .cancel-btn[disabled]{opacity:.5; cursor:not-allowed;}

        .badge{
            display:inline-flex; align-items:center; gap:8px;
            border-radius:999px; padding:6px 10px; font-weight:800;
            border:1px solid var(--s-line);
        }
        /* Waiting badge (Stovite eilėje) – yellow like requested */
        .badge.wait{color:var(--s-warn); background:#fff6e5; border-color:#ffd79a;}
        .badge.ok{color:var(--s-success); background:rgba(2,122,72,.08); border-color:rgba(2,122,72,.18);}
        .badge.bad{color:var(--s-danger); background:rgba(180,35,24,.08); border-color:rgba(180,35,24,.18);}
        .badge.neutral{color:var(--s-muted); background:#f2f4f7;}

        .reg-statusline{grid-column:2 / 6; margin-top:-10px; padding-left:0;}

        .past-toggle{padding:16px 22px;text-align:center;color:var(--s-text);font-size:16px;font-weight:600;cursor:pointer;user-select:none;}
        .past-toggle:hover{text-decoration:underline;}

        /* Responsive */
        @media (max-width: 980px){
            .reg-item{grid-template-columns:120px 1fr; grid-template-rows:auto auto auto;}
            .reg-abon{justify-self:start; text-align:left; grid-column:2/3;}
            .bell-btn{grid-column:1/2; grid-row:2/3; justify-self:start;}
            .cancel-btn{grid-column:2/3; grid-row:2/3; justify-self:end;}
            .reg-statusline{grid-column:1 / 3;}
        }
    
        .active-block{padding-bottom:6px;}
        .active-head{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 22px 10px;}
        .active-title{font-size:14px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--s-muted);}
        .count-pill{min-width:34px; height:26px; padding:0 10px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; background:rgba(15,23,42,.06); color:var(--s-ink);}
        .empty-state{margin:0 22px 14px; padding:12px 14px; border-radius:14px; border:1px dashed var(--s-line); background:rgba(15,23,42,.03); color:var(--s-muted); font-weight:600;}
        .past-block{padding-bottom:10px;}

        /* Badge: waiting (Stovite eilėje) */
        .badge.wait{background:#fff6e5; color:var(--s-warn); border:1px solid #ffd79a;}
        /* Hide missing font-icon squares in sidebar/menu */
        .main-sidebar i.fa, .sidebar i.fa, .sidebar-menu i.fa{display:none !important;}
        /* SVG icons */
        .bell-btn svg{width:18px; height:18px; display:block;}
        .logout-link svg{width:18px; height:18px; vertical-align:-3px; margin-left:8px;}


/* Mobile layout for registrations list (match reference screenshot) */
@media (max-width: 768px){
    .sportinn-card{margin:14px 12px; border-radius:18px;}
    .sportinn-card-header h2{font-size:22px;}
    .active-block{padding:14px 14px 6px;}
    .past-block{padding:0 14px 14px;}
    .reg-item{
        grid-template-columns: 1fr auto;
        grid-template-rows: auto auto auto auto;
        gap:10px 12px;
        padding:16px 14px;
        align-items:start;
    }
    .reg-title{font-size:18px; line-height:1.15;}
    .reg-time{
        font-size:28px;
        font-weight:900;
        line-height:1;
        grid-column:1;
        grid-row:2;
    }
    /* main block (title+date) */
    .reg-item > div:nth-child(2){
        grid-column:1;
        grid-row:1;
    }
    .reg-sub{font-size:13px;}
    /* subscription below time */
    .reg-abon{
        grid-column:1;
        grid-row:3;
        justify-self:start;
        text-align:left;
    }
    .reg-abon .lbl{display:none;}
    .reg-abon .val{font-weight:600; color:var(--s-muted); margin-top:0;}
    /* actions on the right */
    .bell-btn{
        grid-column:2;
        grid-row:1;
        align-self:center;
        justify-self:end;
        border-radius:999px;
        width:44px; height:44px;
    }
    .cancel-btn{
        grid-column:2;
        grid-row:2 / span 2;
        align-self:center;
        justify-self:end;
        padding:10px 14px;
        border-radius:999px;
        font-size:14px;
    }
    .reg-statusline{
        grid-column:1 / -1;
        margin-top:2px;
    }
    .badge{font-size:12px; padding:6px 10px; border-radius:999px;}
    .past-toggle{padding:14px 0; text-align:center;}
}

@media (max-width: 420px){
    .cancel-btn{padding:10px 12px;}
    .sportinn-user{padding:8px 10px;}
    .sportinn-user .name{max-width:120px;}
}
</style><style id="sp-onebar-mobile">
@media (max-width: 768px){
  header.header{
    position: fixed !important;
    top: 0; left: 0; right: 0;
    height: 52px !important;
    z-index: 1000 !important;
    background: #fff !important;
    border-bottom: 1px solid #eaecf0 !important;
  }

  /* Reserve space */
  
/* Safety: ensure main content starts below the fixed header */
:root{ --sp-header-offset:72px; }
@media (max-width: 768px){
  :root{ --sp-header-offset:56px; }
}
.content-wrapper, .right-side, .sp-content{ padding-top: var(--sp-header-offset) !important; }

/* Make navbar a positioning context */
    header.header nav.navbar{
    height: 52px !important;
    position: relative !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Burger stays inside top bar */
  header.header .sidebar-toggle{
    position: absolute !important;
    left: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    padding: 8px !important;
    margin: 0 !important;
    z-index: 2 !important;
  }

  /* Center logo (existing background image on <a class="logo">) */
    header.header > a.logo{
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%,-50%) !important;
    height: 32px !important;
    width: 140px !important;
    display: block !important;
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    z-index: 1 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    overflow: hidden !important;
  }

  /* Logout on right, vertically centered */
  header.header .sportinn-nav-right{
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    height: 52px !important;
    z-index: 2 !important;
  }

  header.header .sportinn-logout-link{
    font-size: 12px !important;
    font-weight: 500 !important;
    color:#667085 !important;
    text-decoration:none !important;
    padding: 6px 8px !important;
    border-radius: 10px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  header.header .sportinn-logout-link:hover{
    background:#f2f4f7 !important;
  }

  /* Hide user pill only */
  #sportinnUser,
  .sportinn-user{
    display:none !important;
  }
}
</style>
<style>
/* ===== REMOVE HEADINGS ===== */
h3:contains(""),
h3:contains("") {
    display: none !important;
}

/* If headings are plain text inside strong/div */
.calendar-container h3,
.time-section h3 {
    display: none !important;
}

/* ===== REDUCE DATE FONT SIZE ===== */
.calendar-container .day .dow {
    font-size: 12px !important;
}

.calendar-container .day .dom {
    font-size: 18px !important;
    width: 44px !important;
    height: 44px !important;
}

/* ===== REDUCE TIME FONT SIZE ===== */
.time-section button,
.time-section .btn {
    font-size: 14px !important;
    padding: 6px 10px !important;
}
</style>
<style>
/* ===== REMOVE SPECIFIC HEADINGS TEXT ===== */

/* Hide headings containing specific phrases */
h3, h4 {
    font-size: inherit;
}

h3:contains("Pasirinkite savaitės dieną"),
h3:contains("Pasirinkite norimą laiką") {
    display: none !important;
}

/* Fallback: hide by common container structure */
.calendar-title,
.time-title {
    display: none !important;
}

/* ===== MONTH TITLE SIZE ===== */
.month-title,
.calendar-container h4,
.calendar-container .month-name {
    font-size: 18px !important;
    font-weight: 600 !important;
}

/* If month rendered as plain strong/div */
.calendar-container strong {
    font-size: 18px !important;
}
</style>
<style>
/* ===== REDUCE GAP BETWEEN DATE BUBBLES ===== */

/* If using flex or grid gap */
.calendar-container,
.calendar-container .week,
#week {
    gap: 16px !important;
}

/* If dates are inline-block or flex children */
.calendar-container .day {
    margin-right: 16px !important;
}

/* Remove extra right margin from last item */
.calendar-container .day:last-child {
    margin-right: 0 !important;
}
