/* Ground Training module — v1.002 */
.gt{--g:#81B43F;--g2:#6a9a2f;--b:#00ACCA;--bg:#f6f8fa;--card:#fff;--tx:#1f2933;--mu:#6b7785;--bd:#dde3ea;--red:#c0392b;--amb:#e6a100;font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--tx);max-width:1280px;margin:0 auto;padding:12px}
.gt *{box-sizing:border-box}
.gt h2{margin:0 0 10px;font-size:20px}.gt h3{margin:14px 0 8px;font-size:15px}
.gt-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:2px solid var(--bd);margin-bottom:14px}
.gt-tabs a{padding:9px 14px;text-decoration:none;color:var(--mu);font-weight:600;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;border-radius:6px 6px 0 0}
.gt-tabs a.on{color:var(--g2);border-color:var(--g)}.gt-tabs a:hover{background:#eef3e6}
.gt-tabs .badge{background:var(--red);color:#fff;border-radius:9px;padding:0 6px;font-size:11px;margin-left:5px}
.gt-card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:14px;margin-bottom:14px}
.gt-banner{background:#eaf6fa;border:1px solid #b8e3ee;border-radius:8px;padding:8px 12px;margin-bottom:12px;color:#0b6277}
.gt-warn{background:#fff6e0;border:1px solid #f1d58a;color:#7a5a00;border-radius:8px;padding:8px 12px;margin-bottom:12px}
.gt-err{background:#fdecea;border:1px solid #f1b5ae;color:#8a1f12;border-radius:8px;padding:8px 12px;margin-bottom:12px}
.gt-ok{background:#eef7e3;border:1px solid #c5e2a0;color:#3d6314;border-radius:8px;padding:8px 12px;margin-bottom:12px}
.gt button,.gt .btn{background:var(--g);color:#fff;border:0;border-radius:7px;padding:7px 14px;font-weight:600;cursor:pointer;font-size:13px}
.gt button:hover{background:var(--g2)}.gt button.sec{background:#fff;color:var(--tx);border:1px solid var(--bd)}.gt button.sec:hover{background:#f0f3f6}
.gt button.red{background:var(--red)}.gt button:disabled{opacity:.5;cursor:not-allowed}.gt button.sm{padding:3px 9px;font-size:12px}
.gt input,.gt select,.gt textarea{border:1px solid var(--bd);border-radius:7px;padding:6px 9px;font:inherit;background:#fff;max-width:100%}
.gt input:focus,.gt select:focus,.gt textarea:focus{outline:2px solid #b9d98a;border-color:var(--g)}
.gt label{display:block;font-size:12px;color:var(--mu);margin-bottom:2px;font-weight:600}
.gt-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:10px}.gt-row>div{min-width:0}
.gt table{border-collapse:collapse;width:100%}.gt th{text-align:left;font-size:12px;color:var(--mu);padding:6px 8px;border-bottom:2px solid var(--bd);white-space:nowrap}
.gt td{padding:7px 8px;border-bottom:1px solid #edf0f3;vertical-align:top}.gt tr.click{cursor:pointer}.gt tr.click:hover{background:#f3f8ea}
.gt .tag{display:inline-block;border-radius:5px;padding:1px 7px;font-size:11px;font-weight:700}
.tag.active{background:#e3f1d0;color:#3d6314}.tag.cancelled{background:#fdecea;color:#8a1f12}.tag.pending{background:#fff1cc;color:#7a5a00}.tag.approved{background:#e3f1d0;color:#3d6314}.tag.rejected{background:#fdecea;color:#8a1f12}
.tag.HQ{background:#e0f4f9;color:#0b6277}.tag.CRB{background:#efe6fb;color:#53307d}.tag.none{background:#eee;color:#666}
.gt-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:8px;overflow:hidden}
.gt-cal .h{background:#f0f3f6;padding:5px;font-size:12px;font-weight:700;text-align:center;color:var(--mu)}
.gt-cal .d{background:#fff;min-height:92px;padding:3px;overflow:hidden}.gt-cal .d.o{background:#fafbfc;color:#aab}.gt-cal .d.t{outline:2px solid var(--b);outline-offset:-2px}
.gt-cal .n{font-size:11px;color:var(--mu);margin-bottom:2px}
.ev{border-left:4px solid var(--g);background:#f1f7e8;border-radius:4px;padding:2px 5px;margin-bottom:3px;font-size:11.5px;line-height:1.3;cursor:pointer;overflow:hidden}
.ev.can{border-color:var(--red);background:#fdf0ee;text-decoration:line-through;color:#8a1f12}.ev.ins{border-color:var(--b);background:#e8f6fa}
.ev b{display:block;font-weight:700}
.gt-grid{overflow:auto;border:1px solid var(--bd);border-radius:8px}
.gt-grid table{min-width:760px}.gt-grid td,.gt-grid th{border:1px solid #edf0f3;padding:3px;vertical-align:top}.gt-grid th{background:#f0f3f6}
.gt-grid td.cell{height:72px;min-width:92px;position:relative;background:#fbfdf8}.gt-grid td.cell.adm:hover{background:#eef6e0;cursor:pointer}
.slot{display:block;border-radius:4px;padding:1px 4px;margin-bottom:2px;font-size:11px;line-height:1.25;overflow:hidden}
.slot.course{background:#cfe8f0;color:#0b6277}.slot.booking{background:#f5dcb0;color:#7a4b00}.slot.p-Booked{background:#d6dbe0;color:#444}
.gt-modal{position:fixed;inset:0;background:rgba(20,30,40,.45);display:flex;align-items:flex-start;justify-content:center;padding:4vh 12px;z-index:9999;overflow:auto}
.gt-modal>div{background:#fff;border-radius:12px;padding:18px;width:100%;max-width:640px;box-shadow:0 12px 40px rgba(0,0,0,.3)}
.gt-modal h3{margin-top:0}.gt-modal .foot{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}
.gt-mu{color:var(--mu)}.gt-sm{font-size:12px}.gt-r{text-align:right}
.gt-kpi{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.gt-kpi div{background:#f6f8fa;border:1px solid var(--bd);border-radius:8px;padding:8px 14px;min-width:100px}
.gt-kpi b{font-size:20px;display:block}.gt-kpi.new b{color:var(--g2)}
.gt-scroll{max-height:320px;overflow:auto;border:1px solid var(--bd);border-radius:8px}
.gt-toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#1f2933;color:#fff;padding:9px 18px;border-radius:8px;z-index:10000;max-width:90vw}
@media (max-width:700px){.gt-cal .d{min-height:60px}.ev{font-size:10.5px;padding:1px 3px}.gt-tabs a{padding:8px 9px}}
@media print{.gt-tabs,.gt button,.gt-noprint,.gt-banner{display:none!important}.gt{max-width:none;padding:0}.gt-card{border:0;padding:0}.gt-cal .d{min-height:80px}}
