/* Webboll Appointment Manager - Public Styles */
.wbapm-wrap{
    font-family:var(--wbapm-font,system-ui,sans-serif);
    max-width:560px;margin:0 auto;
}
.wbapm-form-card{
    background:#fff;border:1px solid #e5e7eb;
    border-radius:var(--wbapm-radius,10px);
    padding:24px;box-shadow:0 1px 3px rgba(0,0,0,.06);
}
.wbapm-steps{display:flex;gap:8px;margin-bottom:20px}
.wbapm-step{
    flex:1;text-align:center;font-size:13px;padding:8px 4px;
    border-radius:var(--wbapm-radius,10px);background:#f3f4f6;color:#6b7280;
}
.wbapm-step.is-active{background:var(--wbapm-primary,#2563eb);color:#fff}
.wbapm-label{display:block;font-weight:600;font-size:14px;margin:14px 0 6px}
.wbapm-input{
    width:100%;padding:10px 12px;border:1px solid #d1d5db;
    border-radius:var(--wbapm-radius,10px);font-size:15px;box-sizing:border-box;
}
.wbapm-input:focus{outline:2px solid var(--wbapm-primary,#2563eb);border-color:transparent}
.wbapm-btn{
    background:var(--wbapm-primary,#2563eb);color:#fff;border:none;
    padding:12px 20px;border-radius:var(--wbapm-radius,10px);
    font-size:15px;font-weight:600;cursor:pointer;margin-top:16px;width:100%;
}
.wbapm-btn:disabled{opacity:.5;cursor:not-allowed}
.wbapm-btn.wbapm-ghost{background:#f3f4f6;color:#374151}
.wbapm-row{display:flex;gap:10px}
.wbapm-row .wbapm-btn{flex:1}
.wbapm-muted{color:#9ca3af;font-size:14px}
.wbapm-slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.wbapm-slot{
    padding:8px 14px;border:1px solid #d1d5db;border-radius:var(--wbapm-radius,10px);
    cursor:pointer;font-size:14px;background:#fff;
}
.wbapm-slot.is-selected{background:var(--wbapm-accent,#16a34a);color:#fff;border-color:transparent}
.wbapm-result{margin-top:16px;padding:14px;border-radius:var(--wbapm-radius,10px);font-size:15px}
.wbapm-result.ok{background:#ecfdf5;color:#065f46}
.wbapm-result.err{background:#fef2f2;color:#991b1b}
.wbapm-toast{
    position:fixed;bottom:24px;left:50%;transform:translateX(-50%);
    background:#111827;color:#fff;padding:12px 20px;border-radius:8px;z-index:9999;font-size:14px;
}

/* -------- Sıra Ekranı -------- */
.wbapm-screen{
    font-family:var(--wbapm-font,system-ui,sans-serif);
    background:#0f172a;color:#fff;min-height:80vh;
    padding:40px;text-align:center;border-radius:16px;
}
.wbapm-screen-title{font-size:32px;margin:0 0 4px}
.wbapm-screen-msg{color:#94a3b8;font-size:18px;margin:0 0 30px}
.wbapm-screen-current{
    background:rgba(255,255,255,.05);border-radius:20px;
    padding:40px 20px;margin-bottom:40px;
}
.wbapm-current-label{letter-spacing:4px;color:#94a3b8;font-size:18px}
.wbapm-current-name{
    font-size:clamp(48px,9vw,110px);font-weight:800;line-height:1.1;
    color:var(--wbapm-accent,#16a34a);margin:14px 0;
}
.wbapm-current-number{font-size:28px;color:#cbd5e1}
.wbapm-current-name.blink{animation:wbapm-blink 1s steps(2,start) infinite}
@keyframes wbapm-blink{50%{opacity:.25;transform:scale(1.04)}}
.wbapm-screen-waiting h3{font-size:22px;color:#e2e8f0;margin-bottom:16px}
.wbapm-waiting-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;max-width:520px;margin-inline:auto}
.wbapm-waiting-list li{
    display:flex;justify-content:space-between;
    background:rgba(255,255,255,.06);padding:14px 22px;border-radius:12px;font-size:22px;
}
.wbapm-waiting-list li .num{color:var(--wbapm-primary,#60a5fa);font-weight:700}
.wbapm-waiting-list li.wbapm-missed{opacity:.4;filter:grayscale(.6)}
.wbapm-waiting-list li.wbapm-missed .num::after{content:" • kaçırdı";font-size:.7em;opacity:.8}

@media(max-width:600px){
    .wbapm-form-card{padding:16px}
    .wbapm-screen{padding:20px}
}
