@charset "UTF-8";
/* Shared presentation only. Role-specific information order and workflows stay intact. */
:root{
  --ht-red:#d51b2a;--ht-red-hover:#b61422;--ht-ink:#25292d;--ht-muted:#616974;
  --ht-line:#e5e8ed;--ht-surface:#fff;--ht-background:#f8f9fb;--ht-focus:#325f99;
  --accent:var(--ht-red);--green:var(--ht-red);--green-deep:var(--ht-red-hover);
  --background:var(--ht-background);--ink:var(--ht-ink);--muted:var(--ht-muted);--line:var(--ht-line);
  --ht-work-fg:#2b5c87;--ht-work-bg:#edf5fc;--ht-work-line:#bfd4e7;
  --ht-pause-fg:#795717;--ht-pause-bg:#fff4da;--ht-pause-line:#ead49f;
  --ht-vacation-fg:#21665a;--ht-vacation-bg:#e9f5ef;--ht-vacation-line:#b8dccc;
  --ht-medical-fg:#a32e3a;--ht-medical-bg:#fff0f1;--ht-medical-line:#efcbd0;
  --ht-absence-fg:#566170;--ht-absence-bg:#eff2f6;--ht-absence-line:#d2d9e3;
  --ht-training-fg:#64459a;--ht-training-bg:#f3effc;--ht-training-line:#d5c8eb;
  --ht-remote-fg:#6a4798;--ht-remote-bg:#f4effb;--ht-remote-line:#ddd0ed;
  --ht-anomaly-fg:#8a511b;--ht-anomaly-bg:#fff2e2;--ht-anomaly-line:#ebceaa;
  --ht-approved-fg:#267045;--ht-approved-bg:#edf7ef;--ht-approved-line:#bedcc6;
  --ht-rejected-fg:#9b3445;--ht-rejected-bg:#fff0f2;--ht-rejected-line:#e9c4ca;
  --ht-tone-fg:var(--ht-absence-fg);--ht-tone-bg:var(--ht-absence-bg);--ht-tone-line:var(--ht-absence-line);
}
html{scroll-padding:64px 0 90px}body{font-size:13px;color:var(--ht-ink);background:var(--ht-background);--radius:10px;--shadow:0 1px 3px #25292d04}
body :is(.app-shell,.main-content,.topbar-left,.page-heading>div,.heading-actions,.field,.filter-field){min-width:0}
body :is(.main-content,.form-panel,.card,.panel){max-width:100%}
body :is(h1,h2,h3,.button,.small-link,.text-link){overflow-wrap:anywhere}
body :is(.page-heading,.adm-heading,.mgr-heading,.emp-heading){gap:12px;margin-bottom:15px}
body :is(.page-heading,.adm-heading,.mgr-heading,.emp-heading) h1{font-size:24px;line-height:1.2;letter-spacing:-.55px}
body :is(.panel-heading,.adm-card-heading,.mgr-card-heading,.emp-card-heading){gap:10px}
body :is(.data-table th,.data-table td){overflow-wrap:anywhere}
body :is(input,select,textarea){max-width:100%;min-width:0}
body :is(.button,.btn){min-height:36px}
body :is(.filter-field,.field)>label{line-height:1.4}
body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ht-focus);outline-offset:3px}
#main:focus{outline:none}
body :is(.table-wrap,.table-wrapper,.adm-table-wrap,.mgr-table-wrap){min-width:0;max-width:100%}
body :is(.field-help,.fine-print){line-height:1.6}
body .form-actions{flex-wrap:wrap}
body .breadcrumb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body .topbar-right{flex-shrink:0}
/* A weekend is a calendar date, not a work or rest status. */
body .calendar-table :is(th,td).calendar-weekend{background:inherit;color:inherit}
/* One identity for authenticated, public, and offline surfaces. */
body .ht-brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;max-width:100%;padding:0;color:var(--ht-ink);text-decoration:none;letter-spacing:0}
body .ht-brand:hover{color:var(--ht-ink)}
body .ht-wordmark{width:182px;height:auto;max-width:100%;display:block;margin:0 0 1px}
body .ht-brand-description{font-size:10.5px;color:var(--ht-muted);font-weight:400;line-height:1.5;letter-spacing:0}
body .ht-brand-by{font-size:10px;color:var(--ht-muted);font-weight:400;line-height:1.5;margin-top:3px;letter-spacing:0}
body .ht-brand-by>strong{font-size:11px;font-weight:750;letter-spacing:.2px;color:var(--ht-ink)}
body .ht-brand-by>strong>span{color:#df1726}
body .ht-brand-tagline{display:none;font-size:11px;color:var(--ht-muted);font-weight:400;letter-spacing:0;margin-top:6px}
body .sidebar .ht-brand{padding:0 7px}
body.guest .ht-wordmark{width:240px}body.guest .ht-brand-description{font-size:12px}body.guest .ht-brand-tagline{display:block}
body .sidebar .workspace{margin-block:14px 9px}
body .sidebar .nav-caption{color:#687586;letter-spacing:1px;padding-block:10px 5px}
body .sidebar .nav-item{font-size:12px;min-height:35px;padding-block:7px}
body .sidebar .nav-item.active{color:#a42330;background:#fff0f1}
body .sidebar .nav-item.active:before{background:var(--ht-red)}
body .sidebar .nav-item.active .icon{color:var(--ht-red)}
body .ht-mobile-brand{display:none}
body .ht-footer-by{font-size:9px;font-weight:400;color:var(--ht-muted);margin-left:3px}
body .ht-guest-brand{width:min(460px,calc(100% - 32px));margin:25px auto 17px;padding:0 4px}
body.guest .auth-single{width:min(460px,calc(100% - 32px));max-width:460px;margin:0 auto 26px;padding:24px;border-radius:11px}
body.guest .auth-single h1{font-size:24px;line-height:1.25;letter-spacing:-.5px;margin-bottom:10px}
body.guest .auth-single>p{font-size:13px;line-height:1.6;margin-bottom:16px;color:var(--ht-muted)}
body.guest .auth-single>.eyebrow{font-size:10px;margin-bottom:8px;letter-spacing:1px}
body.guest .auth-single .stack-form{gap:13px;margin-bottom:16px}
body.guest .auth-single .field input{min-height:42px}
body.guest .auth-single .field-errors{font-size:12px}
body.guest .auth-single .auth-forgot{align-self:flex-start;font-size:12px;margin:0;min-height:30px}
body.guest .auth-single .button-full{min-height:44px;margin:0}
body.guest .ht-login .ht-login-invitation{border-top:1px solid var(--ht-line);padding-top:13px;font-size:12px;margin-bottom:12px}
body.guest .ht-login>.fine-print{font-size:11px;margin-bottom:0}
body .ht-filter-disclosure{margin-bottom:13px;border:1px solid var(--ht-line);border-radius:8px;background:var(--ht-surface)}
body .ht-filter-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;min-height:38px;font-size:12px;cursor:pointer;color:#536477}
body .ht-filter-disclosure>summary::-webkit-details-marker{display:none}
body .ht-filter-disclosure>summary:after{content:'+';font-size:16px}
body .ht-filter-disclosure[open]>summary:after{content:'\2212'}
body .ht-filter-disclosure>.filters{margin:0;border:0;border-top:1px solid var(--ht-line);border-radius:0;background:transparent}
/* Status aliases preserve existing labels and make colour secondary to text. */
:is(.ht-work,.ht-info,.emp-tone-work,.emp-state-working,.mgr-tone-work,.mgr-tone-present,.mgr-state-working,.adm-tone-work,.adm-tone-present,.adm-state-working,.mgr-tone-office,.adm-tone-office,.mgr-tone-construction,.adm-tone-construction){--ht-tone-fg:var(--ht-work-fg);--ht-tone-bg:var(--ht-work-bg);--ht-tone-line:var(--ht-work-line)}
:is(.ht-pause,.emp-state-paused,.mgr-tone-paused,.mgr-state-paused,.adm-tone-paused,.adm-state-paused){--ht-tone-fg:var(--ht-pause-fg);--ht-tone-bg:var(--ht-pause-bg);--ht-tone-line:var(--ht-pause-line)}
:is(.ht-vacation,.emp-tone-vacation,.mgr-tone-vacation,.adm-tone-vacation){--ht-tone-fg:var(--ht-vacation-fg);--ht-tone-bg:var(--ht-vacation-bg);--ht-tone-line:var(--ht-vacation-line)}
:is(.ht-medical,.emp-tone-medical,.mgr-tone-medical,.mgr-tone-sickness,.adm-tone-medical,.adm-tone-sickness){--ht-tone-fg:var(--ht-medical-fg);--ht-tone-bg:var(--ht-medical-bg);--ht-tone-line:var(--ht-medical-line)}
:is(.ht-absence,.emp-tone-absence,.mgr-tone-absence,.mgr-tone-absent,.adm-tone-absence,.adm-tone-absent){--ht-tone-fg:var(--ht-absence-fg);--ht-tone-bg:var(--ht-absence-bg);--ht-tone-line:var(--ht-absence-line)}
:is(.ht-training,.emp-tone-training,.mgr-tone-training,.adm-tone-training){--ht-tone-fg:var(--ht-training-fg);--ht-tone-bg:var(--ht-training-bg);--ht-tone-line:var(--ht-training-line)}
:is(.ht-remote,.ht-night,.adm-tone-night,.mgr-tone-night,.emp-tone-remote,.mgr-tone-remote,.adm-tone-remote){--ht-tone-fg:var(--ht-remote-fg);--ht-tone-bg:var(--ht-remote-bg);--ht-tone-line:var(--ht-remote-line)}
:is(.ht-anomaly,.badge-warning,.emp-tone-anomaly,.emp-tone-pending,.mgr-tone-anomaly,.mgr-tone-anomalies,.mgr-tone-missing,.mgr-tone-pending,.adm-tone-anomaly,.adm-tone-anomalies,.adm-tone-missing,.adm-tone-pending,.adm-tone-warning,.badge-amber){--ht-tone-fg:var(--ht-anomaly-fg);--ht-tone-bg:var(--ht-anomaly-bg);--ht-tone-line:var(--ht-anomaly-line)}
:is(.ht-approved,.badge-success,.badge-green){--ht-tone-fg:var(--ht-approved-fg);--ht-tone-bg:var(--ht-approved-bg);--ht-tone-line:var(--ht-approved-line)}
:is(.ht-rejected,.badge-red){--ht-tone-fg:var(--ht-rejected-fg);--ht-tone-bg:var(--ht-rejected-bg);--ht-tone-line:var(--ht-rejected-line)}
body :is(.emp-badge,.mgr-badge,.adm-badge,.badge,.emp-calendar-item,.mgr-calendar-item,.adm-calendar-item)[class*='tone-'],body :is(.emp-badge,.mgr-badge,.adm-badge)[class*='state-'],body :is(.ht-status,.badge-success,.badge-warning,.badge-green,.badge-amber,.badge-red){color:var(--ht-tone-fg);background:var(--ht-tone-bg);border-color:var(--ht-tone-line)}
body :is(.mgr-calendar-item,.adm-calendar-item)>span{color:inherit}
body :is(.mgr-team-tile,.adm-dashboard-tile)[class*='tone-']{border-left:3px solid var(--ht-tone-line);background:#fff}
body :is(.mgr-team-tile,.adm-dashboard-tile)[class*='tone-']>strong{color:var(--ht-ink)}
body .message.success{color:var(--ht-approved-fg);background:var(--ht-approved-bg);border-color:var(--ht-approved-line)}
body :is(.message.error,.form-errors){color:var(--ht-rejected-fg);background:var(--ht-rejected-bg);border-color:var(--ht-rejected-line)}
body :is(.message.warning,.alert){color:var(--ht-anomaly-fg);background:var(--ht-anomaly-bg);border-color:var(--ht-anomaly-line)}
@media(min-width:761px){body .main-content{padding-top:18px}body .topbar{height:52px}body .table-bounded{max-height:480px}}
@media(max-width:760px){
  body .main-content{padding:15px 14px calc(82px + env(safe-area-inset-bottom))}
  body.guest .main-content{padding:0}
  body .topbar{height:52px;padding-inline:14px}
  body .topbar-left{gap:9px}body .topbar-right{gap:8px}
  body .breadcrumb,body .today-date,body .topbar-divider{display:none}
  body .ht-mobile-brand{display:block;color:var(--ht-ink);font-size:12px;font-weight:750;letter-spacing:.4px;line-height:1.25}
  body .ht-mobile-brand>img{width:124px;height:auto;display:block}body .ht-mobile-brand>small{display:block;color:var(--ht-muted);font-size:9px;font-weight:400;letter-spacing:.8px;margin-top:2px}
  body .sidebar{width:min(280px,calc(100vw - 36px));padding:18px 14px}
  body:not(.menu-open) .sidebar{visibility:hidden}body.menu-open .sidebar{visibility:visible}
  body .sidebar .nav-item{min-height:44px;font-size:13px;padding-block:10px}
  body :is(.button,.btn,.icon-button,.small-link,.text-link,.mobile-nav>a,.logout button,summary){min-height:44px}
  body .icon-button{min-width:44px}
  body .mobile-nav{padding-bottom:env(safe-area-inset-bottom);min-height:60px}
  body .mobile-nav>a{min-width:0;flex:1;overflow-wrap:anywhere;font-size:10px}
  body :is(.field,.filter-field) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;min-height:44px}
  body :is(.emp-clock-context,.mgr-clock-location,.adm-clock-location,.clock-location) select{font-size:16px;min-height:44px}
  body :is(.page-heading,.adm-heading,.mgr-heading,.emp-heading){flex-wrap:wrap;gap:10px}
  body :is(.page-heading,.adm-heading,.mgr-heading,.emp-heading) h1{font-size:21px}
  body .page-heading .button{flex-shrink:1}
  body :is(.filters,.adm-filters,.mgr-filters){flex-wrap:wrap}
  body :is(.filters,.adm-filters,.mgr-filters) .filter-field{max-width:100%;min-width:0;flex-basis:140px}
  body .ht-filter-disclosure>summary{min-height:44px}
  body .ht-filter-disclosure .filter-field{flex:1 1 140px}
  body div.demo-banner{flex-wrap:nowrap;align-items:center;min-height:44px;padding:0 9px;gap:6px;font-size:10px}
  body div.demo-banner>span:not(.status-dot){font-size:10px}
  body div.demo-banner>.status-dot{margin:0;flex-shrink:0}
  body div.demo-banner>strong{min-width:0;white-space:normal;line-height:1.3}
  body div.demo-banner>a{min-height:44px;flex-shrink:0;margin-left:auto;font-size:10px}
  body .ht-guest-brand{margin-block:18px 14px}
  body.guest .auth-single{padding:20px;margin-bottom:20px}
  body.guest .auth-single .field input{min-height:44px;font-size:16px}
  body.guest .auth-single .auth-forgot{min-height:44px}
  body :is(.install-dialog,.geo-dialog){max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}
}
@media(max-width:360px){body .main-content{padding-inline:11px}body .topbar{padding-inline:10px}body.guest .auth-single{padding:18px}body .ht-filter-disclosure .filter-field{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body *,body *::before,body *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{body .ht-guest-brand{margin:0 0 15px}body .ht-filter-disclosure{display:none}}

body .ht-status{font-size:11px;line-height:1.4;padding:3px 6px;font-weight:500;max-width:100%;white-space:normal}

/* Shared final UI: compact surfaces, readable status and the provider console. */
body .ht-metric-icon{display:inline-grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:8px;background:var(--ht-tone-bg);color:var(--ht-tone-fg)}
body .ht-metric-icon .icon{width:16px;height:16px}
body .ht-title-icon{display:inline-flex;align-items:center;gap:7px}
body .ht-title-icon>.icon{width:16px;height:16px;color:var(--ht-muted)}
body :is(.panel,.card,.emp-card,.mgr-card,.adm-card){background:#fff;border-color:var(--ht-line);border-radius:10px;box-shadow:var(--shadow)}
body :is(.emp-card-heading,.mgr-card-heading,.adm-card-heading){background:#fff}
body .sidebar{background:#fff;border-right-color:var(--ht-line)}
body .workspace{background:#fafbfc;border-color:var(--ht-line)}
body .workspace strong{font-size:12px}body .workspace small{font-size:11px}
body .avatar{background:#f0f2f5;color:#525c6a}
body .nav-item:hover{background:#f5f6f8;color:var(--ht-ink)}
body .install-prompt{background:#fff;border-color:var(--ht-line)}
body .install-prompt strong{font-size:11px}body .install-prompt small{font-size:10px}
body .topbar{background:#fff}
body .demo-banner{background:#fffaf0;color:#76581c;border-color:#eee0be;margin-bottom:12px}
body .demo-banner .status-dot{background:#b5842b}body .demo-banner a{color:#76581c}
body .message{padding:10px 12px;font-size:12px;border-radius:8px}
body .messages{margin-bottom:12px}
body .button-white{background:#fff;border-color:#dce1e7;color:#424b57;box-shadow:none}
body .button-white:hover{background:#fafbfc;border-color:#aeb8c5}
body .button-quiet{color:var(--ht-muted)}
body .small-link,body .text-link{white-space:normal}
body :is(.field-help,.fine-print,.panel-footnote){font-size:11px;color:var(--ht-muted)}
body :is(.field,.filter-field)>label{font-size:12px;color:#424b57}
body :is(.field,.filter-field) :is(input,textarea,select):focus-visible{outline:2px solid var(--ht-focus);outline-offset:2px;box-shadow:none}
body input::placeholder,body textarea::placeholder{color:#78818c}
body :is(.field,.filter-field) :is(input,select,textarea){border-radius:7px;border-color:#ced5de}
body .field-errors,body .errorlist{font-size:12px;color:#a92435;line-height:1.5}
body .empty-state,body .empty-state.compact{padding:22px 16px}
body .empty-state .empty-icon{width:36px;height:36px;margin-bottom:9px;border-radius:9px}
body .empty-state .empty-icon .icon{width:20px;height:20px}
body .empty-state h3{font-size:13px;margin-bottom:4px}
body .empty-state p{font-size:12px}
body .empty-state .button{margin-top:12px}
body .data-table{font-variant-numeric:tabular-nums}
body .data-table th{font-size:10px;font-weight:650;letter-spacing:.4px;color:#596574;background:#fafbfc;padding-block:9px;white-space:normal}
body .data-table td{font-size:12px;color:#414b58;padding-block:10px;border-color:#eef0f3}
body .data-table tbody tr:hover{background:#fafbfc}
body :is(.badge,.emp-badge,.mgr-badge,.adm-badge){font-size:11px;border-radius:5px;font-weight:550;line-height:1.35}
body .row-actions{gap:7px}body .row-actions .small-link{padding:5px 7px;border:1px solid var(--ht-line);border-radius:6px;background:#fff}
body .adm-action-items{display:flex;flex-wrap:wrap;gap:7px;padding-block:8px}
body .adm-action-items>.adm-link,body .mgr-row-actions>.mgr-link{padding:6px 10px;border:1px solid var(--ht-line);border-radius:6px;background:#fff;color:#424b57}
body :is(.install-dialog,.geo-dialog,.session-dialog){border-radius:12px;padding:22px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;box-shadow:0 16px 50px #25292d22}
body dialog::backdrop{background:#25292d66}
body .install-dialog h2,body .geo-dialog h2{font-size:19px}
body .install-dialog .dialog-icon{width:36px;height:36px;margin-bottom:12px}
body .ui-submit-pending{cursor:progress}
body [data-ui-submit-spinner]{display:inline-block;width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ht-spin .8s linear infinite;flex-shrink:0}
body .ui-submit-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--ht-muted);margin:6px 0 0}
body .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
body.admin-space,body.manager-space,body.employee-space{background:var(--ht-background);color:var(--ht-ink)}
body .ht-approved,body .mgr-tone-present,body .adm-tone-present,body .emp-state-working,body .mgr-state-working{--ht-tone-fg:var(--ht-approved-fg);--ht-tone-bg:var(--ht-approved-bg);--ht-tone-line:var(--ht-approved-line)}
@keyframes ht-spin{to{transform:rotate(360deg)}}
body.control-space{--sidebar:228px;background:var(--ht-background)}
body.control-space .sidebar{border-top:3px solid #6b547f}
body.control-space .workspace{background:#f7f4fb;border-color:#e5deee}
body.control-space .workspace-mark{background:#eee8f5;color:#695182}
body.control-space .main-content{max-width:1540px;padding:18px 24px 24px}
body.control-space .tabs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:16px}
body.control-space .tabs>a{display:flex;align-items:center;gap:7px;border:1px solid var(--ht-line);border-radius:7px;min-height:36px;padding:7px 11px;color:#485361;background:#fff;font-size:12px}
body.control-space .tabs .icon{width:16px;height:16px}
body.control-space .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
body.control-space .stat-card{display:grid;grid-template-columns:1fr auto;gap:4px 10px;min-height:90px;padding:12px 14px;border-radius:10px}
body.control-space .stat-card>.ht-metric-icon{grid-column:2;grid-row:1/3;background:#f4effb;color:#6a4798}
body.control-space .stat-card>span:not(.ht-metric-icon){font-size:11px;color:var(--ht-muted)}
body.control-space .stat-card>strong{grid-column:1;font-size:24px;line-height:1.15;letter-spacing:-.5px;margin:0;color:var(--ht-ink)}
body.control-space .card{padding:16px;margin-bottom:14px;border-radius:10px}
body.control-space .card h2{font-size:15px;margin-bottom:12px}
body.control-space .card>p{font-size:12px;line-height:1.6}
body.control-space .card>form>.field{margin-block:13px;max-width:760px}
body.control-space .card form>h2{margin-top:20px}
body.control-space .card .filters{padding:0 0 14px;border:0;box-shadow:none;border-radius:0;margin:0 0 10px;border-bottom:1px solid var(--ht-line);align-items:end}
body.control-space .filters>label{display:grid;gap:5px;flex:1;min-width:0;font-size:12px}
body.control-space .filters :is(input,select){min-height:36px;width:100%;background:#fff}
body.control-space .section-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}
body.control-space .section-heading h2{margin:0}
body.control-space .card dl{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);gap:9px 12px;font-size:12px}
body.control-space .card dt{color:var(--ht-muted)}body.control-space .card dd{margin:0;overflow-wrap:anywhere}
body.control-space pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}
@media(min-width:761px) and (max-width:1023px){
  body .sidebar{width:264px;transform:translateX(-100%);padding:18px 14px;transition:transform .18s}
  body:not(.menu-open) .sidebar{visibility:hidden}body.menu-open .sidebar{transform:translateX(0);visibility:visible}
  body .app-shell{margin-left:0}body .mobile-menu{display:grid;min-width:40px;min-height:40px}
  body .ht-mobile-brand{display:block}body .ht-mobile-brand>img{width:124px;height:auto}body .ht-mobile-brand>small{font-size:9px;color:var(--ht-muted)}
  body .breadcrumb{display:none}body .topbar{height:54px}
  body.menu-open .menu-scrim{display:block;position:fixed;inset:0;background:#25292d66;z-index:49}
  body.menu-open{overflow:hidden}body .sidebar .nav-item{min-height:42px}
}
@media(max-width:760px){
  body.control-space .main-content{padding:14px 12px 90px}
  body.control-space .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.control-space .tabs>a{min-height:44px;flex:1 1 135px}
  body.control-space .dashboard-grid{grid-template-columns:minmax(0,1fr);gap:0}
  body.control-space .card{padding:13px}
  body.control-space .filters :is(input,select){font-size:16px;min-height:44px}
  body.control-space .form-grid{grid-template-columns:minmax(0,1fr)}
  body.control-space .card dl{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
  body .ht-responsive-ready,body .ht-responsive-ready tbody{display:block;min-width:0;width:100%;table-layout:auto}
  body .ht-responsive-ready thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  body .ht-responsive-ready tbody>tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;padding:14px;border-bottom:1px solid var(--ht-line)}
  body .ht-responsive-ready tbody>tr:last-child{border-bottom:0}
  body .ht-responsive-ready td{display:block;min-width:0;max-width:none;padding:0!important;border:0!important;overflow-wrap:anywhere}
  body .ht-responsive-ready td::before{content:attr(data-label);display:block;font-size:10px;color:var(--ht-muted);line-height:1.3;margin-bottom:3px;font-weight:500}
  body .ht-responsive-ready td:first-child,body .ht-responsive-ready td:last-child,body .ht-responsive-ready td[colspan]{grid-column:1/-1}
  body .ht-responsive-ready td:last-child .row-actions{justify-content:flex-start;gap:8px}
  body .ht-responsive-ready td:last-child a{display:inline-flex;align-items:center;min-height:44px}
  body .ht-responsive-ready td[colspan]::before{display:none}
  body .row-actions .small-link{min-height:44px}
  body .install-dialog,body .geo-dialog{padding:18px}
  body .form-grid{grid-template-columns:minmax(0,1fr)}
  body div.demo-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:2px;padding:7px 10px;min-height:45px}
  body div.demo-banner>.status-dot{display:none}
  body div.demo-banner>strong{grid-column:1;grid-row:1;font-size:10px}
  body[class] div.demo-banner>span:not(.status-dot){display:block;grid-column:1;grid-row:2;font-size:10px;line-height:1.2}
  body div.demo-banner>a{grid-column:2;grid-row:1/3;min-height:44px}
}
@media print{body .ht-responsive-ready thead{position:static;clip-path:none;width:auto;height:auto}body .ht-responsive-ready{display:table}body .ht-responsive-ready tbody{display:table-row-group}body .ht-responsive-ready tbody>tr{display:table-row}body .ht-responsive-ready td{display:table-cell}body .ht-responsive-ready td::before{display:none}}
/* The workplace catalogue keeps its actions together on narrow screens. */
body .ht-workplaces .ht-place-name>a{font-weight:600}
body .ht-workplaces .ht-place-name>small{display:block;font-size:10px;color:var(--ht-muted);line-height:1.4;margin-top:3px}
body .ht-workplaces .action-links{display:flex;align-items:center;flex-wrap:nowrap;gap:5px}
body .ht-workplaces .action-links>form{margin:0}
body .ht-workplaces .ht-workplace-form{scroll-margin-top:12px}
body .ht-workplaces .ht-catalog-form{padding:0 18px 18px}
body .ht-workplaces .ht-catalog-form .checkbox-row>label{display:flex;align-items:center;min-height:44px}
@media(min-width:1000px){
  body .ht-workplaces .ht-workplaces-table{display:table;width:100%;table-layout:auto}
  body .ht-workplaces .ht-workplaces-table thead{display:table-header-group;position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none;white-space:normal}
  body .ht-workplaces .ht-workplaces-table thead>tr{display:table-row;padding:0}
  body .ht-workplaces .ht-workplaces-table thead>tr>th{display:table-cell!important;position:static;padding:9px 12px;vertical-align:middle}
  body .ht-workplaces .ht-workplaces-table tbody{display:table-row-group}
  body .ht-workplaces .ht-workplaces-table tbody>tr{display:table-row;padding:0}
  body .ht-workplaces .ht-workplaces-table td{display:table-cell;padding:10px 12px!important;border-bottom:1px solid var(--ht-line)!important;vertical-align:middle}
  body .ht-workplaces .ht-workplaces-table tbody>tr:last-child>td{border-bottom:0!important}
}
@media(max-width:999px){
  body .ht-workplaces .ht-workplaces-table,body .ht-workplaces .ht-workplaces-table tbody{display:block;width:100%}
  body .ht-workplaces .ht-workplaces-table thead{display:table-header-group;position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  body .ht-workplaces .ht-workplaces-table tbody>tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'name state' 'specific specific' 'order actions';align-items:center;gap:5px 7px;padding:10px 12px;border-bottom:1px solid var(--ht-line)}
  body .ht-workplaces .ht-workplaces-table tbody>tr:last-child{border-bottom:0}
  body .ht-workplaces .ht-workplaces-table td{display:block;min-width:0;padding:0!important;border:0!important;font-size:12px}
  body .ht-workplaces .ht-place-name{grid-area:name}
  body .ht-workplaces .ht-place-name>a{display:flex;align-items:center;min-height:44px;line-height:1.4;overflow-wrap:anywhere}
  body .ht-workplaces .ht-place-name>small{margin-top:-6px;margin-bottom:4px}
  body .ht-workplaces .ht-place-state{grid-area:state;justify-self:end}
  body .ht-workplaces .ht-place-state .badge{font-size:10px;white-space:nowrap}
  body .ht-workplaces .ht-place-specific{grid-area:specific;color:var(--ht-muted);line-height:1.4;padding-bottom:3px!important}
  body .ht-workplaces .ht-workplaces-table .ht-place-specific-empty{display:none}
  body .ht-workplaces .ht-place-order{grid-area:order}
  body .ht-workplaces .ht-place-actions{grid-area:actions;justify-self:end}
  body .ht-workplaces .ht-workplaces-table .button{min-height:44px;font-size:11px;padding:7px 9px;white-space:nowrap}
  body .ht-workplaces .ht-place-order .button{min-width:44px;padding-inline:8px}
  body .ht-workplaces .ht-place-empty{grid-column:1/-1}
}
