/* v703 — shared reading and interaction rules. Screen-only: printed schedules are unchanged. */
@media screen {
  body.mh-design-page {
    --mh-ink-soft:#4d617c;
    --mh-shadow:none;
    font-size:16px;
    line-height:1.5;
    background:var(--mh-canvas);
  }
  html[data-theme="dark"] body.mh-design-page {
    --mh-ink-soft:#becbdd;
    background:var(--mh-canvas)!important;
  }
  .mh-design-page [hidden] { display:none!important; }
  .mh-design-page :is(button,a,input,select,textarea,summary) { touch-action:manipulation; }
  .mh-design-page :is(a,button,input,select,textarea,summary):focus-visible {
    outline:3px solid #467fe2;
    outline-offset:3px;
  }
  html[data-theme="dark"] .mh-design-page :is(a,button,input,select,textarea,summary):focus-visible { outline-color:#a8c8ff; }
  .mh-design-page .mh-skip-link { position:fixed;top:8px;left:12px;transform:translateY(-180%);z-index:2147483647;padding:12px 18px;border-radius:8px;background:var(--mh-paper);color:var(--mh-ink);border:2px solid var(--mh-blue);font-weight:700; }
  .mh-design-page .mh-skip-link:focus { transform:translateY(0); }
  .mh-design-page main { scroll-margin-top:140px; }
  .mh-design-page .topbar { box-shadow:none;background:var(--mh-paper);backdrop-filter:none;-webkit-backdrop-filter:none; }
  .mh-design-page .nav { background:transparent;border-color:transparent;border-radius:10px; }
  .mh-design-page .nav>a,.mh-design-page .nav-dropbtn { font-size:14px;font-weight:650;min-height:42px;padding-inline:12px; }
  .mh-design-page .nav>a.active,.mh-design-page .nav-dropdown.active .nav-dropbtn { box-shadow:none;background:var(--mh-blue-pale);color:var(--mh-blue-dark); }
  .mh-design-page .nav-dropdown-menu a { min-height:44px;font-size:15px;font-weight:600; }
  .mh-design-page :is(.navbtn,.mh-theme-toggle) { min-height:44px;min-width:44px; }
  .mh-design-page .user-menu #userMenuBtn { min-height:44px;font-size:14px; }
  .mh-design-page .mh-location-scope { background:var(--mh-paper);font-size:14px;border-radius:10px; }
  .mh-design-page .mh-location-scope strong { font-size:14px; }
  .mh-design-page .mh-location-readonly { font-size:12px; }
  .mh-design-page .mh-drawer-link { min-height:46px;font-size:16px; }
  .mh-design-page .mh-drawer-head { background:var(--mh-blue-dark); }
  .mh-design-page:not(.mh-page-app) .card,.mh-workspace .mh-surface,.mh-users-page .mh-user-card { box-shadow:none; }
  .mh-design-page:not(.mh-page-app) .btn { min-height:44px;font-size:15px;font-weight:650;border-radius:9px; }
  .mh-design-page:not(.mh-page-app) .btn-primary { background:#255bd7;box-shadow:none; }
  .mh-design-page:not(.mh-page-app) :is(input.input,select.input,textarea.input) { font-size:16px;min-height:44px; }
  .mh-design-page .mh-title-group { min-width:0; }
  .mh-design-page .mh-scope-context { margin:6px 0 0;color:var(--mh-ink-soft);font-size:14px;font-weight:600;overflow-wrap:anywhere; }
  .mh-design-page [data-mh-scope-label]:empty { display:none; }
  .mh-design-page .mh-scope-inline:not(:empty)::after { content:" · "; }
  body.mh-design-page .mh-workspace .mh-page-heading h1 { font-size:30px;line-height:1.2; }
  body.mh-design-page .mh-workspace .mh-section-heading h2 { font-size:20px; }
  body.mh-design-page .mh-workspace .mh-field label { font-size:14px;font-weight:650;color:var(--mh-ink-soft); }
  body.mh-design-page .mh-workspace .mh-field :is(.input,select) { font-size:16px; }
  body.mh-design-page .mh-workspace .mh-filter-panel { border:0;border-radius:0;background:transparent;padding:0 0 20px;border-bottom:1px solid var(--mh-line); }
  body.mh-design-page .mh-workspace :is(.mh-status,.mh-pager,.mh-pager .muted) { font-size:14px!important;color:var(--mh-ink-soft); }
  body.mh-design-page .mh-workspace .mh-data-table th { font-size:14px;font-weight:650;letter-spacing:0;text-transform:none;padding:12px; }
  body.mh-design-page .mh-workspace .mh-data-table td { font-size:15px;padding:13px 12px; }
  body.mh-design-page .mh-workspace .mh-data-table td[data-label="Nombre"] { font-size:16px;font-weight:650; }
  body.mh-design-page .mh-workspace .mh-data-table :is(td[data-label="RUT"],td[data-label="Horas"]) { font-variant-numeric:tabular-nums; }
  body.mh-design-page .mh-workspace .mh-data-table .btn { font-size:14px;min-height:42px; }
  body.mh-design-page .mh-workspace .row-actions { flex-wrap:wrap; }
  body.mh-design-page .mh-workspace .mh-state-pill { font-size:13px;font-weight:650;min-width:54px;border-radius:7px; }
  body.mh-design-page .mh-users-page .mh-user-card { padding:20px;border-radius:12px; }
  body.mh-design-page .mh-users-page .mh-user-identity h3 { font-size:19px;line-height:1.4; }
  body.mh-design-page .mh-users-page :is(.mh-user-email,.mh-user-rut) { font-size:15px; }
  body.mh-design-page .mh-users-page :is(.mh-user-detail-label,.mh-user-area,.mh-user-card-head .pill) { font-size:13px;letter-spacing:0; }
  body.mh-design-page .mh-users-page .mh-user-detail-label { text-transform:none; }
  .mh-design-page .mh-empty-result { padding:24px 16px;color:var(--mh-ink-soft);line-height:1.6; }
  .mh-schedule-page .mh-schedule-form .lookup-grid { grid-template-columns:minmax(200px,1.7fr) minmax(160px,.9fr) minmax(100px,.55fr) auto; }
  .mh-schedule-page .mh-schedule-intro { margin:8px 0 0;font-size:16px;color:var(--mh-ink-soft); }
  .mh-schedule-page .mh-calendar-shift { font-size:14px;background:rgba(244,247,251,.9);border-color:transparent;font-variant-numeric:tabular-nums; }
  .mh-schedule-page .mh-month-calendar th { font-size:13px;letter-spacing:0; }
  .mh-schedule-page .mh-calendar-cell.is-outside :is(.mh-calendar-date,.mh-calendar-shift) { opacity:.7; }
  .mh-schedule-page .mh-day-row .mh-day-shift { font-size:16px; }
  .mh-schedule-page .mh-calendar-badge { font-size:11px; }
  .mh-page-index .hero { padding:36px 0 10px; }
  .mh-page-index .hero-main { min-height:0;background:var(--mh-paper)!important;color:var(--mh-ink);box-shadow:none!important;border:1px solid var(--mh-line)!important;padding:32px!important; }
  .mh-page-index .hero-main::after { display:none; }
  .mh-page-index .hero-main .h1 { font-size:34px!important;line-height:1.15;color:var(--mh-ink);margin:0 0 14px;letter-spacing:-.03em; }
  .mh-page-index .hero-main .p { font-size:17px;color:var(--mh-ink-soft);max-width:520px; }
  .mh-page-index .hero-main .btn-primary { background:#255bd7;color:#fff;border-color:#255bd7;box-shadow:none; }
  .mh-page-index .hero-side { border-color:var(--mh-line);padding:24px;justify-content:center; }
  .mh-page-index .hero-side .kpi { padding:0;background:transparent; }
  .mh-page-index .hero-side .label { font-size:14px;letter-spacing:0;text-transform:none;color:var(--mh-ink-soft); }
  .mh-page-index .hero-side .value { font-size:23px;color:var(--mh-ink); }
  .mh-page-index .hero-side .p { font-size:16px;color:var(--mh-ink-soft); }
  .mh-page-index .mh-home-heading { display:flex;align-items:center;justify-content:space-between;gap:20px; }
  .mh-page-index .mh-home-heading h1 { font-size:30px;line-height:1.2;margin:4px 0 8px;letter-spacing:-.03em; }
  .mh-page-index .mh-home-heading p { margin:0;color:var(--mh-ink-soft); }
  .mh-page-index .mh-home-heading [data-mh-scope-label] { font-size:14px;font-weight:650; }
  .mh-page-index #homeAuthedTiles { padding-top:20px; }
  .mh-page-index .tile { min-height:0;padding:24px;box-shadow:none;transition:border-color .15s; }
  .mh-page-index .tile:hover { transform:none;box-shadow:none;border-color:#87a8dd; }
  .mh-page-index .tile h2 { margin:0 0 10px;font-size:21px;line-height:1.3; }
  .mh-page-index .tile h2 a { color:var(--mh-ink);text-decoration:none; }
  .mh-page-index .tile h2 a:hover { text-decoration:underline;text-underline-offset:4px; }
  .mh-page-index .tile p { font-size:16px;line-height:1.55;color:var(--mh-ink-soft); }
  .mh-page-index .tile .tile-actions { justify-content:flex-start; }
  .mh-page-index .tile-btn { font-size:14px!important; }
  .mh-page-index .mh-home-help { margin:24px 0 60px;padding:0;border:1px solid var(--mh-line);border-radius:12px;background:var(--mh-paper); }
  .mh-page-index .mh-home-help>summary { cursor:pointer;padding:18px 22px;font-weight:650;font-size:16px; }
  .mh-page-index .mh-home-help>div { padding:0 22px 22px; }
  .mh-page-index .mh-home-help .rules-list { font-size:16px;color:var(--mh-ink-soft);line-height:1.65; }
  .mh-page-index .mh-home-help .rules-note { font-size:14px;line-height:1.6; }
  .mh-guided-surface,.mh-form-confirm,.mh-admin-modal .modal { font-size:16px; }
  .mh-guided-surface label,.mh-admin-modal label,.mh-admin-modal label.muted { font-size:14px!important; }
  .mh-flow-steps li,.mh-transfer-steps li { font-size:14px; }
  .mh-guided-surface .mh-flow-actions .btn { font-size:15px; }
  .mh-guided-surface .mh-flow-feedback,.mh-form-notice { font-size:16px; }
  .mh-guided-surface :is(.small,small),.mh-form-confirm p { font-size:14px; }
  .mh-admin-modal :is(.modal,[role=dialog]),.mh-planning .pl-dialog { overscroll-behavior:contain; }
  .mh-planning .pl-dialog { font-size:16px; }
  .mh-planning .pl-dialog-body>p,.mh-planning .pl-validation-item>p { font-size:15px;line-height:1.6; }
  .mh-planning .pl-dialog :is(.pl-hint,.pl-validation-scope,.pl-validation-tools p,.pl-validation-overview p,.pl-ready-choice small,.pl-save-option small,.pl-history-item small) { font-size:14px;line-height:1.55; }
  .mh-planning .pl-dialog :is(.pl-ready-choice strong,.pl-save-option strong,.pl-validation-person>summary strong) { font-size:16px; }
  .mh-planning .pl-dialog :is(.pl-validation-count,.pl-validation-item-meta) { font-size:13px; }
  .mh-planning .pl-dialog :is(.pl-button,.pl-validation-tools button,.pl-validation-item button) { font-size:14px!important;min-height:44px; }
  .mh-planning .pl-dialog .pl-change { font-size:14px;grid-template-columns:70px minmax(0,1fr) 16px minmax(0,1fr); }
  .mh-planning .pl-dialog .pl-shift { font-size:13px;white-space:normal; }
  .mh-planning .pl-dialog textarea { font-size:16px; }
  .mh-planning .no-team-state { padding:28px!important;border:1px solid var(--pl-line);border-radius:12px;background:var(--pl-paper);color:var(--pl-ink); }
  .mh-planning .no-team-state h3 { font-size:21px; }
  .mh-planning .no-team-state p { font-size:16px;color:var(--pl-muted);line-height:1.6;max-width:700px; }
  .mh-planning .pl-validation-item[data-blocking=true] { border-left:3px solid var(--pl-bad);padding-left:12px; }
  .mh-planning :is(.sched,.mini,.pl-shift,.pl-mobile-totals) { font-variant-numeric:tabular-nums; }
  .mh-planning .week { scroll-margin-top:180px; }
  html[data-theme="dark"] .mh-page-index :is(.hero-main,.hero-side,.mh-home-help,.tile) { background:var(--mh-paper)!important;box-shadow:none!important; }
  html[data-theme="dark"] .mh-page-index .hero-main .h1 { color:var(--mh-ink); }
  html[data-theme="dark"] .mh-page-index :is(.hero-main .p,.hero-side .p,.hero-side .label) { color:var(--mh-ink-soft); }
  html[data-theme="dark"] .mh-workspace .mh-filter-panel { background:transparent; }
  html[data-theme="dark"] .mh-design-page .topbar { background:var(--mh-paper);box-shadow:none; }
  html[data-theme="dark"] .mh-design-page .btn-primary { background:#2e64d5;box-shadow:none; }
  html[data-theme="dark"] body.mh-design-page:not(.mh-page-app) .btn-primary:hover { background:#3973e6;color:#fff;box-shadow:none; }
  @media(max-width:1100px) { .mh-design-page .nav>a,.mh-design-page .nav-dropbtn { padding-inline:9px; } }
  @media(max-width:720px) {
    .mh-page-index .hero { padding-top:22px; }
    .mh-page-index .hero-main { padding:24px!important; }
    .mh-page-index .hero-main .h1 { font-size:30px!important; }
    .mh-page-index .mh-home-heading { align-items:flex-start;flex-direction:column;gap:16px; }
    .mh-page-index .mh-home-heading h1 { font-size:27px; }
    .mh-page-index .tile { padding:20px; }
    body.mh-design-page .mh-workspace .mh-data-table td { font-size:15px;padding:10px 0; }
    body.mh-design-page .mh-workspace .mh-data-table td::before { font-size:13px;font-weight:650;letter-spacing:0;text-transform:none; }
    body.mh-design-page .mh-workspace .mh-data-table td[data-label="Acciones"] { flex-direction:column;align-items:stretch; }
    body.mh-design-page .mh-workspace .mh-data-table td[data-label="Acciones"] .row-actions { justify-content:flex-start;gap:8px; }
    .mh-schedule-page .mh-schedule-form .lookup-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mh-schedule-page .mh-schedule-form .lookup-grid .mh-field:first-child,.mh-schedule-page .mh-schedule-form .lookup-grid .btn { grid-column:1/-1; }
    body.mh-design-page .mh-workspace .mh-page-heading h1 { font-size:27px; }
    .mh-planning .pl-dialog .pl-change { grid-template-columns:60px minmax(0,1fr) 12px minmax(0,1fr);gap:5px;font-size:13px; }
    .mh-planning .pl-dialog .pl-shift { font-size:12px; }
    .mh-planning .pl-dialog>footer { flex-wrap:wrap; }
    .mh-planning .pl-dialog .pl-validation-person>summary strong { min-width:0;flex-basis:70%; }
    .mh-planning .pl-dialog .pl-validation-tools { display:block; }
    .mh-planning .pl-dialog .pl-validation-tools button { margin-top:8px; }
  }
  @media(prefers-reduced-motion:reduce) { .mh-design-page *, .mh-design-page *::before,.mh-design-page *::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; } }
}
@media print { .mh-skip-link,.mh-scope-context { display:none!important; } }
