.tiiha-public-calendar-wrap{font-family:inherit;max-width:1480px;margin:0 auto;color:#20286f}
.tiiha-public-calendar-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:0 0 18px}
.tiiha-public-calendar-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;color:#1a86c7;margin-bottom:6px}
.tiiha-public-calendar-head h2{margin:0;font-size:34px;line-height:1.1;color:#20286f}
.tiiha-public-calendar-head p{margin:7px 0 0;color:#646970;font-size:13px}
.tiiha-public-calendar-nav{display:flex;gap:8px;flex-wrap:wrap}
.tiiha-public-calendar-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid #2d388f;border-radius:7px;text-decoration:none!important;background:#fff;color:#2d388f!important;font-weight:700;font-size:13px;box-sizing:border-box}
.tiiha-public-calendar-nav a.primary{background:#2d388f;color:#fff!important}
.tiiha-calendar-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 20px}
.tiiha-calendar-week-day{display:block;padding:11px 12px;border:1px solid #d8e1eb;border-radius:9px;background:#fff;text-decoration:none!important;color:#20286f!important;box-shadow:0 1px 3px rgba(32,40,111,.04)}
.tiiha-calendar-week-day strong{display:block;font-size:13px;text-transform:uppercase}.tiiha-calendar-week-day span{display:block;font-size:11px;color:#646970;margin-top:2px}.tiiha-calendar-week-day em{display:block;font-style:normal;font-size:10px;color:#8a8f98;margin-top:7px}.tiiha-calendar-week-day.is-active{border-color:#2d388f;background:#eef4ff;box-shadow:inset 0 0 0 1px #2d388f}.tiiha-calendar-week-day.is-active em{color:#1a86c7;font-weight:700}
.tiiha-spatial-day-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:0 0 12px}.tiiha-spatial-day-head h3{margin:0;font-size:24px;color:#20286f}.tiiha-calendar-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#59616a}.tiiha-calendar-legend span{display:inline-flex;align-items:center;gap:5px}.tiiha-calendar-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#d9e1ea}.tiiha-calendar-legend i.is-open{background:#2d388f}.tiiha-calendar-legend i.is-booked{background:#1a86c7}.tiiha-calendar-legend i.is-public{background:#1596ad}.tiiha-calendar-legend i.is-maintenance{background:#e0a100}
.tiiha-spatial-timeline{display:flex;flex-direction:column;gap:10px}.tiiha-spatial-block{display:grid;grid-template-columns:110px minmax(0,1fr);border:1px solid #dce3ec;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 2px 6px rgba(32,40,111,.04)}.tiiha-spatial-time{padding:17px 12px;background:#f5f8fc;border-right:1px solid #e1e7ee;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.tiiha-spatial-time strong{font-size:16px;line-height:1.1}.tiiha-spatial-time span{font-size:10px;text-transform:uppercase;color:#8a8f98}.tiiha-spatial-main{min-width:0}.tiiha-spatial-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-bottom:1px solid #e8edf2}.tiiha-spatial-block-head strong{display:block;font-size:14px}.tiiha-spatial-block-head span{display:block;margin-top:3px;font-size:11px;color:#6a7178}.tiiha-status-pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#edf5ff;color:#245b80;font-size:9px;letter-spacing:.05em;white-space:nowrap}.tiiha-status-pill.maintenance{background:#fff4d8;color:#9b6c00}
.tiiha-space-map{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;padding:10px}.tiiha-space-cell{grid-column:span 3;min-width:0;border:1px solid #d9e5ef;border-radius:8px;padding:10px;background:#f7fbff}.tiiha-space-map.mode-full_rink .tiiha-space-cell{grid-column:span 12}.tiiha-space-map.mode-half_rink .tiiha-space-cell{grid-column:span 6}.tiiha-space-map.mode-lane_public_lane .tiiha-space-cell{grid-column:span 4}.tiiha-space-map.mode-lane-5-public-5 .tiiha-space-cell,.tiiha-space-map.mode-lane_5_public_5 .tiiha-space-cell{grid-column:span 1}.tiiha-space-map.mode-half_train_2 .tiiha-space-cell{grid-column:span 6}.tiiha-space-map.mode-half_public_fig_train .tiiha-space-cell,.tiiha-space-map.mode-half_public_fig .tiiha-space-cell{grid-column:span 6}.tiiha-space-map.mode-half_public_fig_5 .tiiha-space-cell,.tiiha-space-map.mode-half_figure_5 .tiiha-space-cell,.tiiha-space-map.mode-half_train_10 .tiiha-space-cell{grid-column:span 2}.tiiha-space-map.mode-half_public_fig_5 .tiiha-space-cell:first-child,.tiiha-space-map.mode-half_figure_5 .tiiha-space-cell:first-child,.tiiha-space-map.mode-half_train_10 .tiiha-space-cell:first-child{grid-column:span 6}.tiiha-space-map.mode-single_lane_public_fig .tiiha-space-cell:first-child{grid-column:span 3}.tiiha-space-map.mode-single_lane_public_fig .tiiha-space-cell:nth-child(2){grid-column:span 9}.tiiha-space-cell.is-open{border-left:4px solid #2d388f}.tiiha-space-cell.is-booked{border-left:4px solid #1a86c7;background:#f2faff}.tiiha-space-cell.is-public{border:1px solid #b8dfe8;border-left:4px solid #1596ad;background:#eaf8fb;box-shadow:inset 0 0 0 1px rgba(21,150,173,.08)}.tiiha-space-cell-title{font-weight:800;font-size:12px;line-height:1.25;overflow-wrap:anywhere}.tiiha-space-cell-code{margin-top:2px;font-size:9px;color:#7a838c;letter-spacing:.05em}.tiiha-space-cell-state{margin-top:8px;font-size:9px;font-weight:800;color:#496274}.tiiha-space-cell.is-public .tiiha-space-cell-state{color:#16758a}.tiiha-space-booking{margin-top:8px;padding-top:7px;border-top:1px solid #dbe7f0}.tiiha-space-booking strong{display:block;font-size:11px;line-height:1.3;overflow-wrap:anywhere;color:#1a86c7}.tiiha-space-booking span{display:block;margin-top:3px;font-size:10px;line-height:1.25;color:#59616a}
.tiiha-maintenance-band{margin:10px;padding:14px 15px;border-left:4px solid #e0a100;border-radius:7px;background:#fff8e8}.tiiha-maintenance-band strong{display:block;font-size:13px;color:#8b6500}.tiiha-maintenance-band span{display:block;margin-top:3px;font-size:11px;color:#70634a}.tiiha-calendar-empty-day{padding:40px 20px;text-align:center;border:1px dashed #cbd7e4;border-radius:10px;background:#fff}.tiiha-calendar-empty-day strong{display:block;font-size:15px}.tiiha-calendar-empty-day span{display:block;margin-top:5px;font-size:12px;color:#7a828b}.tiiha-public-calendar-note{margin-top:14px;padding:13px 15px;border-left:4px solid #1a86c7;background:#eef8ff;color:#40506a;font-size:12px;line-height:1.5;border-radius:2px}.tiiha-public-calendar-note strong{color:#20286f}
@media(max-width:1000px){.tiiha-calendar-week-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.tiiha-space-map.mode-lane-5-public-5 .tiiha-space-cell,.tiiha-space-map.mode-lane_5_public_5 .tiiha-space-cell{grid-column:span 2}}
@media(max-width:700px){.tiiha-public-calendar-head h2{font-size:28px}.tiiha-calendar-week-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tiiha-spatial-block{grid-template-columns:1fr}.tiiha-spatial-time{border-right:0;border-bottom:1px solid #e1e7ee;flex-direction:row;gap:6px;padding:9px}.tiiha-space-map{grid-template-columns:repeat(2,minmax(0,1fr))}.tiiha-space-map .tiiha-space-cell,.tiiha-space-map.mode-full_rink .tiiha-space-cell,.tiiha-space-map.mode-half_rink .tiiha-space-cell,.tiiha-space-map.mode-lane_public_lane .tiiha-space-cell,.tiiha-space-map.mode-lane-5-public-5 .tiiha-space-cell,.tiiha-space-map.mode-lane_5_public_5 .tiiha-space-cell,.tiiha-space-map.mode-half_train_2 .tiiha-space-cell,.tiiha-space-map.mode-half_public_fig_train .tiiha-space-cell,.tiiha-space-map.mode-half_public_fig .tiiha-space-cell,.tiiha-space-map.mode-half_public_fig_5 .tiiha-space-cell,.tiiha-space-map.mode-half_figure_5 .tiiha-space-cell,.tiiha-space-map.mode-half_train_10 .tiiha-space-cell,.tiiha-space-map.mode-single_lane_public_fig .tiiha-space-cell{grid-column:span 1}.tiiha-space-map.mode-full_rink .tiiha-space-cell{grid-column:span 2}.tiiha-spatial-block-head{align-items:flex-start;flex-direction:column}.tiiha-calendar-legend{font-size:10px}}

/* TIIHA 0.14.2 — Thai weekday color coding: label sits inside the color band */
.tiiha-calendar-week-day{position:relative;overflow:hidden;padding:0 12px 11px;border-top:1px solid #d8e1eb}
.tiiha-calendar-day-color{display:flex!important;align-items:center;justify-content:center;height:38px;margin:0 -12px 9px;background:var(--tiiha-day-color,#2d388f);color:var(--tiiha-day-text,#fff)!important}
.tiiha-calendar-week-day .tiiha-calendar-day-color strong{display:block;margin:0;color:var(--tiiha-day-text,#fff);font-size:13px;line-height:1;text-transform:uppercase;letter-spacing:.03em}
.tiiha-calendar-week-day .tiiha-calendar-day-date{display:block;font-size:11px;color:#646970;margin-top:0}
.tiiha-calendar-week-day em{display:block;font-style:normal;font-size:10px;color:#8a8f98;margin-top:7px}
.tiiha-calendar-week-day.day-sunday{--tiiha-day-color:#ed1c24;--tiiha-day-text:#fff}
.tiiha-calendar-week-day.day-monday{--tiiha-day-color:#f5d900;--tiiha-day-text:#20286f}
.tiiha-calendar-week-day.day-tuesday{--tiiha-day-color:#ef9bc1;--tiiha-day-text:#20286f}
.tiiha-calendar-week-day.day-wednesday{--tiiha-day-color:#20a64a;--tiiha-day-text:#fff}
.tiiha-calendar-week-day.day-thursday{--tiiha-day-color:#ff7a00;--tiiha-day-text:#fff}
.tiiha-calendar-week-day.day-friday{--tiiha-day-color:#1599df;--tiiha-day-text:#fff}
.tiiha-calendar-week-day.day-saturday{--tiiha-day-color:#a447a8;--tiiha-day-text:#fff}
.tiiha-calendar-week-day.is-active{border-color:var(--tiiha-day-color,#2d388f);box-shadow:inset 0 0 0 1px var(--tiiha-day-color,#2d388f),0 1px 3px rgba(32,40,111,.06)}
.tiiha-calendar-week-day.is-active em{color:var(--tiiha-day-color,#1a86c7)}


/* TIIHA 0.14.3 — Month / Year overview */
.tiiha-public-calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.tiiha-calendar-view-switch-head{margin:0}.tiiha-calendar-view-switch-head a{padding:8px 12px}
.tiiha-calendar-view-switch{display:flex;gap:6px;margin:0 0 18px;padding:4px;background:#f1f5fa;border:1px solid #d8e1eb;border-radius:9px;width:max-content}
.tiiha-calendar-view-switch a{display:inline-flex;align-items:center;justify-content:center;padding:8px 15px;border-radius:6px;text-decoration:none!important;color:#20286f!important;font-size:12px;font-weight:800}
.tiiha-calendar-view-switch a.is-active{background:#2d388f;color:#fff!important;box-shadow:0 1px 3px rgba(32,40,111,.15)}
.tiiha-month-title-block{margin:2px 0 22px;padding:0 0 14px;border-bottom:1px solid #d8e1eb}.tiiha-month-title-block h1{margin:0;color:#20286f;font-size:56px;line-height:.98;font-weight:900;letter-spacing:-.035em}.tiiha-month-title-block p{margin:10px 0 0;color:#59616a;font-size:15px;font-weight:600;letter-spacing:.01em}
.tiiha-month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:7px}
.tiiha-month-weekdays div{padding:9px 10px;text-align:center;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#59616a}
.tiiha-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.tiiha-month-cell{display:block;min-height:145px;padding:10px;border:1px solid #d8e1eb;border-radius:9px;background:#fff;text-decoration:none!important;color:#20286f!important;box-sizing:border-box;overflow:hidden}
.tiiha-month-cell:hover{border-color:#2d388f;box-shadow:0 2px 8px rgba(32,40,111,.08)}
.tiiha-month-cell.is-empty{background:#f7f9fb;border-style:dashed;min-height:145px}
.tiiha-month-cell.is-today{box-shadow:inset 0 0 0 2px #2d388f}
.tiiha-month-cell-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tiiha-month-cell-head strong{font-size:16px}.tiiha-month-cell-head span{font-size:8px;font-weight:900;color:#1a86c7;letter-spacing:.08em}
.tiiha-month-count{font-size:10px;font-weight:800;color:#1a86c7;margin-bottom:7px}
.tiiha-month-item{padding:6px 7px;margin-top:5px;border-left:3px solid #1a86c7;border-radius:4px;background:#eef8ff;font-size:10px;line-height:1.25;overflow:hidden}.tiiha-month-item b{font-size:9px}.tiiha-month-item span{font-weight:800}.tiiha-month-item small{display:block;margin-top:2px;color:#66717c;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tiiha-month-more{margin-top:6px;font-size:9px;font-weight:800;color:#2d388f}.tiiha-month-maintenance{margin-top:7px;padding:4px 5px;border-radius:4px;background:#fff5dd;color:#8b6500;font-size:8px;font-weight:800}.tiiha-month-day-prompt{margin-top:28px;color:#6b7480;font-size:9px;font-weight:800;letter-spacing:.01em}.tiiha-month-cell:hover .tiiha-month-day-prompt{color:#2d388f}
.tiiha-year-summary{display:flex;align-items:baseline;gap:10px;margin:0 0 12px}.tiiha-year-summary strong{font-size:24px;color:#20286f}.tiiha-year-summary span{font-size:12px;color:#646970}
.tiiha-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tiiha-year-month{display:block;padding:13px;border:1px solid #d8e1eb;border-radius:9px;background:#fff;text-decoration:none!important;color:#20286f!important}.tiiha-year-month:hover{border-color:#2d388f;box-shadow:0 2px 8px rgba(32,40,111,.08)}.tiiha-year-month h3{margin:0 0 10px;font-size:16px}
.tiiha-mini-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.tiiha-mini-calendar span{display:flex;align-items:center;justify-content:center;min-height:20px;font-size:9px;color:#7a828b}.tiiha-mini-calendar .weekday{font-weight:800;color:#59616a}.tiiha-mini-calendar .day.has-activity{background:#eef4ff;border-radius:4px;color:#20286f;font-weight:900;box-shadow:inset 0 0 0 1px #b9c8df}.tiiha-year-stats{display:flex;justify-content:space-between;gap:8px;margin-top:10px;padding-top:8px;border-top:1px solid #edf0f4;font-size:9px;color:#59616a}.tiiha-year-stats span:first-child{font-weight:800;color:#1a86c7}
@media(max-width:900px){.tiiha-month-title-block h1{font-size:46px}.tiiha-month-title-block p{font-size:14px}.tiiha-month-cell,.tiiha-month-cell.is-empty{min-height:120px}.tiiha-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.tiiha-month-title-block{margin-bottom:16px;padding-bottom:11px}.tiiha-month-title-block h1{font-size:34px;letter-spacing:-.02em}.tiiha-month-title-block p{font-size:12px;line-height:1.35}.tiiha-month-weekdays div{font-size:9px;padding:7px 2px}.tiiha-month-grid{gap:4px}.tiiha-month-cell,.tiiha-month-cell.is-empty{min-height:92px;padding:6px}.tiiha-month-cell-head{margin-bottom:4px}.tiiha-month-cell-head strong{font-size:13px}.tiiha-month-item{padding:4px;margin-top:3px;font-size:8px}.tiiha-month-item small{display:none}.tiiha-month-count,.tiiha-month-more,.tiiha-month-maintenance,.tiiha-month-available{font-size:7px}.tiiha-year-grid{grid-template-columns:1fr}.tiiha-calendar-view-switch{width:100%}.tiiha-calendar-view-switch a{flex:1}}

@media(max-width:700px){.tiiha-public-calendar-actions{width:100%;justify-content:flex-start}.tiiha-public-calendar-nav{width:100%}.tiiha-calendar-view-switch-head{width:100%}}

/* TIIHA 0.14.10 — Configuration pending uses a neutral light-gray status, distinct from Ice Resurface */
.tiiha-configuration-pending-band{margin:10px;padding:14px 15px;border-left:4px solid #b9c0c8;border-radius:7px;background:#f3f5f7}.tiiha-configuration-pending-band strong{display:block;font-size:13px;color:#626b75}


/* TIIHA 0.14.11 — live rink open/closed indicator */
.tiiha-spatial-day-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tiiha-rink-live-status{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-size:10px;letter-spacing:.05em;white-space:nowrap;background:#f1f3f5;color:#5f6872;border:1px solid #d9dee3}.tiiha-rink-live-status i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#9aa3ad}.tiiha-rink-live-status.is-open{background:#e9f8ef;color:#16733d;border-color:#b8e5c8}.tiiha-rink-live-status.is-open i{background:#20a64a;box-shadow:0 0 0 3px rgba(32,166,74,.12)}.tiiha-rink-live-status.is-closed{background:#f1f3f5;color:#5f6872;border-color:#d9dee3}.tiiha-rink-live-status.is-closed i{background:#9aa3ad}.tiiha-rink-live-status.is-maintenance{background:#fff4d8;color:#8b6500;border-color:#efd28b}.tiiha-rink-live-status.is-maintenance i{background:#e0a100}

/* TIIHA 0.14.35 — Calendar controls: view switch above navigation, both right aligned */
.tiiha-public-calendar-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:8px;margin-left:auto}
.tiiha-calendar-view-switch-head{margin:0}
.tiiha-calendar-view-switch-head a{padding:8px 12px}

/* TIIHA 0.14.35 — Month weekday headers use the same seven-color system as Week view */
.tiiha-month-weekday{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 10px!important;border-radius:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--tiiha-day-text,#fff)!important;background:var(--tiiha-day-color,#2d388f);box-sizing:border-box}
.tiiha-month-weekday.day-sunday{--tiiha-day-color:#ed1c24;--tiiha-day-text:#fff}
.tiiha-month-weekday.day-monday{--tiiha-day-color:#f5d900;--tiiha-day-text:#20286f}
.tiiha-month-weekday.day-tuesday{--tiiha-day-color:#ef9bc1;--tiiha-day-text:#20286f}
.tiiha-month-weekday.day-wednesday{--tiiha-day-color:#20a64a;--tiiha-day-text:#fff}
.tiiha-month-weekday.day-thursday{--tiiha-day-color:#ff7a00;--tiiha-day-text:#fff}
.tiiha-month-weekday.day-friday{--tiiha-day-color:#1599df;--tiiha-day-text:#fff}
.tiiha-month-weekday.day-saturday{--tiiha-day-color:#a447a8;--tiiha-day-text:#fff}

/* TIIHA 0.14.35 — Year mini-calendar weekday headers use the same seven-color system */
.tiiha-mini-calendar .weekday{min-height:28px;border-radius:5px;color:var(--tiiha-day-text,#fff)!important;background:var(--tiiha-day-color,#2d388f);font-weight:800}
.tiiha-mini-calendar .weekday.day-sunday{--tiiha-day-color:#ed1c24;--tiiha-day-text:#fff}
.tiiha-mini-calendar .weekday.day-monday{--tiiha-day-color:#f5d900;--tiiha-day-text:#20286f}
.tiiha-mini-calendar .weekday.day-tuesday{--tiiha-day-color:#ef9bc1;--tiiha-day-text:#20286f}
.tiiha-mini-calendar .weekday.day-wednesday{--tiiha-day-color:#20a64a;--tiiha-day-text:#fff}
.tiiha-mini-calendar .weekday.day-thursday{--tiiha-day-color:#ff7a00;--tiiha-day-text:#fff}
.tiiha-mini-calendar .weekday.day-friday{--tiiha-day-color:#1599df;--tiiha-day-text:#fff}
.tiiha-mini-calendar .weekday.day-saturday{--tiiha-day-color:#a447a8;--tiiha-day-text:#fff}

@media(max-width:700px){
    .tiiha-public-calendar-actions{width:100%;align-items:stretch;margin-left:0}
    .tiiha-calendar-view-switch-head{width:100%}
    .tiiha-calendar-view-switch-head a{flex:1}
    .tiiha-public-calendar-nav{justify-content:flex-end}
    .tiiha-month-weekdays{gap:4px}
    .tiiha-month-weekday{min-height:32px;padding:0 2px!important;font-size:9px}
    .tiiha-mini-calendar .weekday{min-height:24px;font-size:8px}
}

/* 0.15.5 · Public booking LIVE / SCOREBOARD indicators */
.tiiha-public-booking-media{display:flex!important;flex-wrap:wrap;gap:6px;margin-top:6px!important;font-size:11px!important;font-weight:800!important;line-height:1.2}.tiiha-public-booking-media b{font-weight:800}.tiiha-public-booking-media .is-live{color:#d63638}.tiiha-public-booking-media .is-scoreboard{color:#135e96}.tiiha-month-media{display:block!important;margin-top:3px;font-size:9px;font-style:normal;font-weight:800;color:#135e96}.tiiha-month-media::first-letter{color:#d63638}

/* TIIHA 0.15.6 · Calendar spatial configuration colors
 * The calendar uses the same visual language as Rink Configuration diagrams:
 * red = Half / Hockey, green = Training / Rows, yellow = Public / Figure,
 * blue = Lane / Single Lane. Booking state changes the border/state treatment,
 * not the underlying spatial color.
 */
.tiiha-calendar-config-number{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 7px;margin-right:4px;border-radius:6px;background:#20286f;color:#fff;font-size:11px;line-height:1;font-weight:900;vertical-align:2px;box-sizing:border-box}
.tiiha-space-cell.is-type-half{background:rgba(239,119,126,.23);border-color:rgba(190,74,82,.38);border-left:4px solid #ed777e}
.tiiha-space-cell.is-type-training{background:rgba(73,202,137,.23);border-color:rgba(55,159,106,.38);border-left:4px solid #49ca89}
.tiiha-space-cell.is-type-public{background:rgba(245,204,91,.34);border-color:rgba(190,153,43,.40);border-left:4px solid #e6c34f}
.tiiha-space-cell.is-type-lane{background:rgba(88,177,239,.20);border-color:rgba(55,133,191,.38);border-left:4px solid #58b1ef}
.tiiha-space-cell.is-type-single-lane{background:rgba(88,177,239,.20);border-color:rgba(55,133,191,.38);border-left:4px solid #58b1ef}
.tiiha-space-cell.is-type-half.is-booked,.tiiha-space-cell.is-type-training.is-booked,.tiiha-space-cell.is-type-public.is-booked,.tiiha-space-cell.is-type-lane.is-booked,.tiiha-space-cell.is-type-single-lane.is-booked{box-shadow:inset 0 0 0 2px rgba(32,40,111,.18)}
.tiiha-space-map.mode-lane_b_rows_public_lane_b{grid-template-columns:2fr 3fr;grid-template-rows:repeat(5,minmax(31px,1fr));align-items:stretch}
.tiiha-space-map.mode-lane_b_rows_public_lane_b .tiiha-space-cell{grid-column:auto;grid-row:auto;min-height:0}
.tiiha-space-map.mode-lane_b_rows_public_lane_b .tiiha-space-cell.resource-public{grid-column:2;grid-row:1 / span 5}
.tiiha-space-map.mode-lane_b_rows_public_lane_b .tiiha-space-cell-title{font-size:13px}
.tiiha-space-map.mode-lane_b_rows_public_lane_b .resource-public{display:flex;flex-direction:column;align-items:center;justify-content:center}
@media(max-width:700px){
    .tiiha-calendar-config-number{min-width:25px;height:20px;font-size:9px;padding:0 6px}
    .tiiha-space-map.mode-lane_b_rows_public_lane_b{grid-template-columns:1fr 1fr;grid-template-rows:auto}
    .tiiha-space-map.mode-lane_b_rows_public_lane_b .tiiha-space-cell{grid-column:auto!important;grid-row:auto!important;min-height:62px}
    .tiiha-space-map.mode-lane_b_rows_public_lane_b .resource-public{grid-column:2!important}
}


/* TIIHA 0.15.7 — Calendar configuration header readability
 * Keep the configuration number and full name together in one light card header.
 * The header must remain readable on desktop and mobile without changing the spatial map.
 */
.tiiha-spatial-block-head{
    background:#f7fbff;
    border-bottom:1px solid #d9e5ef;
}
.tiiha-spatial-block-head > div:first-child{min-width:0;flex:1}
.tiiha-spatial-block-head strong{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    color:#173b70;
    font-size:14px;
    line-height:1.35;
}
.tiiha-calendar-config-number{
    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    min-width:30px;
    height:24px;
    padding:0 8px;
    margin:0;
    border-radius:6px;
    background:#eaf2ff;
    border:1px solid #b9d1ee;
    color:#1d4f91;
    font-size:11px;
    line-height:1;
    font-weight:900;
    vertical-align:middle;
    box-sizing:border-box;
}
.tiiha-spatial-block-head > div:first-child > span{
    color:#5f6f80;
}
/* Make the Half/Hockey resource edge clearly visible without using a dark fill. */
.tiiha-space-cell.is-type-half{
    border-color:#c96b72;
    border-left:4px solid #c24f59;
}
.tiiha-space-cell.is-type-half.is-booked{
    box-shadow:inset 0 0 0 2px rgba(194,79,89,.20);
}
@media(max-width:700px){
    .tiiha-spatial-block-head strong{font-size:13px}
    .tiiha-calendar-config-number{min-width:28px;height:22px;font-size:10px}
}
/* TIIHA 0.15.8 — Spatial resource divider readability
 * Strengthen the thin divider between the resource heading and booking details.
 * Keep it light enough for the existing premium calendar design.
 */
.tiiha-space-booking{
    border-top-color:#9fb6cc;
}

/* TIIHA 0.15.9 — Booking Notes in Public Calendar */
.tiiha-public-booking-notes{
    display:block;
    margin-top:6px;
    padding:5px 8px;
    border-left:3px solid #8aa6bf;
    border-radius:0 5px 5px 0;
    background:rgba(255,255,255,.55);
    color:#38566f;
    font-size:10px;
    line-height:1.35;
    overflow-wrap:anywhere;
}
.tiiha-public-booking-notes b{font-weight:900;color:#244b70}
.tiiha-month-notes{
    display:block!important;
    margin-top:3px!important;
    color:#526b80!important;
    font-size:9px!important;
    font-style:normal!important;
    font-weight:700!important;
    line-height:1.25!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* TIIHA 0.16.1 — Admin-only Booking shortcut on Calendar Time Blocks */
.tiiha-spatial-block-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto;flex-wrap:wrap}
.tiiha-calendar-admin-booking{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#1a86c7;color:#fff!important;border:1px solid #1675ad;font-size:9px;font-weight:900;letter-spacing:.06em;text-decoration:none!important;white-space:nowrap;box-shadow:0 1px 2px rgba(32,40,111,.08)}
.tiiha-calendar-admin-booking:hover{background:#146fa7;color:#fff!important}
@media(max-width:700px){.tiiha-spatial-block-head-actions{width:100%;justify-content:flex-start}.tiiha-calendar-admin-booking{padding:6px 9px}}


/* TIIHA Core 0.17.5 — Configuration #12 compact calendar rows
 * Configuration #12 uses the resource name as the only heading, removes the
 * internal resource code, and keeps Customer · Activity on one line.
 * This reduces the vertical footprint without changing other configurations.
 */
.tiiha-space-map.is-compact-config-12{
    grid-template-rows:repeat(5,minmax(46px,1fr));
    gap:5px;
    padding:8px;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-cell{
    padding:7px 9px;
    border-radius:7px;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-cell-title{
    font-size:11px;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-cell-state{
    margin-top:4px;
    font-size:8px;
    line-height:1.1;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-booking{
    margin-top:3px;
    padding-top:4px;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-booking strong{
    display:block;
    font-size:9px;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-booking-separator{
    display:inline!important;
    margin:0 2px!important;
    font-size:9px!important;
    color:#7a8da0!important;
}
.tiiha-space-map.is-compact-config-12 .tiiha-space-booking-activity{
    display:inline!important;
    margin:0!important;
    font-size:9px!important;
    color:#59616a!important;
}
@media(max-width:700px){
    .tiiha-space-map.is-compact-config-12{
        grid-template-columns:1fr 1fr;
        grid-template-rows:auto;
    }
    .tiiha-space-map.is-compact-config-12 .tiiha-space-cell{
        min-height:48px;
    }
}
