.ag-legacy{position:relative;min-width:0}
.ag-card{background:#fff;border:1px solid #dfe5ee;border-radius:18px;box-shadow:0 8px 25px rgba(15,23,42,.07);padding:22px;min-width:0}
.ag-modes{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
.ag-modes button{border:1.5px solid #c3ccdb;background:#fff;color:#4a5565;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.ag-modes button.on{background:#6d183a;border-color:#6d183a;color:#fff}
.ag-modes button span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;padding:0 5px;border-radius:999px;background:#eef2f6;color:#536274;font-size:10px}
.ag-modes button.on span{background:rgba(255,255,255,.18);color:#fff}
.ag-search-wrap{position:relative;margin-bottom:12px}
.ag-search-wrap>input,.ag-patient-picker>input,.ag-quick input,.ag-grade-tools select,.ag-map-tools select,.ag-table-wrap select{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:9px 12px;font:inherit;color:#15283a}
.ag-search-wrap>input:focus,.ag-patient-picker>input:focus,.ag-quick input:focus,.ag-grade-tools select:focus,.ag-map-tools select:focus{outline:none;border-color:#9e255a;box-shadow:0 0 0 3px rgba(158,37,90,.10)}
.ag-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:130;background:#fff;border:1.5px solid #b6c0d0;border-radius:10px;box-shadow:0 14px 30px rgba(15,23,42,.16);max-height:330px;overflow:auto;padding:5px}
.ag-drop-item{width:100%;display:flex;align-items:center;gap:9px;border:0;background:transparent;border-radius:8px;padding:9px 10px;text-align:left;cursor:pointer;color:#15283a;font-family:inherit}
.ag-drop-item:hover{background:#f4f7fa}.ag-drop-item small{color:#64748b;font-size:12px}.ag-drop-empty{padding:12px;color:#64748b;font-size:12px}
.ag-tag{font-size:9.5px;font-weight:900;letter-spacing:.06em;border-radius:5px;padding:2px 6px;color:#fff;flex:none}.ag-tag.group{background:#334155}.ag-tag.prof{background:#6d183a}.ag-tag.patient{background:#0e7490}
.ag-check{display:flex;align-items:center;gap:7px;font-size:12.5px;cursor:pointer;color:#334155}.ag-check input,.ag-units input,.ag-repeat-hours input{accent-color:#7a1f45}.ag-check.global{display:inline-flex;margin:0 0 13px}
.ag-map-tools,.ag-grade-tools{display:grid;grid-template-columns:minmax(145px,190px) auto auto auto 1fr;gap:10px;align-items:end;margin-bottom:11px}
.ag-grade-tools{grid-template-columns:minmax(220px,1.4fr) minmax(190px,1.2fr) auto auto}
.ag-map-tools>label>span,.ag-grade-tools>label>span,.ag-quick label{display:block;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#5f1738;margin-bottom:5px}
.ag-units{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin:5px 0 10px}.ag-units label{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;cursor:pointer}.ag-label-inline{font-size:10.5px;font-weight:800;letter-spacing:.05em;color:#5f1738}
.ag-link{border:0;background:none;color:#8e1e50;font:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:0}
.ag-info,.ag-muted,.ag-note{color:#64748b;font-size:11.5px;line-height:1.45}.ag-info{margin:7px 0 9px}.ag-note{margin:0;padding:8px 12px;background:#fff}.ag-muted{margin:8px 0}
.ag-room-card{border:1px solid #a9b4c6;border-radius:12px;overflow:hidden;box-shadow:0 1px 2px rgba(15,23,42,.05);margin:0 0 16px;background:#fff}.ag-room-title{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#6d183a;color:#fff;padding:8px 13px;font-weight:800;font-size:12.5px}.ag-room-card.online .ag-room-title{background:#185d72}.ag-room-title .ag-mini.light{background:#fff;color:#6d183a;border-color:#fff}
.ag-table-wrap{width:100%;overflow:auto}.ag-table-wrap table{width:100%;border-collapse:collapse;background:#fff}.ag-table-wrap th,.ag-table-wrap td{border-bottom:1px solid #dfe5ec;padding:9px 11px;text-align:left;vertical-align:top;font-size:12.5px}.ag-table-wrap th{background:#6d183a;color:#fff;text-transform:uppercase;font-size:10.5px;letter-spacing:.04em;white-space:nowrap}.ag-table-wrap td>small,.ag-cell-patient small{display:block;color:#64748b;font-size:10.5px;margin-top:2px}.ag-table-wrap tr:last-child td{border-bottom:0}
.ag-chips{margin-top:6px}.ag-chip{display:inline-block;border-radius:7px;padding:4px 8px;font-size:10.5px;font-weight:700;margin:0 4px 4px 0;font-variant-numeric:tabular-nums;border:1px solid transparent;white-space:nowrap;cursor:pointer;font-family:inherit}.ag-chip.free{background:#eaf6ef;color:#15803d;border-color:#bfe0cc}.ag-chip.busy{background:#fdecea;color:#8a1c14;border-color:#e9c4c0}.ag-chip:hover{filter:brightness(.97)}
.ag-mini{border:1px solid #cbd5e1;background:#fff;color:#536274;border-radius:8px;padding:6px 10px;font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap}.ag-mini:hover{background:#f7f9fb}.ag-mini.primary{background:#8f1c52;color:#fff;border-color:#8f1c52}.ag-mini.danger{color:#a61b1b;border-color:#efc9c9}.ag-mini:disabled{opacity:.45;cursor:not-allowed}
.ag-patient-result{border:1px solid #d7e0e9;border-radius:12px;padding:12px;margin:0 0 12px;background:#fbfcfe}.ag-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:#20364a}
.ag-grid-wrap{overflow:auto}.ag-week-grid{border-collapse:collapse;width:100%;table-layout:fixed}.ag-week-grid th,.ag-week-grid td{border:1px solid #a9b4c6;padding:0;vertical-align:top;font-size:11.5px}.ag-week-grid thead th{background:#6d183a;color:#fff;padding:7px 4px;text-align:center}.ag-hour{background:#7a1f45!important;color:#fff!important;text-align:center!important;font-weight:800!important;width:86px;padding:8px 4px!important}.ag-hour small{display:block;color:#f8dce7!important;font-weight:500!important}.ag-cell{display:block;width:100%;min-height:65px;border:0;background:#fff;padding:7px;text-align:left;cursor:pointer;font-family:inherit}.ag-cell:hover:not(:disabled){background:#eef4ff;box-shadow:inset 0 0 0 2px #527bb8}.ag-cell.occupied{background:#fffafc}.ag-cell.outside{background:#f2f4f7;color:#a3aab3;cursor:default;text-align:center}.ag-plus{color:#94a3b8;font-size:18px;font-weight:800}.ag-cell-patient{padding:2px 0}.ag-cell-patient+ .ag-cell-patient{border-top:1px dashed #d7dde5;margin-top:5px;padding-top:5px}
.ag-board-cell{min-height:50px;padding:6px}.ag-board-cell button{display:block;border:0;background:none;padding:2px 0;color:#122b40;font:inherit;font-weight:700;text-align:left;cursor:pointer}.ag-board-cell button:hover{color:#8f1c52}.ag-unit-title{font-size:13px;margin:17px 0 7px;color:#172f43}
.ag-modal-backdrop{position:absolute;z-index:180;inset:0;min-height:100vh;background:rgba(15,23,42,.48);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px}
.ag-modal{width:min(760px,96vw);max-height:calc(100vh - 70px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(15,23,42,.28);padding:19px}.ag-modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.ag-modal-head>div{flex:1}.ag-modal-head h3{margin:0;font-size:16px}.ag-modal-head p{margin:4px 0 0;color:#64748b;font-size:11.5px}.ag-modal h4{font-size:12px;margin:15px 0 8px;color:#172b3e}
.ag-current-row,.ag-selected-patient{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #dbe3eb;border-radius:10px;margin-bottom:7px}.ag-current-row>div,.ag-selected-patient>div{flex:1}.ag-current-row small,.ag-selected-patient small{display:block;color:#64748b;font-size:10.5px;margin-top:2px}.ag-online-tag{margin-left:6px;background:#e5f6fa;color:#0e7490;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800}.ag-selected-patient{background:#eff6ff;border-color:#bfdbfe}
.ag-patient-picker{position:relative}.ag-patient-picker p{font-size:11px;color:#64748b}.ag-patient-options{border:1px solid #cbd5e1;border-radius:10px;margin-top:4px;max-height:250px;overflow:auto;padding:4px}.ag-patient-options button{display:block;width:100%;border:0;background:#fff;border-radius:7px;padding:8px;text-align:left;cursor:pointer}.ag-patient-options button:hover{background:#f4f7fa}.ag-patient-options small{display:block;color:#64748b;margin-top:2px}
.ag-quick{border:1px solid #e9cbd8;background:#fff7fa;border-radius:12px;padding:12px;margin-top:8px}.ag-quick>b{display:block;color:#6d183a;font-size:11px;letter-spacing:.05em;margin-bottom:8px}.ag-quick>div:not(.ag-actions){display:grid;grid-template-columns:1fr 1fr;gap:9px}.ag-quick label{margin-bottom:8px}.ag-quick .ag-actions,.ag-modal-actions,.ag-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}
.ag-repeat-hours{display:flex;flex-wrap:wrap;gap:5px 14px}.ag-repeat-hours label{font-size:12px;display:flex;align-items:center;gap:5px}.ag-error{color:#b91c1c;font-size:12px;min-height:16px}
.ag-match-ok{color:#15803d;font-weight:700;font-size:11.5px}.suggestion-group .ag-actions{white-space:nowrap;margin:0}
@media(max-width:1000px){.ag-map-tools,.ag-grade-tools{grid-template-columns:1fr 1fr}.ag-card{padding:14px}.ag-table-wrap{overflow:auto}.ag-week-grid{min-width:850px}}
@media(max-width:650px){.ag-map-tools,.ag-grade-tools{grid-template-columns:1fr}.ag-modes button{flex:1 1 45%}.ag-quick>div:not(.ag-actions){grid-template-columns:1fr}.ag-modal-backdrop{padding:15px 8px}.ag-modal{max-height:none}}
