@import url('./management-workspace.css');
/* One shell across the application and native tools. */
:root{--workspace-nav-height:68px;--workspace-header-height:var(--rp-header-height);background:#f4f6f9}
.workspace-header.site-header{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:20px;width:100%;max-width:none;height:64px;min-height:64px;box-sizing:border-box;margin:0!important;padding:0 24px!important;background:#fff;color:#26364d;border-bottom:1px solid #e5e9ee;font:400 14px MiSans,MiSansCN,system-ui,sans-serif;view-transition-name:workspace-header}
.workspace-header a{text-decoration:none;color:inherit}.workspace-header .brand{display:flex;align-items:center;width:32px;height:40px;flex:none}.workspace-header .brand img{width:30px;height:30px;border-radius:10px}.workspace-header .wordmark{font:500 19px MiSans,system-ui,sans-serif;letter-spacing:.16em}.workspace-header .header-tools{margin-left:auto;display:flex;align-items:center;gap:4px}.workspace-header button{font:500 13px MiSans,MiSansCN,system-ui,sans-serif;border:0;background:transparent;color:inherit;padding:0;cursor:pointer}.workspace-header .icon-button,.workspace-header .account-trigger,.workspace-header .preview-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:40px;min-height:var(--rp-control-size);border-radius:12px}.workspace-header .preview-trigger{padding:0 10px}.workspace-header .icon{width:20px;height:20px;stroke:currentColor}.workspace-header .avatar{width:32px;height:32px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);border-radius:50%;font-size:12px;font-weight:600}.workspace-header button:hover,.workspace-header .icon-button:hover{background:#f3f5f7}.workspace-header .preview-trigger span{font-size:11px}
.employee-bottom-nav{display:none;box-sizing:border-box;font:500 10px MiSans,MiSansCN,system-ui,sans-serif;view-transition-name:workspace-nav}.employee-bottom-nav a{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;flex:1;min-width:0;min-height:54px;gap:4px;padding:4px 0;box-sizing:border-box;color:#6b7686;text-decoration:none;border-radius:12px;white-space:nowrap}.employee-bottom-nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}.employee-bottom-nav a:hover{background:#f5f6f8}.employee-bottom-nav .icon{width:20px;height:20px;flex:none}.employee-bottom-nav .count{position:absolute;top:2px;right:calc(50% - 24px);min-width:16px;height:16px;padding:0 4px;box-sizing:border-box;border-radius:12px;background:var(--priority);color:#fff;font:500 9px/16px MiSans,system-ui,sans-serif;text-align:center;border:0}
.workspace-sidebar{view-transition-name:workspace-sidebar}.workspace-sidebar .workspace-section-label{letter-spacing:.7px}.workspace-sidebar details{margin:3px 0}.workspace-sidebar summary{list-style:none;cursor:pointer;min-height:40px;padding:10px 12px;color:#647183;font:500 11px MiSans,MiSansCN,system-ui,sans-serif}.workspace-sidebar summary::-webkit-details-marker{display:none}.workspace-sidebar summary:after{content:'+';float:right}.workspace-sidebar details[open]>summary:after{content:'−'}.workspace-sidebar details a{font-size:11px;margin-left:4px}
@media(min-width:721px){.layout{min-height:calc(100dvh - 64px)}.workspace-sidebar,.employee-workspace-sidebar{top:64px!important;height:calc(100dvh - 64px)!important}.workspace-header+.layout .workspace-sidebar{top:64px!important}.employee-reading-return{bottom:18px!important}body[data-employee-tool]{padding-bottom:30px!important}}
@media(max-width:720px){.workspace-header.site-header{height:60px;min-height:60px;padding:0 12px!important;gap:14px}.workspace-header .wordmark{font-size:17px}.workspace-header .header-tools{gap:0}.workspace-header .preview-trigger{padding:0;min-width:38px}.workspace-header .preview-trigger span{display:none}.workspace-header .brand img{width:28px;height:28px}.workspace-header .icon-button,.workspace-header .account-trigger{min-width:37px}.employee-bottom-nav{display:flex;position:fixed;z-index:1100;left:50%;bottom:0;transform:translateX(-50%);gap:0;width:100%;max-width:600px;min-height:calc(68px + env(safe-area-inset-bottom));margin:0;padding:5px 3px calc(7px + env(safe-area-inset-bottom));border:1px solid #e1e6ec;border-bottom:0;border-radius:17px 17px 0 0;background:#fff;box-shadow:0 -3px 18px #26364d08;backdrop-filter:none}.workspace-sidebar{display:none!important}.content,body[data-employee-tool]{padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}.employee-reading-return{bottom:calc(80px + env(safe-area-inset-bottom))!important}.employee-bottom-nav a,.employee-bottom-nav span{font-size:var(--rp-micro-size);line-height:1.25}.employee-bottom-nav .icon{width:20px;height:20px}}
@media(max-width:350px){.workspace-header.site-header{gap:9px}.workspace-header .wordmark{font-size:15px}}
/* No crossfade of fixed chrome or white intermediate frame between documents. */
@view-transition{navigation:auto}
::view-transition-group(root),::view-transition-group(workspace-header),::view-transition-group(workspace-nav),::view-transition-group(workspace-sidebar){animation-duration:90ms}
::view-transition-old(root),::view-transition-new(root),::view-transition-old(workspace-header),::view-transition-new(workspace-header),::view-transition-old(workspace-nav),::view-transition-new(workspace-nav),::view-transition-old(workspace-sidebar),::view-transition-new(workspace-sidebar){animation:none;mix-blend-mode:normal}
@media(prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:0s}}
.rota-table tr.is-self>.person-cell{box-shadow:inset 4px 0 var(--accent-bright);background:var(--accent-soft)!important}.rota-table tr.is-self>.shift-slot{box-shadow:inset 0 2px #ed6a1666,inset 0 -2px #ed6a1666}.rota-you{display:inline-flex;align-items:center;background:var(--accent);color:var(--on-dark);border-radius:var(--rp-chip-radius);font-size:var(--rp-micro-size);font-weight:var(--rp-weight-medium);line-height:1.3;padding:2px 4px;white-space:nowrap}.rota-table .is-past{background:#f0f1f3!important;color:#858b95}.rota-table .is-past .shift-cell{background:#e7e9ed!important;border-color:#d4d8df!important;color:#737b88!important;box-shadow:none}.rota-table .is-past .shift-time{color:#7c8490!important}.rota-table .is-past .date-number{color:#858b95}.rota-table .is-self .person-name-line{flex-wrap:wrap}
@media(min-width:721px){body[data-employee-tool]>.workspace-header.site-header{margin-left:-224px!important;width:calc(100% + 224px)}body[data-employee-tool=data] .data-controls{top:64px!important}}
@media(min-width:1650px){body[data-employee-tool]>.workspace-header.site-header{margin-left:-240px!important;width:calc(100% + 240px)}}
@media(max-width:720px){body[data-employee-tool=offer]>.workspace-header.site-header{margin-left:-10px!important;width:calc(100% + 20px)}body[data-employee-tool=data] .data-controls{top:60px!important}}

/* Retail Portal identity: one compact shared mark across all workspaces. */
.workspace-header .wordmark{font-size:20px;letter-spacing:-.6px!important;white-space:nowrap;font-weight:600}
.login-brand>span{letter-spacing:-.5px;font-size:22px;font-weight:600}.pwa-install-link{display:block;text-align:center;margin:20px 0 0;font-weight:600;color:var(--accent,#b94e00);font-size:14px;min-height:32px;padding:6px}
@media(max-width:760px){.workspace-header.site-header{gap:10px!important}.workspace-header .wordmark{font-size:13px!important;line-height:1.05;letter-spacing:-.2px!important}.workspace-header .wordmark span{display:block}.workspace-header .brand{width:28px}.login-brand>span{font-size:21px}}
@media(max-width:760px){.workspace-header .wordmark{display:block!important;flex:none!important}}

.home-welcome-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.home-welcome-row>div:first-child{min-width:0;margin-bottom:0}:is(.home-app-install,.home-offline-download){display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:none;padding:8px 11px;min-height:36px;border:1px solid #ff69002c;border-radius:11px;background:#fff0e3;color:#ac4200;font:600 12px inherit;font-size:12px;font-weight:600;cursor:pointer}:is(.home-app-install,.home-offline-download) svg{width:15px;height:15px}:is(.home-app-install,.home-offline-download):focus-visible{outline:2px solid #b34a00;outline-offset:3px}.home-offline-download{text-decoration:none}html[data-pwa-display=standalone] .home-app-install,html[data-pwa-installed=true] .home-app-install{display:none}
.pwa-help{border:1px solid var(--line);border-radius:22px;padding:24px;max-width:380px;width:calc(100% - 32px);color:#252529;background:#fff;box-shadow:0 20px 60px #0002}.pwa-help::backdrop{background:#17202566;backdrop-filter:blur(4px)}.pwa-help h2{font-size:20px;margin:0 0 14px}.pwa-help p{font-size:14px;line-height:1.7;margin:0 0 20px}.pwa-help-actions{display:flex;gap:12px;align-items:center;justify-content:space-between}.pwa-help-actions a{font-size:13px;color:#aa4300}.pwa-help button{border:0;border-radius:10px;padding:10px 18px;background:#ff6900;color:#fff;cursor:pointer;font:inherit}.pwa-help:focus{outline:none}@media(max-width:760px){.home-welcome-row{margin-bottom:8px;gap:6px}:is(.home-app-install,.home-offline-download){padding:7px 9px;min-height:34px;font-size:11px}}
@media(max-width:360px){.workspace-header .wordmark{display:none!important}.workspace-header.site-header{gap:4px!important;padding:0 8px!important}.workspace-header .workspace-all{padding:0 3px}}
/* R-home-V05: the language button ("中" / "EN") uses system fonts, so an English page never downloads the Chinese face for one glyph.
   Moved here from home-refine.css (Home deletes its copy after this ships). */
.workspace-header button[data-action="language"]{font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
/* D-offline-06 (28 Sep 2026): the super administrator's Home download mark is icon only and installs the offline-capable app. */
.home-app-install.is-icon-only,.home-brief .home-app-install.is-icon-only{width:var(--rp-control-size);min-width:var(--rp-control-size);min-height:var(--rp-control-size);padding:0;gap:0}
.home-app-install.is-icon-only svg{width:var(--rp-icon-md);height:var(--rp-icon-md)}
/* Offline PWA (EMPLOYEE-OFFLINE-PWA-001): header chip while pages show this device's copy. On narrow phones the wordmark makes room. */
.offline-chip{display:inline-flex;align-items:center;gap:var(--rp-space-1);flex:none;min-height:var(--rp-control-compact);padding:0 var(--rp-space-3);border-radius:var(--rp-pill-radius);background:var(--warning-soft);color:var(--warning-ink);font-size:var(--rp-small-size);font-weight:var(--rp-weight-medium);line-height:1;text-decoration:none;white-space:nowrap}
.offline-chip::before{content:"";width:var(--rp-space-2);height:var(--rp-space-2);border-radius:50%;background:currentColor}
.offline-chip:focus-visible{outline:var(--rp-focus-width) solid var(--accent);outline-offset:2px}
@media (max-width:380px){.workspace-header:has(.offline-chip) .wordmark{display:none}}
.offline-chip.is-attention{box-shadow:inset 0 0 0 1px currentColor}
/* An action done on this device and waiting for the server (notice, task item, lesson): words, not colour alone. */
.offline-pending{display:inline-flex;align-items:center;gap:var(--rp-space-1);color:var(--warning-ink);font-size:var(--rp-small-size);font-weight:var(--rp-weight-medium)}
.offline-pending::before{content:"";flex:none;width:var(--rp-space-2);height:var(--rp-space-2);border-radius:50%;background:currentColor}
