/* TIM HEBAT REV5.9.1 - shared mobile visual language, safe for React & PIC DOM. */
:root{--thum-burgundy:#891f33;--thum-ink:#17263c;--thum-muted:#475569;--thum-line:#e3e8ef;--thum-bg:#f5f7fa;--thum-shadow:0 12px 34px rgba(22,36,62,.11)}
@media(max-width:979px){
  body.thum-mobile-employee,body.th-pic-mobile-v35zzr{background:var(--thum-bg)!important;color:var(--thum-ink)!important}
  body.thum-mobile-employee{padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}
  body.thum-mobile-employee #root .portal-shell:not(.manager-shell) nav.bottom-nav{display:none!important}
  body.thum-mobile-employee #th-pic-mobile-dock,body.thum-mobile-employee #th-pic-mobile-sheet{display:none!important}
  body.thum-mobile-employee #root .portal-main{padding:12px 12px calc(102px + env(safe-area-inset-bottom))!important;max-width:100%!important}
  body.thum-mobile-employee #root .screen-stack{gap:14px!important}
  /* Shared hero treatment; respects PIC unit brand accents elsewhere. */
  body.thum-mobile-employee #root .welcome-card,
  body.th-pic-mobile-v35zzr .th-pic-home-hero{
    min-height:165px!important;max-height:none!important;
    margin:0 0 14px!important;padding:21px 19px!important;
    border-radius:23px!important;border:1px solid rgba(255,255,255,.11)!important;
    background:radial-gradient(circle at 96% 12%,rgba(245,161,139,.23),transparent 48%),linear-gradient(127deg,#192e4d 0%,#582c45 52%,#91283b 100%)!important;
    box-shadow:var(--thum-shadow)!important;color:#fff!important;
    display:flex!important;flex-direction:column!important;align-items:flex-start!important;
    justify-content:center!important;gap:9px!important;overflow:hidden!important;
  }
  body.thum-mobile-employee .welcome-card :is(h1,p,span,small,div),
  body.th-pic-mobile-v35zzr .th-pic-home-hero :is(h2,p,span,b,div){color:#fff!important;text-shadow:none!important}
  body.thum-mobile-employee .welcome-card h1,
  body.th-pic-mobile-v35zzr .th-pic-home-hero h2{
    font-size:clamp(26px,7vw,33px)!important;line-height:1.14!important;
    letter-spacing:-.035em!important;margin:3px 0!important;font-weight:820!important;
    overflow-wrap:anywhere!important;
  }
  body.thum-mobile-employee .welcome-card p,
  body.th-pic-mobile-v35zzr .th-pic-home-hero p{
    font-size:clamp(13px,3.45vw,15px)!important;line-height:1.5!important;
    opacity:1!important;color:rgba(255,255,255,.95)!important;margin:0!important;
    overflow-wrap:anywhere!important;
  }
  body.thum-mobile-employee .welcome-card .eyebrow,
  body.th-pic-mobile-v35zzr .th-pic-home-hero>div:first-child>span{
    font-size:11px!important;letter-spacing:.1em!important;font-weight:820!important;
    opacity:1!important;color:#ffe2d0!important;
  }
  body.thum-mobile-employee .welcome-card .welcome-badge{
    position:static!important;align-self:flex-start!important;margin:5px 0 0!important;
    padding:5px 11px!important;font-size:11px!important;line-height:1.25!important;
    font-weight:760!important;color:#fff!important;background:rgba(255,255,255,.16)!important;
    border:1px solid rgba(255,255,255,.28)!important;
  }
  body.th-pic-mobile-v35zzr .th-pic-home-hero .th-pic-today{
    width:100%!important;display:flex!important;flex-wrap:wrap!important;
    justify-content:space-between!important;gap:5px 14px!important;
    padding-top:10px!important;margin-top:4px!important;
    border-top:1px solid rgba(255,255,255,.22)!important;
  }
  body.th-pic-mobile-v35zzr .th-pic-home-hero .th-pic-today b{font-size:13px!important}
  body.th-pic-mobile-v35zzr .th-pic-home-hero .th-pic-today span{font-size:11.5px!important}
  /* Tight but readable section headers & consistent cards. */
  body.th-pic-mobile-v35zzr .th-pic-workspace-page{background:var(--thum-bg)!important}
  body.th-pic-mobile-v35zzr .th-pic-page-head{margin-bottom:12px!important}
  body.th-pic-mobile-v35zzr .th-pic-page-head h1{font-size:24px!important;line-height:1.2!important;color:var(--thum-ink)!important}
  body.th-pic-mobile-v35zzr .th-pic-page-head p{font-size:13px!important;line-height:1.55!important;color:var(--thum-muted)!important}
  body.thum-mobile-employee #root .quick-card,
  body.thum-mobile-employee #root .summary-card,
  body.th-pic-mobile-v35zzr .th-pic-dash-card,
  body.th-pic-mobile-v35zzr .th-pic-metric-grid article{
    border-color:var(--thum-line)!important;border-radius:17px!important;
    box-shadow:0 5px 18px rgba(22,36,62,.045)!important;
  }
  body.thum-mobile-employee #root :is(.quick-card,.summary-card) :is(strong,b),
  body.th-pic-mobile-v35zzr :is(.th-pic-dash-card,.th-pic-metric-grid) :is(strong,b){color:var(--thum-ink)!important}
  body.thum-mobile-employee #root :is(.quick-card,.summary-card) :is(p,small),
  body.th-pic-mobile-v35zzr .th-pic-dash-card :is(p,small){color:var(--thum-muted)!important;line-height:1.5!important}
  /* Announcement compactness and touch readability, same for both roles. */
  body.thum-mobile-employee #th45-announcements.th45-board,
  body.th-pic-mobile-v35zzr #th45-announcements.th45-board{
    margin:0 0 14px!important;padding:18px 16px!important;
    border:1px solid var(--thum-line)!important;border-radius:20px!important;
    box-shadow:0 5px 18px rgba(22,36,62,.045)!important;min-height:0!important;
  }
  body.thum-mobile-employee #th45-announcements header,
  body.th-pic-mobile-v35zzr #th45-announcements header{gap:11px!important;align-items:center!important}
  body.thum-mobile-employee #th45-announcements h2,
  body.th-pic-mobile-v35zzr #th45-announcements h2{font-size:22px!important;line-height:1.2!important;color:var(--thum-ink)!important}
  body.thum-mobile-employee #th45-announcements p,
  body.th-pic-mobile-v35zzr #th45-announcements p{font-size:13px!important;line-height:1.55!important;color:var(--thum-muted)!important}
  body.thum-mobile-employee #th45-announcements .th45-actions,
  body.th-pic-mobile-v35zzr #th45-announcements .th45-actions{width:auto!important;flex:0 0 auto!important}
  body.thum-mobile-employee #th45-announcements .th45-actions button,
  body.th-pic-mobile-v35zzr #th45-announcements .th45-actions button{
    width:auto!important;min-width:96px!important;max-width:100%!important;
    min-height:42px!important;flex:0 0 auto!important;padding:9px 13px!important;
    border-radius:12px!important;font-size:13px!important;
  }
  body.thum-mobile-employee #th45-announcements .th45-ann-list,
  body.th-pic-mobile-v35zzr #th45-announcements .th45-ann-list{margin-top:13px!important}
  body.thum-mobile-employee #th45-announcements .th45-empty,
  body.th-pic-mobile-v35zzr #th45-announcements .th45-empty{padding:12px 4px!important;margin:0!important;text-align:left!important}
  /* One dock component, common scale and affordances for native PIC & Employee. */
  #thum-employee-dock.thum-dock,
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock{
    box-sizing:border-box!important;position:fixed!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    left:50%!important;right:auto!important;transform:translateX(-50%)!important;
    width:min(600px,calc(100% - 16px))!important;min-height:72px!important;height:auto!important;
    z-index:2147482500!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:2px!important;padding:6px!important;border-radius:22px!important;
    background:rgba(255,255,255,.975)!important;border:1px solid #dce3eb!important;
    box-shadow:0 15px 40px rgba(18,32,53,.16)!important;backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  #thum-employee-dock.thum-dock button,
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock button{
    box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:3px!important;
    border:0!important;border-radius:16px!important;min-height:57px!important;
    min-width:0!important;max-width:100%!important;padding:6px 1px!important;
    background:transparent!important;color:#526073!important;
    font-family:inherit!important;font-weight:780!important;cursor:pointer!important;
  }
  #thum-employee-dock.thum-dock :is(.thum-ic,.thmd-ic),
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock :is(.thum-ic,.thmd-ic){
    display:grid!important;place-items:center!important;line-height:1!important;font-size:21px!important;
  }
  #thum-employee-dock.thum-dock :is(.thum-label,.thmd-label),
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock :is(.thum-label,.thmd-label){
    width:100%!important;text-align:center!important;font-size:clamp(11px,2.9vw,12px)!important;
    letter-spacing:-.012em!important;line-height:1.2!important;font-weight:780!important;
    text-overflow:clip!important;white-space:nowrap!important;overflow:visible!important;
  }
  #thum-employee-dock.thum-dock :is(.thum-ic,.thmd-ic) svg,
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock :is(.thum-ic,.thmd-ic) svg{width:22px!important;height:22px!important}
  #thum-employee-dock.thum-dock button.active,
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock button.active{
    background:#f8e8eb!important;color:var(--thum-burgundy)!important;
  }
  #thum-employee-dock.thum-dock button:focus-visible,
  body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock button:focus-visible,
  #thum-employee-sheet button:focus-visible{
    outline:3px solid #9d394f!important;outline-offset:1px!important;
  }
  #thum-employee-dock.thum-dock button:disabled{opacity:.6!important;cursor:wait!important}
  /* Common More sheet. */
  #thum-employee-sheet.thum-sheet{position:fixed;inset:0;z-index:2147482600;
    display:none;align-items:flex-end;justify-content:center;background:rgba(13,25,43,.45);backdrop-filter:blur(4px)}
  #thum-employee-sheet.thum-sheet.open{display:flex!important}
  #thum-employee-sheet.thum-sheet .thmd-sheet-card{
    width:min(600px,100%);max-height:min(82dvh,680px);overflow:auto;
    padding:11px 14px max(20px,env(safe-area-inset-bottom));
    background:#f7f9fc;border-radius:24px 24px 0 0;box-shadow:0 -16px 42px rgba(13,25,43,.16)
  }
  #thum-employee-sheet .thmd-handle{width:38px;height:5px;border-radius:99px;background:#cbd5e1;margin:2px auto 14px}
  #thum-employee-sheet .thmd-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}
  #thum-employee-sheet .thmd-sheet-head strong{font-size:19px;color:var(--thum-ink)}
  #thum-employee-sheet .thmd-sheet-head button{width:44px;height:44px;border:0;border-radius:12px;background:#e9eef5;color:#9a2334;font-size:26px;cursor:pointer}
  #thum-employee-sheet .thmd-menu{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  #thum-employee-sheet .thmd-menu button{min-height:64px;border:1px solid var(--thum-line);border-radius:16px;background:white;color:var(--thum-ink);display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:11px;text-align:left;font-size:13px;font-weight:760;cursor:pointer}
  #thum-employee-sheet .thum-ic svg{width:22px;height:22px;color:#7f2436}
  #thum-employee-sheet .thmd-menu button.danger{color:#a22733;background:#fff5f6}
  body.th-pic-mobile-v35zzr #th-pic-mobile-sheet.thum-sheet .thmd-menu button{font-size:13px!important;min-height:60px!important}
  body.th-pic-mobile-v35zzr #th-pic-mobile-sheet.thum-sheet .thmd-menu-ic svg{width:21px;height:21px}
  #thum-employee-notice:not([hidden]){position:fixed;left:50%;transform:translateX(-50%);bottom:calc(94px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);z-index:2147482800;padding:12px 14px;border-radius:13px;color:#8d1929;background:#fff4f3;border:1px solid #f1bebc;font-size:13px;font-weight:740;line-height:1.4;box-shadow:var(--thum-shadow)}
  body:has(.signature-modal) #thum-employee-dock,
  body:has(#th3-spl-root) #thum-employee-dock,
  body:has(.tm-modal-root) #thum-employee-dock,
  body:has(.th-ksb-backdrop) #thum-employee-dock,
  body:has(#th46p-root) #thum-employee-dock,
  body:has(#th46s-root) #thum-employee-dock{display:none!important}
}
@media(max-width:370px){
  #thum-employee-dock.thum-dock,body.th-pic-mobile-v35zzr #th-pic-mobile-dock.thum-dock{width:calc(100% - 8px)!important;padding:4px!important;gap:0!important}
  #thum-employee-sheet .thmd-menu{grid-template-columns:1fr}
  body.thum-mobile-employee .welcome-card h1,body.th-pic-mobile-v35zzr .th-pic-home-hero h2{font-size:27px!important}
  body.thum-mobile-employee #th45-announcements.th45-board,body.th-pic-mobile-v35zzr #th45-announcements.th45-board{padding:15px 13px!important}
}
@media(min-width:980px){
  #thum-employee-dock,#thum-employee-sheet,#thum-employee-notice{display:none!important}
}
