:root{--navy:#1f3a5f;--navy-2:#52667d;--teal:#17706e;--teal-soft:#e3f1f0;--paper:#f6f8fb;--line:#d5dde7;--white:#fff;--danger:#a32d2d;--danger-soft:#fbeaea;--ok:#1d6b3a;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--navy);margin:0;font-size:16px;line-height:1.45}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.5rem}h2{font-size:1.25rem}a{color:var(--teal)}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.shell{background:var(--white);flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.shell.wide{max-width:880px}.top{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.top strong{font-size:1rem}.top small{opacity:.85}.main{flex:1;align-content:start;gap:18px;padding:20px;display:grid}.foot{color:var(--navy-2);border-top:1px solid var(--line);padding:16px 20px;font-size:.85rem}.foot a{color:var(--navy-2)}.back{color:var(--navy-2);cursor:pointer;text-align:left;background:0 0;border:0;min-height:44px;padding:8px 0}.step{color:var(--navy-2);font-size:.85rem}.lead{color:var(--navy-2);margin:4px 0 0}.opts{gap:10px;display:grid}.opt{text-align:left;background:var(--white);border:1.5px solid var(--line);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:56px;padding:14px 16px;display:flex}.opt:hover{border-color:var(--navy)}.opt[aria-pressed=true]{border-color:var(--teal);background:var(--teal-soft)}.opt b{font-weight:600;display:block}.opt span.sub{color:var(--navy-2);font-size:.9rem}.price{white-space:nowrap;font-weight:700}.days{scroll-snap-type:x proximity;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.day{border:1.5px solid var(--line);background:var(--white);cursor:pointer;text-align:center;scroll-snap-align:start;border-radius:10px;flex:none;place-content:center;width:58px;min-height:64px;display:grid}.day small{text-transform:capitalize;color:var(--navy-2);font-size:.72rem}.day b{font-size:1.1rem}.day[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.day[aria-pressed=true] small{color:#dbe5f1}.times{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.time{border:1.5px solid var(--navy);background:var(--white);cursor:pointer;border-radius:10px;min-height:46px;font-weight:600}.time:hover{background:var(--teal-soft)}.time[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:#fff}.btn{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:700;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--white);color:var(--navy);border:1.5px solid var(--navy)}.btn.danger{background:var(--white);color:var(--danger);border:1.5px solid var(--danger)}.btn.small{min-height:40px;padding:0 14px;font-size:.9rem}.sum{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin:0;padding:4px 16px}.sum div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:10px 0;display:flex}.sum div:last-child{border-bottom:0;font-weight:700}.sum dt{color:var(--navy-2)}.sum dd{text-align:right;margin:0}label{gap:6px;font-size:.95rem;font-weight:600;display:grid}input[type=text],input[type=tel],input[type=email],input[type=password],input[type=date],input[type=number]{border:1.5px solid var(--line);background:var(--white);border-radius:10px;width:100%;min-height:48px;padding:0 14px;font-weight:400}input[aria-invalid=true]{border-color:var(--danger)}.err{color:var(--danger);font-size:.88rem;font-weight:400}.alert{background:var(--danger-soft);color:var(--danger);border-radius:10px;padding:12px 14px}.note{background:var(--teal-soft);border-radius:10px;padding:12px 14px}.empty{border:1.5px dashed var(--line);color:var(--navy-2);border-radius:10px;padding:18px}.skel{background:linear-gradient(90deg,#e9eef4,#f4f7fa,#e9eef4) 0 0/200% 100%;border-radius:10px;height:56px;animation:1.4s linear infinite sh}@keyframes sh{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.badge{background:var(--teal-soft);color:var(--teal);border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700;display:inline-block}.badge.bad{background:var(--danger-soft);color:var(--danger)}.badge.mid{color:#7a5200;background:#fff3d6}.badge.fin{color:var(--navy);background:#e7ecf3}.row{border:1px solid var(--line);border-radius:12px;gap:10px;padding:14px 16px;display:grid}.row header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.acts{flex-wrap:wrap;gap:8px;display:flex}.bar{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.bar label{flex:160px}.prices{gap:8px;display:grid}.prices form{align-items:center;gap:8px;display:flex}.prices span{flex:1}.prices input{width:120px}.ok{color:var(--ok);font-weight:600}
