/* 5.3.0: Mijn uren op de telefoon. Vijf schermen, menu onderaan (telefoon) of tabbladen bovenaan (desktop).
   Telefoon (≤ 800 px): 16 px basis en 16 px invoervelden (Safari zoomt dan niet), knoppen ≥ 44 px, menu 56 px.
   Desktop houdt de compacte maat van RC15 en de tabellen. Geen inline stijlen: de CSP staat die niet toe; de posities
   van de tijdbalken in Rooster zet mijn_uren.js via element.style.left en element.style.width (CSSOM).
   Tweede proefronde (29-10): dagstrook en tijdbalken (Rooster), dagregels met uitklap (Uren), inklapbare onderdelen (Saldo). */

/* --- Basis en kop ------------------------------------------------------------------------------------------ */
.mijn-uren{padding:14px 20px 32px}
.mijn-uren .self-grid{max-width:none;margin:0}
.mu-notice{max-width:1100px;margin:0 auto 10px;padding:10px 12px;border-radius:10px;background:var(--green-soft);color:var(--green);font-weight:650}
.mu-header{max-width:1100px;margin:0 auto 10px;min-height:44px;gap:12px}
.mu-header h1{font-size:24px;line-height:1.15}
.mu-header .header-actions{position:relative;gap:8px;flex-wrap:nowrap}
.mu-header #self-signed-in{font-weight:650;color:var(--ink)}
.mu-more{min-width:44px;min-height:40px;padding:4px 10px;font-size:22px;line-height:1}
.mu-more[aria-expanded="true"]{background:var(--green);color:#fff;border-color:var(--green)}
.mu-more-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:14;display:grid;gap:6px;min-width:230px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow)}
.mu-more-menu .button{width:100%;justify-content:flex-start;min-height:44px;white-space:normal;text-align:left}

