.nwcal{--nwc-primary:#001d49;--nwc-accent:#c4a25c;--nwc-accent-text:#7F6530;--nwc-bg:#f7f4ef;--nwc-line:#e3ddd2;font-family:inherit;color:#1b2333;background:#fff;border:1px solid var(--nwc-line);border-top:4px solid var(--nwc-accent);border-radius:14px;padding:26px 28px;box-sizing:border-box;max-width:880px;margin:0 auto;text-align:left;line-height:1.5}
.nwcal *{box-sizing:border-box}
.nwcal h2{font-size:24px;line-height:1.25;margin:0 0 4px;color:var(--nwc-primary)!important;padding:0}
.nwcal h3{font-size:17px;line-height:1.3;margin:0;color:var(--nwc-primary)!important;padding:0}
.nwcal p{margin:0;padding:0}
.nwcal button{font-family:inherit;cursor:pointer}
.nwcal-loading{min-height:360px;display:flex;align-items:center;justify-content:center;color:var(--nwc-primary);font-size:15px}
.nwcal-loading:before{content:"";width:28px;height:28px;margin-right:12px;border:3px solid var(--nwc-line);border-top-color:var(--nwc-accent);border-radius:50%;animation:nwcspin .9s linear infinite}
@keyframes nwcspin{to{transform:rotate(360deg)}}
.nwcal-head{margin-bottom:18px}
.nwcal-head p{color:var(--nwc-accent-text);font-weight:600;font-size:14px}
.nwcal-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px}
.nwcal-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.nwcal-nav{width:36px;height:36px;border-radius:50%;border:1px solid var(--nwc-line);background:#fff;color:var(--nwc-primary);font-size:22px;line-height:1;padding:0}
.nwcal-nav:disabled{opacity:.35;cursor:default}
.nwcal-dow,.nwcal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.nwcal-dow span{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;padding:4px 0}
.nwcal-day{aspect-ratio:1/1;border:0;border-radius:50%;background:transparent;color:#b8bcc4;font-size:15px;padding:0;max-width:44px;width:100%;margin:0 auto}
.nwcal-day.has{background:var(--nwc-bg);color:var(--nwc-primary);font-weight:700}
.nwcal-day.has:hover{box-shadow:inset 0 0 0 2px var(--nwc-accent)}
.nwcal-day.sel{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal-day:disabled{cursor:default}
.nwcal-tz{font-size:13px;color:#6b7280;margin-top:12px!important}
.nwcal-times h3{margin-bottom:12px}
.nwcal-hint{color:#6b7280;padding-top:40px!important}
.nwcal-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:330px;overflow:auto;padding:2px}
.nwcal-slot{border:2px solid var(--nwc-primary);background:#fff;color:var(--nwc-primary);border-radius:10px;padding:11px 8px;font-size:15px;font-weight:700}
.nwcal-slot:hover,.nwcal-slot:focus-visible{background:var(--nwc-primary);color:#fff}
.nwcal button:focus-visible{outline:3px solid var(--nwc-accent);outline-offset:2px}
.nwcal-alt{margin-top:18px!important;padding-top:14px!important;border-top:1px solid var(--nwc-line);font-size:14px;color:#4b5563}
.nwcal-alt a,.nwcal-error a:not(.nwcal-btn){color:var(--nwc-primary)!important;font-weight:700;text-decoration:underline}
.nwcal-form{display:grid;gap:14px}
.nwcal-back{justify-self:start;border:0;background:none;color:var(--nwc-primary);font-weight:700;padding:0;font-size:14px}
.nwcal-when{background:var(--nwc-bg);border-left:4px solid var(--nwc-accent);border-radius:8px;padding:12px 16px;display:flex;flex-direction:column}
.nwcal-when strong{color:var(--nwc-primary)}
.nwcal-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nwcal-field label,.nwcal-states legend{display:block;font-weight:700;font-size:14px;color:var(--nwc-primary);margin-bottom:6px}
.nwcal-field input,.nwcal-field textarea{width:100%;border:1px solid #cfd4dc;border-radius:8px;padding:11px 12px;font-size:16px;font-family:inherit;background:#fff;color:#111}
.nwcal-field input:focus,.nwcal-field textarea:focus{outline:none;border-color:var(--nwc-primary);box-shadow:0 0 0 3px rgba(196,162,92,.35)}
.nwcal-states{border:0;padding:0;margin:0}
.nwcal-states label{display:flex;align-items:flex-start;gap:8px;font-size:15px;margin:6px 0;cursor:pointer}
.nwcal-states input{margin-top:4px;accent-color:var(--nwc-primary)}
.nwcal-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.nwcal-btn{display:inline-block;justify-self:start;background:var(--nwc-accent)!important;color:var(--nwc-primary)!important;border:0;border-radius:8px;padding:14px 28px;font-size:16px;font-weight:700;text-decoration:none!important}
.nwcal-btn:hover{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal-btn:disabled{opacity:.6;cursor:wait}
.nwcal-status{color:#a11d2b;font-weight:600;min-height:1px}
.nwcal-error{padding:30px 10px;text-align:center;display:grid;gap:14px;justify-items:center}
.nwcal-error .nwcal-alt{border:0;margin:0!important;padding:0!important}
.nwcal-done{text-align:center;padding:30px 10px}
.nwcal-check{width:60px;height:60px;border-radius:50%;background:var(--nwc-primary);color:#fff;font-size:30px;line-height:60px;margin:0 auto 14px}
.nwcal-when-big{font-size:18px;font-weight:700;color:var(--nwc-accent-text);margin:6px 0 10px!important}
@media (max-width:760px){
.nwcal{padding:20px 16px;border-radius:12px}
.nwcal-grid{grid-template-columns:1fr;gap:20px}
.nwcal-row{grid-template-columns:1fr}
.nwcal-slots{max-height:none;grid-template-columns:repeat(2,1fr)}
.nwcal-btn{width:100%;text-align:center}
}
