.tktrain{--tt-ink:#142c42;--tt-green:#176346;--tt-line:#dce5e9;max-width:1140px;margin:32px auto;padding:0 20px;color:var(--tt-ink);font-family:inherit;line-height:1.55;box-sizing:border-box}.tktrain *{box-sizing:border-box}.tktrain h2,.tktrain h3,.tktrain h4,.tktrain p{color:inherit;margin:0 0 14px}.tktrain h2{font-size:clamp(28px,4vw,40px);line-height:1.15}.tktrain h3{font-size:24px;line-height:1.3}.tktrain h4{font-size:18px}.tktrain a{color:var(--tt-green);text-underline-offset:3px}.tktrain-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.tktrain-head nav{display:flex;flex-wrap:wrap;gap:10px 16px}.tktrain-head nav a{font-size:14px;font-weight:700}.tktrain-kicker{display:block;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:1.6px;margin-bottom:10px}.tktrain-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.tktrain-card{border:1px solid var(--tt-line);background:#fff;border-radius:18px;padding:26px;margin-bottom:22px;box-shadow:0 6px 24px #142c4208}.tktrain-month{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tktrain-month h3{font-size:22px;margin:0}.tktrain-month>a{display:grid;place-items:center;border:1px solid var(--tt-line);border-radius:50%;width:38px;height:38px;text-decoration:none;font-size:22px}.tktrain-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.tktrain-weekday{text-align:center;font-size:11px;color:#607080;padding-bottom:8px}.tktrain-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:57px;text-decoration:none;border:1px solid #e9eef0;border-radius:10px;background:#f8fafb;color:var(--tt-ink)!important}.tktrain-day strong{font-size:16px}.tktrain-day small{font-size:10px;white-space:nowrap}.tktrain-day.has-slots{background:#e9f5ee;border-color:#b5dbc6;color:#155639!important}.tktrain-day.is-selected{background:var(--tt-ink);border-color:var(--tt-ink);color:#fff!important;box-shadow:0 0 0 2px #e7b840}.tktrain-slots{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tktrain form{margin:0}.tktrain-slot{display:flex;flex-direction:column;text-align:left;width:100%;min-height:74px;justify-content:center;padding:12px;border:1px solid #dfe6e9;border-radius:10px;background:#f4f6f7;color:#62717c;text-decoration:none!important;line-height:1.45;font:inherit}.tktrain-slot strong{font-size:12px;white-space:nowrap}.tktrain-slot span{font-size:11px;font-weight:600}.tktrain-slot.is-open{background:#e9f5ee;border-color:#a6cfb7;color:#155639}.tktrain-slot.is-booked{background:#fff6dc;border-color:#ecd78d;color:#755814}.tktrain button.tktrain-slot:not(:disabled){cursor:pointer}.tktrain button.tktrain-slot:not(:disabled):hover,.tktrain a.tktrain-slot:hover{border-color:var(--tt-green);box-shadow:0 0 0 1px var(--tt-green)}.tktrain-slot:disabled,.tktrain-slot.is-disabled{cursor:default;opacity:.78}.tktrain .tktrain-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #155c40;border-radius:10px;background:linear-gradient(145deg,#247854,#155c40);color:#fff;font:inherit;font-weight:750;padding:12px 20px;text-decoration:none;cursor:pointer;box-shadow:0 3px 8px #155c4019}.tktrain .tktrain-button:hover{background:#124b35;color:#fff}.tktrain .tktrain-button:disabled{opacity:.65;cursor:wait}.tktrain button:focus-visible,.tktrain a:focus-visible,.tktrain input:focus-visible,.tktrain summary:focus-visible{outline:3px solid #cc9b22;outline-offset:3px}.tktrain .tktrain-danger{background:#a33333;border-color:#a33333}.tktrain label{display:block;font-weight:600;margin-bottom:18px}.tktrain input[type=password],.tktrain input[type=number]{display:block;width:100%;max-width:340px;border:1px solid #aebfc9;border-radius:8px;min-height:46px;margin-top:8px;padding:10px;font:inherit;background:#fff;color:var(--tt-ink)}.tktrain .tktrain-check{display:flex;align-items:flex-start;gap:12px;font-size:14px;font-weight:500;margin:20px 0}.tktrain-check input{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0;accent-color:var(--tt-green)}.tktrain summary{cursor:pointer;font-weight:750;font-size:17px}.tktrain details[open] summary{margin-bottom:16px}.tktrain .tktrain-muted{font-size:12px;color:#526674;margin-top:16px;margin-bottom:0}.tktrain-notice{border-left:4px solid #d1a12d;background:#fffaea;border-radius:8px;padding:14px 18px}.tktrain-focus{max-width:650px;margin:24px auto;text-align:left;padding:36px}.tktrain-focus h3{font-size:30px}.tktrain-date{font-size:18px;font-weight:650}.tktrain-policy{background:#f3f7f8;border:1px solid var(--tt-line);border-radius:12px;padding:20px;margin:22px 0}.tktrain-policy p:last-child{margin-bottom:0}.tktrain .tktrain-warning{color:#8a3e13;font-weight:700}.tktrain-appointment{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--tt-line);padding:18px 0}.tktrain-appointment div>span,.tktrain-appointment div>small{display:block;font-size:13px;margin-top:4px}.tktrain-appointment div>strong{display:block}.tktrain-badge{font-weight:700;color:var(--tt-green)}.tktrain-admin-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tktrain-small{font:inherit;font-size:12px;padding:8px 12px;background:#fff;border:1px solid #bdcbd3;border-radius:8px;color:var(--tt-ink);cursor:pointer}.tktrain-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;background:#f3f7f8;border:1px solid var(--tt-line);border-radius:18px}.tktrain-cta h2{font-size:28px}.tktrain-cta p{margin:0}.tktrain-cta .tktrain-button{flex-shrink:0}@media(max-width:760px){.tktrain{padding:0 12px;margin:22px auto}.tktrain-head{display:block}.tktrain-head nav{margin-top:15px}.tktrain-layout{grid-template-columns:1fr;gap:0}.tktrain-card{padding:20px}.tktrain-focus{padding:24px 20px}.tktrain-focus h3{font-size:27px}.tktrain-appointment,.tktrain-cta{align-items:flex-start;flex-direction:column}.tktrain-admin-actions{justify-content:flex-start}.tktrain-calendar{gap:4px}.tktrain-day{min-height:54px}.tktrain-slot strong{font-size:12px}.tktrain-focus .tktrain-button{width:100%}.tktrain-cta{padding:24px}.tktrain-cta .tktrain-button{width:100%}}
.tktrain-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.tktrain-card,.tktrain-slots>*{min-width:0}.tktrain-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.tktrain .tktrain-slot strong{white-space:normal}.tktrain-appointment{overflow-wrap:anywhere}@media(max-width:760px){.tktrain-layout{grid-template-columns:minmax(0,1fr)}}
.tktrain-head nav.tktrain-client-nav{gap:10px;flex-shrink:0}.tktrain-head .tktrain-client-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 17px;border:1px solid #164b72;border-bottom:3px solid #f7ce53;border-radius:10px;background:#164b72;color:#fff;font-size:14px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;box-shadow:0 3px 8px #164b7214;transition:background-color .15s,border-color .15s}.tktrain-head .tktrain-client-nav a:hover{background:#0f3655;color:#fff;border-color:#0f3655;border-bottom-color:#f7ce53}.tktrain-head .tktrain-client-nav a:focus-visible{outline:3px solid #f7ce53;outline-offset:3px}@media(max-width:760px){.tktrain-head nav.tktrain-client-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px}.tktrain-head .tktrain-client-nav a{padding:11px 8px;font-size:13px;min-height:48px}}@media(min-width:761px) and (max-width:1050px){.tktrain-head:has(.tktrain-client-nav){flex-wrap:wrap}}
.tktrain-save-status{min-height:3.1em;margin:12px 0 0!important;font-size:13px;line-height:1.5;color:#164b72}.tktrain [aria-busy="true"]{opacity:.65;cursor:wait}
.tktrain-layout{align-items:stretch}.tktrain-layout>.tktrain-card{height:calc(100% - 22px)}.tktrain-client-times{display:flex;flex-direction:column}.tktrain-client-times .tktrain-slots{flex:1;grid-template-rows:repeat(4,minmax(0,1fr))}.tktrain-client-times .tktrain-slot{min-height:50px}.tktrain-client-times .tktrain-slot.is-selected{background:#164b72;border-color:#164b72;color:#fff;box-shadow:0 0 0 3px #f7ce53}.tktrain-choice-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--tt-line)}.tktrain-choice-action p{margin:0;font-size:13px;font-weight:700}.tktrain-choice-action .tktrain-button{min-height:44px;padding:9px 14px}.tktrain-choice-action .tktrain-button:disabled{cursor:not-allowed;opacity:.48}.tktrain-public-request{margin-top:24px}.tktrain-public-request>h3{color:#164b72}@media(max-width:760px){.tktrain-layout>.tktrain-card{height:auto}.tktrain-choice-action{align-items:stretch;flex-direction:column}.tktrain-choice-action .tktrain-button{width:100%}}
.tktrain-credit-note{margin:18px 0;padding:14px 16px;border-left:4px solid #d2a51d;border-radius:8px;background:#fff7d6;color:#594700;font-weight:750;line-height:1.45}.tktrain-inline-complete{margin:0}.tktrain-inline-complete .tktrain-small{background:#187647;color:#fff;border-color:#126239}
.tktrain-confirm-policy{margin:18px 0 14px}.tktrain-back-action{margin:12px 0 0!important}.tktrain .tktrain-back-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border:1px solid #9eafba;border-radius:8px;background:#f5f8fa;color:#28485f;font-size:12px;font-weight:750;line-height:1.2;text-decoration:none;box-shadow:0 2px 5px #142c420a}.tktrain .tktrain-back-button:hover{border-color:#52778f;background:#eaf1f5;color:#183b53}.tktrain .tktrain-back-button:focus-visible{outline:3px solid #cc9b22;outline-offset:2px}@media(max-width:760px){.tktrain-focus .tktrain-back-button{width:auto}}
