.gc-button{appearance:none;cursor:pointer;font:inherit;border:none;border-radius:999px;padding:.95rem 1.8rem;font-weight:700;transition:transform .18s,background .18s,box-shadow .18s,opacity .18s}.gc-button:focus-visible{outline:3px solid color-mix(in srgb, var(--gc-accent) 45%, transparent);outline-offset:2px}.gc-button:disabled{cursor:not-allowed;opacity:.55}.gc-button--primary{color:#fff;background:linear-gradient(135deg, var(--gc-accent), var(--gc-accent-deep));box-shadow:0 14px 30px color-mix(in srgb, var(--gc-accent) 28%, transparent)}.gc-button--primary:hover:not(:disabled){box-shadow:0 18px 34px color-mix(in srgb, var(--gc-accent) 34%, transparent);transform:translateY(-2px)}.gc-button--ghost{color:var(--gc-ink);background:color-mix(in srgb, var(--gc-surface) 70%, transparent);border:1px solid color-mix(in srgb, var(--gc-ink) 12%, transparent)}.gc-button--ghost:hover:not(:disabled){background:var(--gc-surface);transform:translateY(-1px)}.progress-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.progress-steps__item{background:color-mix(in srgb, var(--gc-surface) 72%, transparent);border:1px solid color-mix(in srgb, var(--gc-ink) 8%, transparent);min-width:0;color:var(--gc-muted);border-radius:.9rem;align-items:center;gap:.45rem;padding:.55rem .65rem;display:flex}.progress-steps__index{background:color-mix(in srgb, var(--gc-ink) 8%, transparent);border-radius:999px;flex-shrink:0;place-items:center;width:1.45rem;height:1.45rem;font-size:.75rem;font-weight:700;display:grid}.progress-steps__label{white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;overflow:hidden}.progress-steps__item--current{color:var(--gc-accent-deep);border-color:color-mix(in srgb, var(--gc-accent) 40%, transparent);background:color-mix(in srgb, var(--gc-accent-soft) 80%, var(--gc-surface))}.progress-steps__item--current .progress-steps__index{color:#fff;background:var(--gc-accent)}.progress-steps__item--done{color:var(--gc-ink)}.progress-steps__item--done .progress-steps__index{color:#fff;background:var(--gc-accent-deep)}@media (width<=640px){.progress-steps__label{font-size:.72rem}}.booking-layout{flex-direction:column;gap:1.25rem;padding:.5rem 0 2.5rem;display:flex}.booking-layout__header{flex-direction:column;gap:.45rem;display:flex}.booking-layout__back{width:fit-content;color:var(--gc-accent-deep);margin-bottom:.15rem;font-size:.92rem;font-weight:600;text-decoration:none}.booking-layout__back:hover{text-decoration:underline}.booking-layout__back:focus-visible{outline:3px solid color-mix(in srgb, var(--gc-accent) 45%, transparent);outline-offset:3px;border-radius:.35rem}.booking-layout__title{font-family:var(--gc-font-display);margin:0;font-size:clamp(1.45rem,3.5vw,1.9rem);line-height:1.35}.booking-layout__subtitle{color:var(--gc-muted);max-width:40ch;margin:0;line-height:1.7}.booking-layout__content{flex-direction:column;gap:1rem;display:flex}.booking-layout__footer{flex-wrap:wrap;justify-content:flex-start;gap:.75rem;padding-top:.35rem;display:flex}.booking-section-title{font-family:var(--gc-font-display);color:var(--gc-ink);margin:0 0 .75rem;font-size:1.1rem}.booking-note{background:color-mix(in srgb, var(--gc-accent-soft) 75%, var(--gc-surface));border:1px solid color-mix(in srgb, var(--gc-accent) 22%, transparent);color:var(--gc-accent-deep);border-radius:1rem;margin:0;padding:.95rem 1rem;line-height:1.7}.booking-placeholder-copy{font-family:var(--gc-font-display);color:var(--gc-ink);margin:0;padding:1.25rem 0;font-size:1.15rem;line-height:1.7}.booking-summary{flex-wrap:wrap;gap:.55rem;display:flex}.booking-summary__chip{background:color-mix(in srgb, var(--gc-surface) 85%, transparent);border:1px solid color-mix(in srgb, var(--gc-ink) 10%, transparent);color:var(--gc-ink);border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.82rem;display:inline-flex}.booking-summary__chip strong{color:var(--gc-muted);font-weight:600}.booking-grid{gap:.85rem;display:grid}@media (width>=768px){.booking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.selectable-card{text-align:right;border:1px solid color-mix(in srgb, var(--gc-ink) 10%, transparent);background:color-mix(in srgb, var(--gc-surface) 90%, transparent);width:100%;color:inherit;font:inherit;cursor:pointer;border-radius:1.15rem;align-items:flex-start;gap:.9rem;padding:1.1rem 1.05rem;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;display:flex}.selectable-card:hover:not(:disabled){border-color:color-mix(in srgb, var(--gc-accent) 35%, transparent);box-shadow:0 14px 28px color-mix(in srgb, var(--gc-ink) 8%, transparent);transform:translateY(-2px)}.selectable-card:focus-visible{outline:3px solid color-mix(in srgb, var(--gc-accent) 45%, transparent);outline-offset:2px}.selectable-card--selected{border-color:color-mix(in srgb, var(--gc-accent) 55%, transparent);background:color-mix(in srgb, var(--gc-accent-soft) 72%, var(--gc-surface));box-shadow:0 14px 30px color-mix(in srgb, var(--gc-accent) 14%, transparent)}.selectable-card--disabled{cursor:not-allowed;opacity:.72;background:color-mix(in srgb, var(--gc-surface) 65%, #d7e2de)}.selectable-card__icon{width:2.75rem;height:2.75rem;color:var(--gc-accent-deep);background:linear-gradient(160deg, var(--gc-accent-soft), color-mix(in srgb, var(--gc-accent) 16%, white));border-radius:.9rem;flex-shrink:0;place-items:center;display:grid}.selectable-card__body{flex-direction:column;gap:.3rem;min-width:0;display:flex}.selectable-card__title{font-family:var(--gc-font-display);color:var(--gc-ink);font-size:1.05rem;font-weight:700}.selectable-card__description,.selectable-card__meta{color:var(--gc-muted);font-size:.9rem;line-height:1.55}.selectable-card__warning{color:var(--gc-danger);margin-top:.15rem;font-size:.82rem}.async-state{border:1px dashed color-mix(in srgb, var(--gc-ink) 14%, transparent);background:color-mix(in srgb, var(--gc-surface) 70%, transparent);min-height:8rem;color:var(--gc-muted);text-align:center;border-radius:1.1rem;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:1.4rem 1rem;display:flex}.async-state p{margin:0}.async-state--error{border-style:solid;border-color:color-mix(in srgb, var(--gc-danger) 25%, transparent);color:color-mix(in srgb, var(--gc-danger) 80%, var(--gc-ink))}.async-state__spinner{border:2px solid color-mix(in srgb, var(--gc-accent) 25%, transparent);border-top-color:var(--gc-accent);border-radius:50%;width:1.4rem;height:1.4rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.doctor-grid{gap:.9rem;display:grid}.doctor-card{text-align:right;border:1px solid color-mix(in srgb, var(--gc-ink) 10%, transparent);background:color-mix(in srgb, var(--gc-surface) 92%, transparent);width:100%;color:inherit;font:inherit;cursor:pointer;border-radius:1.15rem;gap:1rem;padding:1.05rem;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;display:flex}.doctor-card:hover{border-color:color-mix(in srgb, var(--gc-accent) 35%, transparent);box-shadow:0 14px 28px color-mix(in srgb, var(--gc-ink) 8%, transparent);transform:translateY(-2px)}.doctor-card:focus-visible{outline:3px solid color-mix(in srgb, var(--gc-accent) 45%, transparent);outline-offset:2px}.doctor-card--selected{border-color:color-mix(in srgb, var(--gc-accent) 55%, transparent);background:color-mix(in srgb, var(--gc-accent-soft) 72%, var(--gc-surface));box-shadow:0 14px 30px color-mix(in srgb, var(--gc-accent) 14%, transparent)}.doctor-card__avatar{background:linear-gradient(160deg, var(--gc-accent-soft), #cfe8e1);width:3.4rem;height:3.4rem;color:var(--gc-accent-deep);font-family:var(--gc-font-display);border-radius:1rem;flex-shrink:0;place-items:center;font-size:1.2rem;font-weight:700;display:grid;overflow:hidden}.doctor-card__avatar img{object-fit:cover;width:100%;height:100%}.doctor-card__body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.doctor-card__name{font-family:var(--gc-font-display);font-size:1.05rem}.doctor-card__title,.doctor-card__meta{color:var(--gc-muted);font-size:.9rem}.doctor-card__price{color:var(--gc-accent-deep);margin-top:.25rem;font-weight:700}.doctor-skeleton{gap:.85rem;display:grid}.doctor-skeleton__card{background:linear-gradient(90deg, color-mix(in srgb, var(--gc-surface) 70%, #d7e5e1) 0%, color-mix(in srgb, var(--gc-accent-soft) 55%, white) 50%, color-mix(in srgb, var(--gc-surface) 70%, #d7e5e1) 100%);background-size:200% 100%;border-radius:1.15rem;min-height:6rem;animation:1.2s ease-in-out infinite doctor-skeleton-pulse}.doctor-empty__actions{flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:.85rem;display:flex}@keyframes doctor-skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width>=760px){.doctor-grid,.doctor-skeleton{grid-template-columns:repeat(2,minmax(0,1fr))}}.patient-page{gap:1.25rem;display:grid}.patient-page__hint{color:var(--gc-muted,#5c6b7a);margin:0;font-size:.95rem;line-height:1.6}.patient-page__debug{color:#1a3a52;background:#f3f7fb;border-radius:.5rem;margin:0;padding:.75rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9rem}.patient-page__error,.patient-page__alert{border-radius:.5rem;margin:0;padding:.85rem 1rem;font-size:.95rem;line-height:1.5}.patient-page__error{color:#8a1f1f;background:#fdecec;border:1px solid #f0c2c2}.patient-page__alert{color:#7a4b00;background:#fff7e8;border:1px solid #f0d9a8}.patient-form{gap:1.1rem;display:grid}.patient-form__row{grid-template-columns:7rem 1fr;gap:.75rem;display:grid}.patient-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.patient-form__actions{flex-wrap:wrap;gap:.75rem;display:flex}.patient-field{gap:.4rem;display:grid}.patient-field--full{grid-column:1/-1}.patient-field--code input{text-align:center;font-weight:600}.patient-field label{color:var(--gc-text,#1a2b3c);font-size:.9rem;font-weight:600}.patient-field input,.patient-field select{border:1px solid var(--gc-border,#d5dde5);width:100%;min-height:2.75rem;color:inherit;font:inherit;background:#fff;border-radius:.55rem;padding:.6rem .85rem}.patient-field input:focus,.patient-field select:focus{outline:2px solid color-mix(in srgb, var(--gc-accent,#0d6e6e) 35%, transparent);outline-offset:1px;border-color:var(--gc-accent,#0d6e6e)}.patient-field input[readonly]{color:#4a5b6c;background:#f5f7fa}.patient-field__error{color:#8a1f1f;margin:0;font-size:.85rem}@media (width<=720px){.patient-form__row,.patient-form__grid{grid-template-columns:1fr}}.schedule-summary-card{background:linear-gradient(160deg, color-mix(in srgb, var(--gc-accent-soft) 80%, var(--gc-surface)), var(--gc-surface));border:1px solid color-mix(in srgb, var(--gc-accent) 22%, transparent);border-radius:1.15rem;padding:1.1rem 1.15rem}.schedule-summary-card__doctor{font-family:var(--gc-font-display);margin:0 0 .45rem;font-size:1.15rem;font-weight:700}.schedule-summary-card__line{color:var(--gc-muted);margin:.2rem 0 0;font-size:.95rem}.schedule-main{flex-direction:column;gap:1.35rem;min-width:0;display:flex}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.schedule-range-nav{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.schedule-range-nav__btn,.schedule-refresh{appearance:none;border:1px solid color-mix(in srgb, var(--gc-ink) 12%, transparent);background:var(--gc-surface);color:var(--gc-ink);font:inherit;cursor:pointer;border-radius:.75rem;padding:.55rem .85rem;font-size:.88rem;font-weight:600;transition:background .16s,border-color .16s}.schedule-range-nav__btn:hover:not(:disabled),.schedule-refresh:hover:not(:disabled){border-color:color-mix(in srgb, var(--gc-accent) 40%, transparent);background:color-mix(in srgb, var(--gc-accent-soft) 55%, var(--gc-surface))}.schedule-range-nav__btn:disabled,.schedule-refresh:disabled{opacity:.5;cursor:not-allowed}.schedule-range-nav__btn:focus-visible,.schedule-refresh:focus-visible,.schedule-date-card:focus-visible,.schedule-slot:focus-visible{outline:3px solid color-mix(in srgb, var(--gc-accent) 45%, transparent);outline-offset:2px}.schedule-range-nav__label{color:var(--gc-muted);font-size:.9rem;font-weight:600}.schedule-alert{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:.9rem;margin:0;padding:.85rem 1rem;line-height:1.6}.schedule-dates__scroller{scroll-snap-type:x mandatory;grid-auto-columns:minmax(8.5rem,10rem);grid-auto-flow:column;gap:.75rem;padding-bottom:.35rem;display:grid;overflow-x:auto}.schedule-date-card{scroll-snap-align:start;text-align:right;border:1px solid color-mix(in srgb, var(--gc-ink) 10%, transparent);background:color-mix(in srgb, var(--gc-surface) 94%, transparent);min-height:6.5rem;color:inherit;font:inherit;cursor:pointer;border-radius:1.05rem;flex-direction:column;align-items:flex-start;gap:.35rem;padding:.9rem;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:flex}.schedule-date-card:hover{border-color:color-mix(in srgb, var(--gc-accent) 35%, transparent);transform:translateY(-2px)}.schedule-date-card--selected{border-color:color-mix(in srgb, var(--gc-accent) 55%, transparent);background:color-mix(in srgb, var(--gc-accent-soft) 72%, var(--gc-surface));box-shadow:0 12px 26px color-mix(in srgb, var(--gc-accent) 14%, transparent)}.schedule-date-card__weekday{font-weight:700;font-family:var(--gc-font-display)}.schedule-date-card__day{font-size:.95rem}.schedule-date-card__count{color:var(--gc-accent-deep);margin-top:auto;font-size:.8rem;font-weight:600}.schedule-date-skeleton,.schedule-slot-skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--gc-ink) 6%, transparent), color-mix(in srgb, var(--gc-ink) 10%, transparent), color-mix(in srgb, var(--gc-ink) 6%, transparent));background-size:200% 100%;border-radius:1rem;animation:1.2s ease-in-out infinite schedule-pulse}.schedule-date-skeleton{min-height:6.5rem}.schedule-slot-skeleton{min-height:2.85rem}@keyframes schedule-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.schedule-slots__date{color:var(--gc-muted);font-size:.95rem;font-weight:500}.schedule-slots__hint{color:var(--gc-muted);margin:0;line-height:1.7}.schedule-slots__grid{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:.65rem;display:grid}.schedule-slot{border:1px solid color-mix(in srgb, var(--gc-ink) 12%, transparent);background:var(--gc-surface);min-height:2.85rem;color:inherit;font:inherit;cursor:pointer;border-radius:.9rem;padding:.7rem .85rem;font-weight:600;transition:border-color .16s,background .16s,box-shadow .16s}.schedule-slot:hover{border-color:color-mix(in srgb, var(--gc-accent) 40%, transparent)}.schedule-slot--selected{border-color:color-mix(in srgb, var(--gc-accent) 60%, transparent);background:color-mix(in srgb, var(--gc-accent) 88%, #0f766e);color:#fff;box-shadow:0 10px 22px color-mix(in srgb, var(--gc-accent) 22%, transparent)}.schedule-empty{gap:.85rem;display:grid}.schedule-empty__actions{flex-wrap:wrap;gap:.55rem;display:flex}.schedule-footnote{color:var(--gc-muted);margin:0;font-size:.85rem;line-height:1.6}.schedule-footnote a{color:var(--gc-accent-deep);font-weight:600}@media (width>=900px){.schedule-page{grid-template-columns:16rem minmax(0,1fr);align-items:start}.schedule-summary-card{position:sticky;top:1rem}.schedule-dates__scroller{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));grid-auto-flow:row;grid-auto-columns:unset;overflow:visible}}.specialty-skeleton{gap:.85rem;display:grid}.specialty-skeleton__card{background:linear-gradient(90deg, color-mix(in srgb, var(--gc-surface) 70%, #d7e5e1) 0%, color-mix(in srgb, var(--gc-accent-soft) 55%, white) 50%, color-mix(in srgb, var(--gc-surface) 70%, #d7e5e1) 100%);background-size:200% 100%;border-radius:1.15rem;min-height:5.5rem;animation:1.2s ease-in-out infinite specialty-skeleton-pulse}@keyframes specialty-skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width>=720px){.specialty-skeleton{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-app,.admin-login,.admin-auth-loading,.admin-modal-overlay,.admin-toast-host{--gc-primary:#c244a5;--gc-primary-dark:#a8348d;--gc-primary-soft:#fbeaf6;--gc-secondary:#5b2c6f;--gc-secondary-dark:#432050;--gc-secondary-soft:#f3eaf6;--gc-background:#f8f8fa;--gc-surface:#fff;--gc-surface-muted:#f3f3f6;--gc-text-primary:#202027;--gc-text-secondary:#7d7d87;--gc-text-muted:#9a9aa3;--gc-border:#e6e6ec;--gc-border-strong:#d5d5de;--gc-success:#2e7d5b;--gc-success-soft:#e7f5ee;--gc-warning:#e6a23c;--gc-warning-soft:#fff5e5;--gc-error:#d64545;--gc-error-soft:#fdecec;--gc-info:#3978c5;--gc-info-soft:#eaf2fc;--gc-radius-sm:8px;--gc-radius-md:12px;--gc-radius-lg:16px;--gc-radius-xl:24px;--gc-radius-pill:999px;--gc-space-1:4px;--gc-space-2:8px;--gc-space-3:12px;--gc-space-4:16px;--gc-space-5:20px;--gc-space-6:24px;--gc-space-8:32px;--gc-space-10:40px;--gc-space-12:48px;--gc-space-16:64px;--gc-shadow-sm:0 1px 2px #2020270a;--gc-shadow-md:0 4px 16px #2020270f;--gc-shadow-lg:0 12px 32px #20202714;--gc-sidebar-width:16.5rem;--gc-font-display:"Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif;--gc-font-body:"Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif;--gc-font-size:13.5px;--gc-font-size-sm:12px;--gc-font-size-lg:15px;--gc-line-height:1.45;--admin-ink:var(--gc-text-primary);--admin-muted:var(--gc-text-secondary);--admin-surface:var(--gc-surface);--admin-panel:var(--gc-surface-muted);--admin-border:var(--gc-border);--admin-accent:var(--gc-primary);--admin-accent-deep:var(--gc-primary-dark);--admin-danger:var(--gc-error);--admin-warning:var(--gc-warning);--admin-sidebar:var(--gc-surface);--admin-sidebar-text:var(--gc-text-secondary);color:var(--gc-text-primary);font-family:var(--gc-font-body);font-size:var(--gc-font-size);line-height:var(--gc-line-height);letter-spacing:0;font-weight:400}.admin-app h1,.admin-app h2,.admin-app h3,.admin-app h4,.admin-login h1,.admin-login h2,.admin-login h3,.admin-login h4,.admin-modal-overlay h1,.admin-modal-overlay h2,.admin-modal-overlay h3,.admin-modal-overlay h4{font-family:var(--gc-font-display);font-weight:600;line-height:1.3}.admin-app h1,.admin-login h1,.admin-app h2,.admin-login h2,.admin-modal-overlay h2{font-size:1.05rem}.admin-app h3,.admin-login h3{font-size:.92rem}.admin-app h4,.admin-login h4{font-size:.84rem}.admin-button{appearance:none;border-radius:var(--gc-radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;min-height:2.15rem;padding:.45rem .8rem;font-size:.875rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex}.admin-button:focus-visible{outline:2px solid var(--gc-primary);outline-offset:2px}.admin-button:disabled{opacity:.55;cursor:not-allowed}.admin-button--sm,.admin-button--small{min-height:1.75rem;padding:.3rem .55rem;font-size:.78rem}.admin-button--lg{min-height:2.4rem;padding:.55rem .95rem;font-size:.9rem}.admin-button--primary{background:var(--gc-primary);color:#fff}.admin-button--primary:hover:not(:disabled){background:var(--gc-primary-dark)}.admin-button--secondary{background:var(--gc-secondary);color:#fff}.admin-button--secondary:hover:not(:disabled){background:var(--gc-secondary-dark)}.admin-button--outline{border-color:var(--gc-border-strong);color:var(--gc-text-primary);background:0 0}.admin-button--outline:hover:not(:disabled){background:var(--gc-surface-muted);border-color:var(--gc-primary);color:var(--gc-primary)}.admin-button--ghost{border-color:var(--gc-border);color:var(--gc-text-primary);background:0 0}.admin-button--ghost:hover:not(:disabled){background:var(--gc-primary-soft);border-color:var(--gc-primary-soft);color:var(--gc-primary-dark)}.admin-button--danger{color:var(--gc-error);background:0 0;border-color:#d645454d}.admin-button--danger:hover:not(:disabled){background:var(--gc-error-soft)}.admin-modal__actions .admin-button--danger{background:var(--gc-error);border-color:var(--gc-error);color:#fff}.admin-modal__actions .admin-button--danger:hover:not(:disabled){background:#b93a3a}.admin-icon-button{appearance:none;border-radius:var(--gc-radius-md);border:1px solid var(--gc-border);background:var(--gc-surface);width:2.5rem;height:2.5rem;color:var(--gc-text-primary);cursor:pointer;place-items:center;transition:background .16s,border-color .16s,color .16s;display:inline-grid}.admin-icon-button:hover{background:var(--gc-primary-soft);border-color:var(--gc-primary-soft);color:var(--gc-primary-dark)}.admin-icon-button:focus-visible{outline:2px solid var(--gc-primary);outline-offset:2px}.admin-page-header{justify-content:space-between;align-items:center;gap:var(--gc-space-4);margin-bottom:var(--gc-space-5);display:flex}.admin-page-header h2{font-family:var(--gc-font-display);color:var(--gc-text-primary);margin:0;font-size:1.05rem;font-weight:600}.admin-page-header p{color:var(--gc-text-secondary);margin:.25rem 0 0;font-size:.82rem}.admin-card{background:var(--gc-surface);border:1px solid var(--gc-border);border-radius:var(--gc-radius-lg);padding:var(--gc-space-5);box-shadow:var(--gc-shadow-sm)}.admin-stats{gap:var(--gc-space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.admin-stats--six{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-stat{background:var(--gc-surface);border:1px solid var(--gc-border);border-radius:var(--gc-radius-lg);box-shadow:var(--gc-shadow-sm);padding:.85rem 1rem}.admin-stat__label{color:var(--gc-text-secondary);margin:0;font-size:.75rem}.admin-stat__value{font-size:1.2rem;font-family:var(--gc-font-display);color:var(--gc-secondary);margin:.35rem 0 0;font-weight:600}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:48rem}.admin-table th,.admin-table td{text-align:start;border-bottom:1px solid var(--gc-border);vertical-align:middle;padding:.55rem .6rem;font-size:.82rem}.admin-table th{color:var(--gc-text-secondary);background:var(--gc-surface-muted);font-size:.75rem;font-weight:600}.admin-table tbody tr:hover{background:#fbeaf659}.admin-actions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-badge{border-radius:var(--gc-radius-pill);align-items:center;padding:.12rem .45rem;font-size:.72rem;font-weight:600;display:inline-flex}.admin-badge--active{background:var(--gc-success-soft);color:var(--gc-success)}.admin-badge--inactive{background:var(--gc-error-soft);color:var(--gc-error)}.admin-form{gap:var(--gc-space-4);max-width:42rem;display:grid}.admin-form-grid{gap:var(--gc-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-field{gap:.4rem;display:grid}.admin-field--full{grid-column:1/-1}.admin-field label,.admin-field>span{font-size:.78rem;font-weight:600}.admin-field p{margin:0;font-size:.84rem}.admin-field input,.admin-field select,.admin-field textarea{border:1px solid var(--gc-border);border-radius:var(--gc-radius-md);width:100%;color:var(--gc-text-primary);background:#fff;padding:.45rem .65rem;font-size:.84rem}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--gc-primary);outline:2px solid #c244a540}.admin-field__error{color:var(--gc-error);margin:0;font-size:.75rem}.admin-check{align-items:flex-start;gap:.5rem;min-width:0;font-size:.82rem;font-weight:500;line-height:1.45;display:flex}.admin-field .admin-check input,.admin-field input[type=checkbox],.admin-field input[type=radio]{flex:none;width:1rem;height:1rem;margin-top:.15rem;padding:0}.admin-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.admin-pagination{color:var(--gc-text-secondary);justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;font-size:.78rem;display:flex}.admin-state{text-align:center;color:var(--gc-text-secondary);padding:2rem 1rem}.admin-state__actions{margin-top:var(--gc-space-4);justify-content:center;gap:var(--gc-space-2);display:flex}.admin-breadcrumbs{color:var(--gc-text-muted);flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;padding:0;font-size:.75rem;list-style:none;display:flex}.admin-breadcrumbs__item{align-items:center;gap:.35rem;display:inline-flex}.admin-breadcrumbs a{color:var(--gc-text-secondary);text-decoration:none}.admin-breadcrumbs a:hover{color:var(--gc-primary)}.admin-breadcrumbs__sep{color:var(--gc-border-strong)}.admin-breadcrumbs__current{color:var(--gc-text-primary);font-weight:600}.admin-avatar{border-radius:var(--gc-radius-pill);background:var(--gc-primary-soft);width:2.4rem;height:2.4rem;color:var(--gc-primary-dark);flex-shrink:0;place-items:center;font-size:.9rem;font-weight:700;display:grid}.admin-modal-overlay{z-index:1200;padding:var(--gc-space-4);background:#20202773;place-items:center;display:grid;position:fixed;inset:0}.admin-modal{background:var(--gc-surface);border-radius:var(--gc-radius-lg);border:1px solid var(--gc-border);width:min(28rem,100%);box-shadow:var(--gc-shadow-lg);padding:var(--gc-space-6);max-height:calc(100vh - 2rem);overflow:auto}.admin-modal__title{font-family:var(--gc-font-display);margin:0;font-size:1rem;font-weight:600}.admin-modal__body{margin:var(--gc-space-3) 0 var(--gc-space-6);color:var(--gc-text-secondary);line-height:1.6}.admin-modal__actions{justify-content:flex-end;gap:var(--gc-space-2);flex-wrap:wrap;display:flex}.admin-dropdown{position:relative}.admin-dropdown__menu{inset-inline-end:0;background:var(--gc-surface);border:1px solid var(--gc-border);border-radius:var(--gc-radius-md);min-width:11rem;box-shadow:var(--gc-shadow-md);z-index:40;padding:.35rem;position:absolute;top:calc(100% + .4rem)}.admin-dropdown__item{appearance:none;text-align:start;border-radius:var(--gc-radius-sm);cursor:pointer;width:100%;color:var(--gc-text-primary);font:inherit;background:0 0;border:0;padding:.65rem .75rem}.admin-dropdown__item:hover{background:var(--gc-primary-soft);color:var(--gc-primary-dark)}.admin-dropdown__item--danger{color:var(--gc-error)}.admin-skeleton{gap:var(--gc-space-3);display:grid}.admin-skeleton__line{border-radius:var(--gc-radius-sm);background:linear-gradient(90deg, var(--gc-surface-muted) 0%, #ececf2 50%, var(--gc-surface-muted) 100%);background-size:200% 100%;height:.85rem;animation:1.2s ease-in-out infinite admin-skeleton-shine}@keyframes admin-skeleton-shine{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=960px){.admin-stats,.admin-filters,.admin-form-grid{grid-template-columns:1fr 1fr}}@media (width<=640px){.admin-stats,.admin-filters,.admin-form-grid{grid-template-columns:1fr}.admin-page-header{flex-direction:column;align-items:stretch}.admin-modal{border-radius:var(--gc-radius-lg);width:100%;min-height:auto}}.admin-app{grid-template-columns:var(--gc-sidebar-width) 1fr;background:var(--gc-background);min-height:100vh;color:var(--gc-text-primary);display:grid}.admin-sidebar{background:var(--gc-surface);height:100vh;color:var(--gc-text-secondary);padding:var(--gc-space-5) var(--gc-space-3);gap:var(--gc-space-5);border-inline-end:1px solid var(--gc-border);z-index:30;flex-direction:column;display:flex;position:sticky;top:0}.admin-sidebar__brand{gap:var(--gc-space-2);padding:var(--gc-space-2);flex-direction:column;display:flex}.admin-sidebar__logo-plate{border-radius:var(--gc-radius-md);padding:var(--gc-space-3) var(--gc-space-4);background:#000;justify-content:center;align-items:center;display:flex}.admin-sidebar__logo{width:100%;max-width:11.5rem;height:auto;display:block}.admin-sidebar__brand-copy{padding-inline:var(--gc-space-1)}.admin-sidebar__brand-copy strong{color:var(--gc-text-primary);font-family:var(--gc-font-display);font-size:.88rem;font-weight:600;display:block}.admin-sidebar__brand-copy p{color:var(--gc-text-muted);margin:.1rem 0 0;font-size:.72rem}.admin-sidebar__nav{gap:var(--gc-space-5);flex-direction:column;flex:1;min-height:0;padding-inline-end:var(--gc-space-1);display:flex;overflow-y:auto}.admin-sidebar__group{gap:var(--gc-space-2);display:grid}.admin-sidebar__group-label{padding-inline:var(--gc-space-3);letter-spacing:.03em;text-transform:uppercase;color:var(--gc-text-muted);margin:0;font-size:.68rem;font-weight:600}.admin-sidebar__link{border-radius:var(--gc-radius-md);color:var(--gc-text-secondary);align-items:center;gap:.55rem;padding:.45rem .7rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:background .16s,color .16s;display:flex}.admin-sidebar__link:hover{background:var(--gc-primary-soft);color:var(--gc-primary-dark)}.admin-sidebar__link.is-active{background:var(--gc-primary-soft);color:var(--gc-primary-dark);font-weight:600}.admin-sidebar__link-icon{opacity:.9;flex-shrink:0}.admin-sidebar-overlay{display:none}.admin-main{flex-direction:column;min-width:0;min-height:100vh;display:flex}.admin-header{justify-content:space-between;align-items:flex-start;gap:var(--gc-space-4);padding:var(--gc-space-5) var(--gc-space-6);border-bottom:1px solid var(--gc-border);background:var(--gc-surface);z-index:20;display:flex;position:sticky;top:0}.admin-header__start{align-items:flex-start;gap:var(--gc-space-3);flex:1;min-width:0;display:flex}.admin-header__menu{margin-top:.15rem;display:none}.admin-header__meta{min-width:0}.admin-header__title{font-size:1.05rem;font-family:var(--gc-font-display);color:var(--gc-text-primary);margin:.2rem 0 0;font-weight:600}.admin-header__description{color:var(--gc-text-secondary);margin:.2rem 0 0;font-size:.78rem}.admin-header__user{align-items:center;gap:var(--gc-space-3);flex-shrink:0;display:flex}.admin-header__user-trigger{appearance:none;border:1px solid var(--gc-border);background:var(--gc-surface);border-radius:var(--gc-radius-pill);cursor:pointer;font:inherit;color:inherit;align-items:center;gap:.65rem;padding:.35rem .65rem .35rem .35rem;display:flex}.admin-header__user-trigger:hover{border-color:var(--gc-primary);background:var(--gc-primary-soft)}.admin-header__user-trigger:focus-visible{outline:2px solid var(--gc-primary);outline-offset:2px}.admin-header__user-text{text-align:start}.admin-header__user-text strong{font-size:.8rem;font-weight:600;display:block}.admin-header__user-text p{color:var(--gc-text-muted);margin:.1rem 0 0;font-size:.72rem}.admin-content{padding:var(--gc-space-6);width:100%;max-width:90rem}.admin-auth-loading{min-height:100vh;color:var(--gc-text-secondary);background:var(--gc-background);place-items:center;display:grid}.admin-login{min-height:100vh;padding:var(--gc-space-6);background:radial-gradient(circle at 15% 20%, #c244a51f, transparent 35%), radial-gradient(circle at 85% 80%, #5b2c6f1a, transparent 40%), var(--gc-background);place-items:center;display:grid}.admin-login__card{background:var(--gc-surface);border-radius:var(--gc-radius-xl);width:min(26rem,100%);padding:var(--gc-space-8) var(--gc-space-6);box-shadow:var(--gc-shadow-md);border:1px solid var(--gc-border)}.admin-login__brand{margin-bottom:var(--gc-space-6);text-align:center}.admin-login__logo-plate{border-radius:var(--gc-radius-lg);padding:var(--gc-space-4) var(--gc-space-5);margin-bottom:var(--gc-space-4);background:#000;justify-content:center;align-items:center;display:inline-flex}.admin-login__logo{width:min(14rem,70vw);height:auto;display:block}.admin-login__brand strong{font-size:1.05rem;font-family:var(--gc-font-display);color:var(--gc-text-primary);font-weight:600;display:block}.admin-login__brand p{color:var(--gc-text-secondary);margin:.25rem 0 0;font-size:.82rem}.admin-login__error{background:var(--gc-error-soft);color:var(--gc-error);border-radius:var(--gc-radius-md);border:1px solid #d6454540;margin-bottom:1rem;padding:.75rem .9rem}body.admin-drawer-open{overflow:hidden}@media (width<=960px){.admin-app{grid-template-columns:1fr}.admin-sidebar{width:min(20rem,86vw);height:100vh;box-shadow:var(--gc-shadow-lg);transition:transform .22s;position:fixed;inset-block:0;inset-inline:0 auto;transform:translate(-110%)}[dir=rtl] .admin-sidebar{transform:translate(110%)}[dir=ltr] .admin-sidebar{transform:translate(-110%)}.admin-sidebar.is-open,[dir=rtl] .admin-sidebar.is-open,[dir=ltr] .admin-sidebar.is-open{transform:translate(0)}.admin-sidebar-overlay{z-index:25;opacity:0;pointer-events:none;background:#20202766;border:0;padding:0;transition:opacity .2s;display:block;position:fixed;inset:0}.admin-sidebar-overlay.is-visible{opacity:1;pointer-events:auto}.admin-header__menu{display:inline-grid}.admin-header{flex-direction:column;align-items:stretch}.admin-header__user{justify-content:flex-end}}@media (width<=640px){.admin-content,.admin-header{padding:var(--gc-space-4)}.admin-header__user-text{display:none}}.dash{flex-direction:column;gap:1.125rem;display:flex}.dash--busy .dash-card,.dash--busy .dash-kpi{opacity:.72}.dash-skel{background:linear-gradient(90deg,#eef0f4 0%,#f7f8fb 50%,#eef0f4 100%) 0 0/200% 100%;border-radius:14px;animation:1.2s ease-in-out infinite dash-shimmer}.dash-skel--title{height:3.2rem}.dash-skel--kpis{height:6.5rem}.dash-skel--row{height:16rem}@keyframes dash-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.dash-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;min-height:44px;display:flex}.dash-toolbar__field,.dash-toolbar__dates label{color:var(--gc-text-secondary);white-space:nowrap;align-items:center;gap:.4rem;margin:0;font-size:.78rem;display:inline-flex}.dash-toolbar select,.dash-toolbar input,.dash-toolbar .admin-button{border:1px solid var(--gc-border);height:44px;min-height:44px;color:var(--gc-text-primary);font:inherit;background:#fff;border-radius:10px;padding:0 .75rem;font-size:.85rem}.dash-toolbar__dates{gap:.5rem;display:flex}.dash-inline-error{color:var(--gc-error);margin:0;font-size:.85rem}.dash-kpis{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem;display:grid}.dash-kpi{border:1px solid var(--gc-border);box-shadow:none;background:#fff;border-radius:14px;flex-direction:column;gap:.15rem;padding:1rem 1.125rem;display:flex}.dash-kpi p{color:var(--gc-text-secondary);align-items:center;gap:.35rem;margin:0;font-size:.78rem;line-height:1.3;display:flex}.dash-kpi__icon{color:var(--gc-primary);display:inline-flex}.dash-kpi__hint{color:var(--gc-text-muted,var(--gc-text-secondary));font-size:.68rem}.dash-kpi__row{justify-content:space-between;align-items:flex-end;gap:.4rem;display:flex}.dash-kpi strong{letter-spacing:-.02em;font-size:1.75rem;font-weight:700;line-height:1.1}.dash-kpi__trend{color:var(--gc-text-secondary);font-size:.75rem}.dash-kpi__trend--good{color:var(--gc-success)}.dash-kpi__trend--bad{color:var(--gc-error)}.dash-spark{flex:none;width:4.6rem;height:1.6rem}.dash-board{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.dash-span-8{grid-column:span 8}.dash-span-6{grid-column:span 6}.dash-span-4{grid-column:span 4}.dash-card{border:1px solid var(--gc-border);min-width:0;box-shadow:none;background:#fff;border-radius:14px;flex-direction:column;gap:.8rem;padding:1.125rem 1.25rem;display:flex}.dash-card header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.dash-card h3{margin:0;font-size:.95rem;font-weight:700}.dash-card__sub,.dash-card header p{color:var(--gc-text-secondary);margin:.15rem 0 0;font-size:.78rem}.dash-card header a{color:var(--gc-primary);white-space:nowrap;font-size:.78rem;font-weight:600;text-decoration:none}.dash-empty{color:var(--gc-text-secondary);text-align:center;margin:0;padding:1.25rem .25rem;font-size:.85rem}.dash-empty--good{color:var(--gc-success);justify-content:center;align-items:center;gap:.4rem;padding:.35rem .25rem .15rem;display:flex}.dash-donut{grid-template-columns:8.5rem minmax(0,1fr);align-items:center;gap:.85rem;display:grid}.dash-donut__figure{width:8.5rem;height:8.5rem;position:relative}.dash-donut svg{width:100%;height:100%}.dash-donut__track{fill:none;stroke:#eef0f4;stroke-width:12px}.dash-donut__center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:22%}.dash-donut__center strong{font-size:1.35rem;line-height:1}.dash-donut__center span{color:var(--gc-text-secondary);margin-top:.15rem;font-size:.68rem;line-height:1.25}.dash-legend{flex-direction:column;align-items:flex-start;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.dash-legend li{align-items:center;gap:.4rem;width:max-content;max-width:100%;font-size:.82rem;display:flex}.dash-legend__swatch{border-radius:50%;width:.55rem;height:.55rem}.dash-legend__label{min-width:0}.dash-legend__value{white-space:nowrap;align-items:baseline;gap:.35rem;font-weight:700;display:inline-flex}.dash-legend__value small{color:var(--gc-text-secondary);font-size:.72rem;font-weight:500}.dash-trend svg{direction:ltr;width:100%;height:auto;display:block}.dash-trend__grid{stroke:#e6eaef;stroke-width:1px}.dash-trend__baseline{stroke:#b7bec8;stroke-width:1.25px}.dash-trend__axis{fill:#8b909a;font-size:11px}.dash-trend__online-zero{fill:#3978c5;stroke:#fff;stroke-width:1px}.dash-trend__area{fill:#5b2c6f14;stroke:none}.dash-trend__in-person{fill:none;stroke:#5b2c6f;stroke-width:2.5px}.dash-trend__online{fill:none;stroke:#3978c5;stroke-width:2.5px}.dash-trend__dot{fill:#5b2c6f}.dash-trend__tip{color:var(--gc-text-secondary);margin:.15rem 0 0;font-size:.75rem}.dash-trend__legend{color:var(--gc-text-secondary);gap:.9rem;margin-top:.2rem;font-size:.75rem;display:flex}.dash-trend__legend span{align-items:center;gap:.3rem;display:inline-flex}.dash-trend__swatch{border-radius:50%;width:.45rem;height:.45rem}.dash-trend__swatch--clinic{background:#5b2c6f}.dash-trend__swatch--remote{background:#3978c5}.dash-trend__legend small{color:var(--gc-text-secondary);font-size:.72rem}.dash-today{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.dash-today li{border-bottom:1px solid #f0f1f4;grid-template-columns:3.2rem minmax(0,1.4fr) minmax(0,1.1fr) auto auto;align-items:center;gap:.55rem;padding:.55rem 0;font-size:.82rem;display:grid}.dash-today li:last-child{border-bottom:0}.dash-today__head{color:var(--gc-text-secondary);padding-bottom:.35rem;font-size:.72rem;font-weight:600}.dash-today__head span{font-weight:600}.dash-today time{font-variant-numeric:tabular-nums;font-weight:700}.dash-today li>span:nth-child(3){color:var(--gc-text-secondary)}.dash-today strong,.dash-today span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dash-chip,.dash-status{border-radius:999px;justify-self:start;padding:.12rem .45rem;font-size:.72rem;font-weight:600}.dash-chip{color:#5b2c6f;background:#f4f1f6}.dash-status--pending{color:#8a5a10;background:#fff6e8}.dash-status--confirmed{color:#245a96;background:#eef4fb}.dash-status--completed{color:#1f6b45;background:#eef7f2}.dash-status--cancelled{color:#a33b3b;background:#fdecec}.dash-status--no_show{color:#9a4e16;background:#fff1e8}.dash-alerts{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.dash-alerts a{color:inherit;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.82rem;text-decoration:none;display:grid}.dash-alerts__item--warning a{background:#fff8ee}.dash-alerts__item--info a{background:#f4f7fb}.dash-alerts__item--critical a{background:#fdecec}.dash-alerts svg{color:#8a6230}.dash-alerts__item--info svg{color:#3978c5}.dash-alerts__item--critical svg{color:#a33b3b}.dash-bars{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.dash-bars__meta{justify-content:space-between;gap:.6rem;margin-bottom:.25rem;font-size:.82rem;display:flex}.dash-bars__meta span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dash-bars__meta strong{white-space:nowrap;flex:none}.dash-bars__track{background:#eef0f4;border-radius:99px;height:.42rem;overflow:hidden}.dash-bars__track span{border-radius:inherit;background:#5b2c6f;height:100%;display:block}.dash-bars--blue .dash-bars__track span{background:#3978c5}.dash-bars p{color:var(--gc-text-secondary);margin:.2rem 0 0;font-size:.72rem}.dash-metrics{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.55rem;margin:0;display:grid}.dash-metrics div{background:#f8f9fb;border-radius:10px;padding:.55rem .6rem}.dash-metrics dt{color:var(--gc-text-secondary);font-size:.72rem}.dash-metrics dd{margin:.15rem 0 0;font-size:1.15rem;font-weight:700}.dash-money{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.dash-money li{background:#f8f9fb;border-radius:10px;flex-direction:column;gap:.1rem;padding:.45rem .6rem;font-size:.78rem;display:flex}@media (width<=1100px){.dash-board{grid-template-columns:1fr 1fr}.dash-span-8,.dash-span-6,.dash-span-4{grid-column:auto}}@media (width<=760px){.dash-kpis,.dash-board,.dash-donut,.dash-metrics{grid-template-columns:1fr}.dash-span-8,.dash-span-6,.dash-span-4{grid-column:auto}.dash-today li{grid-template-columns:3.1rem minmax(0,1fr)}.dash-today .dash-chip,.dash-today .dash-status{grid-column:2}}.doctor-form-page{min-width:0}.doctor-form-page .admin-page-header{flex-wrap:wrap;align-items:flex-start}.doctor-form.admin-form{width:100%;max-width:none;container-type:inline-size}.doctor-form .admin-form-grid{grid-template-columns:minmax(0,1fr)}.doctor-form .admin-card{min-width:0}.doctor-form__choices{grid-template-columns:minmax(0,1fr);gap:.55rem 1rem;display:grid}.doctor-form__section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.doctor-form__notice{border:1px solid var(--gc-border);border-radius:var(--gc-radius-md);background:var(--gc-surface-muted);gap:.45rem;min-width:0;padding:.9rem 1rem;display:grid}.doctor-form__notice-copy{gap:.15rem;min-width:0;display:grid}.doctor-form__en{text-align:left;color:var(--gc-text-secondary);overflow-wrap:anywhere;direction:ltr;unicode-bidi:isolate;display:block}.doctor-form__actions{justify-content:flex-end;display:flex}.doctor-form__actions .admin-button{width:100%}@container (width>=40rem){.doctor-form__choices{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-form__actions .admin-button{width:auto;min-width:8rem}}@container (width>=52rem){.doctor-form .admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=68rem){.doctor-form__choices{grid-template-columns:repeat(3,minmax(0,1fr))}}.schedule-page{gap:1rem;display:grid}.schedule-doctor-picker{gap:.75rem;display:grid}.schedule-doctor-meta{color:var(--admin-muted);margin:0}.schedule-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.schedule-tabs__btn{appearance:none;border:1px solid var(--admin-border);color:var(--admin-ink);cursor:pointer;background:#fff;border-radius:.7rem;padding:.7rem 1.1rem;font-weight:600;transition:background .16s,border-color .16s,color .16s}.schedule-tabs__btn.is-active{background:var(--admin-accent);border-color:var(--admin-accent);color:#fff}.schedule-week{gap:.85rem;display:grid}.schedule-day__header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.schedule-day__header h3{font-family:var(--gc-font-display);margin:0;font-size:.95rem;font-weight:600}.schedule-day__empty{color:var(--admin-muted);margin:0;font-size:.82rem}.schedule-ranges{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.schedule-range{border:1px solid var(--admin-border);background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:.85rem;padding:.9rem}.schedule-range__main{gap:.35rem;display:grid}.schedule-range__main strong{font-size:.88rem;font-weight:600}.schedule-range__main span{color:var(--admin-muted);font-size:.78rem}.schedule-breaks{gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.schedule-breaks li{background:#f1f5f9;border-radius:.6rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .7rem;font-size:.78rem;display:flex}.schedule-inline-form{border-top:1px dashed var(--admin-border);gap:.85rem;margin-top:.9rem;padding-top:.9rem;display:grid}.schedule-exceptions{gap:1rem;display:grid}.schedule-exceptions__toolbar{justify-content:flex-end;display:flex}.schedule-calendar__header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.schedule-calendar__weekdays{color:var(--admin-muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;margin-bottom:.35rem;font-size:.75rem;font-weight:600;display:grid}.schedule-calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.schedule-calendar__cell{border:1px solid var(--admin-border);cursor:pointer;text-align:start;background:#fff;border-radius:.65rem;flex-direction:column;align-items:flex-start;gap:.25rem;min-height:4.5rem;padding:.45rem;transition:border-color .16s,background .16s;display:flex}.schedule-calendar__cell:hover:not(.is-empty){border-color:var(--admin-accent);background:#f0fdfa}.schedule-calendar__cell.is-empty{cursor:default;background:0 0;border-color:#0000;min-height:4.5rem}.schedule-calendar__cell.has-exception{background:#ecfeff;border-color:#0f766e59}.schedule-calendar__day{font-size:.82rem;font-weight:700}.schedule-calendar__tag{background:var(--gc-primary-soft,#fbeaf6);color:var(--gc-primary-dark,#a8348d);border-radius:999px;padding:.1rem .35rem;font-size:.68rem;font-weight:600;display:inline-flex}.schedule-calendar__tag--closed,.schedule-calendar__tag--vacation{background:var(--gc-error-soft,#fdecec);color:var(--gc-error,#d64545)}.schedule-calendar__tag--special_hours{background:var(--gc-warning-soft,#fff5e5);color:var(--gc-warning,#e6a23c)}.schedule-calendar__tag--meeting,.schedule-calendar__tag--training{background:var(--gc-info-soft,#eaf2fc);color:var(--gc-info,#3978c5)}@media (width<=720px){.schedule-calendar__cell{min-height:3.6rem;padding:.3rem}.schedule-calendar__tag{display:none}}.admin-toast-host{z-index:1000;gap:.65rem;width:min(22rem,100vw - 2rem);display:grid;position:fixed;inset-block-start:1.25rem;inset-inline-end:1.25rem}.admin-toast{border-radius:var(--gc-radius-md,12px);color:#fff;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.7rem .85rem;font-family:Noto Sans Arabic,Segoe UI,Tahoma,sans-serif;font-size:.82rem;line-height:1.45;animation:.22s ease-out admin-toast-in;display:flex;box-shadow:0 10px 30px #2020271f}.admin-toast--success{background:var(--gc-success,#2e7d5b)}.admin-toast--error{background:var(--gc-error,#d64545)}.admin-toast__close{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:1.15rem;line-height:1}@keyframes admin-toast-in{0%{opacity:0;transform:translateY(-.4rem)}to{opacity:1;transform:translateY(0)}}.api-status{background:color-mix(in srgb, var(--gc-surface) 82%, transparent);border:1px solid color-mix(in srgb, var(--gc-ink) 10%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--gc-muted);border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .7rem;font-size:.78rem;display:inline-flex}.api-status__dot{background:var(--gc-muted);border-radius:50%;width:.5rem;height:.5rem}.api-status--checking .api-status__dot{animation:1.2s ease-in-out infinite pulse}.api-status--online .api-status__dot{background:var(--gc-success)}.api-status--online{color:color-mix(in srgb, var(--gc-success) 75%, var(--gc-ink))}.api-status--offline .api-status__dot{background:var(--gc-danger)}.api-status--offline{color:color-mix(in srgb, var(--gc-danger) 75%, var(--gc-ink))}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}.app-header{justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;display:flex}.app-header__brand{align-items:center;gap:.75rem;display:flex}.app-header__mark{letter-spacing:.04em;color:#fff;background:linear-gradient(145deg, var(--gc-accent), var(--gc-accent-deep));width:2.6rem;height:2.6rem;box-shadow:0 10px 24px color-mix(in srgb, var(--gc-accent) 28%, transparent);border-radius:.9rem;place-items:center;font-size:.78rem;font-weight:800;display:grid}.app-header__titles{flex-direction:column;line-height:1.15;display:flex}.app-header__name{font-family:var(--gc-font-display);color:var(--gc-ink);font-size:1.15rem}.app-header__name-en{letter-spacing:.08em;text-transform:uppercase;color:var(--gc-muted);font-size:.72rem}@media (width>=768px){.app-header__name{font-size:1.3rem}}.app-shell{min-height:100vh;position:relative;overflow:hidden}.app-shell__backdrop{background:radial-gradient(ellipse 80% 55% at 100% 0%, color-mix(in srgb, var(--gc-accent) 18%, transparent), transparent 60%), radial-gradient(ellipse 70% 50% at 0% 100%, color-mix(in srgb, var(--gc-accent-deep) 12%, transparent), transparent 55%), linear-gradient(165deg, #f3faf8 0%, #e8f3ef 42%, #dceee8 100%);z-index:0;position:absolute;inset:0}.app-shell__container{z-index:1;width:min(100% - 2rem,68rem);margin-inline:auto;position:relative}:root{--gc-ink:#14352f;--gc-muted:#5b736d;--gc-surface:#fff;--gc-accent:#1f8a74;--gc-accent-deep:#0f5f52;--gc-accent-soft:#d8efe8;--gc-success:#1f9d6c;--gc-danger:#c24545;--gc-font-display:"Cairo", "Segoe UI", Tahoma, sans-serif;--gc-font-body:"IBM Plex Sans Arabic", "Cairo", "Segoe UI", Tahoma, sans-serif;color:var(--gc-ink);font-family:var(--gc-font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e8f3ef;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{direction:rtl}body{min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}button,input,textarea,select{font:inherit}a{color:inherit}
