.ys-booking-archive{color:var(--hangout-ink,#162332);min-width:0}
.ys-booking-archive h1{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;line-height:1.2;margin:8px 0}
.ys-booking-archive p{margin:0;color:#5c6b7c;line-height:1.5}
.ys-booking-archive-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.ys-booking-archive-back{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;color:var(--hangout-primary,#174a7e);font-weight:700;padding:8px 0;cursor:pointer}
.ys-booking-archive-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr));gap:12px;margin:24px 0 16px}
.ys-booking-archive-filters label{display:grid;gap:6px;min-width:0;font-size:12px;font-weight:700;color:#5c6b7c}
.ys-booking-archive-filters input,.ys-booking-archive-filters select{height:44px;width:100%;min-width:0;box-sizing:border-box;border:1px solid #dce4ed;border-radius:12px;background:white;padding:0 12px;font:inherit;font-size:14px;color:#162332}
.ys-booking-archive-table{overflow:auto;border:1px solid #dce4ed;border-radius:18px;background:white}
.ys-booking-archive table{border-collapse:collapse;width:100%;min-width:820px;text-align:left;font-size:14px}
.ys-booking-archive th{font-size:12px;color:#5c6b7c;font-weight:700;background:#f8fafc}
.ys-booking-archive th,.ys-booking-archive td{padding:16px;border-bottom:1px solid #e7edf3;vertical-align:top}
.ys-booking-archive tr:last-child td{border-bottom:0}
.ys-booking-archive td small{display:block;margin-top:5px;color:#5c6b7c;font-size:12px;line-height:1.4}
.ys-booking-archive-open{padding:7px 0;border:0;background:transparent;color:var(--hangout-primary,#174a7e);font-weight:800;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:4px}
.ys-booking-archive-open:focus-visible,.ys-booking-archive-back:focus-visible{outline:3px solid var(--hangout-primary,#174a7e);outline-offset:4px;border-radius:4px}
.ys-booking-archive-empty{padding:40px 20px;text-align:center;background:white;border:1px solid #dce4ed;border-radius:18px}
.ys-booking-archive-empty h2{font-size:18px;font-weight:800;margin:0 0 8px}
.ys-booking-archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ys-booking-archive-card{background:white;border:1px solid #dce4ed;border-radius:18px;padding:22px;min-width:0}
.ys-booking-archive-card h2{font-size:17px;font-weight:800;margin:0 0 18px;line-height:1.4}
.ys-booking-archive-card dl{margin:0;display:grid;gap:13px}
.ys-booking-archive-field{display:grid;grid-template-columns:minmax(100px,.85fr) minmax(0,1.3fr);gap:16px}
.ys-booking-archive-field dt{color:#5c6b7c;font-size:13px}
.ys-booking-archive-field dd{margin:0;color:#162332;font-size:14px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}
.ys-booking-archive-wide{grid-column:1/-1}
.ys-booking-archive-timeline{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.ys-booking-archive-timeline li{border-left:2px solid #dce4ed;padding-left:16px;line-height:1.5}
.ys-booking-archive-timeline time{display:block;font-size:12px;color:#5c6b7c;margin-bottom:4px}
.ys-booking-archive-timeline strong{font-size:14px}
.ys-booking-archive-timeline p{font-size:13px;margin-top:4px;overflow-wrap:anywhere}
.ys-booking-archive-service{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #edf1f5;font-size:14px}
.ys-booking-archive-service:last-child{border-bottom:0}
.ys-booking-archive-status{border-radius:30px;background:#eaf5ef;color:#246045;padding:7px 12px;font-size:12px;font-weight:800;white-space:nowrap}
.ys-booking-archive-notice{padding:14px 16px;border:1px solid #edd2a2;border-radius:12px;background:#fff9ee;margin-bottom:18px;font-size:14px;color:#6f4a1b}
.ys-booking-archive-notice button{margin-left:12px;text-decoration:underline;border:0;background:transparent;font-weight:700;cursor:pointer}
@media(max-width:1100px){.ys-booking-archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ys-booking-archive-grid{grid-template-columns:1fr}.ys-booking-archive-header{flex-direction:column;gap:10px}.ys-booking-archive-card{padding:18px}.ys-booking-archive-field{grid-template-columns:1fr;gap:3px}.ys-booking-archive-filters{grid-template-columns:1fr 1fr}.ys-booking-archive-filters label:first-child{grid-column:1/-1}}
