*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Inter,sans-serif;font-size:17px;line-height:1.5;color:#1f2430;background:#f5f5f7}
.wrap{max-width:760px;margin:0 auto;padding:24px 16px 120px}
.head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.eyebrow{margin:0;color:#6b5a3d;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:600}
h1{font-size:1.7rem;line-height:1.2;margin:.2em 0 .4em}
h2{font-size:1.2rem;margin:0 0 14px}
.intro,.help{color:#4a4f5c}
.lang{font-size:.9rem;text-decoration:none;color:#2b3a55;border:1px solid #c9ced8;border-radius:999px;padding:6px 12px;white-space:nowrap}
.card{background:#fff;border-radius:16px;padding:20px;margin:16px 0;border:1px solid #e3e5ea}
.f{display:block;margin:0 0 16px;border:0;padding:0}
.f>span,.f legend{display:block;font-weight:600;margin-bottom:4px}
.f small{display:block;color:#5d6270;margin-bottom:6px;font-size:.88rem}
input[type=text],input[type=tel],input[type=url],input[type=number],textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid #c9ced8;border-radius:10px;background:#fff}
input:focus,textarea:focus{outline:3px solid #b9c4da;border-color:#2b3a55}
textarea{resize:vertical}
.opts{display:flex;flex-wrap:wrap;gap:8px 18px}
.opts label{display:flex;align-items:center;gap:6px;font-weight:400}
.consent{display:flex;gap:10px;align-items:flex-start}
.consent input{margin-top:5px;width:18px;height:18px;flex:none}
.consent span{font-weight:400}
.slots{display:grid;gap:12px}
.slot{display:flex;gap:12px;align-items:center;border:1px dashed #c9ced8;border-radius:12px;padding:10px}
.slot.done{border-style:solid;border-color:#7da37a;background:#f4faf3}
.slot.bad{border-color:#c0504d;background:#fdf3f2}
.thumb{width:72px;height:72px;border-radius:10px;background:#eef0f4;overflow:hidden;flex:none}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.slot-body{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:0}
.status{font-size:.88rem;color:#4a4f5c}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;background:#2b3a55;color:#fff;font:inherit;font-weight:600;border:0;cursor:pointer}
.btn:disabled{opacity:.6}
.btn-sm{min-height:36px;padding:0 14px;font-size:.9rem}
.savebar{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.97);border-top:1px solid #e3e5ea;padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}
#msg{font-size:.92rem;color:#3d4250;max-width:420px}
@media (min-width:640px){.slots{grid-template-columns:1fr 1fr}}
