/* =========================================================================
   Nelik vienas – registracijos forma
   SPALVOS: pakeisk reikšmes žemiau, kad atitiktų nelikvienas.lt dizainą.
   (Dabar nustatytos pagal nelikvienas.lt: žalsva #1c6e68 + smėlio #a29177)
   ========================================================================= */
:root{
  --nv-brand:       #1c6e68;   /* pagrindinė žalsva (mygtukai, akcentai) */
  --nv-brand-dark:  #14524d;   /* tamsesnė (hover, antraštės) */
  --nv-brand-soft:  #e7f0ef;   /* labai šviesi žalsva (fonai, žymėjimai) */
  --nv-accent:      #a29177;   /* šiltas smėlio akcentas */
  --nv-accent-dark: #897a62;
  --nv-bg:          #f5f7f7;   /* fonas */
  --nv-card:        #ffffff;   /* kortelių fonas */
  --nv-text:        #283038;   /* tekstas */
  --nv-muted:       #6a7a7c;   /* antrinis tekstas */
  --nv-line:        #e3eae9;   /* linijos / rėmeliai */
  --nv-ok:          #2e9e6b;   /* sėkmė */
  --nv-err:         #c0392b;   /* klaida */
  --nv-radius:      14px;
  --nv-radius-sm:   10px;
  --nv-shadow:      0 2px 10px rgba(20,82,77,.07);
  --nv-shadow-lg:   0 10px 30px rgba(20,82,77,.14);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:transparent;            /* iframe permatomas fonas */
  color:var(--nv-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

.nv-wrap{max-width:760px;margin:0 auto;padding:22px 16px 36px}

.nv-head h1{font-size:1.5rem;margin:0 0 6px;color:var(--nv-brand-dark);font-weight:800;letter-spacing:-.01em}
.nv-sub{margin:0 0 22px;color:var(--nv-muted);font-size:.96rem}

.nv-step{animation:nv-fade .25s ease}
.nv-hidden{display:none !important}
@keyframes nv-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

.nv-steplabel{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-weight:700;color:var(--nv-brand-dark);margin:0 0 16px;font-size:1.05rem;
}
.nv-num{
  display:inline-flex;align-items:center;justify-content:center;
  width:27px;height:27px;border-radius:50%;
  background:var(--nv-brand);color:#fff;font-size:.85rem;font-weight:700;flex:none;
}
.nv-back{
  margin-left:auto;border:0;background:none;color:var(--nv-muted);
  cursor:pointer;font-size:.86rem;padding:5px 8px;border-radius:8px;transition:.15s;
}
.nv-back:hover{color:var(--nv-brand-dark);background:var(--nv-brand-soft)}

/* ---- specialistų kortelės ---- */
.nv-specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.nv-card{
  background:var(--nv-card);border:1.5px solid var(--nv-line);border-radius:var(--nv-radius);
  padding:16px 16px 14px;cursor:pointer;transition:.18s;box-shadow:var(--nv-shadow);
  position:relative;outline:none;display:flex;flex-direction:column;gap:3px;
}
.nv-card:hover{border-color:var(--nv-brand);transform:translateY(-2px);box-shadow:var(--nv-shadow-lg)}
.nv-card:focus-visible{border-color:var(--nv-brand);box-shadow:0 0 0 3px var(--nv-brand-soft)}
.nv-card.is-selected{border-color:var(--nv-brand);background:var(--nv-brand-soft)}
.nv-card-day{
  display:inline-block;align-self:flex-start;font-size:.72rem;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--nv-brand);background:var(--nv-brand-soft);
  padding:3px 9px;border-radius:999px;margin-bottom:6px;
}
.nv-card.is-selected .nv-card-day{background:#fff}
.nv-card-name{font-size:1.06rem;margin:0;font-weight:700;color:var(--nv-text)}
.nv-card-role{color:var(--nv-muted);font-size:.9rem}
.nv-card-hours{color:var(--nv-text);font-size:.86rem;margin-top:2px}
.nv-card-link{
  margin-top:8px;font-size:.84rem;color:var(--nv-brand);text-decoration:none;font-weight:600;
}
.nv-card-link:hover{text-decoration:underline}

/* ---- pasirinkto specialisto juosta ---- */
.nv-chosen{
  display:flex;align-items:center;gap:10px;
  background:var(--nv-brand-soft);border-radius:var(--nv-radius-sm);
  padding:10px 14px;margin:0 0 16px;font-size:.92rem;color:var(--nv-brand-dark);
}

/* =========================================================================
   SAVAITĖS KALENDORIaus TINKLELIS
   ========================================================================= */
.nv-cal{margin-top:4px}
.nv-cal-nav{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;
}
.nv-cal-range{font-weight:700;color:var(--nv-text);font-size:.98rem;text-align:center;flex:1}
.nv-navbtn{
  width:40px;height:40px;border:1.5px solid var(--nv-line);background:#fff;border-radius:10px;
  cursor:pointer;font-size:1.1rem;color:var(--nv-brand-dark);display:inline-flex;
  align-items:center;justify-content:center;transition:.15s;flex:none;
}
.nv-navbtn:hover:not(:disabled){border-color:var(--nv-brand);background:var(--nv-brand-soft)}
.nv-navbtn:disabled{opacity:.35;cursor:default}

.nv-grid-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.nv-grid{
  display:grid;
  grid-template-columns:58px repeat(5,minmax(76px,1fr));
  gap:8px;min-width:470px;
}
.nv-corner{position:sticky;left:0;z-index:3;background:#fff}
.nv-colhead{
  text-align:center;padding:6px 2px;border-radius:10px;background:var(--nv-bg);
}
.nv-colhead .wd{font-size:.74rem;color:var(--nv-muted);text-transform:uppercase;font-weight:600}
.nv-colhead .dnum{font-size:1.15rem;font-weight:800;color:var(--nv-muted);line-height:1.1}
.nv-colhead.is-active{background:var(--nv-brand-soft)}
.nv-colhead.is-active .wd{color:var(--nv-brand-dark)}
.nv-colhead.is-active .dnum{color:var(--nv-brand)}
.nv-rowtime{
  position:sticky;left:0;z-index:2;background:#fff;
  display:flex;align-items:center;justify-content:flex-end;padding-right:6px;
  font-size:.82rem;color:var(--nv-muted);font-weight:600;
}
.nv-slot{
  border:1.5px solid var(--nv-line);background:#fff;border-radius:10px;
  padding:10px 4px;font-size:.9rem;font-weight:700;color:var(--nv-brand-dark);
  cursor:pointer;transition:.13s;text-align:center;
}
.nv-slot:hover{border-color:var(--nv-brand);background:var(--nv-brand-soft)}
.nv-slot.is-selected{background:var(--nv-brand);border-color:var(--nv-brand);color:#fff}
.nv-slot-empty{
  border:1.5px dashed #eef2f1;border-radius:10px;background:transparent;
  color:#c4cecd;font-size:.82rem;text-align:center;padding:10px 4px;font-weight:500;user-select:none;
}
.nv-cal-cta{margin-top:18px}

.nv-loading,.nv-empty{color:var(--nv-muted);font-size:.95rem;padding:14px 0}
.nv-empty{
  background:var(--nv-bg);border-radius:var(--nv-radius-sm);padding:18px;text-align:center;
}

/* =========================================================================
   SANTRAUKOS KORTELĖ + FORMA
   ========================================================================= */
.nv-summary{
  border:1.5px solid var(--nv-line);border-radius:var(--nv-radius);background:#fff;
  box-shadow:var(--nv-shadow);overflow:hidden;margin:0 0 20px;
}
.nv-summary-top{
  display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--nv-brand-soft);
}
.nv-summary-avatar{
  width:42px;height:42px;border-radius:50%;flex:none;background:var(--nv-brand);
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.05rem;
}
.nv-summary-name{font-weight:700;color:var(--nv-brand-dark);font-size:1.02rem}
.nv-summary-role{color:var(--nv-muted);font-size:.86rem}
.nv-summary-rows{padding:6px 16px 12px}
.nv-srow{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--nv-line);font-size:.92rem}
.nv-srow:last-child{border-bottom:0}
.nv-srow .k{color:var(--nv-muted)}
.nv-srow .v{font-weight:600;color:var(--nv-text);text-align:right}

.nv-form{display:flex;flex-direction:column;gap:14px}
.nv-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nv-field{display:flex;flex-direction:column;gap:5px}
.nv-field>span{font-size:.86rem;font-weight:600;color:var(--nv-text)}
.nv-field em{color:var(--nv-err);font-style:normal}
.nv-field input,.nv-field textarea{
  border:1.5px solid var(--nv-line);border-radius:var(--nv-radius-sm);padding:11px 12px;
  font-size:.96rem;font-family:inherit;color:var(--nv-text);background:#fff;transition:.15s;width:100%;
}
.nv-field input:focus,.nv-field textarea:focus{
  outline:none;border-color:var(--nv-brand);box-shadow:0 0 0 3px var(--nv-brand-soft);
}
.nv-field textarea{resize:vertical;min-height:80px}

/* perjungiklis "Pridėti komentarą" */
.nv-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none;font-size:.92rem;color:var(--nv-text)}
.nv-toggle input{position:absolute;opacity:0;width:0;height:0}
.nv-switch{
  width:42px;height:24px;border-radius:999px;background:#d4dcdb;position:relative;transition:.18s;flex:none;
}
.nv-switch::after{
  content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;
  background:#fff;transition:.18s;box-shadow:0 1px 3px rgba(0,0,0,.2);
}
.nv-toggle input:checked + .nv-switch{background:var(--nv-brand)}
.nv-toggle input:checked + .nv-switch::after{transform:translateX(18px)}

.nv-error{
  background:#fdecea;color:var(--nv-err);border:1px solid #f5c6c0;border-radius:var(--nv-radius-sm);
  padding:10px 12px;font-size:.9rem;margin:0;
}
.nv-note{color:var(--nv-muted);font-size:.9rem;line-height:1.4;margin:2px 0 0}

.nv-submit,.nv-restart{
  border:0;border-radius:999px;background:var(--nv-brand);color:#fff;font-weight:700;
  font-size:1rem;padding:13px 22px;cursor:pointer;transition:.15s;width:100%;
}
.nv-submit:hover,.nv-restart:hover{background:var(--nv-brand-dark)}
.nv-submit:disabled{opacity:.6;cursor:default}

/* mygtukas po tinkleliu */
.nv-cta{
  border:0;border-radius:999px;background:var(--nv-brand);color:#fff;font-weight:700;
  font-size:1rem;padding:13px 22px;cursor:pointer;transition:.15s;width:100%;
}
.nv-cta:hover:not(:disabled){background:var(--nv-brand-dark)}
.nv-cta:disabled{opacity:.45;cursor:default}

/* ---- sėkmė ---- */
.nv-done{text-align:center;padding:30px 16px;background:#fff;border-radius:var(--nv-radius);box-shadow:var(--nv-shadow)}
.nv-check{
  width:62px;height:62px;border-radius:50%;background:var(--nv-ok);color:#fff;
  font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;
}
.nv-done h2{margin:0 0 8px;color:var(--nv-brand-dark)}
.nv-done p{color:var(--nv-text);margin:0 0 20px}
.nv-restart{width:auto;display:inline-block}

@media (max-width:480px){
  .nv-row2{grid-template-columns:1fr}
  .nv-wrap{padding:18px 13px 30px}
}

/* ---- kortelės „Rezervuok laiką" mygtukas ---- */
.nv-card{padding-bottom:14px}
.nv-card-cta{
  display:inline-block;margin-top:12px;font-size:.9rem;font-weight:700;color:#fff;
  background:var(--nv-brand);padding:9px 14px;border-radius:999px;text-align:center;transition:.15s;
}
.nv-card:hover .nv-card-cta{background:var(--nv-brand-dark)}
.nv-card.is-selected .nv-card-cta{background:var(--nv-brand-dark)}

/* ---- laikinos rezervacijos laikmatis ---- */
.nv-hold{
  background:var(--nv-brand-soft);border:1px solid #cfe3e1;border-radius:var(--nv-radius);
  padding:12px 16px;margin:0 0 16px;
}
.nv-hold-clock{font-weight:700;color:var(--nv-brand-dark);font-size:1rem;display:flex;align-items:center;gap:8px}
.nv-hold-clock b{font-variant-numeric:tabular-nums}
.nv-hold-dot{width:9px;height:9px;border-radius:50%;background:var(--nv-brand);display:inline-block;animation:nv-pulse 1.4s ease-in-out infinite}
@keyframes nv-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.nv-hold-sub{color:var(--nv-muted);font-size:.84rem;margin-top:4px}

/* ---- sutikimo varnelė ---- */
.nv-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.9rem;color:var(--nv-text);line-height:1.4}
.nv-consent input{position:absolute;opacity:0;width:0;height:0}
.nv-consent-box{
  flex:none;width:22px;height:22px;border:2px solid #c4d3d1;border-radius:6px;background:#fff;
  margin-top:1px;position:relative;transition:.15s;
}
.nv-consent input:checked + .nv-consent-box{background:var(--nv-brand);border-color:var(--nv-brand)}
.nv-consent input:checked + .nv-consent-box::after{
  content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;
  border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg);
}
.nv-consent input:focus-visible + .nv-consent-box{box-shadow:0 0 0 3px var(--nv-brand-soft)}
