.bk-page{background:var(--cream);max-width:1080px;min-height:100dvh;margin:0 auto;padding:24px 24px 80px}.bk-head{justify-content:space-between;align-items:center;padding:8px 0 28px;display:flex}.bk-back{color:var(--navy);align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.bk-back img{object-fit:cover;border-radius:50%}.bk-account{color:var(--navy);border:1.5px solid var(--line);border-radius:10px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:border-color .2s}.bk-account:hover{border-color:var(--navy)}.bk-hero{margin-bottom:28px}.bk-hero h1{color:var(--navy);letter-spacing:-.02em;font-size:clamp(32px,5vw,46px);font-weight:800;line-height:1.02}.bk-hero h1 .it{color:var(--navy);font-family:Bricolage Grotesque,system-ui,sans-serif;font-style:normal}.bk-hero p{color:var(--muted);margin-top:8px;font-size:15px}.bk-grid{grid-template-columns:1fr 340px;align-items:start;gap:28px;display:grid}.bk-main{border:1px solid var(--line);background:#fff;border-radius:18px;padding:26px}.bk-field{border:none;margin:0 0 26px;padding:0}.bk-field:last-child{margin-bottom:0}.bk-field legend{color:var(--navy);letter-spacing:.02em;text-transform:uppercase;margin-bottom:12px;padding:0;font-size:13px;font-weight:700}.bk-sports{grid-template-columns:1fr 1fr;gap:12px;display:grid}.bk-sport{border:1.5px solid var(--line);background:var(--cream);cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 16px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.bk-sport.is-active{border-color:var(--navy);background:#fff}.bk-sport-name{color:var(--navy);font-size:16px;font-weight:700}.bk-sport-std{color:var(--muted);font-size:12px}.bk-dates,.bk-durations{flex-wrap:wrap;gap:10px;display:flex}.bk-slots{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;display:grid}.bk-date,.bk-duration,.bk-slot{border:1.5px solid var(--line);background:var(--cream);color:var(--ink);cursor:pointer;text-align:center;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.bk-date.is-active,.bk-duration.is-active,.bk-slot.is-active{border-color:var(--navy);background:var(--navy);color:#fff}.bk-slot:disabled{opacity:.4;cursor:not-allowed;background:0 0;text-decoration:line-through}.bk-date:hover:not(.is-active),.bk-duration:hover:not(.is-active),.bk-slot:hover:not(:disabled):not(.is-active){border-color:var(--navy)}.bk-hint{color:var(--muted);margin-top:10px;font-size:12.5px}.bk-summary{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#fff;border-radius:18px;padding:24px;position:sticky;top:24px}.bk-summary h3{color:var(--navy);margin-bottom:16px;font-size:17px;font-weight:800}.bk-sum-rows{flex-direction:column;gap:12px;display:flex}.bk-sum-rows>div{justify-content:space-between;align-items:baseline;display:flex}.bk-sum-rows dt{color:var(--muted);font-size:13.5px}.bk-sum-rows dd{color:var(--ink);text-align:right;font-size:14px;font-weight:600}.bk-total{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin:18px 0;padding-top:16px;display:flex}.bk-total span{color:var(--navy);font-weight:600}.bk-total strong{color:var(--navy);font-size:24px;font-weight:800}.bk-cta{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:14px;font-family:inherit;font-size:15px;font-weight:700;transition:background .2s}.bk-cta:hover:not(:disabled){background:var(--navy-deep)}.bk-cta:disabled{opacity:.45;cursor:not-allowed}.bk-error{color:#b3261e;background:#fdecec;border:1px solid #f6caca;border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:13px}.bk-fine{color:var(--muted);text-align:center;margin-top:12px;font-size:12px}@media (max-width:820px){.bk-grid{grid-template-columns:1fr}.bk-summary{position:static}}.bk-banner{border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:22px;padding:14px 16px;font-size:13.5px;line-height:1.55;display:flex}.bk-banner .bk-banner-ic{border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:grid}.bk-banner strong{margin-bottom:2px;font-size:14px;display:block}.bk-banner.warn{color:#7a4b06;background:#fdf3e3;border:1px solid #f2ddb8}.bk-banner.warn .bk-banner-ic{color:#5c3803;background:#f2c977}.bk-banner.bad{color:#8f1d17;background:#fdecec;border:1px solid #f6caca}.bk-banner.bad .bk-banner-ic{color:#7a1610;background:#f0a9a4}