/* --- Menu: vijf onderdelen --------------------------------------------------------------------------------- */
.mu-nav{max-width:1100px;margin:0 auto 14px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:4px}
.mu-tablist{display:flex;gap:4px}
.mu-tab{position:relative;flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.mu-tab svg{width:20px;height:20px;flex:none}
.mu-tab:hover{color:var(--green)}
.mu-tab[aria-selected="true"]{background:var(--green);color:#fff}
.mu-dot{position:absolute;top:8px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 2px var(--paper)}
.mu-tab[aria-selected="true"] .mu-dot{box-shadow:0 0 0 2px var(--green)}

/* --- Schermen ----------------------------------------------------------------------------------------------- */
.mu-main{max-width:1100px;margin:0 auto}
.mu-screen{display:grid;gap:12px;align-content:start}
.mu-screen>.panel{min-width:0}
.mu-title{margin:0;font-size:22px}
.mu-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.mu-title-row p{margin:0}
.mu-block-title{margin:0 0 6px;color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mijn-uren .panel h3{margin:0}
.mijn-uren .panel>div>h3{margin:0}
.mu-sub{margin:18px 0 0;font-size:15px}
.mijn-uren .table-wrap{margin-top:10px}
/* rc9.css zet koppen van tabellen op brede schermen plakkend (top:64px, voor beheer); hier scrollen ze gewoon mee. */
.mijn-uren thead th{position:static}
.mijn-uren .detail-table{max-height:none}
.mijn-uren .record-list{margin-top:10px}
.mijn-uren .form-message:empty{display:none}
.mu-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Inklapbare onderdelen (Uren, Saldo): een knop met aria-expanded, het pijltje via CSS. mijn_uren.js zet ze op de telefoon dicht, op desktop open. */
.mu-acc-h{margin:0}
.mu-acc{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:10px;align-items:center;width:100%;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.mu-acc-head{display:grid;gap:3px;min-width:0}
.mu-acc .eyebrow{margin:0;font-size:12px;line-height:1.2}
.mu-acc-title{font-size:17px;font-weight:700;line-height:1.25}
.mu-count{color:var(--muted);font-weight:600}
.mu-acc-sum{color:var(--muted);font-size:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.mu-acc-sum:empty{display:none}
.mu-acc[aria-expanded="true"] .mu-acc-sum{display:none}
.mu-chevron{display:inline-block;width:10px;height:10px;justify-self:center;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-3px) rotate(45deg);transition:transform .15s}
[aria-expanded="true"]>.mu-chevron{transform:translateY(3px) rotate(-135deg)}
.mu-acc-body{margin-top:10px}
.mu-acc-body>p.muted{margin:0 0 8px;font-size:13px}
.mu-acc-body>.record-list{margin-top:0}
.mu-acc-body .detail-section{margin-top:0}

/* Lijsten op de telefoon: één regel per boeking of besluit, toelichting in kleinere letter eronder. */
.mu-lines{display:grid;gap:6px}
.mu-line{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:14px;line-height:1.35}
.mu-line.reserved{background:#f7f8f4;color:var(--muted)}
.mu-line-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:baseline}
.mu-line-main strong,.mu-line-num{font-variant-numeric:tabular-nums;white-space:nowrap}
.mu-line-num{display:inline-flex;gap:10px}
.mu-line-num .negative{color:var(--red)}
.mu-line-num .positive{color:var(--green)}
.mu-line-sub{margin-top:2px;color:var(--muted);font-size:13px}
.mu-line-sub .badge{font-size:11px;padding:2px 7px;margin-right:6px}
.mu-lines>.button{justify-self:start;min-height:40px}

/* Start */
#mu-start{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}
.mu-col{display:grid;gap:12px;min-width:0;align-content:start}
.mu-welcome{margin:0;font-size:20px}
.mijn-uren .rc11-clock{margin:0;grid-column:auto}
.mu-today{margin:0;padding:10px 12px;border-radius:10px;background:var(--paper);border:1px solid var(--line);font-size:14px;line-height:1.4}
.mu-today:empty{display:none}
.mu-today strong{font-weight:750}
.mu-today .badge{margin-left:4px;vertical-align:middle}
.mu-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.mu-tile{position:relative;display:grid;gap:2px;align-content:start;min-height:70px;padding:12px 26px 12px 12px;border:0;border-radius:12px;background:#f5f6f2;color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.mu-tile::after{content:"›";position:absolute;right:10px;top:8px;color:var(--muted);font-size:20px;line-height:1}
.mu-tile:hover{box-shadow:0 0 0 2px rgba(23,108,83,.25)}
.mu-tile strong,.mu-tiles-large strong{display:block;font-size:24px;font-variant-numeric:tabular-nums;line-height:1.1}
.mu-tile span,.mu-tiles-large span{color:var(--muted);font-size:12px}
.mu-tile strong.negative{color:var(--red)}
.mu-tiles .tvt-highlight{background:var(--blue-soft)}
.mu-tiles .vacation-highlight{background:var(--green-soft)}
.mu-tiles-large>div{padding:14px;border-radius:12px;background:#f5f6f2}
.mu-tiles-large strong{font-size:28px}
.mu-plannable{margin:-4px 0 0;font-size:13px}
.mu-signals{display:grid;gap:8px}
.mu-signals:empty{display:none}
.mu-signal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--amber-soft);color:var(--amber);font-size:14px;font-weight:650;line-height:1.35}
.mu-signal.alert{background:var(--red-soft);color:var(--red)}
.mu-signal.info{background:var(--blue-soft);color:var(--blue)}
.mu-signal .button{min-height:40px;white-space:normal}
.mu-signal small{display:block;margin-top:2px;color:inherit;opacity:.85;font-weight:600}
.mu-actions{display:grid;gap:8px}
.mu-actions .button{min-height:48px;font-size:16px;white-space:normal}
.mu-actions-inline{grid-template-columns:max-content}
.mu-open{display:grid;gap:6px}
.mu-open p{margin:0}
.mu-open-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:9px 12px;border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:10px;background:var(--paper);color:var(--ink);text-align:left;font:inherit;font-size:14px;cursor:pointer}
.mu-open-item .badge{justify-self:end}
.mu-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.mu-week-day{display:grid;gap:3px;justify-items:center;padding:6px 2px 7px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:12px;line-height:1.2;cursor:pointer}
.mu-week-day .name{color:var(--muted);font-weight:700;text-transform:lowercase}
.mu-week-day .num{font-weight:800;font-size:15px}
.mu-week-day .bar{display:block;width:70%;height:6px;border-radius:3px;background:var(--green)}
.mu-week-day .when{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.mu-week-day.off{background:#f4f4f1}
.mu-week-day.off .bar{background:#dcdfda}
.mu-week-day.absent .bar{background:var(--blue)}
.mu-week-day.holiday .bar{background:var(--amber)}
.mu-week-day.today{border-color:var(--green);box-shadow:0 0 0 2px rgba(23,108,83,.18)}

/* Aanvragen */
.mu-kind{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.mu-kind-button{min-height:44px;padding:8px 6px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:normal;line-height:1.2}
.mu-kind-button[aria-pressed="true"]{background:var(--green);color:#fff}
.mu-form form{margin-top:12px}
.mu-form .eyebrow{margin-bottom:2px}
.mu-form>p.muted{margin:6px 0 0;font-size:13px}
#rc12-break-form{margin-top:0}
#rc12-break-form>div:first-child h2{font-size:18px;margin:0}
#rc12-break-form .eyebrow{margin-bottom:2px}
.mu-after{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:var(--green-soft);color:var(--green);font-weight:700}
.mu-requests .record-item{grid-template-columns:minmax(0,1fr) auto}
.mu-requests .record-item .badge{margin:0 0 6px;display:inline-block}

/* Rooster: desktop weektabellen met "Ik" als eerste rij */
.mu-week-nav{display:none}
.mu-roster{display:grid;gap:16px}
.mu-roster-week-title{margin:0 0 6px;color:var(--muted);font-size:13px;font-weight:800}
.mu-team-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.mu-team-table th,.mu-team-table td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;vertical-align:middle}
.mu-team-table thead th{font-size:12px;letter-spacing:0;text-transform:none;background:#f5f6f2}
.mu-team-table th[scope="row"]{text-align:left;font-weight:700;color:var(--ink);font-size:13px;letter-spacing:0;text-transform:none}
.mu-team-table th.weekend{color:var(--muted)}
.mu-team-table th.today,.mu-team-table td.today{background:rgba(23,108,83,.08)}
.mu-team-table .mu-me-row th,.mu-team-table .mu-me-row td{background:#eef5f2;font-weight:750}
.mu-team-table .mu-me-row td.today{background:#dcefe7}
.mu-team-table td.on{color:var(--green);font-weight:700}
.mu-team-table td.off{color:var(--muted)}
.mu-team-table td.absent{color:var(--blue);font-weight:700}
.mu-team-table td.holiday{color:var(--amber);font-weight:700}
.mu-team-table td small{display:block;margin:0;font-size:11px;font-weight:600}
.mu-team-table tr:last-child th,.mu-team-table tr:last-child td{border-bottom:0}
.mu-team-wrap{overflow-x:auto}
.mu-privacy{margin:0;font-size:13px}
.rc18-roster-change{display:block}

/* Rooster op de telefoon: dagstrook (eigen week) en de gekozen dag met tijdbalken; desktop verbergt ze. */
.mu-day-strip{display:none;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.mu-ds-day{display:grid;gap:2px;justify-items:center;min-height:60px;padding:6px 2px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:12px;line-height:1.2;cursor:pointer}
.mu-ds-day .name{color:var(--muted);font-weight:700}
.mu-ds-day .num{font-weight:800;font-size:16px}
.mu-ds-day .when{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.mu-ds-day.off{background:#f4f4f1}
.mu-ds-day.absent .when{color:var(--blue);font-weight:700}
.mu-ds-day.holiday .when{color:var(--amber);font-weight:700}
.mu-ds-day.today{border-color:var(--green);box-shadow:0 0 0 2px rgba(23,108,83,.18)}
.mu-ds-day[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}
.mu-ds-day[aria-pressed="true"] .name,.mu-ds-day[aria-pressed="true"] .when{color:rgba(255,255,255,.88)}
.mu-day-detail{display:none}
.mu-dd-head{margin:0 0 10px;font-size:15px;line-height:1.4}
.mu-dd-head strong{font-size:16px}
.mu-dd-head .badge{font-size:11px;padding:3px 8px;vertical-align:middle}
.mu-dd-none{margin:0;color:var(--muted)}
.mu-axis{position:relative;height:16px;margin:0 0 2px 80px}
.mu-axis span{position:absolute;top:0;transform:translateX(-50%);color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}
.mu-bar-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;align-items:center;min-height:32px}
.mu-bar-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.mu-bar-row.me .mu-bar-name{font-weight:800;color:var(--green)}
.mu-bar-track{position:relative;height:26px;border-radius:6px;background:#eef0ec}
.mu-bar{position:absolute;top:3px;bottom:3px;border-radius:5px;background:#b5dccb;color:var(--ink)}
.mu-bar-row.me .mu-bar{background:var(--green);color:#fff}
.mu-bar span,.mu-bar-text{position:absolute;left:6px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.mu-bar.narrow span{left:calc(100% + 6px);color:var(--ink)}
.mu-bar.narrow-right span{left:auto;right:calc(100% + 6px)}
.mu-bar-text{color:var(--muted)}
.mu-dd-free{margin:10px 0 0;color:var(--muted);font-size:14px}

/* Uren */
.mu-period{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:end;max-width:560px}
.mu-period .button{min-width:44px;min-height:44px;padding:0 12px;font-size:20px}
.mu-period-label{margin:0}
.mu-period select{min-height:44px}
.mu-custom{max-width:560px}
.mu-custom summary{cursor:pointer;color:var(--green);font-weight:700;padding:6px 0}
.mu-custom .period-controls{margin-top:6px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content;align-items:end}
.mu-uren-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:560px}
.mu-uren-tiles:empty{display:none}
.mu-mini{display:grid;gap:2px;align-content:start;padding:10px 12px;border-radius:12px;background:#f5f6f2}
.mu-mini strong{font-size:20px;font-variant-numeric:tabular-nums;line-height:1.1}
.mu-mini span{color:var(--muted);font-size:12px}
.mu-period-info:empty{display:none}
.mu-period-info .rc12-note{margin-top:0;font-size:14px;padding:8px 12px}
.mu-period-info .rc12-note.alert,.mu-period-info .rc12-note.mu-dup{display:none}
.mu-day-list{display:grid;gap:6px}
.mu-day-item{min-width:0}
.mu-day-row{position:relative;display:grid;grid-template-columns:12px 62px minmax(0,1fr) auto 14px;gap:8px;align-items:center;width:100%;min-height:48px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);text-align:left;font:inherit;font-size:15px;line-height:1.3;cursor:pointer}
.mu-day-row[aria-expanded="true"]{border-radius:10px 10px 0 0;background:#f5f6f2}
/* Kleurpunt uit de status van de dag: groen in orde, oranje te beoordelen, rood onvolledig, grijs lopend (vandaag). */
.mu-status-dot{width:10px;height:10px;border-radius:50%;background:var(--green)}
.mu-status-dot.pending{background:#d19a2b}
.mu-status-dot.incomplete{background:var(--red)}
.mu-status-dot.open{background:#b4bbb6}
.mu-dr-date{font-weight:700;white-space:nowrap}
.mu-dr-clock{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.mu-red{color:var(--red);font-weight:700}
.mu-dr-hours{font-weight:750;font-variant-numeric:tabular-nums}
.mu-day-more{padding:10px 12px 12px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;background:#faf9f5}
.mu-kv{display:grid;grid-template-columns:70px minmax(0,1fr);gap:5px 10px;margin:0;font-size:14px;line-height:1.35}
.mu-kv dt{color:var(--muted);font-weight:700}
.mu-kv dd{margin:0;min-width:0}
.mu-kv .rc12-why span{display:block}
.mu-kv small{display:block;margin-top:2px}
.mu-kv .badge{font-size:11px;padding:3px 8px}
.mu-kv .mu-scan-list{display:grid;gap:2px}
.mu-dd-fix{margin-top:10px}
.mu-dd-note{margin:10px 0 0;color:var(--amber);font-weight:650;font-size:14px}
.mu-scan-toggle{display:inline-block;margin-top:4px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--green);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.mu-scan-toggle[aria-expanded="true"]{background:var(--green);color:#fff;border-color:var(--green)}
tr.mu-scans td{background:#faf9f5;font-size:13px;padding-top:6px;padding-bottom:8px}
.mu-scan-list{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none}
.mu-scan-list li{font-variant-numeric:tabular-nums}
.mu-scan-list li.ignored{color:var(--muted);text-decoration:line-through}
.mu-scan-column{display:grid;gap:4px;font-size:14px}

/* Saldo */
.mu-period-heading{margin:0 0 8px;font-size:13px}
.mu-period-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.mu-period-stats>div{padding:10px}
.mu-period-stats strong{font-size:20px}
.mu-planned-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:14px}
.mu-planned-item strong{font-variant-numeric:tabular-nums}
.mu-flash{animation:mu-flash 1.8s ease-out}
@keyframes mu-flash{0%{box-shadow:0 0 0 4px rgba(23,108,83,.55)}100%{box-shadow:0 0 0 0 rgba(23,108,83,0)}}

/* Lijsten: zoekveld en Vorige/Volgende alleen bij meer dan vijftien regels (mijn_uren.js verbergt de balk anders). */
.mu-pager{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;margin:10px 0 0}
.mu-pager input{min-width:0}
.mu-pager .button{min-height:40px}
.mu-pager span{white-space:nowrap;font-size:13px}

/* Horizontaal schuiven met een hint: vervagende randen en zichtbare ‹ › (alleen als de tabel echt breder is). */
.mu-fade{background:linear-gradient(to right,var(--paper) 30%,rgba(255,253,248,0)),linear-gradient(to right,rgba(255,253,248,0),var(--paper) 70%) 100% 0,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.18),rgba(0,0,0,0)),radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.18),rgba(0,0,0,0)) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}
.mu-scroll-buttons{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
.mu-scroll-buttons .button{min-width:44px;min-height:40px;padding:0 12px;font-size:18px}

/* Zo telt de klok (venster): de inhoud komt uit RC15.texts, de stijlen uit rc15.css (.rc15-explain). */
.mu-explain-dialog{width:min(640px,calc(100% - 24px));padding:18px 20px 22px}
.mu-explain-dialog .dialog-heading{margin-bottom:6px}
.mu-explain-dialog .dialog-heading h2{font-size:22px;margin:0}
.mu-explain-dialog .rc15-explain{margin-top:0}

/* --- Desktop en tablet (> 800 px): tabbladen blijven bovenaan in beeld; de tabellen blijven, de telefoonlijsten niet ------ */
@media(min-width:801px){
  .mu-nav{position:sticky;top:8px;z-index:12;box-shadow:0 8px 24px rgba(27,43,43,.08)}
  .mu-block,.mu-form,.mu-requests{scroll-margin-top:76px}
  .mu-day-list,#mu-decision-list,#mu-scan-list-all,#mu-tvt-list,#mu-vacation-list{display:none}
}

/* --- Telefoon (≤ 800 px): groter, menu onderaan, één week per scherm, lijsten in plaats van tabellen ------------------- */
@media(max-width:800px){
  .mijn-uren{padding:10px 12px calc(76px + env(safe-area-inset-bottom,0px));font-size:16px}
  .mu-header{flex-direction:row;align-items:center;flex-wrap:nowrap;margin-bottom:8px;min-height:44px}
  .mu-header .eyebrow{display:none}
  .mu-header h1{font-size:18px}
  .mu-header #self-signed-in{font-size:15px;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mijn-uren .button{min-height:44px;padding:10px 14px;font-size:16px}
  .mijn-uren input,.mijn-uren select,.mijn-uren textarea{font-size:16px;padding:10px 12px;min-height:44px}
  .mijn-uren textarea{min-height:96px}
  .mijn-uren label{font-size:14px}
  .mijn-uren .panel{padding:12px}
  .mijn-uren .panel h3{font-size:17px}
  .mijn-uren table{font-size:15px}
  .mijn-uren .rc12-note,.mijn-uren .rc11-notice{font-size:14px}
  .mu-nav{position:fixed;left:0;right:0;bottom:0;z-index:12;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;padding:0 0 env(safe-area-inset-bottom,0px);background:var(--paper);box-shadow:0 -6px 20px rgba(27,43,43,.08)}
  .mu-tablist{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;height:56px}
  .mu-tab{flex-direction:column;gap:3px;min-height:56px;padding:6px 2px;border-radius:0;font-size:11.5px;font-weight:700;letter-spacing:0}
  .mu-tab svg{width:22px;height:22px}
  .mu-tab[aria-selected="true"]{background:transparent;color:var(--green)}
  .mu-tab[aria-selected="true"]::before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;border-radius:0 0 3px 3px;background:var(--green)}
  .mu-dot{top:6px;right:calc(50% - 18px)}
  .mu-tab[aria-selected="true"] .mu-dot{box-shadow:0 0 0 2px var(--paper)}
  #mu-start{grid-template-columns:minmax(0,1fr);gap:12px}
  .mu-welcome{font-size:18px}
  .mu-tile{min-height:76px;padding:12px 22px 12px 10px}
  .mu-tile strong{font-size:22px}
  .mu-tile::after{right:6px}
  .mu-tiles-large strong{font-size:30px}
  .mu-signal{font-size:15px}
  .mu-signal .button{min-height:44px}
  .mu-today{font-size:15px}
  .mu-kind-button{font-size:13.5px;min-height:46px}
  .mu-form .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  /* Rooster: weeknavigatie, dagstrook en de gekozen dag; de weektabellen niet. */
  .mu-week-nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}
  .mu-week-nav .button{min-width:48px;padding:0;font-size:22px}
  .mu-week-title{margin:0;text-align:center;font-weight:800}
  .mu-day-strip{display:grid}
  .mu-day-detail{display:block;padding:12px}
  #mu-roster{display:none}
  /* Uren en Saldo: de regels en lijsten; de tabellen en hun zoekveld niet. */
  .mu-days-panel .table-wrap,#mu-uren-besluiten .table-wrap,#mu-uren-scans .table-wrap,#mu-saldo-tvt .table-wrap,#mu-saldo-verlof .table-wrap,.mu-pager-table{display:none}
  .mu-days-panel>p.muted{margin:4px 0 8px;font-size:13px}
  #mu-saldo-reis.mu-empty{display:none}
  .mu-period{max-width:none}
  .mu-uren-tiles{max-width:none}
  .mu-custom .period-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mu-custom .period-controls .button{grid-column:1/-1;justify-self:stretch}
  .mu-period-stats{gap:6px}
  .mu-period-stats>div{padding:8px}
  .mu-period-stats strong{font-size:17px}
  .mu-period-stats span{font-size:11px}
  .mu-pager{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
  .mu-pager input{grid-column:1/-1}
  .mu-pager span{text-align:center}
  .mu-more-menu{min-width:240px}
  .mu-actions-inline{grid-template-columns:minmax(0,1fr)}
  .mu-explain-dialog{width:calc(100% - 16px);padding:14px 14px 18px}
}
@media(max-width:600px){
  /* Signalen: de knop onder de tekst, zodat de tekst de volle breedte houdt. */
  .mu-signal{grid-template-columns:minmax(0,1fr)}
  .mu-signal .button{justify-self:start}
  .mu-tile span{font-size:11px}
  .mu-week-day .when{font-size:10px}
  .mu-ds-day{min-height:58px;padding:6px 1px}
  .mu-bar-row{grid-template-columns:64px minmax(0,1fr)}
  .mu-axis{margin-left:72px}
}
@media(max-width:380px){
  .mu-tab{font-size:11px}
  .mu-kind-button{font-size:12.5px;padding:8px 4px}
  .mu-tile strong{font-size:20px}
  .mu-day-row{grid-template-columns:10px 58px minmax(0,1fr) auto 12px;gap:6px;padding:8px}
  .mu-mini strong{font-size:18px}
}
