/* TrainingBot V152 — functional global search + mobile contact shortcut */
body.tb-search-open{overflow:hidden}
.tb-search-overlay[hidden]{display:none!important}
.tb-search-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-start;justify-content:center;padding:10vh 20px 24px;background:rgba(2,5,14,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.tb-search-panel{width:min(760px,100%);max-height:min(78vh,760px);overflow:auto;padding:22px;border:1px solid rgba(139,151,190,.24);border-radius:24px;background:linear-gradient(145deg,rgba(14,19,35,.99),rgba(7,11,23,.99));box-shadow:0 30px 90px rgba(0,0,0,.5)}
.tb-search-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.tb-search-kicker{display:block;margin-bottom:4px;color:#7f8cff;font-size:.68rem;font-weight:900;letter-spacing:.14em}.tb-search-head h2{margin:0;color:#f8faff;font-size:1.85rem;letter-spacing:-.04em}.tb-search-close{width:40px;height:40px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#101626;color:#cbd5e1;font-size:1.65rem;line-height:1;cursor:pointer}.tb-search-close:hover{border-color:rgba(124,92,255,.55);background:#171e32;color:#fff}
.tb-search-box{display:flex;align-items:center;gap:11px;min-height:56px;padding:0 15px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:#0a1020;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.tb-search-box:focus-within{border-color:rgba(105,112,255,.72);box-shadow:0 0 0 3px rgba(92,99,255,.12)}.tb-search-box svg{width:21px;height:21px;fill:none;stroke:#8d99b3;stroke-width:1.8}.tb-search-box input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#f8fafc;font:600 .98rem/1.2 Inter,system-ui,sans-serif}.tb-search-box input::placeholder{color:#6f7b95}.tb-search-box kbd{padding:5px 7px;border:1px solid rgba(148,163,184,.18);border-radius:7px;background:#12192a;color:#77839c;font-size:.63rem;font-family:inherit}
.tb-search-status{margin:13px 2px 10px;color:#8190aa;font-size:.78rem}.tb-search-results{display:grid;gap:9px}.tb-search-result{display:block;padding:15px 16px;border:1px solid rgba(148,163,184,.14);border-radius:15px;background:rgba(255,255,255,.025);text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}.tb-search-result:hover{transform:translateY(-2px);border-color:rgba(105,112,255,.44);background:rgba(105,112,255,.07)}.tb-search-result-type{display:block;margin-bottom:5px;color:#7180ff;font-size:.62rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.tb-search-result strong{display:block;color:#f5f7ff;font-size:.96rem}.tb-search-result p{margin:6px 0 8px;color:#91a0bb;font-size:.8rem;line-height:1.5}.tb-search-result-link{color:#c7d0e6;font-size:.72rem;font-weight:800}.tb-search-empty{padding:24px 16px;border:1px dashed rgba(148,163,184,.18);border-radius:15px;color:#8290aa;text-align:center;font-size:.82rem}
.tb-mobile-contact-button{display:none;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:rgba(16,22,38,.86);color:#dce5f7;text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}.tb-mobile-contact-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tb-mobile-contact-button:hover{transform:translateY(-1px);border-color:rgba(105,112,255,.48);background:rgba(105,112,255,.12);color:#fff}
@media(max-width:600px){.tb-mobile-contact-button{display:inline-flex}.header-actions{gap:8px!important}.tb-search-overlay{padding:72px 10px 12px}.tb-search-panel{max-height:calc(100vh - 84px);padding:16px;border-radius:18px}.tb-search-head h2{font-size:1.45rem}.tb-search-box{min-height:52px;padding:0 12px;border-radius:14px}.tb-search-box kbd{display:none}.tb-search-result{padding:13px}.tb-search-result strong{font-size:.91rem}.tb-search-result p{font-size:.77rem}}
@media(max-width:360px){.tb-mobile-contact-button{width:38px;height:38px;flex-basis:38px}.header-actions{gap:6px!important}.tb-search-overlay{padding-left:7px;padding-right:7px}}
