/* =====================================================================
   V2.8.2 — MIKROI IROES CLINIC OS / DESIGN SYSTEM UNIFICATION
   End-to-end visual normalization for desktop + mobile.
   UI only: no Firebase schema, clinical rules, booking logic or data flow.
   Loaded LAST and therefore acts as the single visual authority.
   ===================================================================== */

:root{
  --os-bg:var(--ht-bg,#F5F7FA);
  --os-surface:var(--ht-surface,#FFFFFF);
  --os-elevated:var(--ht-elevated,#FBFCFE);
  --os-border:var(--ht-border,#E2E8F0);
  --os-text:var(--ht-text,#18212F);
  --os-secondary:var(--ht-secondary,#4B5565);
  --os-muted:var(--ht-muted,#7B8794);
  --os-primary:var(--ht-primary,#4F6FDB);
  --os-primary-tint:var(--ht-primary-tint,#EEF2FF);
  --os-success:var(--ht-success,#2F855A);
  --os-success-tint:var(--ht-success-tint,#ECF8F1);
  --os-info:var(--ht-info,#3B82F6);
  --os-info-tint:var(--ht-info-tint,#EFF6FF);
  --os-warning:var(--ht-warning,#B7791F);
  --os-warning-tint:var(--ht-warning-tint,#FFF7E6);
  --os-critical:var(--ht-critical,#C2413B);
  --os-critical-tint:var(--ht-critical-tint,#FFF0EF);
  --os-allergy:var(--ht-allergy,#A23B72);
  --os-allergy-tint:var(--ht-allergy-tint,#FBEAF3);
  --os-radius-sm:6px;
  --os-radius:8px;
  --os-radius-lg:10px;
  --os-shadow:0 6px 18px rgba(15,23,42,.06);

  /* monochrome outline icon masks */
  --ico-bell:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9'/%3E%3Cpath d='M10 21h4'/%3E%3C/svg%3E");
  --ico-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L8 9.73a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
  --ico-cart:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='19' cy='20' r='1'/%3E%3Cpath d='M3 4h2l2.4 10.2a2 2 0 0 0 2 1.6h7.8a2 2 0 0 0 2-1.6L21 7H6'/%3E%3C/svg%3E");
  --ico-calendar:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E");
  --ico-globe:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18'/%3E%3C/svg%3E");
  --ico-database:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='5' rx='8' ry='3'/%3E%3Cpath d='M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6'/%3E%3C/svg%3E");
  --ico-settings:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .34 1.88l.06.06-2.83 2.83-.06-.06A1.7 1.7 0 0 0 15 19.4a1.7 1.7 0 0 0-1 .6 1.7 1.7 0 0 0-.4 1.1V21H9.6v-.1A1.7 1.7 0 0 0 8 19.4a1.7 1.7 0 0 0-1.88.34l-.06.06-2.83-2.83.06-.06A1.7 1.7 0 0 0 3.6 15a1.7 1.7 0 0 0-.6-1 1.7 1.7 0 0 0-1.1-.4H2V9.6h.1A1.7 1.7 0 0 0 3.6 8a1.7 1.7 0 0 0-.34-1.88l-.06-.06 2.83-2.83.06.06A1.7 1.7 0 0 0 8 3.6a1.7 1.7 0 0 0 1-.6 1.7 1.7 0 0 0 .4-1.1V2h4v.1A1.7 1.7 0 0 0 15 3.6a1.7 1.7 0 0 0 1.88-.34l.06-.06 2.83 2.83-.06.06A1.7 1.7 0 0 0 19.4 8c.15.37.36.7.6 1 .3.3.68.44 1.1.4h.1v4h-.1a1.7 1.7 0 0 0-1.7 1.6z'/%3E%3C/svg%3E");
  --ico-tools:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5-5L7.5 3.5l3 3 2.2-2.2a4 4 0 0 0 2 5L6 18l-2 2 2 2 2-2 8.7-8.7a4 4 0 0 0 5-5l-2.2 2.2-3-3 2.2-2.2z'/%3E%3C/svg%3E");
  --ico-users:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3.5 20c.7-4 2.6-6 5.5-6s4.8 2 5.5 6M16 5.5a3 3 0 0 1 0 5.5M15.5 14c3.1-.4 5.2 1.6 5.8 5'/%3E%3C/svg%3E");
  --ico-chart:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V9M10 19V5M16 19v-7M22 19H2'/%3E%3C/svg%3E");
  --ico-file:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h8M8 17h6'/%3E%3C/svg%3E");
  --ico-note:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v16H4zM8 9h8M8 13h8M8 17h5'/%3E%3C/svg%3E");
  --ico-syringe:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m18 2 4 4M17 7l-3-3M5 19l-2 2M6 18l9-9M9 5l10 10M7 7l10 10'/%3E%3C/svg%3E");
  --ico-ruler:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20 20 4l-4-4L0 16zM11 5l3 3M8 8l2 2M5 11l3 3'/%3E%3C/svg%3E");
  --ico-stethoscope:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 3v5a5 5 0 0 0 10 0V3M2 3h4M12 3h4M9 13v3a5 5 0 0 0 10 0v-1'/%3E%3Ccircle cx='19' cy='12' r='2'/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------
   ONE PRODUCT / ONE VISUAL LANGUAGE
   --------------------------------------------------------------------- */
#main[data-active-view]{color:var(--os-text)!important}
#main[data-active-view] *{text-shadow:none!important}
#main[data-active-view] .page-head,
#main[data-active-view] .calendar-premium-hero,
#main[data-active-view] .clinic-patient-hero,
#main[data-active-view] .settings-page-head{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
#main[data-active-view] .page-head::before,
#main[data-active-view] .page-head::after,
#main[data-active-view] .calendar-premium-hero::before,
#main[data-active-view] .calendar-premium-hero::after,
#main[data-active-view] .clinic-patient-hero::before,
#main[data-active-view] .clinic-patient-hero::after,
#main[data-active-view] .settings-page-head::before,
#main[data-active-view] .settings-page-head::after{display:none!important;content:none!important}

/* Common page header contract */
#main[data-active-view]>.page-head,
#main[data-active-view]>.calendar-premium-hero,
#main[data-active-view]>.clinic-patient-hero{
  max-width:var(--ht-content-max)!important;
  margin:0 auto 16px!important;
  padding:0 0 15px!important;
  border:0!important;
  border-bottom:1px solid var(--os-border)!important;
  border-radius:0!important;
  min-height:0!important;
}
#main[data-active-view]>.page-head h1,
#main[data-active-view]>.calendar-premium-hero h1,
#main[data-active-view]>.clinic-patient-hero h1{margin:1px 0 0!important;font-size:22px!important;line-height:30px!important;color:var(--os-text)!important;font-weight:700!important}
#main[data-active-view]>.page-head p,
#main[data-active-view]>.calendar-premium-hero p,
#main[data-active-view]>.clinic-patient-hero p{margin:2px 0 0!important;font-size:12px!important;line-height:18px!important;color:var(--os-secondary)!important}

/* shared surface contract */
#main .panel,
#main .calendar-timeline,
#main .calendar-day-head,
#main .week-day,
#main .month-cell,
#main .task-type-tile,
#main .smart-task-card,
#main .monthly-card,
#main .clinic-month-toolbar,
#main .settings-mobile-tile,
#main .settings-item-card,
#main .settings-search-wrap,
#main .settings-search-results,
#main .secretary-page-summary span,
#main .secretary-inbox-panel,
#main .secretary-request-row,
#main .online-request-card,
#main .more-grid button,
#main .clinic-patient-info-card,
#main .clinic-patient-module-grid button,
#main .clinic-patient-flag,
#main .clinic-patient-quick-actions button{
  border-color:var(--os-border)!important;
  background:var(--os-surface)!important;
  background-image:none!important;
  color:var(--os-text)!important;
  box-shadow:none!important;
}

/* ---------------------------------------------------------------------
   CALENDAR — no decorative hero, no pastel islands
   --------------------------------------------------------------------- */
.calendar-premium-hero{display:block!important}
.calendar-premium-hero .calendar-toolbar{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:end!important;
  padding:0!important;border:0!important;background:transparent!important
}
.calendar-premium-hero .calendar-title span{display:block!important;color:var(--os-muted)!important;font-size:10px!important;line-height:15px!important;font-weight:700!important;letter-spacing:.08em!important}
.calendar-premium-hero .calendar-title h1{margin:2px 0 0!important;color:var(--os-text)!important;font-size:22px!important;line-height:30px!important}
.calendar-premium-hero .calendar-title p{color:var(--os-secondary)!important;font-size:12px!important}
.calendar-premium-hero .calendar-actions{display:flex!important;gap:6px!important;align-items:center!important}
.calendar-premium-hero .cal-icon-btn,.calendar-premium-hero .cal-today-btn,
.clinic-month-toolbar .cal-icon-btn,.clinic-month-toolbar .cal-today-btn{
  min-height:38px!important;height:38px!important;padding:0 11px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-secondary)!important;box-shadow:none!important
}
.calendar-premium-hero .cal-icon-btn{width:38px!important;padding:0!important}
.calendar-premium-hero .calendar-mode-tabs{
  margin:12px 0 0!important;padding:4px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3px!important;
  border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-elevated)!important;box-shadow:none!important
}
.calendar-premium-hero .calendar-mode-tabs button{
  min-height:34px!important;padding:6px 8px!important;border:0!important;border-radius:5px!important;background:transparent!important;color:var(--os-muted)!important;font-size:10px!important;font-weight:600!important;box-shadow:none!important
}
.calendar-premium-hero .calendar-mode-tabs button.active{background:var(--os-surface)!important;color:var(--os-primary)!important;box-shadow:0 1px 3px rgba(15,23,42,.06)!important}

.week-range{max-width:var(--ht-content-max)!important;margin:0 auto 8px!important;color:var(--os-muted)!important;font-size:10px!important}
.calendar-week-grid{max-width:var(--ht-content-max)!important;margin:0 auto!important;gap:8px!important}
.week-day{overflow:hidden!important;border:1px solid var(--os-border)!important;border-radius:8px!important;box-shadow:none!important}
.week-day.today{border-color:color-mix(in srgb,var(--os-primary) 35%,var(--os-border))!important;background:var(--os-surface)!important}
.week-day-head,.week-day.today .week-day-head{padding:11px 10px 9px!important;border:0!important;border-bottom:1px solid var(--os-border)!important;background:var(--os-elevated)!important;background-image:none!important}
.week-day-head span{color:var(--os-muted)!important;font-size:9px!important;letter-spacing:.06em!important}
.week-day-head strong{color:var(--os-text)!important;font-size:22px!important}
.week-day-head em{color:var(--os-muted)!important;font-size:8px!important}
.week-day-events{padding:7px!important;gap:5px!important}
.week-event{border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-text)!important;box-shadow:none!important}
.week-event.status-done{background:var(--os-success-tint)!important;border-color:color-mix(in srgb,var(--os-success) 25%,var(--os-border))!important}
.week-tomy-note{border-radius:6px!important;background:var(--os-warning-tint)!important;border-color:color-mix(in srgb,var(--os-warning) 25%,var(--os-border))!important;color:var(--os-secondary)!important}

.calendar-day-head{max-width:var(--ht-content-max)!important;margin:0 auto 8px!important;padding:11px 13px!important;border:1px solid var(--os-border)!important;border-radius:8px!important}
.calendar-day-head>div:first-child strong{color:var(--os-text)!important}.calendar-day-head>div:first-child span,.calendar-day-head>div:first-child small{color:var(--os-muted)!important}
.calendar-day-chips span{border:1px solid var(--os-border)!important;background:var(--os-elevated)!important;color:var(--os-secondary)!important;box-shadow:none!important}
.calendar-day-chips .done{background:var(--os-success-tint)!important;color:var(--os-success)!important;border-color:color-mix(in srgb,var(--os-success) 25%,var(--os-border))!important}
.calendar-timeline{max-width:var(--ht-content-max)!important;margin:0 auto!important;border:1px solid var(--os-border)!important;border-radius:8px!important;overflow:hidden!important}
.calendar-slot{border-color:var(--os-border)!important;background:var(--os-surface)!important}.calendar-slot:nth-child(even){background:var(--os-elevated)!important}.calendar-slot.out-of-hours{background:color-mix(in srgb,var(--os-elevated) 90%,var(--os-warning-tint))!important}
.appointment-card{border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;background-image:none!important;box-shadow:none!important}
.appointment-card.status-done{background:var(--os-success-tint)!important;border-color:color-mix(in srgb,var(--os-success) 25%,var(--os-border))!important}
.appointment-card.status-cancelled,.appointment-card.status-no-show,.appointment-card.status-noshow{background:var(--os-critical-tint)!important;border-color:color-mix(in srgb,var(--os-critical) 20%,var(--os-border))!important}
.empty-slot,.tomy-slot{border-radius:5px!important;box-shadow:none!important}
.calendar-month-grid{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}.month-cell{border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;background-image:none!important}.month-cell.today{border-color:color-mix(in srgb,var(--os-primary) 35%,var(--os-border))!important;background:var(--os-primary-tint)!important}

/* ---------------------------------------------------------------------
   TASKS — operational, compact, no emoji/productivity-app cards
   --------------------------------------------------------------------- */
#main[data-active-view="tasks"]>.page-head,
#main[data-active-view="tasks"]>.task-type-grid,
#main[data-active-view="tasks"]>.smart-task-list-panel{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}
.task-type-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin-bottom:12px!important}
.task-type-tile{position:relative!important;min-height:76px!important;padding:11px 11px 11px 54px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;text-align:left!important;box-shadow:none!important;transform:none!important}
.task-type-tile:hover{background:var(--os-elevated)!important;border-color:color-mix(in srgb,var(--os-primary) 24%,var(--os-border))!important;transform:none!important;box-shadow:none!important}
.task-type-tile>span{position:absolute!important;left:11px!important;top:12px!important;width:32px!important;height:32px!important;margin:0!important;border-radius:6px!important;background:var(--os-primary-tint)!important;color:var(--os-primary)!important;font-size:0!important;display:grid!important;place-items:center!important}
.task-type-tile>span::before,.settings-mobile-tile>span::before,.more-grid button>span::before,.clinic-patient-module-icon::before,.clinic-patient-quick-actions button>span::before{content:""!important;width:17px!important;height:17px!important;background:currentColor!important;mask:var(--ui-icon) center/contain no-repeat!important;-webkit-mask:var(--ui-icon) center/contain no-repeat!important}
.task-type-tile.type-reminder{--ui-icon:var(--ico-bell)}.task-type-tile.type-call{--ui-icon:var(--ico-phone)}.task-type-tile.type-shopping{--ui-icon:var(--ico-cart)}.task-type-tile.type-personal{--ui-icon:var(--ico-calendar)}
.task-type-tile strong{display:block!important;color:var(--os-text)!important;font-size:12px!important;line-height:17px!important;font-weight:600!important}.task-type-tile small{display:block!important;margin-top:2px!important;color:var(--os-muted)!important;font-size:9px!important;line-height:13px!important}
.smart-task-list-panel{padding:14px!important;border-radius:8px!important}.smart-task-list-head{margin-bottom:10px!important}.smart-task-list-head h3{color:var(--os-text)!important}.smart-task-list-head p{color:var(--os-muted)!important}.task-filter-tabs,.secretary-filter-bar{padding:3px!important;border:1px solid var(--os-border)!important;border-radius:7px!important;background:var(--os-elevated)!important;gap:3px!important}
.task-filter-tabs button,.secretary-filter-bar button{min-height:32px!important;padding:6px 10px!important;border:0!important;border-radius:5px!important;background:transparent!important;color:var(--os-muted)!important;font-size:10px!important;font-weight:600!important;box-shadow:none!important}
.task-filter-tabs button.active,.secretary-filter-bar button.active{background:var(--os-surface)!important;color:var(--os-primary)!important;box-shadow:0 1px 3px rgba(15,23,42,.06)!important}
.smart-task-list{gap:5px!important}.smart-task-card{min-height:52px!important;padding:8px 9px!important;border-radius:7px!important}.task-check{width:30px!important;height:30px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-success)!important}.task-check.checked{background:var(--os-success-tint)!important;border-color:color-mix(in srgb,var(--os-success) 30%,var(--os-border))!important}.task-card-main .task-type{color:var(--os-muted)!important}.task-card-main strong{color:var(--os-text)!important}.task-card-main small,.shopping-preview{color:var(--os-muted)!important}

/* ---------------------------------------------------------------------
   SECRETARY / ONLINE REQUESTS
   --------------------------------------------------------------------- */
#main[data-active-view="callbacks"]>.page-head,
#main[data-active-view="callbacks"]>.secretary-filter-bar,
#main[data-active-view="callbacks"]>.secretary-inbox-panel{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}
.secretary-page-head{align-items:end!important}.secretary-page-summary{display:flex!important;gap:6px!important}.secretary-page-summary span{padding:6px 9px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-secondary)!important;font-size:10px!important}.secretary-page-summary b{font-size:13px!important;color:var(--os-text)!important}
.secretary-filter-bar{display:inline-flex!important;margin:0 auto 10px!important}.secretary-inbox-panel{padding:10px!important}.secretary-request-row{border:1px solid var(--os-border)!important;border-radius:7px!important;background:var(--os-surface)!important;box-shadow:none!important}.secretary-request-row:hover{background:var(--os-elevated)!important}.secretary-empty{padding:32px 18px!important;color:var(--os-muted)!important}.secretary-empty strong{color:var(--os-text)!important}
.online-booking-panel{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}.online-request-card{border-radius:8px!important}.online-request-time,.online-request-notes{background:var(--os-elevated)!important;border-color:var(--os-border)!important;color:var(--os-secondary)!important}.online-request-body h3{color:var(--os-text)!important}.online-request-meta,.online-request-body p{color:var(--os-muted)!important}

/* ---------------------------------------------------------------------
   CLINIC MOVEMENT — neutral data-dense metrics
   --------------------------------------------------------------------- */
#main[data-active-view="clinic"]>.page-head,
#main[data-active-view="clinic"]>.clinic-month-toolbar,
#main[data-active-view="clinic"]>.monthly-clinic-grid,
#main[data-active-view="clinic"]>.panel,
#main[data-active-view="clinic"]>.security-note{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}
#main[data-active-view="clinic"] .clinic-month-toolbar{min-height:48px!important;padding:6px 8px!important;margin-bottom:10px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;box-shadow:none!important}
#main[data-active-view="clinic"] .clinic-month-toolbar>strong{color:var(--os-text)!important;font-size:12px!important;font-weight:600!important}
#main[data-active-view="clinic"] .monthly-clinic-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0 auto 12px!important}
#main[data-active-view="clinic"] .monthly-card,
#main[data-active-view="clinic"] .monthly-card.total,
#main[data-active-view="clinic"] .monthly-card:nth-child(n){min-height:88px!important;padding:13px 14px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;background-image:none!important;box-shadow:none!important;transform:none!important}
#main[data-active-view="clinic"] .monthly-card::before{content:""!important;position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:3px!important;height:auto!important;border-radius:8px 0 0 8px!important;background:var(--os-border)!important}
#main[data-active-view="clinic"] .monthly-card:nth-child(-n+3)::before{background:var(--os-primary)!important}
#main[data-active-view="clinic"] .monthly-card::after{display:none!important;content:none!important}
#main[data-active-view="clinic"] .monthly-card span{color:var(--os-muted)!important;font-size:9px!important;letter-spacing:.04em!important;font-weight:700!important}
#main[data-active-view="clinic"] .monthly-card strong{margin-top:8px!important;color:var(--os-text)!important;font-size:22px!important;line-height:1.1!important}
#main[data-active-view="clinic"] .panel{padding:15px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;background-image:none!important;box-shadow:none!important}
#main[data-active-view="clinic"] .payment-bars{gap:6px!important}.payment-bars>div,#main[data-active-view="clinic"] .payment-bars>div:nth-child(n){padding:10px 11px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-elevated)!important;box-shadow:none!important}.payment-bars span{color:var(--os-muted)!important}.payment-bars strong{color:var(--os-text)!important}
#main[data-active-view="clinic"] .monthly-day-list{gap:4px!important}.monthly-day-row,#main[data-active-view="clinic"] .monthly-day-row:nth-child(n){padding:9px 10px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-secondary)!important}.monthly-day-row b{color:var(--os-text)!important}
#main[data-active-view="clinic"] .security-note{padding:9px 11px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-elevated)!important;color:var(--os-muted)!important}

/* ---------------------------------------------------------------------
   SETTINGS — compact categories, one icon language, no pastel cards
   --------------------------------------------------------------------- */
#main[data-active-view="settings"]>.settings-page-head,
#main[data-active-view="settings"]>.settings-search-wrap,
#main[data-active-view="settings"]>#settingsSearchResults,
#main[data-active-view="settings"]>.settings-mobile-categories,
#main[data-active-view="settings"]>.settings-section-content{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}
.settings-search-wrap{margin-bottom:9px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;box-shadow:none!important}.settings-search-wrap input{min-height:40px!important;border:0!important;background:transparent!important;box-shadow:none!important}.settings-search-icon{color:var(--os-muted)!important;font-size:15px!important}
.settings-search-results{padding:6px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;box-shadow:var(--os-shadow)!important}.settings-search-result{border-radius:6px!important;color:var(--os-secondary)!important}.settings-search-result:hover{background:var(--os-elevated)!important}.settings-search-result strong{color:var(--os-text)!important}.settings-search-result small{color:var(--os-muted)!important}
.settings-mobile-categories,.settings-mobile-categories-five{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;margin-bottom:10px!important}
.settings-mobile-tile{position:relative!important;min-height:78px!important;padding:10px 9px 10px 47px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;background-image:none!important;color:var(--os-text)!important;box-shadow:none!important;transform:none!important;text-align:left!important}
.settings-mobile-tile:hover{background:var(--os-elevated)!important;border-color:color-mix(in srgb,var(--os-primary) 24%,var(--os-border))!important;transform:none!important;box-shadow:none!important}.settings-mobile-tile.active{background:var(--os-primary-tint)!important;border-color:color-mix(in srgb,var(--os-primary) 35%,var(--os-border))!important;box-shadow:none!important}
.settings-mobile-tile>span{position:absolute!important;left:10px!important;top:11px!important;width:28px!important;height:28px!important;margin:0!important;border-radius:6px!important;background:var(--os-primary-tint)!important;color:var(--os-primary)!important;font-size:0!important;display:grid!important;place-items:center!important}.settings-mobile-tile:nth-child(1){--ui-icon:var(--ico-calendar)}.settings-mobile-tile:nth-child(2){--ui-icon:var(--ico-globe)}.settings-mobile-tile:nth-child(3){--ui-icon:var(--ico-database)}.settings-mobile-tile:nth-child(4){--ui-icon:var(--ico-settings)}.settings-mobile-tile:nth-child(5){--ui-icon:var(--ico-tools)}
.settings-mobile-tile strong{display:block!important;color:var(--os-text)!important;font-size:10.5px!important;line-height:15px!important;font-weight:600!important}.settings-mobile-tile small{display:block!important;margin-top:2px!important;color:var(--os-muted)!important;font-size:8px!important;line-height:12px!important}
.settings-section-grid{gap:8px!important}.settings-section-stack{gap:8px!important}.settings-item-card,.settings-section-stack>.panel{padding:13px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;box-shadow:none!important}.settings-item-card h3{color:var(--os-text)!important;font-size:12px!important}.settings-item-card .muted{color:var(--os-muted)!important}.settings-advanced-details{border-color:var(--os-border)!important;border-radius:7px!important;background:var(--os-elevated)!important}.settings-advanced-details summary{color:var(--os-secondary)!important}.settings-advanced-inner{border-color:var(--os-border)!important}

/* ---------------------------------------------------------------------
   MORE / PATIENT CARD — same icon & surface language
   --------------------------------------------------------------------- */
#main[data-active-view="more"]>.page-head,#main[data-active-view="more"]>.more-grid{max-width:var(--ht-content-max)!important;margin-left:auto!important;margin-right:auto!important}
.more-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.more-grid button{position:relative!important;min-height:64px!important;padding:10px 10px 10px 52px!important;border-radius:8px!important;text-align:left!important}.more-grid button>span{position:absolute!important;left:10px!important;top:12px!important;width:30px!important;height:30px!important;border-radius:6px!important;background:var(--os-primary-tint)!important;color:var(--os-primary)!important;font-size:0!important;display:grid!important;place-items:center!important}.more-grid button:nth-child(1){--ui-icon:var(--ico-phone)}.more-grid button:nth-child(2){--ui-icon:var(--ico-users)}.more-grid button:nth-child(3){--ui-icon:var(--ico-chart)}.more-grid button:nth-child(4){--ui-icon:var(--ico-settings)}.more-grid button strong{display:block!important;color:var(--os-text)!important;font-size:11px!important}.more-grid button small{display:block!important;color:var(--os-muted)!important;font-size:8.5px!important}

.clinic-patient-quick-actions button{position:relative!important;min-height:42px!important;border:1px solid var(--os-border)!important;border-radius:6px!important;background:var(--os-surface)!important;color:var(--os-text)!important;box-shadow:none!important}.clinic-patient-quick-actions button.primary{background:var(--os-primary)!important;border-color:var(--os-primary)!important;color:#fff!important}.clinic-patient-quick-actions button>span{width:22px!important;height:22px!important;margin-right:5px!important;display:inline-grid!important;place-items:center!important;border-radius:5px!important;background:transparent!important;color:currentColor!important;font-size:0!important}.clinic-patient-quick-actions button:nth-child(1){--ui-icon:var(--ico-stethoscope)}.clinic-patient-quick-actions button:nth-child(2){--ui-icon:var(--ico-file)}.clinic-patient-quick-actions button:nth-child(3){--ui-icon:var(--ico-note)}
.clinic-patient-module-grid{gap:7px!important}.clinic-patient-module-grid button{position:relative!important;min-height:70px!important;padding:10px 10px 10px 51px!important;border:1px solid var(--os-border)!important;border-radius:8px!important;background:var(--os-surface)!important;text-align:left!important;box-shadow:none!important}.clinic-patient-module-grid button:hover{background:var(--os-elevated)!important}.clinic-patient-module-icon{position:absolute!important;left:10px!important;top:12px!important;width:30px!important;height:30px!important;border-radius:6px!important;background:var(--os-primary-tint)!important;color:var(--os-primary)!important;font-size:0!important;display:grid!important;place-items:center!important}.clinic-patient-module-grid button:nth-child(1){--ui-icon:var(--ico-stethoscope)}.clinic-patient-module-grid button:nth-child(2){--ui-icon:var(--ico-syringe)}.clinic-patient-module-grid button:nth-child(3){--ui-icon:var(--ico-ruler)}.clinic-patient-module-grid button:nth-child(4){--ui-icon:var(--ico-file)}.clinic-patient-module-grid button strong{color:var(--os-text)!important}.clinic-patient-module-grid button small{color:var(--os-muted)!important}
.clinic-patient-flag{border:1px solid var(--os-border)!important;border-radius:7px!important;background:var(--os-elevated)!important}.clinic-patient-flag.danger{background:var(--os-allergy-tint)!important;border-color:color-mix(in srgb,var(--os-allergy) 28%,var(--os-border))!important;color:var(--os-allergy)!important}

/* ---------------------------------------------------------------------
   DARK MODE — prohibit legacy dark islands and hard-coded pastel surfaces
   --------------------------------------------------------------------- */
html.dark #main .calendar-premium-hero,
html.dark #main .calendar-toolbar,
html.dark #main .calendar-mode-tabs,
html.dark #main .week-day,
html.dark #main .week-day-head,
html.dark #main .month-cell,
html.dark #main .task-type-tile,
html.dark #main .smart-task-list-panel,
html.dark #main .smart-task-card,
html.dark #main .monthly-card,
html.dark #main .clinic-month-toolbar,
html.dark #main .payment-bars>div,
html.dark #main .monthly-day-row,
html.dark #main .settings-mobile-tile,
html.dark #main .settings-item-card,
html.dark #main .settings-search-wrap,
html.dark #main .settings-search-results,
html.dark #main .secretary-inbox-panel,
html.dark #main .secretary-request-row,
html.dark #main .more-grid button,
html.dark #main .clinic-patient-info-card,
html.dark #main .clinic-patient-module-grid button{
  background:var(--os-surface)!important;background-image:none!important;color:var(--os-text)!important;border-color:var(--os-border)!important;box-shadow:none!important
}
html.dark #main .calendar-mode-tabs,
html.dark #main .week-day-head,
html.dark #main .settings-advanced-details,
html.dark #main .payment-bars>div{background:var(--os-elevated)!important}

/* ---------------------------------------------------------------------
   MOBILE — same system, mobile composition (not a second theme)
   --------------------------------------------------------------------- */
@media(max-width:820px){
  #main.container{padding-left:10px!important;padding-right:10px!important}
  #main[data-active-view]>.page-head,
  #main[data-active-view]>.calendar-premium-hero,
  #main[data-active-view]>.clinic-patient-hero,
  #main[data-active-view]>.settings-page-head{margin:0 0 10px!important;padding:0 0 10px!important}
  #main[data-active-view]>.page-head h1,#main[data-active-view]>.calendar-premium-hero h1,#main[data-active-view]>.clinic-patient-hero h1{font-size:18px!important;line-height:25px!important}
  #main[data-active-view]>.page-head p,#main[data-active-view]>.calendar-premium-hero p,#main[data-active-view]>.clinic-patient-hero p{font-size:9.5px!important;line-height:14px!important}

  .calendar-premium-hero .calendar-toolbar{grid-template-columns:1fr!important;gap:8px!important}.calendar-premium-hero .calendar-actions{justify-content:flex-start!important}.calendar-premium-hero .calendar-mode-tabs{grid-template-columns:repeat(4,max-content)!important;overflow-x:auto!important;scrollbar-width:none!important}.calendar-premium-hero .calendar-mode-tabs::-webkit-scrollbar{display:none!important}.calendar-premium-hero .calendar-mode-tabs button{min-width:max-content!important;padding:6px 10px!important}
  .calendar-day-head{padding:9px 10px!important}.calendar-week-grid{display:flex!important;gap:7px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important}.week-day{min-width:84vw!important;scroll-snap-align:center!important}.calendar-month-grid{gap:3px!important}.month-cell{min-height:62px!important}

  .task-type-grid{grid-template-columns:1fr!important;gap:5px!important}.task-type-tile{min-height:58px!important;padding:9px 9px 9px 48px!important}.task-type-tile>span{left:9px!important;top:12px!important;width:30px!important;height:30px!important}.smart-task-list-panel{padding:9px!important}.smart-task-list-head{align-items:stretch!important;gap:7px!important}.task-filter-tabs{width:100%!important}.task-filter-tabs button{flex:1!important}.smart-task-card{padding:7px 8px!important}

  .secretary-page-head{align-items:flex-start!important}.secretary-page-summary{width:100%!important;margin-top:5px!important}.secretary-page-summary span{flex:1!important;text-align:center!important}.secretary-filter-bar{width:100%!important;display:flex!important}.secretary-filter-bar button{flex:1!important}.secretary-inbox-panel{padding:7px!important}

  #main[data-active-view="clinic"] .clinic-month-toolbar{display:grid!important;grid-template-columns:36px minmax(0,1fr) 36px!important;gap:5px!important}.clinic-month-toolbar .cal-today-btn{grid-column:1/-1!important;width:100%!important}.clinic-month-toolbar>strong{min-width:0!important;text-align:center!important}.monthly-clinic-grid,#main[data-active-view="clinic"] .monthly-clinic-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.monthly-card,#main[data-active-view="clinic"] .monthly-card:nth-child(n){min-height:74px!important;padding:11px!important}.monthly-card strong,#main[data-active-view="clinic"] .monthly-card strong{font-size:18px!important}.payment-bars{grid-template-columns:1fr!important;gap:5px!important}

  .settings-mobile-categories,.settings-mobile-categories-five{display:flex!important;grid-template-columns:none!important;gap:5px!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:none!important}.settings-mobile-categories::-webkit-scrollbar{display:none!important}.settings-mobile-tile{flex:0 0 170px!important;min-height:62px!important;padding:8px 8px 8px 43px!important}.settings-mobile-tile>span{left:8px!important;top:10px!important;width:26px!important;height:26px!important}.settings-mobile-tile small{display:none!important}.settings-section-grid{grid-template-columns:1fr!important}.settings-item-card,.settings-section-stack>.panel{padding:11px!important}

  .more-grid{grid-template-columns:1fr!important;gap:5px!important}.more-grid button{min-height:58px!important;padding:9px 9px 9px 47px!important}.more-grid button>span{left:9px!important;top:13px!important;width:28px!important;height:28px!important}
  .clinic-patient-module-grid{grid-template-columns:1fr!important;gap:5px!important}.clinic-patient-module-grid button{min-height:58px!important;padding:9px 9px 9px 47px!important}.clinic-patient-module-icon{left:9px!important;top:13px!important;width:28px!important;height:28px!important}

  /* Mobile nav belongs to the same system. */
  .clinic-bottom-nav{background:color-mix(in srgb,var(--os-surface) 96%,transparent)!important;border-top:1px solid var(--os-border)!important;box-shadow:0 -6px 20px rgba(15,23,42,.06)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}.clinic-nav-item{color:var(--os-muted)!important}.clinic-nav-item.active{color:var(--os-primary)!important}.clinic-nav-icon{background:transparent!important;border-radius:6px!important}.clinic-nav-item.active .clinic-nav-icon{background:var(--os-primary-tint)!important}.clinic-nav-icon svg{stroke:currentColor!important;fill:none!important}

  html.dark .clinic-bottom-nav{background:color-mix(in srgb,var(--os-surface) 96%,transparent)!important}
}

@media(max-width:390px){
  .monthly-clinic-grid,#main[data-active-view="clinic"] .monthly-clinic-grid{grid-template-columns:1fr!important}
  .settings-mobile-tile{flex-basis:150px!important}
}

@media print{
  .clinic-os-runtime-marker{display:none!important}
}

/* Hide stale legacy build label; release identity is managed by release package. */
.settings-page-head p .muted{display:none!important}
