.mangukas-booking-form{background:#fff;padding:34px;border-radius:24px;box-shadow:0 12px 32px rgba(0,0,0,.10);max-width:940px;margin:30px auto}.booking-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.booking-grid label{font-weight:800}.booking-grid input,.booking-grid select,.booking-grid textarea{width:100%;padding:13px;border:1px solid #d7e3ea;border-radius:14px;margin-top:7px;font-size:16px}.booking-grid .full{grid-column:1/-1}.booking-consent-card{padding:18px 20px;border:1px solid #dce8ef;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f2f8fc);box-shadow:0 8px 22px rgba(36,52,60,.05)}.consent{display:flex!important;flex-direction:column;align-items:stretch;gap:14px;font-weight:700!important;cursor:pointer}.consent-check{display:flex;align-items:flex-start;gap:12px;color:#24343c}.consent input{width:auto!important;flex:0 0 auto;margin-top:2px}.consent-title{display:block;font-size:18px;line-height:1.35}.consent-text{display:grid;gap:10px;padding-left:34px}.consent-intro{color:#58707d;font-size:14px;font-weight:700;line-height:1.5}.consent-links{display:grid;gap:8px}.consent-links a{display:block;padding:10px 14px;border-radius:12px;background:#fff;color:#1488bd;font-weight:800;border:1px solid #d6e8f3;transition:.2s}.consent-links a:hover{background:#f2fbff;border-color:#a8d7ee;color:#0f6f9a}.booking-submit{background:#ff7043;color:#fff;border:0;padding:16px 34px;border-radius:999px;font-size:18px;font-weight:900;cursor:pointer}.booking-success,.booking-error{margin-top:18px;padding:15px;border-radius:14px}.booking-success{background:#e8f5e9;color:#256029}.booking-error{background:#ffebee;color:#b71c1c}@media(max-width:720px){.booking-grid{grid-template-columns:1fr}}

.booking-form-hint{padding:13px 16px;border-radius:13px;background:#eef9ff;color:#45616f;font-weight:700}.booking-submit:disabled{opacity:.55;cursor:not-allowed}
.mangukas-portal{background:#fff;padding:30px;border-radius:22px;box-shadow:0 10px 30px rgba(0,0,0,.08);max-width:760px;margin:30px auto}.portal-details{display:grid;grid-template-columns:180px 1fr;gap:10px 20px}.portal-details dt{font-weight:800}.portal-details dd{margin:0}.mangukas-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:18px}.mangukas-admin-card{background:#fff;border:1px solid #dcdcde;border-radius:12px;padding:20px}.mangukas-admin-card strong{font-size:30px;display:block}@media(max-width:800px){.portal-details{grid-template-columns:1fr}.mangukas-admin-grid{grid-template-columns:1fr 1fr}}

.booking-slot-section{padding:18px;border:1px solid #d7e3ea;border-radius:16px;background:#f8fcff}
.booking-slot-help{margin:6px 0 14px;color:#58707d;font-weight:600}
.booking-slots{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px}
.booking-slot{appearance:none;border:2px solid #cfe3ee;background:#fff;border-radius:16px;padding:14px 10px;cursor:pointer;text-align:center;transition:.2s;font:inherit}
.booking-slot:hover{transform:translateY(-2px);border-color:#4fc3f7;box-shadow:0 8px 20px rgba(79,195,247,.18)}
.booking-slot.is-selected{border-color:#ff7043;background:#fff3ee;box-shadow:0 0 0 3px rgba(255,112,67,.14)}
.booking-slot-time{display:block;font-size:17px;font-weight:900;color:#263238}
.booking-slot-price{display:block;margin-top:4px;font-size:14px;font-weight:800;color:#607d8b}
.booking-slot-empty,.booking-slot-loading{margin:0;padding:12px;color:#607d8b;font-weight:700}
@media(max-width:760px){.booking-slots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:420px){.booking-slots{grid-template-columns:1fr}}
.booking-field-note{display:block;margin-top:8px;color:#58707d;font-size:14px;font-weight:600;line-height:1.5}
.booking-slot-duration{display:block;margin-top:3px;font-size:13px;font-weight:700;color:#78909c}
.booking-terms-box{padding:16px 18px;border:1px solid #ffd7c9;border-radius:14px;background:#fff7f2;color:#5d453d;line-height:1.55}.booking-terms-box strong{color:#d9562e}.booking-price-period{font-size:12px;color:#78909c;font-weight:700}

@media(max-width:720px){.booking-consent-card{padding:16px}.consent-text{padding-left:0}.consent-title{font-size:17px}.booking-submit{width:100%}}

/* v3.8.3: lingid väljaspool märkeruudu label'it, et need mobiilis avaneksid */
.booking-consent-card .consent{cursor:default}
.booking-consent-card .consent-check{cursor:pointer;align-items:center}
.booking-consent-card .consent-check input[type="checkbox"]{width:22px!important;height:22px!important;min-width:22px;flex:0 0 22px;padding:0;margin:0;accent-color:#1488bd}
.booking-consent-card .consent-intro{margin:0}
.booking-consent-card .consent-links a{display:block;min-width:0;overflow-wrap:anywhere;cursor:pointer}
.booking-consent-card .consent-links a:focus-visible{outline:3px solid #1488bd;outline-offset:2px}
