.pk-booking-steps { display:flex; flex-wrap:wrap; gap:8px 20px; padding:16px; margin:0 0 24px; border:1px solid #e1e5e2; border-radius:12px; background:#fff; color:#33483d; list-style:none; font:13px/1.8 system-ui,sans-serif; }
.pk-booking-details { display:grid; grid-template-columns:140px minmax(0,1fr); gap:12px; font:14px/1.8 system-ui,sans-serif; color:#302c28; }
.pk-booking-details dt { font-weight:600; }
.pk-booking-details dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
.pk-booking-dashboard-card { padding:20px; margin:0 0 16px; border:1px solid #dce5df; border-radius:12px; background:#fff; color:#302c28; font-family:system-ui,sans-serif; text-align:left; }
.pk-booking-dashboard-card h2 { margin:12px 0; color:#302c28; font-size:18px; line-height:1.6; overflow-wrap:anywhere; }
.pk-booking-dashboard-card p { margin:8px 0; color:#514b43; font-size:14px; line-height:1.8; }
.pk-booking-tag { display:inline-block; color:#286252; background:#eef5f0; padding:4px 8px; border-radius:6px; font-size:12px; line-height:1.7; }
.pk-booking-action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; margin-top:8px; border:1px solid #bdcfc3; border-radius:8px; background:#f0f6f2; color:#286252; font:600 14px/1.6 system-ui,sans-serif; text-decoration:none; }
.pk-calendar-activity { display:block; min-width:0; margin:3px 0; padding:4px; border-radius:4px; background:#eaf1ff; color:#244c77; font:11px/1.8 system-ui,sans-serif; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-decoration:none; }
.pk-calendar-activity--application,.pk-calendar-activity--pending { background:#fff3dc; color:#795619; }
.pk-calendar-activity--confirmed { background:#e9f4ed; color:#286252; }
.pk-calendar-activity--completed { background:#eef0f2; color:#515961; }
.pk-calendar-activity--cancelled { background:#fceeee; color:#8a3f3f; text-decoration:line-through; }
.pk-calendar-state { display:block; font-size:9px; font-weight:700; }
.pk-calendar-title { display:block; overflow:hidden; text-overflow:ellipsis; }
.my-calendar .pk-calendar-activity--listing,.my-calendar .pk-calendar-activity--confirmed { padding:4px 1px; }
.calendar-table .pk-calendar-activity--listing,.calendar-table .pk-calendar-activity--confirmed { height:15px; box-sizing:border-box; margin:2px 1px; padding:0 2px; line-height:15px; }
.calendar-table .pk-calendar-activity--listing .pk-calendar-state,.calendar-table .pk-calendar-activity--confirmed .pk-calendar-state { font-size:10px; line-height:15px; }
.pk-calendar-actions { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px; margin:10px 0; padding:0; height:auto; max-width:none; background:transparent; font-size:13px; }
.pk-calendar-actions a { margin:0; width:auto; height:auto; line-height:1.6; text-transform:none; }
.pk-booking-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 12px; border:1px solid #bdcfc3; border-radius:8px; color:#286252; background:#f0f6f2; font:600 13px/1.6 system-ui,sans-serif; text-decoration:none; }
.pk-calendar-note { padding:8px 12px; color:#514b43; font:12px/1.8 system-ui,sans-serif; text-align:left; }
.date-cell { overflow-wrap:anywhere; min-width:0; }
.calendar-table { table-layout:fixed; width:100%; }
.tabs a.tab { color:inherit; text-decoration:none; }
.tabs a.tab:focus-visible { outline:2px solid #286252; outline-offset:-2px; }
.pk-recruitment-page .pk-guide-action { scroll-margin-block:80px; }
.pk-booking-action:focus-visible,.pk-calendar-activity:focus-visible { outline:2px solid #286252; outline-offset:2px; }
@media(max-width:600px) { .pk-booking-details { grid-template-columns:1fr; gap:4px; } .pk-booking-details dd { margin-bottom:12px; } .pk-booking-dashboard-card { padding:16px; } .pk-calendar-actions a { flex:1; } .my-calendar .date-cell { padding:2px !important; } .my-calendar .pk-calendar-activity--listing .pk-calendar-title,.my-calendar .pk-calendar-activity--confirmed .pk-calendar-title { font-size:clamp(8px,2.3vw,11px); } }
