.ddb-wrap{
    max-width:980px;
    margin:30px auto;
    font-family:Arial,sans-serif;
    color:#1d2a33;
}
.ddb-wrap *{box-sizing:border-box}
.ddb-header{
    margin-bottom:20px;
}
.ddb-kicker{
    display:inline-block;
    background:#e8f4f8;
    color:#17688d;
    border-radius:30px;
    padding:7px 12px;
    font-weight:700;
    font-size:13px;
}
.ddb-header h3{
    margin:12px 0 5px;
    font-size:34px;
    color:#123b5d;
}
.ddb-doctor,.ddb-address{margin:4px 0;color:#64727c}
.ddb-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}
.ddb-panel{
    background:#fff;
    border:1px solid #e4eaee;
    border-radius:16px;
    padding:24px;
    box-shadow:0 10px 30px rgba(25,50,70,.06);
}
.ddb-panel label{
    display:block;
    font-weight:700;
    margin:0 0 8px;
    color:#123b5d;
}
.ddb-panel input,
.ddb-panel select,
.ddb-panel textarea{
    width:100%;
    border:1px solid #ccd7dd;
    border-radius:9px;
    padding:12px 13px;
    font-size:15px;
    margin-bottom:16px;
    background:#fff;
}
.ddb-slots{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    min-height:50px;
}
.ddb-slot{
    border:1px solid #c6d3db;
    background:#fff;
    border-radius:8px;
    padding:10px 14px;
    cursor:pointer;
    font-weight:700;
}
.ddb-slot:hover,.ddb-slot.active{
    background:#123b5d;
    border-color:#123b5d;
    color:#fff;
}
.ddb-submit{
    width:100%;
    border:0;
    border-radius:9px;
    background:#123b5d;
    color:#fff;
    padding:14px 18px;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
}
.ddb-submit:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.ddb-message{
    margin-top:15px;
    line-height:1.5;
}
.ddb-message.success{
    background:#eaf8ef;
    border:1px solid #b8e3c7;
    padding:12px;
    border-radius:8px;
}
.ddb-message.error,.ddb-error{
    color:#a52323;
}
.ddb-wa-link{
    display:inline-block;
    margin-top:10px;
    background:#25D366;
    color:#fff !important;
    padding:10px 14px;
    border-radius:8px;
    text-decoration:none;
    font-weight:700;
}
.ddb-hint,.ddb-muted{
    color:#76858f;
    font-size:13px;
}
.ddb-hint{margin-top:-8px;margin-bottom:20px}
.ddb-policy{
    margin:12px 0 0;
    font-size:12px;
    color:#7a878f;
}
@media(max-width:760px){
    .ddb-grid{grid-template-columns:1fr}
    .ddb-header h3{font-size:28px}
    .ddb-panel{padding:18px}
}
.ddb-compact{margin:0;max-width:none}
.ddb-compact-picker{background:transparent}
.ddb-compact-picker>label{display:block;font-weight:700;color:#123b5d;margin-bottom:10px}
.ddb-compact-picker input[type=date]{width:100%;padding:12px 14px;border:1px solid #ccd7dd;border-radius:10px;margin-bottom:16px;background:#fff}
.ddb-compact .ddb-slots{min-height:70px}
.ddb-modal{display:none;position:fixed;z-index:999999;inset:0}
.ddb-modal.open{display:block}
.ddb-modal-backdrop{position:absolute;inset:0;background:rgba(12,28,40,.58)}
.ddb-modal-card{position:relative;width:min(520px,calc(100% - 28px));max-height:90vh;overflow:auto;margin:5vh auto;background:#fff;border-radius:18px;padding:28px;box-shadow:0 25px 80px rgba(0,0,0,.25)}
.ddb-modal-card h3{color:#123b5d;font-size:28px;margin:12px 0 5px}
.ddb-modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:32px;cursor:pointer;color:#50616c}
.ddb-selected{background:#f1f7fa;border-radius:9px;padding:10px 12px;font-weight:700;color:#123b5d}
body.ddb-modal-open{overflow:hidden}
