@font-face { font-family: "Inter"; src: url("/assets/fonts/InterComplete-693b77d4f32ee9b8.woff2") format("woff2"); font-style: normal; font-weight: 100 900; font-display: swap; unicode-range: U+0100-0130, U+0132-0151, U+0154-0177, U+0179-024F, U+0370-052F, U+1E00-1FFF; }
@font-face { font-family: "Inter"; src: url("/assets/fonts/Inter-288d98edf392fffc.woff2") format("woff2"); font-style: normal; font-weight: 400 700; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+0178, U+0300-036F, U+2000-206F, U+20AC, U+2113, U+2122, U+2190-21FF, U+2212, U+FEFF, U+FFFD; }
/* Rulliu HR shared interface. Loaded last on every application entry.
   Native controls keep their keyboard, validation, autofill and mobile behaviour. */
:root {
  color-scheme: light;
  --ui-font: Inter, system-ui, -apple-system, "Segoe UI", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --ui-body: 15px; --ui-label: 14px; --ui-meta: 13px; --ui-section: 18px; --ui-title: 28px;
  --ui-row-gap: 16px; --ui-panel-gap: 20px;
  --brand: #456ad9; --brand-dark: #3455b9; --ink: #253044; --muted: #667285;
  --line: #e3e8ef; --ground: #f7f8fa; --surface: #fff;
  --internal-accent: var(--brand); --internal-accent-strong: var(--brand-dark);
  --internal-accent-soft: #eef3ff; --internal-ink: var(--ink);
  --internal-muted: var(--muted); --internal-canvas: var(--ground); --internal-line: var(--line);
  --ux-brand-50: #f7f9ff; --ux-brand-100: #eef3ff; --ux-brand-500: #5678de;
  --ux-brand-600: var(--brand); --ux-brand-700: var(--brand-dark);
  --ux-ink: var(--ink); --ux-muted: var(--muted); --ux-line: var(--line); --ux-canvas: var(--ground);
  --control-border: #7c899b; --control-radius: 9px; --focus-ring: #456ad940;
  --kb-blue: var(--brand); --kb-blue-dark: var(--brand-dark); --kb-muted: var(--muted);
}
/* A single baseline includes unclassed controls in dynamically created dialogs. */
body { font-family: var(--ui-font); font-size: var(--ui-body); line-height: 1.6; }
.filters label, .portal-language-grid .field { font-size: var(--ui-label); }
.jobs-hero small, .credential-page-heading small, .jobs-page .eyebrow, .jobs-head small, .role-facts dt, .role-tags span { font-size: var(--ui-meta); }
body :is(.roles-section,.asset-scan-shell,.skills-shell,.management-shell) small { font-size: var(--ui-meta); }
body :is(.editor-toolbar,.editor-topbar,.editor-statusbar,.editor-side-panel,.editor-preview-dialog,.slideshow-toolbar,.slide-inspector,.editor-preview-settings) :is(label,button,small) { font-size: var(--ui-meta); }
body label.slide-notes { font-size: var(--ui-meta); }
body .native-editor-shell :is(.native-editor-save-state,.native-editor-sidebar,.native-editor-footer,.native-editor-status,.native-editor-settings,.native-editor-statusbar) :is(label,small) { font-size: var(--ui-meta); }
body .workspace-filter-panel .workspace-search { border: 0; background: none; box-shadow: none; padding: 0; }
body .management-context small, body .management-language small, body .management-scope small { font-size: var(--ui-meta); }
body .content-resource-identity .content-title-preview { font-size: var(--ui-body); font-weight: 600; line-height: 1.6; }
body .content-resource-identity .content-type { color: var(--muted); background: none; font-weight: 400; padding: 0; }
/* System typography does not select editor bodies, document canvases or print output. */
:is(.workspace-content,.recruitment-workbench,.management-shell,.content-workbench,.knowledge-shell,.modal-box) label { font-size: var(--ui-label); font-weight: 500; }
.form-label-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: 3px 10px; min-width: 0; line-height: 1.5; }
.form-label-name { flex: 0 1 auto; min-width: 0; overflow-wrap: break-word; }
body .form-label-line .form-field-badge { display: inline; margin: 0; padding: 0; font-size: var(--ui-meta); font-weight: 400; color: var(--muted); }
:is(body,body[data-product-surface]) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-family: var(--ui-font); font-size: var(--ui-body); }
:is(.workspace-content,.recruitment-workbench,.modal-box) :is(small,.hint) { font-size: var(--ui-meta); line-height: 1.5; }
.workspace-table :is(th,td)[data-field*=amount], .workspace-table :is(th,td)[data-field*=minor], .pwa-money { font-variant-numeric: tabular-nums; text-align: right; }
.workspace-table :is(th,td)[data-field*=date], .workspace-count, .ui-summary-strip strong { font-variant-numeric: tabular-nums; }
.workspace-table td :is(strong,a,button), .content-title-preview { overflow-wrap: break-word; word-break: normal; }
.workspace-table td[data-field=display_name] { min-width: 145px; }
.workspace-table td.workspace-row-actions { min-width: 140px; }
.workspace-table .workspace-row-actions > :is(button,a), .asset-row-actions > :is(button,a) { white-space: nowrap; overflow-wrap: normal; word-break: normal; flex-shrink: 0; }
.workspace-table-wrap { max-width:100%; }
.awb-schedule-table { table-layout: fixed; }
.awb-schedule-table th:first-child { width:190px; min-width:190px; max-width:190px; white-space:normal; }
.awb-schedule-table tbody th:first-child :is(strong,small) { display:block; max-width:100%; overflow-wrap:anywhere; white-space:normal; }
.attendance-rule-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; margin:0; padding:16px 20px; }
.attendance-rule-facts dt { color:var(--muted); font-size:var(--ui-meta); }
.attendance-rule-facts dd { margin:4px 0 0; overflow-wrap:anywhere; }
.slide-insert-menu { position:relative; }
.slide-insert-menu > summary { display:block; cursor:pointer; padding:8px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.slide-insert-menu > div { display:grid; position:absolute; z-index:20; top:100%; left:0; min-width:180px; padding:8px; border:1px solid var(--line); background:#fff; border-radius:8px; box-shadow:0 8px 24px #25304418; }
.slide-insert-menu:not([open]) > div { display:none; }
.slide-properties-panel { min-width:0; }
.slide-properties-panel > summary { padding:12px 16px; cursor:pointer; min-height:44px; }
.slide-properties-panel .slide-inspector { height:100%; }
.slideshow-toolbar button { flex-shrink:0; white-space:nowrap; }
.slideshow-toolbar select { min-width:90px; }
.slideshow-toolbar label { flex-shrink:0; }
:is(.builder-item-actions,.content-builder-actions) button.icon, button[data-move-builder], button[data-drag-builder] { display:inline-grid; place-items:center; min-width:44px; min-height:44px; padding:6px; background:var(--surface); color:var(--ink); border:1px solid var(--control-border); border-radius:8px; }
button[data-move-builder]:focus-visible, button[data-drag-builder]:focus-visible { outline:3px solid var(--brand); outline-offset:2px; }
.schedule-agenda-cards { display:none; }
@media(max-width:767px){
  .schedule-agenda-table { display:none; }
  .schedule-agenda-cards { display:grid; gap:12px; }
  .schedule-agenda-cards article { padding:14px; border:1px solid var(--control-border); border-radius:12px; min-width:0; overflow-wrap:anywhere; }
  .schedule-agenda-cards header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-bottom:8px; }
  .schedule-agenda-cards p { margin:6px 0; }
}
.workspace-profile-summary { display:flex; flex-wrap:wrap; align-items:center; gap:16px; padding:16px 20px; background:var(--surface); border:1px solid var(--line); border-radius:12px; margin-bottom:16px; }
.workspace-profile-summary dl { display:flex; flex:1; gap:16px; flex-wrap:wrap; margin:0; }
.workspace-profile-summary dt { font-size:var(--ui-meta); color:var(--muted); }
.workspace-profile-summary dd { margin:0; }
@media(max-width:767px) {
  .slideshow-toolbar { flex-wrap:wrap; overflow:visible; gap:8px; padding:8px 12px; }
  .slideshow-toolbar > span { display:none; }
  .slideshow-toolbar :is(button,summary,select) { min-height:44px; }
  .slide-insert-menu { display:block; position:relative; }
  .slide-insert-menu > summary { display:block; cursor:pointer; padding:8px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; }
  .slide-insert-menu > div { display:grid; position:absolute; z-index:20; top:100%; left:0; min-width:180px; padding:8px; border:1px solid var(--line); background:#fff; border-radius:8px; box-shadow:0 8px 24px #25304418; }
  .slide-insert-menu:not([open]) > div { display:none; }
  .slide-properties-panel { grid-column:1/-1; border-top:1px solid var(--line); }
  .slide-properties-panel > summary { display:block; padding:12px 16px; cursor:pointer; min-height:44px; }
  .slide-properties-panel .slide-inspector { display:block; }
  .slideshow-topbar .slideshow-actions { flex-wrap:wrap; justify-content:flex-start; gap:6px; }
  .slideshow-topbar .slideshow-actions button { flex:0 0 auto; min-height:44px; width:auto; white-space:nowrap; overflow-wrap:normal; word-break:normal; }
  .slide-strip .slide-add-bottom { min-width:130px; min-height:44px; white-space:nowrap; }
  .candidate-page .application-steps { margin-block:12px; gap:6px; }
  .candidate-page .application-steps li { padding:6px; }
  .candidate-page .application-steps small { display:none; }
  .candidate-draft-status { padding:12px; margin-block:12px; }
  .candidate-draft-status p { margin-block:6px; }
  .candidate-contact h3 { margin:4px 0; }
  .candidate-form-help { margin-block:6px; font-size:var(--ui-meta); }
  .suite-project-summary { padding:16px; }
  .attendance-rule-facts { grid-template-columns:1fr 1fr; padding:12px; gap:12px; }
  .operational-calendar { overflow:auto; }
  .workspace-mobile-bottom { min-height:68px; }
  .workspace-mobile-bottom button { min-height:58px; }
  .workspace-content { padding-bottom:90px; }
}

.workspace-page-header p { margin-block: 6px 0; }
.ui-summary-strip { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin: 0 0 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); overflow: hidden; }
.ui-summary-strip > :is(a,div) { display: grid; align-content: start; padding: 12px 16px; min-width: 0; gap: 3px; text-decoration: none; color: var(--ink); border-inline-end: 1px solid var(--line); }
.ui-summary-strip > a:hover { background: var(--internal-accent-soft); }
.ui-summary-strip span { font-size: var(--ui-meta); color: var(--muted); }
.ui-summary-strip strong { font-size: 22px; font-weight: 600; }
.ui-queue { border: 1px solid var(--line); border-radius: 12px; margin: 14px 0; background: var(--surface); scroll-margin-block: 18px; }
.ui-queue > summary { padding: 14px 18px; font-size: var(--ui-label); font-weight: 500; cursor: pointer; }
.ui-queue > .workspace-panel { border: 0; }
.ui-menu { position: relative; }
.ui-menu > summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 40px; padding: 8px 13px; font-size: var(--ui-label); font-weight: 500; cursor: pointer; border: 1px solid var(--line); border-radius: 8px; background: white; }
.ui-menu > summary::after { content: '⌄'; }
.ui-menu.ui-primary > summary { color: white; background: var(--brand); border-color: var(--brand); }
.ui-menu > div { position: absolute; z-index: 12; right: 0; top: calc(100% + 6px); display: grid; gap: 8px; min-width: 230px; max-width: min(360px,90vw); padding: 12px; background: white; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 8px 28px #25304418; }
.ui-menu:not([open]) > div { display: none; }
.ui-menu > div > :is(button,a) { width: 100%; text-align: start; justify-content: flex-start; }
.ui-description { font-size: var(--ui-meta); line-height: 1.5; color: var(--muted); }
.ui-description > summary { cursor: pointer; }
.ui-description:not([open]) > summary { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ui-description[open] > summary { white-space: pre-wrap; }
.recruitment-workbench .recruitment-top h1 { font-size: var(--ui-title); font-weight: 600; line-height: 1.3; margin: 6px 0; }
.recruitment-workbench .recruitment-top { margin-block: 12px 16px; }
.recruitment-workbench .recruitment-top p { font-size: var(--ui-meta); margin: 6px 0; color: var(--muted); }
.recruitment-workbench [data-save-status] { font-size: var(--ui-meta); color: var(--muted); }
.recruitment-workbench > nav { margin-bottom: 16px; }
.recruitment-guidance { color: var(--muted); font-size: var(--ui-meta); margin: 0 0 16px; }
.recruitment-guidance > summary { cursor: pointer; }
.recruitment-information-layout { display: grid; grid-template-columns: 176px minmax(0,1fr); gap: 22px; align-items: start; }
.recruitment-information-body { min-width: 0; }
.recruitment-directory { position: sticky; top: 16px; border-inline-start: 1px solid var(--line); }
.recruitment-directory > summary { display: none; }
.recruitment-workbench .recruitment-section-links { display: grid; gap: 4px; margin: 0; padding: 0; background: transparent; }
.recruitment-workbench .recruitment-section-links a { display: block; padding: 9px 12px; border: 0; border-radius: 0 7px 7px 0; background: transparent; font-size: var(--ui-label); text-decoration: none; color: var(--muted); }
.recruitment-workbench .recruitment-section-links a[aria-current] { background: var(--internal-accent-soft); color: var(--brand-dark); box-shadow: inset 3px 0 var(--brand); font-weight: 500; }
.recruitment-workbench .recruitment-panel { padding: 20px; margin-bottom: 18px; scroll-margin-block: 16px; }
.recruitment-workbench .recruitment-panel h2 { font-size: var(--ui-section); font-weight: 600; margin: 0 0 16px; }
.recruitment-workbench .grid { gap: 16px 20px; align-items: start; }
.recruitment-workbench label { gap: 6px; min-width: 0; }
.recruitment-internal-summary { font-size: var(--ui-meta); color: var(--muted); margin: 8px 0; }
.recruitment-workbench .recruitment-actions { padding: 12px 20px; gap: 10px; z-index: 8; }
.content-hub-switcher { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--line); margin-bottom: 16px; }
.content-hub-switcher > a { display: flex; min-height: 44px; padding: 8px 16px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; box-shadow: none; background: transparent; gap: 8px; }
.content-hub-switcher > a.active { border-bottom-color: var(--brand); background: transparent; box-shadow: none; }
.content-hub-switcher .content-hub-icon { display: none; }
.content-library-tabs { display:flex; gap:8px; border-bottom:1px solid var(--line); margin:0 0 20px; }
.content-library-tabs > a { display:flex; align-items:center; gap:8px; min-height:44px; padding:10px 16px; color:var(--muted); text-decoration:none; border-bottom:3px solid transparent; }
.content-library-tabs > a.active,.content-library-tabs > a[aria-current=page] { border-bottom-color:var(--brand); color:var(--ink); font-weight:600; }
.content-library-tabs :is(b,.count,small) { font-size:13px; color:var(--muted); }
.content-workbench-context { font-size:13px; color:var(--muted); }
.content-workbench-nav,.content-detail-tabs { display:flex; flex-wrap:wrap; gap:6px; padding:8px 0; border-bottom:1px solid var(--line); margin-bottom:16px; }
.content-workbench-nav button,.content-detail-tabs button { min-height:44px; text-align:start; }
.content-detail-tabs [aria-pressed=true] { background:var(--internal-accent-soft); color:var(--brand-dark); }
.content-workbench-primary-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.content-resource-actions .workspace-row-menu > div > :is(button,a),.knowledge-reader-actions .workspace-row-menu > div > :is(button,a) { width:100%; justify-content:flex-start; text-align:start; white-space:normal; min-height:44px; margin:0; }
.content-resource-actions .workspace-row-menu > div > .danger { border-top:1px solid var(--line); margin-top:4px; border-radius:0; }
.knowledge-embedded { min-width:0; }
.knowledge-embedded .knowledge-shell { min-height:0; }
.knowledge-embedded .knowledge-library { max-width:none; margin:0; padding:0; }
.knowledge-embedded .knowledge-list-heading h1 { font-size:18px; }
.knowledge-embedded .knowledge-reader-topbar { position:relative; top:auto; padding:12px 0; }
.knowledge-embedded .knowledge-reader-main { padding:16px 0; }
.knowledge-category-disclosure{width:100%;min-width:0}
.knowledge-category-disclosure>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font-size:14px;font-weight:600}
.knowledge-category-options{display:grid;gap:4px;padding:4px 0}
.knowledge-sidebar .knowledge-category-options>button{width:100%;text-align:start;min-height:44px}
.knowledge-list .knowledge-open{overflow-wrap:normal;font-size:13px;min-width:0}
@container (max-width:780px){
  .knowledge-list .knowledge-row{grid-template-columns:34px minmax(0,1fr) minmax(64px,96px);gap:6px 10px;padding:12px 2px}
  .knowledge-list .knowledge-type-icon{grid-column:1;grid-row:1/3}
  .knowledge-list .knowledge-row-main{grid-column:2;grid-row:1}
  .knowledge-list .knowledge-row-main strong{white-space:normal;overflow-wrap:anywhere}
  .knowledge-list .knowledge-row-meta,.knowledge-list .knowledge-row-updated{display:none}
  .knowledge-list .knowledge-status{display:inline-flex;grid-column:2;grid-row:2;font-size:13px;max-width:100%;white-space:normal}
  .knowledge-list .knowledge-open{grid-column:3;grid-row:1/3}
}
.knowledge-library-toolbar { display:flex; align-items:end; gap:12px; flex-wrap:wrap; margin-bottom:18px; }
.knowledge-library-toolbar .knowledge-search { flex:1; min-width:200px; }
.knowledge-library-toolbar label { display:grid; gap:6px; font-size:14px; }
.knowledge-library-toolbar :is(input,select) { min-height:44px; width:100%; }
.content-editor-more { position:relative; }
.content-editor-more > summary { display:flex; align-items:center; justify-content:center; cursor:pointer; min-height:44px; padding:8px 12px; border:1px solid var(--control-border); border-radius:9px; background:#fff; list-style:none; font-size:14px; }
.content-editor-more > summary::after { content:"⌄"; margin-inline-start:8px; }
.content-editor-more-menu { position:absolute; z-index:60; inset-inline-end:0; top:calc(100% + 6px); display:grid; min-width:220px; max-width:calc(100vw - 24px); max-height:65dvh; overflow:auto; padding:6px; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 12px 32px #17203326; }
.native-editor-actions .content-editor-more-menu button { text-align:start; white-space:normal; min-height:44px; height:auto; border:0; background:#fff; padding:10px 12px; }
.native-editor-actions .content-editor-more-menu button:hover { background:var(--internal-accent-soft); }
.content-editor-storage-note { font-size:13px; color:var(--muted); background:#fff; border-bottom:1px solid var(--line); }
.content-editor-storage-note > summary { cursor:pointer; padding:6px 22px; }
.content-editor-checks > summary { min-height:44px; display:flex; align-items:center; cursor:pointer; font-size:13px; font-weight:600; }
.content-editor-page-settings>summary{display:none}
@media(max-width:768px){
  .content-editor-page-settings>summary{display:flex;min-height:44px;align-items:center;cursor:pointer;font-size:14px;font-weight:600}
  .native-editor-settings:has(.content-editor-page-settings){padding:0 12px}
  .native-editor-shell .native-editor-toolbar{flex-wrap:nowrap;overflow-x:auto;min-height:58px;align-items:center}
  .native-editor-shell .native-editor-toolbar>*{flex-shrink:0}
  .native-editor-shell .native-editor-toolbar select{width:auto;max-width:155px}
  .native-editor-shell .native-editor-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;width:100%;overflow:visible}
  .native-editor-shell .native-editor-actions>button,.native-editor-shell .content-editor-more>summary{font-size:13px;min-width:0;width:100%;min-height:44px;padding:6px;white-space:normal;height:auto}
}
.native-editor-settings { min-width:0; }
.native-editor-settings label,.native-editor-settings small,.native-editor-settings dt,.native-editor-settings dd { font-size:13px; }
.native-editor-settings select { min-width:0; max-width:100%; }
.contract-review-block { min-width:0; overflow-wrap:anywhere; }
.asset-filter-primary { display:grid; grid-template-columns:2fr 1fr 1fr; gap:12px; }
.asset-filter-primary > label { display:grid; gap:6px; }
.asset-filter-more { grid-column:1/-1; }
.asset-filter-more > summary { min-height:44px; display:flex; align-items:center; cursor:pointer; }
.asset-filter-more[open] > .asset-filters { margin-top:8px; }
.recruitment-action-queue { background:#fff; border:1px solid var(--line); border-radius:12px; margin:12px 0; }
.recruitment-action-queue > summary { display:flex; align-items:center; gap:16px; flex-wrap:wrap; min-height:48px; padding:12px 16px; cursor:pointer; font-size:14px; }
.recruitment-queue-counts { display:flex; flex-wrap:wrap; gap:14px; margin-right:auto; color:var(--muted); }
.recruitment-queue-counts strong { font-variant-numeric:tabular-nums; color:var(--text); }
.recruitment-queue-content { padding:0 16px 16px; }
@media(max-width:760px) { .asset-filter-primary { grid-template-columns:1fr; } }
.content-builder-row.checklist-row { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
.content-builder-row.checklist-row > label { display:grid; gap:6px; min-width:0; font-size:14px; }
.content-builder-row.checklist-row > label:has(input[type=checkbox]) { display:flex; align-items:center; min-height:44px; }
@media(max-width:760px) { .content-builder-row.checklist-row { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .content-builder-row.checklist-row { grid-template-columns:minmax(0,1fr); } }
.employee-section-loading [data-employee-section-body] { opacity:.45; }
[data-employee-section-status]:not([hidden]) { padding:12px 16px; border:1px solid var(--line); background:var(--surface); color:var(--muted); border-radius:10px; margin:12px 0; }
.employee-section-loading [data-employee-section-status] { position:sticky; top:8px; z-index:5; }
.native-editor-save-state :is(strong,small),.native-editor-title span { font-size:13px; }
.native-editor-actions > button { min-height:44px; }
@media(max-width:768px) {
  .content-library-tabs > a { flex:1; justify-content:center; padding:10px 6px; }
  .knowledge-embedded .knowledge-library { display:block; }
  .knowledge-embedded .knowledge-sidebar { position:static; display:flex; flex-wrap:wrap; gap:4px; width:100%; padding:0 0 12px; }
  .knowledge-embedded .knowledge-sidebar > strong { display:none; }
  .knowledge-embedded .knowledge-sidebar button { width:auto; min-height:44px; }
  .knowledge-embedded .knowledge-reader-topbar { display:flex; flex-wrap:wrap; gap:10px; }
  .knowledge-embedded .knowledge-reader-actions { width:100%; flex-wrap:wrap; }
  .knowledge-library-toolbar > label { flex:1 1 100%; }
  .content-editor-more { margin-inline-start:auto; }
  .content-editor-more-menu { min-width:240px; }
  .content-workbench-primary-actions { width:100%; }
  .native-editor-toolbar :is(button,select) { min-height:44px; }
}
.content-library-layout { display: grid; grid-template-columns: 190px minmax(0,1fr); gap: 20px; align-items: start; }
.content-library-body { min-width: 0; }
.content-category-directory { position: sticky; top: 16px; }
.content-category-directory > summary { cursor: pointer; font-size: var(--ui-label); font-weight: 500; padding: 8px; }
.content-category-directory .content-flow-tabs { display: grid; gap: 4px; border: 0; }
.content-category-directory .content-flow-tabs button { text-align: start; justify-content: flex-start; white-space: normal; border-radius: 8px; min-height: 40px; }
.content-resource-row { grid-template-columns: minmax(190px,1fr) auto; gap: 12px 20px; padding: 16px 18px; }
.content-resource-identity { min-width: 0; }
.content-resource-row .content-resource-actions { align-self: end; }
.content-resource-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; font-size: var(--ui-meta); }
.content-resource-identity .content-type { font-size: var(--ui-meta); padding: 0; background: transparent; color: var(--muted); }
.content-resource-identity .content-title-preview { font-size: var(--ui-body); font-weight: 500; }
.content-resource-metadata { color: var(--muted); font-size: var(--ui-meta); }
.ui-readonly { display: block; padding: 10px 0; min-height: 40px; font-size: var(--ui-body); font-weight: 400; }
.recruitment-mobile-more { display: none; }
.content-resource-row .content-resource-identity small { white-space: normal; }
.content-resource-row .content-resource-cell :is(small,strong) { font-size: var(--ui-meta); line-height: 1.5; }
.content-workbench-toolbar { align-items: end; gap: 12px; margin-bottom: 18px; }
.content-workbench-toolbar .content-result-count { font-size: var(--ui-meta); }
.pwa-metrics { margin-bottom: 16px; }
.pwa-metrics > div { padding: 14px 18px; }
.pwa-summary { grid-template-columns: 1fr 1.6fr 1fr; }
.ui-employee-number { display: block; color: var(--muted); margin-top: 4px; }
.workspace-table td[data-field*=date] { white-space: nowrap; }
.workspace-filter-panel .workspace-search input { border: 0; box-shadow: none; width: 100%; }
.pwa-table-scroll td { font-size: var(--ui-label); }
.pwa-table-scroll td small { font-size: var(--ui-meta); }
.pwa-table-scroll td.pwa-money { white-space: nowrap; }
.pwa-table-scroll :is(th,td).pwa-selection-cell { width: 44px; min-width: 44px; }
.pwa-table-scroll :is(th,td).pwa-identity-cell { width: 24%; min-width: 12rem; overflow-wrap: break-word; word-break: normal; }
.pwa-table-scroll .pwa-date-cell { white-space: nowrap; }
.pwa-table-scroll th.pwa-money { text-align: right; }
.pwa-assignment-table { table-layout: fixed; }
.pwa-assignment-table col:nth-child(1) { width: 26%; }
.pwa-assignment-table col:nth-child(2) { width: 32%; }
.pwa-assignment-table col:nth-child(3) { width: 16%; }
.pwa-assignment-table col:nth-child(4) { width: 26%; }
.pwa-assignment-table td { vertical-align: top; }
.pwa-readiness-list { display: grid; gap: 14px; padding-left: 22px; }
.pwa-readiness-list li > a { display: block; margin-top: 5px; }
@media(max-width:1200px) { .ui-summary-strip { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:1023px) {
  .recruitment-information-layout,.content-library-layout { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .recruitment-directory,.content-category-directory { position: static; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
  .recruitment-directory > summary,.content-category-directory > summary { display: flex; padding: 10px 14px; min-height: 44px; align-items: center; justify-content: space-between; cursor: pointer; }
  .recruitment-directory > summary::after,.content-category-directory > summary::after { content: '⌄'; }
  .recruitment-directory:not([open]) > nav { display: none; }
}
@media(max-width:767px) {
  :root { --ui-title: 24px; }
  :is(body,body[data-product-surface]) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { font-size: 16px; }
  :is(.workspace-content,.modal-box,.recruitment-workbench) :is(button,.button-link,summary) { min-height: 44px; }
  .ui-summary-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .ui-summary-strip > :is(a,div) { padding: 10px 12px; }
  .ui-menu > div { right: 0; }
  .recruitment-workbench .recruitment-panel { padding: 16px; }
  .recruitment-workbench .grid { grid-template-columns: minmax(0,1fr); }
  .recruitment-workbench .recruitment-actions { padding: 10px 12px max(10px,env(safe-area-inset-bottom)); }
  .recruitment-actions > button { flex: 1 1 0; min-width: 0; }
  .recruitment-workbench .recruitment-actions > button.recruitment-desktop-preview { display: none; }
  .recruitment-workbench .recruitment-actions > button { overflow-wrap: normal; word-break: normal; }
  .recruitment-mobile-more { display: block; }
  .recruitment-mobile-more > div { top: auto; bottom: calc(100% + 6px); left: 0; right: auto; }
  .pwa-summary { grid-template-columns: 1fr 1fr; }
  .pwa-summary > a { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; padding: 6px 12px; border-top: 1px solid var(--line); }
  #payroll-list table { min-width: 0; }
  #payroll-list thead { display: none; }
  #payroll-list tbody { display: grid; gap: 12px; }
  #payroll-list tr { display: grid; grid-template-columns: 32px minmax(0,1fr); padding: 12px; border-bottom: 1px solid var(--line); }
  #payroll-list td { display: block; max-width: none; padding: 6px 4px; border: 0; min-width: 0; width: auto; }
  #payroll-list td:first-child { grid-row: 1 / span 6; width: auto; padding: 10px 0; }
  #payroll-list td:not(:first-child) { grid-column: 2; }
  #payroll-list td[colspan] { grid-column: 1 / -1; grid-row: auto; width: auto; }
  #payroll-list td.pwa-money { text-align: start; font-size: 18px; }
  #payroll-list td:last-child > button { width: 100%; text-align: start; }
  .pwa .pwa-assignment-table { min-width: 0; }
  .pwa-assignment-table colgroup,.pwa-assignment-table thead { display: none; }
  .pwa-assignment-table tbody { display: grid; }
  .pwa-assignment-table tr { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 12px 16px; padding: 16px; border-bottom: 1px solid var(--line); }
  .pwa-assignment-table tr:last-child { border-bottom: 0; }
  .pwa .pwa-assignment-table td { display: block; width: auto; min-width: 0; max-width: none; padding: 0; border: 0; overflow-wrap: break-word; }
  .pwa-assignment-table td:nth-child(-n+2),.pwa-assignment-table td[colspan] { grid-column: 1 / -1; }
  .pwa-assignment-table td[data-label]::before { content: attr(data-label); display: block; color: var(--muted); font-size: var(--ui-meta); margin-bottom: 4px; }
  .content-resource-row { display: flex; flex-direction: column; align-items: stretch; }
  .content-resource-row .content-resource-actions { align-self: stretch; }
  .content-workbench-toolbar > :is(label,.content-search) { flex: 1 1 140px; min-width: 0; }
  .content-workbench-toolbar .content-search { flex-basis: 100%; }
  .content-workbench-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .content-workbench-toolbar>label:not(.content-search){grid-column:auto}
  .content-workbench-toolbar>.content-search{grid-column:1/-1}
  .content-workbench-toolbar>.ui-menu,.content-workbench-toolbar>.content-section-actions{grid-column:auto;min-width:0}
  .content-workbench-toolbar>.content-result-count{grid-column:1/-1}
  .content-hub-switcher > a { padding: 8px 10px; flex: 1; }
}
.form-choice-field, .form-choice-control { min-width: 0; }
.form-choice-field { display: grid; gap: 6px; align-content: start; }
.form-choice-control { display: grid; gap: 6px; width: 100%; }
body .form-choice-control :is(input,select) { width: 100%; margin: 0; }
.form-choice-result { font-size: var(--ui-meta); color: var(--muted); line-height: 1.5; }
.form-choice-result[hidden] { display: none; }
/* Record dialogs also occur inside another dialog. Each field stays one grid
   item, including its label, requirement, search, control and error message. */
body .record-dialog { width: min(760px,100%); max-width: 760px !important; padding: 26px; }
.record-dialog form { display: grid; gap: 22px; min-width: 0; }
body .record-form-dialog { display: flex; flex-direction: column; overflow: hidden; }
.record-form-dialog > :is(h2,p,aside) { flex-shrink: 0; }
.record-form-dialog > form { display: flex; flex-direction: column; gap: 0; flex: 1; min-height: 0; overflow: hidden; }
.record-form-body { display: grid; gap: 22px; overflow-y: auto; min-height: 0; padding: 4px 4px 16px; scroll-padding-block: 12px; }
.record-dialog .record-fields { align-items: start; column-gap: 24px; row-gap: 20px; }
.record-dialog :is(.record-field,[data-field-container]) { min-width: 0; }
.record-dialog .record-field { display: grid; gap: 7px; align-content: start; }
.record-dialog label { display: block; min-width: 0; line-height: 1.6; font-size: 14px; font-weight: 500; color: var(--ink); }
.record-dialog label > :is(input,select,textarea) { display: block; margin-top: 7px; }
body .record-dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { width: 100%; }
.record-dialog .form-field-badge { color: var(--muted); font-weight: 400; font-size: var(--ui-meta); }
.record-dialog .record-intro { color: var(--muted); font-size: 14px; line-height: 1.7; margin: 0 0 22px; }
.record-dialog .record-reason { border-top: 1px solid var(--line); padding-top: 20px; }
.record-dialog .record-error { margin: 0; font-size: 14px; line-height: 1.6; }
.record-dialog .record-error:empty { display: none; }
.record-notice { padding: 14px 16px; border: 1px solid #dce5f8; border-radius: 10px; background: #f4f7ff; margin: 0 0 22px; font-size: 14px; line-height: 1.7; }
.record-notice p { margin: 5px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.record-revision { background: #fffbf2; border-color: #eadcc0; color: #795421; }
.record-pending { padding: 0 0 14px; overflow-wrap: anywhere; }
.record-dialog .record-actions { display: flex; justify-content: flex-end; gap: 10px; border-top: 1px solid var(--line); padding: 18px 0 0; margin: 0; background: #fff; flex-shrink: 0; }
.record-dialog fieldset { min-width: 0; margin: 0 0 14px; border-radius: 10px; }
.record-dialog legend { font-size: 13px; font-weight: 600; padding: 0 6px; }
.record-dialog fieldset > button { margin-top: 12px; }
.record-table-hint { color: var(--muted); font-size: 13px; margin: 0 0 14px; }
@media(max-width:640px) {
  body .record-dialog { padding: 20px 16px; }
  .modal:has(> .record-form-dialog) { padding: 0; }
  body .record-form-dialog { width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; border-radius: 0; padding-top: max(16px,env(safe-area-inset-top)); padding-bottom: max(16px,env(safe-area-inset-bottom)); }
  .record-dialog .record-fields { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .record-dialog .record-actions { padding: 14px 0 0; }
  .record-dialog .record-actions > button { flex: 1; }
}
:is(body, body[data-product-surface]) :is(button, input, select, textarea) { font: inherit; font-size: var(--ui-label); }
:is(body, body[data-product-surface]) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]), select, textarea) {
  max-width: 100%; min-width: 0; min-height: 40px; font-size: var(--ui-body);
  border: 1px solid var(--control-border); border-radius: var(--control-radius);
  background-color: var(--surface); color: var(--ink); padding: 9px 12px;
  line-height: 1.5; box-shadow: none;
}
:is(body, body[data-product-surface]) select:not([multiple]):not([size]), :is(body, body[data-product-surface]) select[size="1"] {
  appearance: none; -webkit-appearance: none;
  padding-inline-end: 36px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23667285' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 11px center; background-size: 16px;
  text-overflow: ellipsis;
}
:is(body,body[data-product-surface]) select:disabled { background-image: none; padding-inline-end: 12px; opacity: 1; cursor: default; color: var(--muted); }
:is(body, body[data-product-surface]) select[multiple], :is(body, body[data-product-surface]) select[size]:not([size="1"]) { background-image: none; min-height: 120px; padding: 6px; }
:is(body, body[data-product-surface]) select option, :is(body, body[data-product-surface]) select optgroup { color: var(--ink); background: #fff; }
:is(body, body[data-product-surface]) select[multiple] option { padding: 6px 9px; border-radius: 5px; }
:is(body, body[data-product-surface]) input::placeholder, :is(body, body[data-product-surface]) textarea::placeholder { color: #778295; opacity: 1; }
:is(body, body[data-product-surface]) textarea { resize: vertical; min-height: 100px; }
:is(body, body[data-product-surface]) input:is([type=checkbox], [type=radio]) {
  appearance: auto; accent-color: var(--brand); width: 18px; height: 18px;
  min-width: 18px; min-height: 18px; padding: 0; vertical-align: middle; flex-shrink: 0;
}
:is(body, body[data-product-surface]) input[type=range] { accent-color: var(--brand); max-width: 100%; }
:is(body, body[data-product-surface]) input[type=color] { width: 40px; height: 40px; padding: 3px; border: 1px solid var(--control-border); border-radius: 8px; background: #fff; }
:is(body, body[data-product-surface]) input[type=file] { width: 100%; overflow: hidden; }
:is(body, body[data-product-surface]) input::file-selector-button {
  border: 0; border-radius: 6px; background: #eef3ff; color: #3455b9;
  padding: 7px 10px; margin-inline-end: 10px; font: inherit; cursor: pointer;
}
:is(body, body[data-product-surface]) :is(input, select, textarea):hover:not(:disabled):not([readonly]) { border-color: #97a7c2; }
:is(body, body[data-product-surface]) :is(input, select, textarea):focus {
  border-color: var(--brand); outline: 2px solid var(--focus-ring); outline-offset: 2px;
}
:is(body, body[data-product-surface]) :is(button, a, summary, [tabindex], input, select, textarea):focus-visible {
  outline: 3px solid #456ad9; outline-offset: 3px;
}
:is(body, body[data-product-surface]) :is(input, select, textarea)[aria-invalid=true],
:is(body, body[data-product-surface]) :is(input, select, textarea):user-invalid { border-color: #b83b47; }
:is(body, body[data-product-surface]) :is(input, textarea)[readonly] { background-color: #f7f8fa; color: #536075; }
:is(body, body[data-product-surface]) :is(button, input, select, textarea):disabled {
  cursor: not-allowed; opacity: .65; box-shadow: none;
}
:is(body, body[data-product-surface]) :is(input, select, textarea):disabled { background-color: #f1f3f6; color: #687487; border-color: #dbe1e9; }
:is(body, body[data-product-surface]) button { min-height: 40px; overflow-wrap: anywhere; touch-action: manipulation; }
:is(body, body[data-product-surface]) :is(.primary, .outline, .button-link) {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  min-height: 40px; padding: 9px 15px; border-radius: 9px; font-weight: 600;
  line-height: 1.4; text-align: center; white-space: normal; text-decoration: none;
  transition: background-color .15s, border-color .15s;
}
[data-manage-letterheads][hidden] { display: none !important; }
:is(body, body[data-product-surface]) :is(.primary, .filters button) { border: 1px solid var(--brand); background: var(--brand); color: #fff; }
:is(body, body[data-product-surface]) :is(.primary, .filters button):hover:not(:disabled) { background: var(--brand-dark); border-color: var(--brand-dark); }
:is(body, body[data-product-surface]) .outline { border: 1px solid var(--control-border); background: #fff; color: #46536a; }
:is(body, body[data-product-surface]) .outline:hover:not(:disabled) { background: #f4f7fc; border-color: #a7b6d0; }
:is(body, body[data-product-surface]) button.danger, :is(body, body[data-product-surface]) .outline.danger { color: #a92e3b; background: #fff; border-color: #e4b9be; }
:is(body, body[data-product-surface]) button.danger:hover:not(:disabled) { background: #fff0f2; border-color: #be5763; }
:is(body, body[data-product-surface]) :is(.workspace-decision-actions, .actions, .row-actions, .workspace-page-actions, .management-row-actions) { gap: 8px; flex-wrap: wrap; }
:is(body, body[data-product-surface]) :is(.modal-box, .workspace-detail-drawer, .management-drawer, dialog) { color: var(--ink); }
:is(body, body[data-product-surface]) :is(.modal-box, dialog) { border-radius: 16px; box-shadow: 0 24px 80px #1f30432b; }
:is(body, body[data-product-surface]) .modal-box > button.close { width: 44px; height: 44px; display: grid; place-items: center; background: #f2f5f9; color: #536075; }
:is(body, body[data-product-surface]) :is(footer, .workspace-decision-actions) > .close { position: static; width: auto; height: auto; border-radius: 9px; }
:is(body, body[data-product-surface]) .modal-box > h2 { padding-inline-end: 44px; overflow-wrap: anywhere; }
:is(body, body[data-product-surface]) :is(.field, .grid, .workspace-main, .workspace-content, .workspace-panel, .management-panel) { min-width: 0; }
:is(body, body[data-product-surface]) :is(.field, .credential-form label) { line-height: 1.5; }
:is(body, body[data-product-surface]) :is(.workspace-filter-panel, .management-filters, .content-workbench-toolbar) { gap: 12px; }
:is(body, body[data-product-surface]) :is(.workspace-filter-panel, .management-filters) label { min-width: 0; }
:is(body, body[data-product-surface]) :is(.workspace-page-header, .management-page-header, .workspace-section-head) { gap: 18px; }
:is(body, body[data-product-surface]) :is(.workspace-page-header, .management-page-header) h1 { font-weight: 700; letter-spacing: -.035em; }
:is(body, body[data-product-surface]) :is(.workspace-panel, .workspace-card, .management-panel) { border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 3px 12px #23334c03; }
:is(body, body[data-product-surface]) :is(.workspace-table, .management-table) th { background: #f8fafc; color: #637087; font-weight: 600; }
:is(body, body[data-product-surface]) :is(.workspace-table, .management-table) td { border-color: #edf0f5; }
:is(body, body[data-product-surface]) :is(.workspace-table, .management-table) t:is(body, body[data-product-surface]) tr:hover { background: #fafbfe; }
:is(body, body[data-product-surface]) :is(.workspace-tabs, .workspace-section-tabs) { gap: 6px; padding-bottom: 8px; }
:is(body, body[data-product-surface]) :is(.workspace-tabs, .workspace-section-tabs) button { flex-shrink: 0; line-height: 1.5; }
:is(body, body[data-product-surface]) :is(.workspace-tabs, .workspace-section-tabs) button.active { color: var(--brand-dark); border-color: #d4dfff; background: #eef3ff; }
:is(body, body[data-product-surface]) .workspace-sidebar { background: #fbfcfd; border-right: 1px solid var(--line); }
:is(body, body[data-product-surface]) .workspace-nav-item { min-height: 44px; font-size: 13px; }
:is(body, body[data-product-surface]) .workspace-nav-item.active { color: #3455b9; background: #eef3ff; box-shadow: none; }
:is(body, body[data-product-surface]) .workspace-nav-glyph { background: transparent; color: #758296; }
:is(body, body[data-product-surface]) .workspace-nav-item.active .workspace-nav-glyph { background: transparent; color: #456ad9; }
:is(body, body[data-product-surface]) .workspace-nav-favorite { min-height: 32px; }
:is(body, body[data-product-surface]) .workspace-sidebar-collapse { background: #fbfcfd; }
:is(body, body[data-product-surface]) .workspace-mode-switch { border: 0; padding: 8px 4px 12px; background: transparent; }
:is(body, body[data-product-surface]) .workspace-mode-switch select { width: 100%; }
:is(body, body[data-product-surface]) .workspace-topbar { box-shadow: none; }
:is(body, body[data-product-surface]) .workspace-account-button { max-width: 220px; }
:is(body, body[data-product-surface]) .workspace-account-button strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:is(body, body[data-product-surface]) .workspace-global-search-trigger { min-width: 40px; }
:is(body, body[data-product-surface]) .workspace-global-search-trigger span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
:is(body, body[data-product-surface]) .workspace-language select { width: auto; max-width: 140px; }
:is(body, body[data-product-surface]) :is(.workflow-task-card, .business-pending, .record-section, .record-document, .record-history) { border-color: var(--line); color: var(--ink); }
:is(body, body[data-product-surface]) .workflow-task-card:hover { border-color: #a7b9e8; box-shadow: 0 4px 16px #456ad910; }
:is(body, body[data-product-surface]) :is(.workflow-task-index, .workflow-task-card p) { color: var(--muted); }
:is(body, body[data-product-surface]) :is(.workflow-task-open, .workflow-task-state) { color: var(--brand-dark); }
:is(body, body[data-product-surface]) .toast { max-width: min(460px, calc(100vw - 32px)); overflow-wrap: anywhere; }
:is(body, body[data-product-surface]) .performance-insights { display: grid; gap: 20px; }
:is(body, body[data-product-surface]) .insight-filters { display: flex; flex-wrap: wrap; gap: 14px; align-items: end; }
:is(body, body[data-product-surface]) .insight-filters label { display: grid; gap: 6px; flex: 1 1 180px; font-size: 13px; }
:is(body, body[data-product-surface]) .insight-filters [data-form-badge] { display: none; }
:is(body, body[data-product-surface]) .insight-filters select, :is(body, body[data-product-surface]) .insight-filters input { width: 100%; }
:is(body, body[data-product-surface]) .insight-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
:is(body, body[data-product-surface]) .insight-metric { border: 1px solid var(--line); border-radius: 12px; padding: 18px; background: #fff; display: grid; gap: 8px; }
:is(body, body[data-product-surface]) .insight-metric span, :is(body, body[data-product-surface]) .insight-metric small { color: var(--muted); font-size: 13px; }
:is(body, body[data-product-surface]) .insight-metric strong { font-size: 28px; font-variant-numeric: tabular-nums; }
:is(body, body[data-product-surface]) .insight-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; }
:is(body, body[data-product-surface]) .insight-distribution { display: grid; gap: 12px; }
:is(body, body[data-product-surface]) .insight-bar { display: grid; grid-template-columns: 95px minmax(0,1fr) 36px; gap: 12px; align-items: center; font-size: 13px; }
:is(body, body[data-product-surface]) .insight-bar meter { width: 100%; height: 22px; accent-color: var(--brand); }
:is(body, body[data-product-surface]) .insight-note { color: var(--muted); line-height: 1.7; font-size: 13px; }
:is(body, body[data-product-surface]) .insight-score { font-variant-numeric: tabular-nums; font-weight: 600; }
:is(body, body[data-product-surface]) .insight-alert-list { margin: 0; padding-inline-start: 20px; display: grid; gap: 10px; line-height: 1.6; }
@media (max-width: 1100px) {
  :is(body, body[data-product-surface]) .workspace-topbar { flex-wrap: wrap; }
  :is(body, body[data-product-surface]) .workspace-global-search-trigger { flex: 1 1 100px; max-width: 280px; }
  :is(body, body[data-product-surface]) .workspace-scope { max-width: 180px; }
}
@media (max-width: 760px) {
  :is(body, body[data-product-surface]) .knowledge-library { grid-template-rows: auto 1fr; }
  :is(body, body[data-product-surface]) .knowledge-sidebar { align-self: start; align-items: center; max-width: 100vw; min-height: 0; }
  :is(body, body[data-product-surface]) .knowledge-top-actions .primary { font-size: var(--ui-label); }
  :is(body, body[data-product-surface]) .knowledge-top-actions .primary::after { content: none; }
  :is(body, body[data-product-surface]) .knowledge-sidebar button { min-height: 44px; height: auto; flex: 0 0 auto; }
  :is(body, body[data-product-surface]) .knowledge-list-heading { display: grid; grid-template-columns: minmax(0,1fr); gap: 20px; }
  :is(body, body[data-product-surface]) .knowledge-list-heading > label { display: grid; gap: 6px; min-width: 0; }
  :is(body, body[data-product-surface]) .knowledge-list-heading select { width: 100%; }
  :is(body, body[data-product-surface]) .workspace-topbar-actions .workspace-language { display: block; }
  :is(body, body[data-product-surface]) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]), select, textarea) { font-size: 16px; min-height: 44px; }
  :is(body, body[data-product-surface]) :is(.primary, .outline, .button-link, .close, .workspace-mobile-menu, .workspace-mobile-close) { min-height: 44px; }
  :is(body, body[data-product-surface]) .workspace-topbar { flex-wrap: nowrap; gap: 10px; }
  :is(body, body[data-product-surface]) .workspace-topbar-actions { gap: 8px; min-width: 0; }
  :is(body, body[data-product-surface]) .workspace-account-button { max-width: 48px; }
  :is(body, body[data-product-surface]) .workspace-language select { min-width: 100px; max-width: 120px; height: auto; font-size: 14px; }
  :is(body, body[data-product-surface]) :is(.modal-box, .performance-form-dialog):not(.record-form-dialog) { max-height: calc(100dvh - 20px); padding: 20px 16px; }
  :is(body, body[data-product-surface]) :is(.modal-box .workspace-decision-actions, .modal-box form > footer) {
    position: sticky; bottom: -20px; z-index: 4; padding: 12px 0 calc(12px + env(safe-area-inset-bottom));
    background: #fff; border-top: 1px solid var(--line); display: flex; gap: 10px; flex-wrap: wrap;
  }
  :is(body, body[data-product-surface]) :is(.workspace-decision-actions, .modal-box form > footer) > button { flex: 1 1 120px; }
  :is(body, body[data-product-surface]) .workspace-detail-drawer { max-width: 100vw; }
  :is(body, body[data-product-surface]) :is(.workspace-page-header, .management-page-header) { flex-wrap: wrap; }
  :is(body, body[data-product-surface]) .workspace-filter-panel { flex-wrap: wrap; overflow: visible; }
  :is(body, body[data-product-surface]) .workspace-filter-panel > :is(label, input, select) { max-width: 100%; flex: 1 1 140px; }
  :is(body, body[data-product-surface]) .insight-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(body, body[data-product-surface]) .insight-columns { grid-template-columns: 1fr; }
  :is(body, body[data-product-surface]) .insight-metric { padding: 14px; }
  :is(body, body[data-product-surface]) .insight-metric strong { font-size: 24px; }
  :is(body, body[data-product-surface]) .toast { right: 16px; bottom: calc(80px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  :is(body, body[data-product-surface]) :is(button, input, select, textarea, .workspace-sidebar) { transition: none; scroll-behavior: auto; }
}
@media (forced-colors: active) {
  :is(body, body[data-product-surface]) select:not([multiple]):not([size]), :is(body, body[data-product-surface]) select[size="1"] { appearance: auto; background-image: none; }
  :is(body, body[data-product-surface]) :is(button, input, select, textarea):focus-visible { outline-color: Highlight; }
}
@media print {
  :is(body, body[data-product-surface]) { background: #fff; }
  :is(body, body[data-product-surface]) :is(.workspace-sidebar, .workspace-topbar, .workspace-mobile-bottom, .insight-filters) { display: none !important; }
  :is(body, body[data-product-surface]) .workspace-main { margin: 0; }
  :is(body, body[data-product-surface]) :is(.workspace-panel, .insight-metric) { box-shadow: none; break-inside: avoid; }
}

/* Approved suite layout: the actual workspace, not a separate demo skin. */
body[data-product-surface] .workspace-app[data-experience="suite-2026"] { grid-template-columns: 222px minmax(0,1fr); }
body[data-product-surface] .workspace-app[data-experience="suite-2026"].sidebar-collapsed { grid-template-columns: 72px minmax(0,1fr); }
body[data-product-surface] .workspace-app[data-experience] .workspace-sidebar { background: #fff; border-right: 1px solid #e9edf2; box-shadow: none; padding: 22px 14px 12px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-sidebar-header { padding: 4px 9px 24px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-brand { gap: 10px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-brand > span { width: 33px; height: 33px; flex-basis: 33px; font-weight: 600; box-shadow: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-brand strong { font-size: 17px; font-weight: 650; }
body[data-product-surface] .suite-company-card { display: flex; gap: 9px; align-items: center; padding: 11px; margin: 0 3px 18px; background: #f8f9fb; border-radius: 10px; }
.suite-company-card svg { width: 25px; height: 25px; color: #59697d; flex: none; }
.suite-company-card div { min-width: 0; }
.suite-company-card strong,.suite-company-card small { display: block; overflow-wrap: anywhere; }
.suite-company-card strong { font-size: var(--ui-meta); font-weight: 600; }.suite-company-card small { font-size: var(--ui-meta); color: #59697d; margin-top: 3px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-navigation { padding: 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-group { margin-bottom: 14px; padding: 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-heading { font-size: var(--ui-meta); min-height: 31px; padding: 6px 12px; font-weight: 500; letter-spacing: .04em; color: #59697d; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-item { font-size: 13px; min-height: 42px; padding: 10px 12px; font-weight: 450; color: #59697d; border-radius: 9px; gap: 11px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-row { display: block; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-favorite { display: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-item.active { background: #eef3ff; color: #456ad9; font-weight: 600; box-shadow: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-glyph { width: 18px; height: 18px; border-radius: 0; padding: 0; background: transparent; color: inherit; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-item.active .workspace-nav-glyph { background: transparent; color: #456ad9; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-glyph svg { width: 18px; height: 18px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-account { border-top: 1px solid #e9edf2; margin-top: 10px; padding-top: 12px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-account-button { width: 100%; justify-content: flex-start; background: #fff; border: 0; font-size: var(--ui-meta); padding: 6px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-account-button > span { background: #eef3ff; color: #456ad9; box-shadow: none; border-radius: 50%; }
body[data-product-surface] .workspace-app[data-experience] .workspace-account-menu { top: auto; bottom: 100%; left: 0; right: auto; width: 190px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-sidebar-collapse { padding: 4px 9px; background: #fff; border: 0; font-size: var(--ui-meta); min-height: 28px; color: #59697d; }
body[data-product-surface] .workspace-app[data-experience] .workspace-main { max-width: none; padding: 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-topbar { margin: 0; width: 100%; min-height: 72px; height: auto; padding: 12px 32px; border-bottom: 1px solid #e9edf2; gap: 16px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-heading { display: flex; align-items: center; gap: 13px; min-width: 0; width: auto; max-width: none; flex: 1 1 auto; }
body[data-product-surface] .workspace-app[data-experience] .workspace-breadcrumb { white-space: nowrap; font-size: var(--ui-meta); color: #59697d; text-transform: none; letter-spacing: 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-current-title { white-space: nowrap; font-size: var(--ui-meta); font-weight: 450; }
body[data-product-surface] .workspace-app[data-experience] .workspace-current-title::before { content: "/"; color: #59697d; margin-right: 13px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-global-search-trigger { margin-left: auto; flex: 0 1 250px; min-height: 34px; font-size: var(--ui-meta); background: #fff; border: 1px solid #e9edf2; }
body[data-product-surface] .workspace-app[data-experience] .workspace-scope { display: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-content { padding: 22px 28px 40px; max-width: 1570px; margin: 0 auto; overflow-x: clip; }
body[data-product-surface] .workspace-app[data-experience] .workspace-page-header { margin: 0 0 18px; align-items: flex-start; }
body[data-product-surface] .workspace-app[data-experience] .workspace-page-header h1 { font-size: var(--ui-title); line-height: 1.3; font-weight: 600; letter-spacing: -.6px; margin: 6px 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-page-header p { font-size: var(--ui-meta); color: #59697d; line-height: 1.7; max-width: 800px; }
body[data-product-surface] .workspace-app[data-experience] .workspace-eyebrow { font-size: var(--ui-meta); color: #59697d; font-weight: 600; letter-spacing: 1.5px; }
body[data-product-surface] .workspace-app[data-experience] :is(.primary,.outline,.button-link) { min-height: 40px; padding: 8px 13px; font-size: var(--ui-label); font-weight: 500; border-color: #e5e9ef; border-radius: 8px; }
body[data-product-surface] .workspace-app[data-experience] .primary { border-color: #456ad9; }
body[data-product-surface] .workspace-app[data-experience] .workspace-panel { border: 1px solid #e9edf2; border-radius: 14px; box-shadow: none; overflow: hidden; }
body[data-product-surface] .workspace-app[data-experience] .workspace-panel-header { padding: 16px 20px; margin: 0; border: 0; }
body[data-product-surface] .workspace-app[data-experience] .workspace-panel-header h2 { font-size: var(--ui-section); font-weight: 600; }
body[data-product-surface] .workspace-app[data-experience] .workspace-table-wrap { border: 0; border-radius: 0; box-shadow: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-table :is(th,td) { border-color: #eef1f5; padding: 12px 14px; font-size: var(--ui-label); }
body[data-product-surface] .workspace-app[data-experience] .workspace-table th { color: #59697d; background: #fafbfc; font-weight: 500; }
body[data-product-surface] .workspace-app[data-experience] .workspace-status { font-size: var(--ui-meta); font-weight: 500; padding: 3px 7px; border-radius: 5px; }
.suite-module-tabs { display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid #e9edf2; margin: -6px 0 24px; }
body .suite-module-tabs button { padding: 12px 15px; background: transparent; border: 0; border-bottom: 2px solid transparent; font-size: var(--ui-meta); color: #59697d; border-radius: 0; }
body .suite-module-tabs button.active { color: #456ad9; border-color: #456ad9; }
.suite-welcome { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 30px; border-radius: 14px; background: linear-gradient(105deg,#edf3ff,#f0f5fe 62%,#e8f0ff); overflow: hidden; margin-bottom: 27px; }
.suite-welcome h2 { font-size: 24px; font-weight: 600; color: #304967; margin: 8px 0; }.suite-welcome p { font-size: var(--ui-meta); color: #59697d; }
.suite-welcome-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
.suite-orbits { display: grid; place-items: center; flex: 0 0 165px; width: 165px; height: 165px; border: 1px solid #d6e2fa; border-radius: 50%; box-shadow: 0 0 0 22px #e5edfc,0 0 0 44px #edf3ff; margin: -18px 38px; }
.suite-orbits svg { width: 78px; height: 78px; color: #59697d; }
.suite-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 15px; flex-wrap: wrap; margin: 22px 0 14px; }.suite-section-heading h2 { font-size: 15px; font-weight: 600; margin: 0; }.suite-section-heading small { font-size: var(--ui-meta); color: #59697d; }
.suite-attention-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; margin-bottom: 22px; }
body .suite-attention-card { display: grid; justify-items: start; gap: 10px; padding: 21px; border: 1px solid #e9edf2; border-radius: 14px; background: #fff; text-align: left; color: #253044; }
.suite-attention-card strong { font-size: 16px; font-weight: 600; }.suite-attention-card p { font-size: var(--ui-meta); line-height: 1.7; color: #59697d; margin: 0; }
.suite-attention-icon { display: grid; place-items: center; width: 35px; height: 35px; background: #eef3ff; color: #456ad9; border-radius: 10px; }.suite-attention-icon svg { width: 20px; height: 20px; }
.suite-text-link { color: #456ad9; font-size: var(--ui-meta); }.suite-two-column { display: grid; grid-template-columns: 1.2fr 1fr; gap: 22px; }.suite-two-column > * { min-width: 0; }
body .suite-goal-preview { display: grid; width: 100%; padding: 16px 21px; border: 0; border-top: 1px solid #eef1f5; background: white; text-align: left; gap: 9px; color: #253044; }
.suite-goal-preview > span { display: flex; gap: 10px; justify-content: space-between; align-items: center; }.suite-goal-preview strong { font-size: var(--ui-meta); }.suite-goal-preview small { font-size: var(--ui-meta); color: #59697d; }.suite-goal-preview b { font-size: 14px; font-weight: 550; }
.suite-review-stage { display: flex; gap: 14px; align-items: center; padding: 12px 21px; font-size: var(--ui-meta); }.suite-review-stage span { flex: 0 0 100px; }.suite-review-stage progress { flex: 1; min-width: 0; height: 5px; accent-color: #456ad9; }.suite-review-stage strong { font-weight: 550; font-size: var(--ui-meta); }
.suite-note { padding: 16px 21px; font-size: var(--ui-meta); color: #59697d; line-height: 1.8; margin: 0; }
.suite-shortcuts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }.suite-shortcuts button { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid #e9edf2; background: #fff; border-radius: 10px; color: #59697d; }.suite-shortcuts svg { width: 19px; height: 19px; color: #59697d; }.suite-shortcuts strong { font-size: var(--ui-meta); font-weight: 500; }.suite-shortcuts span { margin-left: auto; color: #59697d; }
.suite-operations-detail { border: 1px solid #e9edf2; border-radius: 12px; padding: 15px 20px; margin-top: 26px; background: #fff; }.suite-operations-detail > summary { color: #59697d; cursor: pointer; font-size: var(--ui-meta); }.suite-operations-detail[open] > summary { margin-bottom: 20px; }
.suite-filterbar { display: flex; gap: 12px; align-items: end; flex-wrap: wrap; margin: 20px 0; }.suite-filterbar label { display: grid; gap: 6px; min-width: 0; flex: 0 1 190px; }.suite-filterbar label > span { color: #59697d; font-size: var(--ui-meta); }.suite-filterbar .suite-search { margin-left: auto; flex-basis: 270px; }
body[data-product-surface] .suite-filterbar :is(select,input) { font-size: var(--ui-meta); min-height: 40px; border-color: #e5e9ef; }
body .suite-text-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 0; background: transparent; padding: 7px 3px; color: #456ad9; font-size: var(--ui-meta); }.suite-text-button svg { width: 16px; height: 16px; }
.suite-focus { display: flex; align-items: center; gap: 20px; padding: 24px 27px; background: #eef3ff; border-radius: 14px; margin-bottom: 22px; }.suite-focus > span svg { width: 35px; height: 35px; color: #59697d; }.suite-focus > div { flex: 1; min-width: 0; }.suite-focus small { font-size: var(--ui-meta); letter-spacing: 1px; color: #59697d; }.suite-focus h2 { font-size: 19px; margin: 5px 0; font-weight: 600; }.suite-focus p { font-size: var(--ui-meta); color: #59697d; margin: 0; }
.suite-work-grid { display: grid; grid-template-columns: minmax(0,1fr) 294px; gap: 22px; align-items: start; }.suite-context { display: grid; gap: 18px; min-width: 0; }
.suite-work-group > header { display: flex; align-items: center; gap: 9px; padding: 13px 20px; background: #fafbfc; font-size: var(--ui-meta); }.suite-work-group > header small { color: #59697d; }
body .suite-task-row { width: 100%; display: flex; align-items: start; gap: 14px; padding: 20px; background: #fff; border: 0; border-bottom: 1px solid #eef1f5; text-align: left; color: #253044; border-radius: 0; }
body .suite-task-row:hover { background: #fbfcff; }.suite-task-row:last-child { border-bottom: 0; }.suite-task-symbol svg { width: 18px; height: 18px; color: #59697d; margin-top: 3px; }.suite-task-copy { display: grid; gap: 7px; flex: 1; min-width: 0; }.suite-task-copy strong { font-size: var(--ui-meta); font-weight: 600; overflow-wrap: anywhere; }.suite-task-copy small { font-size: var(--ui-meta); color: #59697d; }.suite-task-kr { display: flex; align-items: start; gap: 5px; }.suite-task-kr svg { width: 13px; height: 13px; flex: none; }.suite-task-copy .suite-blocker,.suite-overdue { color: #be736d; }
.suite-task-meta { display: grid; gap: 8px; justify-items: end; text-align: right; flex: 0 0 auto; max-width: 180px; }.suite-task-meta small,.suite-assignees { font-size: var(--ui-meta); color: #59697d; }.suite-task-meta .suite-overdue { color: #be736d; }
.suite-callout { padding: 20px; background: #f0f4fc; border-radius: 12px; }.suite-callout strong { font-size: 13px; }.suite-callout p { font-size: var(--ui-meta); line-height: 1.8; color: #59697d; }
.suite-project-grid { display: grid; gap: 18px; }.suite-project-grid > .workspace-empty { background: #fff; border: 1px solid #e9edf2; border-radius: 14px; }
body .suite-project-card { display: flex; align-items: center; gap: 20px; border: 1px solid #e9edf2; border-radius: 14px; padding: 26px; background: #fff; text-align: left; color: #253044; }.suite-project-card > div { flex: 1; min-width: 0; }.suite-project-card h2,.suite-project-summary h2 { font-size: 19px; font-weight: 600; margin: 5px 0 10px; }.suite-project-card p,.suite-project-summary p { font-size: var(--ui-meta); color: #59697d; }.suite-project-card small,.suite-project-summary small { font-size: var(--ui-meta); color: #59697d; }.suite-project-card div > span { display: flex; justify-content: space-between; align-items: center; margin-top: 15px; gap: 15px; }
.suite-project-icon { display: grid; place-items: center; width: 48px; height: 48px; flex: 0 0 48px; background: #eef3ff; border-radius: 12px; color: #456ad9; }.suite-project-icon svg { width: 25px; height: 25px; }
.suite-project-summary { display: flex; align-items: center; gap: 24px; padding: 30px; background: #fff; border: 1px solid #e9edf2; border-radius: 14px; margin-bottom: 24px; }.suite-project-summary > div { min-width: 0; flex: 1; }.suite-project-summary .suite-project-total { flex: 0 0 auto; display: grid; gap: 7px; text-align: center; }.suite-project-total strong { font-size: 25px; font-weight: 550; }.suite-linked-goals { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 12px; }
.suite-segmented { display: inline-flex; padding: 4px; border-radius: 9px; background: #eceff4; gap: 3px; }body .suite-segmented button { border: 0; border-radius: 6px; background: transparent; color: #59697d; min-height: 32px; padding: 5px 12px; font-size: var(--ui-meta); }body .suite-segmented button.active { background: #fff; color: #59697d; box-shadow: 0 1px 4px #26375910; }
.suite-board { display: grid; grid-template-columns: repeat(auto-fit,minmax(230px,1fr)); gap: 15px; align-items: start; }.suite-board-column { min-width: 0; background: #f0f2f6; border-radius: 12px; padding: 10px; }.suite-board-column > header { display: flex; justify-content: space-between; padding: 6px 5px 14px; font-size: var(--ui-meta); color: #59697d; }.suite-board-column > header strong { font-weight: 550; }
body .suite-board .suite-task-row { display: grid; grid-template-columns: 18px 1fr; gap: 9px; border: 1px solid #e6ebf2; border-radius: 10px; padding: 15px; margin-bottom: 10px; }.suite-board .suite-task-meta { grid-column: 2; max-width: none; justify-items: start; text-align: left; }.suite-board .suite-task-copy small { overflow-wrap: anywhere; }
.suite-objective { border: 1px solid #e9edf2; background: #fff; border-radius: 14px; margin-bottom: 18px; overflow: hidden; }.suite-objective > summary { display: flex; align-items: center; gap: 16px; padding: 22px; cursor: pointer; list-style: none; }.suite-objective > summary::after { content: "+"; color: #59697d; margin-left: 10px; }.suite-objective[open] > summary::after { content: "−"; }.suite-objective > summary > span:nth-child(2) { flex: 1; min-width: 0; display: grid; gap: 5px; }.suite-objective strong { font-size: 14px; font-weight: 600; }.suite-objective small { font-size: var(--ui-meta); color: #59697d; }.suite-objective-icon svg { width: 23px; height: 23px; color: #59697d; }.suite-objective-body { border-top: 1px solid #edf0f5; }.suite-objective-body > .suite-objective { margin: 0 18px 18px; background: #fbfcfe; }
.suite-kr { display: flex; gap: 15px; align-items: center; border-bottom: 1px solid #eff2f6; padding: 18px 22px 18px 58px; }.suite-kr-main { border: 0; background: transparent; flex: 1; min-width: 0; padding: 0; display: grid; gap: 9px; text-align: left; color: #253044; }.suite-kr-main > span { display: flex; justify-content: space-between; gap: 12px; align-items: center; }.suite-kr-main > span:first-child { justify-content: start; }.suite-kr-main strong { font-size: var(--ui-meta); }.suite-kr-main b { font-size: 14px; font-weight: 550; }.suite-kr-main progress { width: 100%; height: 5px; accent-color: #456ad9; }.suite-kr-actions { display: flex; flex-wrap: wrap; gap: 8px; flex: 0 0 auto; }.suite-objective-actions { display: flex; flex-wrap: wrap; gap: 20px; padding: 10px 22px; }
@media (max-width:1100px) { .suite-work-grid { grid-template-columns: minmax(0,1fr) 250px; }.suite-two-column { grid-template-columns: 1fr 1fr; }.suite-orbits { margin-right: 5px; flex-basis: 115px; width: 115px; height: 115px; }.suite-review-stage { flex-wrap: wrap; gap: 10px; }.suite-kr { padding-left: 25px; } }
@media (min-width:801px) { .sidebar-collapsed .suite-company-card { display: none; }body[data-product-surface] .workspace-app.sidebar-collapsed .workspace-sidebar { padding: 22px 8px 12px; }.sidebar-collapsed .workspace-account-button strong { display: none; } }
@media (max-width:800px) {
  body[data-product-surface] .workspace-app[data-experience="suite-2026"],body[data-product-surface] .workspace-app[data-experience="suite-2026"].sidebar-collapsed { display: block; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-sidebar { width: 260px; position: fixed; inset: 0 auto 0 0; height: 100dvh; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-topbar { min-height: 62px; padding: 9px 15px; gap: 10px; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-heading { flex: 1; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-heading .workspace-breadcrumb { display: none; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-current-title { white-space: nowrap; font-size: var(--ui-meta); }
  body[data-product-surface] .workspace-app[data-experience] .workspace-current-title::before { display: none; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-global-search-trigger { display: none; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-content { padding: 23px 16px 90px; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-page-header h1 { font-size: 25px; }
  body[data-product-surface] .workspace-app[data-experience] .workspace-page-header { flex-direction: column; gap: 12px; }
  body[data-product-surface] .workspace-app[data-experience] :is(.primary,.outline,.button-link,.suite-text-button,.suite-module-tabs button) { min-height: 44px; }
  body[data-product-surface] .suite-filterbar :is(select,input) { min-height: 44px; }
  .suite-attention-grid,.suite-two-column,.suite-work-grid { grid-template-columns: 1fr; }.suite-attention-card { gap: 8px; }.suite-welcome { padding: 24px; }.suite-orbits { display: none; }.suite-welcome h2 { font-size: 22px; }
  .suite-shortcuts { grid-template-columns: repeat(2,minmax(0,1fr)); }.suite-shortcuts button { padding: 15px 12px; gap: 9px; }.suite-shortcuts svg { width: 17px; }
  .suite-focus { flex-wrap: wrap; padding: 22px; }.suite-focus > span { display: none; }.suite-focus h2 { font-size: 18px; }
  .suite-filterbar label { flex: 1 1 130px; }.suite-filterbar .suite-search { flex: 1 1 100%; margin: 0; }
  body .suite-task-row { display: grid; grid-template-columns: 18px minmax(0,1fr); padding: 18px 15px; gap: 9px; }.suite-task-meta { grid-column: 2; justify-items: start; text-align: left; max-width: none; display: flex; flex-wrap: wrap; align-items: center; }.suite-task-copy strong { font-size: 13px; }
  .suite-project-summary { gap: 15px; padding: 22px; flex-wrap: wrap; }.suite-project-summary > div { flex-basis: 190px; }.suite-project-summary .suite-project-total { display: flex; align-items: baseline; gap: 10px; flex-basis: 100%; }.suite-project-summary .suite-project-icon { display: none; }
  body .suite-project-card { gap: 13px; padding: 22px 16px; }.suite-project-card .suite-project-icon { width: 35px; height: 35px; flex-basis: 35px; }.suite-project-card h2 { font-size: 17px; }.suite-board { grid-template-columns: 1fr; }
  .suite-kr { padding: 16px; flex-wrap: wrap; }.suite-kr-main { flex-basis: 100%; }.suite-kr-actions { flex-basis: 100%; }.suite-objective > summary { padding: 18px 14px; gap: 10px; flex-wrap: wrap; }.suite-objective > summary > span:nth-child(2) { flex-basis: 200px; }.suite-objective-body > .suite-objective { margin: 0 9px 14px; }
  .suite-module-tabs { flex-wrap: wrap; max-width: 100%; }.suite-module-tabs button { white-space: normal; flex: 0 1 auto; }
}

@media (min-width:801px) and (max-width:1200px) { body[data-product-surface] .workspace-app[data-experience] .workspace-breadcrumb { display: none; } body[data-product-surface] .workspace-app[data-experience] .workspace-current-title::before { display: none; } }

body[data-product-surface] .suite-filterbar .form-field-badge { display: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-label { font-weight: inherit; }
body[data-product-surface] .workspace-app[data-experience] .workspace-tabs { max-width: 100%; min-width: 0; overflow-x: auto; }
body[data-product-surface] .workspace-app[data-experience] .workspace-tabs > button { flex-shrink: 0; }
/* Fixed-position menu panels inside closed details must not contribute scrollable overflow. */
body[data-product-surface] .workspace-row-menu:not([open]) > div { display: none; }
body[data-product-surface] .workspace-app[data-experience] .workspace-sidebar { overflow: visible; }
body[data-product-surface] .workspace-app[data-experience] .workspace-account-menu { min-width: 0; width: 220px; max-width: calc(100vw - 32px); }
@media (min-width:801px) { body[data-product-surface] .workspace-app.sidebar-collapsed .suite-company-card { display: none; } }

/* A destination is visible immediately while its authenticated data loads. */
.workspace-page-loading { min-height: 180px; color: var(--muted, #64748b); }
.workspace-loading-lines { display: grid; gap: 14px; padding-top: 16px; }
.workspace-loading-lines span { display: block; height: 13px; max-width: 680px; border-radius: 6px; background: #edf0f5; }
.workspace-loading-lines span:nth-child(2) { width: 78%; }
.workspace-loading-lines span:nth-child(3) { width: 56%; }

/* Authorized per-page file preview; original download is a separate user action. */
.paged-file-preview { min-height: 180px; width: 100%; }
.document-reader-dialog { inset:0; margin:auto; width:96vw; max-width:1800px; height:96vh; height:96dvh; max-height:96dvh; padding:0; border:0; border-radius:14px; overflow:hidden; color:#223448; box-shadow:0 16px 70px #0d1c3c55; }
.document-reader-dialog.reader-report { width:94vw; max-width:1120px; }
.document-reader-dialog.reader-report.reader-expanded { width:96vw; max-width:1800px; }
.document-reader-dialog::backdrop { background:#101e34b8; }
.document-reader-dialog > div { height:100%; }
.document-reader { display:flex; flex-direction:column; height:min(82vh,1100px); min-height:300px; width:100%; overflow:hidden; background:#e9edf1; isolation:isolate; }
.document-reader-dialog .document-reader { height:100%; }
.reader-opening { margin:auto; padding:30px; }
.reader-emergency-close { position:absolute; right:12px; top:12px; z-index:5; width:44px; height:44px; }
.reader-emergency-close[hidden],.document-reader [hidden] { display:none!important; }
.reader-toolbar { flex:none; display:flex; gap:8px; align-items:center; padding:8px 12px; background:#fff; border-bottom:1px solid #d8e0e7; z-index:3; min-height:60px; }
.reader-report .reader-toolbar { flex-wrap:wrap; gap:4px; }
.reader-report .reader-toolbar > strong { min-width:140px; }
.reader-toolbar > strong { flex:1; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:16px; }
.document-reader .reader-toolbar :is(button,summary) { min-width:44px; min-height:44px; margin:0; padding:8px 12px; border:1px solid transparent; border-radius:7px; background:transparent; color:#243d53; font:inherit; font-size:14px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.reader-toolbar :is(button,summary):hover { background:#eff4f6; }
.reader-toolbar :is(button,input,summary):focus-visible { outline:2px solid #167b73; outline-offset:1px; }
.reader-toolbar button:disabled { opacity:.4; cursor:default; }
.document-reader .reader-toolbar .reader-print { border-color:#bac8d9; background:#f3f7fc; white-space:normal; flex:none; }
.reader-toolbar [hidden] { display:none!important; }
.reader-pagination,.reader-zoom { display:flex; gap:3px; align-items:center; flex:none; }
.reader-pagination input { width:54px!important; min-width:0; height:44px!important; min-height:44px!important; padding:4px; text-align:center; border:1px solid #d1dbe3; border-radius:6px; margin:0; font:inherit; }
.reader-pagination span { font-size:13px; white-space:nowrap; }
.reader-menu { position:relative; }
.reader-menu summary { list-style:none; }
.reader-menu summary::-webkit-details-marker { display:none; }
.reader-menu > div { position:absolute; right:0; top:48px; width:210px; padding:6px; background:white; box-shadow:0 8px 30px #15283833; border:1px solid #d8e0e7; border-radius:10px; }
.reader-menu > div > button { display:flex; width:100%; justify-content:flex-start; }
.reader-notice { flex:none; padding:8px 16px; margin:0; background:#f4f8fa; font-size:13px; color:#476075; }
.reader-notice:empty { display:none; }
.reader-viewport { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; position:relative; scroll-behavior:auto; touch-action:pan-x pan-y; -webkit-overflow-scrolling:touch; }
.reader-pages { width:max-content; min-width:100%; padding:16px 0 32px; box-sizing:border-box; }
.reader-page { position:relative; overflow:hidden; margin:0 auto 16px; background:white; box-shadow:0 1px 6px #18314b22; flex:none; contain:layout paint; }
.reader-page img { position:absolute; top:50%; left:50%; max-width:none!important; margin:0!important; object-fit:contain; user-select:none; }
.reader-page-placeholder { position:absolute; inset:0; display:grid; place-items:center; color:#a3afba; font-size:26px; }
.reader-page-error { position:absolute; top:20px; left:50%; transform:translateX(-50%); padding:10px 18px; z-index:2; }
.reader-is-zoomed .reader-viewport { cursor:grab; }
@media(max-width:768px) {
 .document-reader-dialog,body .document-reader-dialog.reader-report,body .document-reader-dialog.reader-report.reader-expanded { width:100vw; max-width:100vw; height:100vh; height:100dvh; max-height:100dvh; border-radius:0; }
 .reader-toolbar { padding:calc(4px + env(safe-area-inset-top)) max(4px,env(safe-area-inset-right)) 4px max(4px,env(safe-area-inset-left)); gap:2px; flex-wrap:wrap; }
 .reader-toolbar > strong { font-size:14px; }
 .document-reader .reader-toolbar > [data-close] { display:none; }
 .reader-toolbar .reader-pagination { order:5; justify-content:center; flex:1 0 100%; border-top:1px solid #edf0f2; }
 .document-reader .reader-menu .reader-print { margin:0; border:0; background:transparent; }
 .reader-report .reader-menu [data-enlarge] { display:none; }
 .reader-zoom { display:none; }
 .reader-pages { padding:4px 0 calc(16px + env(safe-area-inset-bottom)); }
 .reader-page { margin-bottom:8px; box-shadow:none; }
 .reader-notice { padding:6px 12px; }
}
.paged-file-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; position:sticky; top:0; background:var(--surface,#fff); padding:10px 0; z-index:2; }
.paged-file-toolbar button,.paged-file-toolbar a { border:1px solid #c8d2df; border-radius:8px; padding:8px 12px; background:#fff; color:#253e62; font:inherit; text-decoration:none; }
.paged-file-toolbar button:disabled { opacity:.5; cursor:default; }
.paged-file-toolbar button[aria-pressed=true] { background:#e7edf8; }

/* Employee documents: current work first, evidence history on demand. */
.employee-records .record-documents-toolbar { display:flex; gap:20px; align-items:flex-start; justify-content:space-between; }
.record-documents-toolbar h2 { font-size:22px; margin:0 0 6px; }
.record-documents-toolbar p { margin:0; color:var(--muted,#65758a); font-size:14px; line-height:1.6; }
.record-documents-toolbar > button { flex-shrink:0; }
.record-document-filters { display:flex; gap:8px; flex-wrap:wrap; }
.record-document-filters button { display:inline-flex; gap:8px; align-items:center; border:1px solid #dfe5ee; border-radius:24px; background:#fff; padding:8px 14px; color:#506076; font:inherit; font-size:14px; min-height:44px; cursor:pointer; }
.record-document-filters button span { font-variant-numeric:tabular-nums; font-size: var(--ui-meta); }
.record-document-filters button[aria-pressed=true] { background:#e9f2f1; border-color:#a6cac2; color:#14695e; font-weight:600; }
.record-document-list { display:grid; gap:12px; }
.employee-records .record-document { border:1px solid #dfe5ed; border-radius:12px; padding:18px 20px; min-width:0; }
.record-document-title { display:flex; align-items:baseline; gap:10px; min-width:0; flex-wrap:wrap; }
.record-document-title h3 { font-size:17px; line-height:1.5; overflow-wrap:anywhere; }
.record-requirement { font-size: var(--ui-meta); color:#6c7788; font-weight:400; white-space:nowrap; }
.record-status { display:inline-flex; align-items:center; border-radius:6px; padding:4px 8px; font-size: var(--ui-meta); line-height:1.4; background:#f0f3f7; color:#546376; font-weight:500; }
.record-status[data-tone=review] { background:#fff3d9; color:#805813; }
.record-status[data-tone=action] { background:#fff0ed; color:#a24332; }
.record-status[data-tone=processing] { background:#edf2fc; color:#385b9b; }
.record-status[data-tone=complete] { background:#eaf6f0; color:#216a4b; }
.employee-records .record-file { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px 16px; padding:14px 0; margin-top:10px; border-top:1px solid #edf0f4; }
.record-file-main { min-width:0; }
.employee-records .record-file-open { display:inline-flex; align-items:center; gap:10px; max-width:100%; min-height:44px; padding:0; text-align:left; color:#244c6e; background:transparent; border:0; font:inherit; font-weight:600; cursor:pointer; }
.record-file-open > span:last-child { overflow-wrap:anywhere; }
.record-file-icon { display:grid; place-items:center; flex-shrink:0; width:36px; height:40px; border-radius:7px; border:1px solid #dde5ee; background:#f6f8fb; color:#62768d; font-size: var(--ui-meta); letter-spacing:.4px; font-weight:700; }
.record-file-meta { display:flex; flex-wrap:wrap; gap:4px 10px; font-size: var(--ui-meta); line-height:1.6; color:#728094; margin:3px 0 0; overflow-wrap:anywhere; }
.record-file-main > .record-file-meta { padding-left:46px; }
.record-file-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.record-file-actions > button { min-height:44px; }
.record-file-reason { grid-column:1/-1; margin:0; padding:8px 12px; background:#f8f9fb; color:#617186; border-radius:6px; font-size:13px; white-space:pre-wrap; overflow-wrap:anywhere; }
.record-file-reason strong { font-weight:600; }
.record-document .record-document-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-top:12px; }
.record-document-actions :is(button,summary) { min-height:44px; }
.record-document-more { position:relative; }
.record-document-more > summary { display:flex; align-items:center; padding:8px 10px; border-radius:8px; color:#607086; cursor:pointer; font-size:13px; list-style:none; }
.record-document-more > summary::after { content:'⌄'; margin-left:8px; }
.record-document-more > summary::-webkit-details-marker { display:none; }
.record-document-more > div { position:absolute; left:0; top:100%; z-index:6; display:grid; width:max-content; max-width:250px; background:#fff; border:1px solid #dfe5ee; border-radius:10px; padding:5px; box-shadow:0 6px 20px #20355522; }
.record-link,.record-dialog .text-button,.document-upload-card button.link { border:0; border-radius:7px; background:transparent; color:#275f7a; padding:8px 12px; font:inherit; font-size:14px; cursor:pointer; text-align:left; min-height:44px; }
.record-link:hover,.record-dialog .text-button:hover,.document-upload-card button.link:hover { background:#eef4f8; }
.record-file-history { margin-top:12px; border-top:1px solid #edf0f4; }
.record-file-history > summary,.record-optional-group > summary { padding:12px 0 0; font-size:13px; color:#61738b; cursor:pointer; min-height:44px; }
.record-file-history > summary span,.record-optional-group > summary span { margin-left:8px; font-variant-numeric:tabular-nums; }
.record-file-history .record-file { margin:0; padding:12px 0; }
.record-file-history .record-file-open { font-weight:400; font-size:14px; }
.record-file-history .record-status { background:#f3f5f8; color:#66778b; }
.record-note,.record-empty-note { color:#6b7c90; font-size:13px; line-height:1.6; margin:12px 0 0; }
.record-return-note { padding:10px 12px; border-radius:8px; background:#fff5ef; font-size:14px; color:#944b2d; white-space:pre-wrap; }
.record-optional-group { border-top:1px solid #dfe5ed; margin-top:8px; }
.record-optional-group > summary { padding:14px 0; font-size:14px; }
.record-optional-group > article { margin-top:12px; }
.employee-records [hidden] { display:none!important; }
.record-upload-save-hint { font-size:13px; color:#66778b; flex:1; margin:0; }
.record-dialog .document-upload-card { padding:16px; }
.record-dialog .document-upload-card h4 { margin:0 0 6px; }
.document-upload-file { gap:8px; }
.document-upload-file > span:first-of-type { overflow-wrap:anywhere; min-width:0; }
.document-upload-file button.link { flex-shrink:0; }
.document-upload-file .document-upload-note { flex:1 0 100%; order:5; font-size: var(--ui-meta); line-height:1.6; color:#68798d; }
.document-upload-note:empty { display:none; }

.document-reader-dialog.reader-with-panel[open] { display:grid; grid-template-columns:minmax(0,1fr) 340px; }
.reader-with-panel > .document-reader { min-width:0; }
.record-review-panel { display:flex; flex-direction:column; gap:16px; min-height:0; overflow:auto; padding:24px; background:#fff; border-left:1px solid #dce3ed; }
.record-review-panel [hidden] { display:none!important; }
.record-eyebrow { font-size: var(--ui-meta); color:#687c91; }
.record-review-panel h2 { font-size:20px; margin:8px 0; line-height:1.5; }
.record-review-filename { font-size:14px; margin:0; overflow-wrap:anywhere; color:#405b73; }
.record-review-hint { margin:0; font-size:13px; line-height:1.7; color:#66768a; }
.record-review-panel form { display:flex; flex-direction:column; gap:10px; }
.record-review-panel label { display:flex; flex-wrap:wrap; gap:6px; font-size:14px; font-weight:600; }
.record-review-panel label small { font-size: var(--ui-meta); font-weight:400; color:#6a7a8d; }
.record-review-panel textarea { min-height:100px; width:100%; font:inherit; border:1px solid #c8d4e1; border-radius:8px; padding:10px; }
.record-review-buttons { display:flex; gap:8px; flex-wrap:wrap; }
.record-review-panel .record-review-buttons > button { flex:1; min-height:44px; }
.record-review-state { font-size:13px; color:#66778b; margin:0; }
.record-review-panel :is(.record-error,.record-review-state):empty { display:none; }
.record-review-leave { background:#fff6e5; border-radius:8px; padding:12px; font-size:13px; }
.record-review-leave p { margin:0 0 12px; }
@media(min-width:769px) and (max-width:1100px) { .reader-with-panel .reader-zoom { display:none; } .document-reader-dialog.reader-with-panel[open] { grid-template-columns:minmax(0,1fr) 290px; } .record-review-panel { padding:18px; } }
@media(max-width:768px) {
 .record-documents-toolbar { flex-wrap:wrap; gap:12px!important; }
 .record-documents-toolbar h2 { font-size:20px; }
 .record-document-filters { flex-wrap:nowrap; overflow-x:auto; padding-bottom:5px; }
 .record-document-filters button { flex-shrink:0; }
 .employee-records .record-document { padding:16px; }
 .employee-records .record-document > header { align-items:flex-start; flex-wrap:wrap; gap:8px; }
 .employee-records .record-file { grid-template-columns:minmax(0,1fr); gap:10px; }
 .record-file-actions { justify-content:flex-start; padding-left:46px; }
 .record-file-actions > button { margin-left:auto; }
 .record-file-actions .record-status { font-size: var(--ui-meta); }
 .record-document-actions .record-document-more { margin-left:auto; }
 .record-document-more > div { left:auto; right:0; }
 .record-dialog .document-upload-file { flex-wrap:wrap; }
 .record-dialog .document-upload-file > span:first-of-type { flex:1 0 calc(100% - 68px); }
 .document-reader-dialog.reader-with-panel[open] { display:flex; flex-direction:column; }
 .reader-with-panel > .document-reader { flex:1; min-height:180px; height:auto; }
 .record-review-panel { flex:none; max-height:45dvh; padding:12px max(14px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left)); border-left:0; border-top:1px solid #ccd8e3; gap:8px; }
 .record-review-panel h2 { font-size:15px; margin:0; }
 .record-review-panel :is(.record-eyebrow,.record-review-filename,.record-file-meta,.record-review-hint) { display:none; }
 .record-review-panel form { gap:6px; }
 .record-review-panel textarea { min-height:54px; height:54px; resize:vertical; }
 .record-review-panel label { font-size:13px; }
 .record-review-buttons { position:sticky; bottom:0; background:#fff; padding-top:4px; }
}
.paged-file-canvas { overflow:auto; background:#eef1f5; border:1px solid #dde3eb; border-radius:8px; }
.paged-file-canvas img[hidden],.paged-file-toolbar [hidden] { display:none !important; }
.paged-file-preview [role=status] { min-height:1.5em; margin:8px 0; }
@media(max-width:600px) { .paged-file-toolbar { gap:6px; } .paged-file-toolbar button,.paged-file-toolbar a { padding:8px; font-size:14px; } }
.client-release-notice { position:fixed; inset:auto 16px 16px; z-index:100000; display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:14px 18px; background:#173d49; color:white; border-radius:12px; box-shadow:0 6px 24px #0003; }
.client-release-notice button { min-height:44px; }

:is(body, body[data-product-surface]) .attachment-removal-dialog :is(button,select) { min-height:44px; }
.attachment-removal-dialog .field[hidden] { display:none; }

/* Daily priorities: attendance → work goals → learning. Shared workspace controls,
   scoped away from public portals, document canvases and print output. */
.workspace-app {
  --control-border: #7c899b;
}
body[data-product-surface] .workspace-app[data-experience] .outline:not(.danger):not(:disabled) {
  color: #253044; border-color: var(--control-border); background: #fff;
}
body[data-product-surface] .workspace-app[data-experience] .outline:not(.danger):hover:not(:disabled) {
  border-color: #456ad9; background: #eef3ff;
}
body[data-product-surface] .workspace-app[data-experience] :is(input:not([type=checkbox]):not([type=radio]),select,textarea):not(:disabled):not([aria-invalid=true]):not(:user-invalid) {
  border-color: var(--control-border);
}
body[data-product-surface] .workspace-app[data-experience] :is(button,a,input,select,textarea,summary):focus-visible {
  outline: 3px solid #3455b9; outline-offset: 3px; box-shadow: none;
}
body[data-product-surface] .workspace-app[data-experience] .workspace-nav-item.active {
  color: #3455b9; background: #eef3ff; box-shadow: inset 3px 0 #456ad9; font-weight: 650;
}
body[data-product-surface] .workspace-app[data-experience] [data-nav-group="suite-daily"] .workspace-nav-heading {
  color: #253044; margin-top: 0;
}
.suite-priority-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-bottom: 20px; }
.suite-priority-card { display: flex; flex-direction: column; min-width: 0; padding: 22px; border: 1px solid #d5dce6; border-radius: 12px; background: #fff; }
.suite-priority-card:first-child { border-top: 3px solid #456ad9; padding-top: 20px; }
.suite-priority-card header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.suite-priority-number { font-size: 14px; font-weight: 650; color: #59697d; font-variant-numeric: tabular-nums; }
.suite-priority-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; color: #3455b9; background: #eef3ff; }
.suite-priority-icon svg { width: 22px; height: 22px; }
.suite-priority-card h2 { font-size: 21px; line-height: 1.4; margin: 16px 0 8px; }
.suite-priority-card p { font-size: 15px; line-height: 1.65; margin: 0 0 16px; color: #46536a; }
.suite-priority-card small { color: #59697d; margin-top: auto; margin-bottom: 16px; }
body[data-product-surface] .workspace-app[data-experience] .suite-priority-card .primary { min-height: 44px; width: 100%; white-space: normal; line-height: 1.5; }
.suite-approval-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 18px 20px; background: #fff; border: 1px solid #d5dce6; border-radius: 12px; margin-bottom: 20px; }
.suite-approval-summary h2 { font-size: 18px; margin: 0 0 4px; }
.suite-approval-summary p { color: #59697d; font-size: 14px; margin: 0; }
.hr-work-map { margin-bottom: 28px; }
.hr-work-map .suite-section-heading { align-items: center; flex-wrap: wrap; gap: 12px; }
.hr-work-map .suite-section-heading h2 { margin-bottom: 6px; }
.hr-work-map .suite-section-heading p { margin: 0; color: #59697d; font-size: 14px; }
.hr-work-map-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.hr-work-map-group { min-width: 0; padding: 18px; border: 1px solid #d5dce6; border-radius: 12px; background: #fff; }
.hr-work-map-group h3 { margin: 0 0 10px; font-size: 16px; color: #253044; }
.hr-work-map-group ul { list-style: none; margin: 0; padding: 0; }
.hr-work-map-group li + li { border-top: 1px solid #edf0f5; }
.hr-work-map-group button { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 44px; padding: 9px 0; border: 0; border-radius: 4px; text-align: start; background: transparent; color: #3455b9; white-space: normal; overflow-wrap: anywhere; }
.hr-work-map-group button:hover { background: #f3f6fc; }
.hr-recruitment-tasks { margin-bottom: 20px; }
.hr-recruitment-tasks > summary { min-height: 44px; padding: 12px 0; color: #3455b9; cursor: pointer; }
.hr-recruitment-tasks .workspace-panel { margin-bottom: 12px; }
@media(max-width:1100px) { .hr-work-map-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .hr-work-map-grid { grid-template-columns: 1fr; gap: 12px; } }
.suite-priority-section ~ .suite-two-column { margin-bottom: 20px; }
.suite-learning-list { list-style: none; padding: 0; margin: 0; }
.suite-learning-list li { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; padding: 16px 20px; border-top: 1px solid #e3e8ef; }
.suite-learning-list strong { flex: 1 1 160px; font-size: 15px; overflow-wrap: anywhere; }
.suite-learning-list small { flex-basis: 100%; color: #59697d; }
.suite-load-error { padding: 16px 20px; }
.suite-load-error strong { color: #a92e3b; }
.suite-load-error p { color: #46536a; }
.suite-load-error button { margin: 0 8px 8px 0; }
.suite-priority-card, .suite-approval-summary, .suite-load-error { overflow-wrap: anywhere; }
@media(max-width:1100px) {
  .suite-priority-card { padding: 16px; }
  .suite-priority-card:first-child { padding-top: 14px; }
}
@media(max-width:767px) {
  .suite-priority-grid { grid-template-columns: 1fr; gap: 12px; }
  .suite-priority-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 0 12px; }
  .suite-priority-card header { grid-column: 2; grid-row: 1; }
  .suite-priority-card h2 { grid-column: 1; grid-row: 1; margin: 2px 0 10px; font-size: 20px; }
  .suite-priority-number { display: none; }
  .suite-priority-icon { width: 30px; height: 30px; }
  .suite-priority-card :is(p,small,button) { grid-column: 1 / -1; }
  .suite-priority-card p { margin-bottom: 10px; }
  .suite-priority-card small { margin-bottom: 12px; }
  .suite-approval-summary { padding: 16px; }
}
@media(forced-colors:active) {
  body[data-product-surface] .workspace-app[data-experience] .workspace-nav-item.active { border-inline-start: 3px solid Highlight; }
  body[data-product-surface] .workspace-app[data-experience] :is(button,a,input,select,textarea,summary):focus-visible { outline-color: Highlight; }
}
.suite-overview .workspace-empty { min-height: 0; padding: 24px 20px; margin: 0; }
@media(max-width:767px) {
  .workspace-mobile-bottom strong { overflow-wrap: anywhere; hyphens: auto; }
  .workspace-mobile-bottom button.active { box-shadow: inset 0 3px #456ad9; }
}
.suite-overview .workspace-panel-header { flex-wrap: wrap; }
.suite-overview .workspace-panel-header > button { flex-shrink: 0; max-width: 100%; }

/* Task details: shared presentation for reviewed forms, without changing business rules. */
.modal-box.task-dialog { display:block; max-height:calc(100dvh - 40px); overflow-y:auto; padding:24px; background:#fff; color:#18263d; }
.task-dialog > h2 { padding-right:36px; margin:0 0 12px; line-height:1.35; }
.task-dialog .task-dialog-intro { margin:0 0 20px; color:#4b5b72; line-height:1.65; }
.task-dialog .task-dialog-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-content:start; align-items:start; min-height:0; margin:0; }
.task-dialog-form > label,.task-dialog-form > .field { min-width:0; margin:0; }
.task-dialog-form > label { display:flex; flex-direction:column; gap:8px; font-weight:600; }
.task-dialog-form > .check-row { flex-direction:row; align-items:flex-start; font-weight:400; }
.task-dialog-form > p,.task-dialog-form > .row-actions,.task-dialog-form > .full { grid-column:1/-1; margin:0; }
.task-dialog-form > p:empty { display:none; }
.task-dialog-form small,.task-dialog-form .hint { color:#4b5b72; font-weight:400; line-height:1.6; }
.task-dialog input:not([type=checkbox]):not([type=radio]),.task-dialog select,.task-dialog textarea { width:100%; min-width:0; min-height:44px; border:1px solid #7c899b; background:#fff; color:#18263d; border-radius:8px; padding:10px 12px; font-size:16px; }
.task-dialog textarea { min-height:100px; resize:vertical; }
.task-dialog .task-dialog-actions { position:sticky; bottom:-24px; z-index:2; display:flex; justify-content:flex-end; align-items:center; gap:12px; flex-wrap:wrap; grid-column:1/-1; padding:16px 0; margin-top:8px; background:#fff; border-top:1px solid #c5cdd8; }
.task-dialog-actions button { min-height:44px; white-space:normal; max-width:100%; }
.task-dialog .primary { background:#456ad9; border:1px solid #456ad9; color:#fff; }
.task-dialog .outline { background:#fff; color:#253650; border:1px solid #7c899b; }
.task-dialog :is(input,select,textarea,button):focus-visible { outline:3px solid #254bab; outline-offset:3px; }
.task-dialog :is(input,select,textarea,button):disabled { opacity:1; background:#eef1f5; color:#677384; border-color:#c5cdd8; cursor:not-allowed; }
.task-dialog-error { padding:12px; border:1px solid #b42318; border-radius:8px; background:#fff4f2; color:#8a2017; line-height:1.6; }
.task-dialog [hidden],.task-dialog-error[hidden] { display:none!important; }
.attendance-workbench .awb-request-tools { display:grid; grid-template-columns:minmax(140px,.8fr) minmax(140px,.8fr) minmax(240px,1.8fr); gap:16px; align-items:end; }
.attendance-workbench .awb-request-tools form { min-width:0; }
@media(max-width:800px) {
  .attendance-workbench .awb-request-tools { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .attendance-workbench .awb-request-tools form { grid-column:1/-1; }
}
@media(max-width:600px) {
  .modal-box.task-dialog { max-height:100dvh; height:100dvh; padding:20px 16px; border-radius:0; }
  .task-dialog .task-dialog-form { grid-template-columns:minmax(0,1fr); }
  .task-dialog .task-dialog-actions { bottom:-20px; padding-bottom:max(16px,env(safe-area-inset-bottom)); }
  .task-dialog-actions .primary { flex:1; }
  .task-dialog-form > * { min-width:0; overflow-wrap:anywhere; }
}
body[data-product-surface] .task-dialog { --control-border:#7c899b; }
body[data-product-surface] .task-dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border-color:#7c899b; color:#18263d; background:#fff; font-size:16px; }
body[data-product-surface] .task-dialog .outline { border-color:#7c899b; color:#253650; background:#fff; }
body[data-product-surface] .task-dialog .primary { background:#456ad9; border-color:#456ad9; color:#fff; }
body[data-product-surface] .task-dialog :is(input,select,textarea,button):disabled { opacity:1; background:#eef1f5; color:#677384; border-color:#c5cdd8; }
body[data-product-surface] .task-dialog :is(input,select,textarea,button):focus-visible { outline:3px solid #254bab; outline-offset:3px; }

body[data-product-surface] .task-dialog .task-dialog-actions button { min-height:44px; }
body[data-product-surface] .workspace-decision-dialog { --control-border:#7c899b; }

.task-dialog [data-leave-request-form] > label:has([name="leaveTypeId"]),
.task-dialog [data-leave-request-form] > label:has([name="requestedMinutes"]) { grid-column:1/-1; }

/* Attendance task details: compact selection and readable preview. */
.task-dialog select[multiple] { height:auto; min-height:88px; max-height:180px; }
.task-dialog fieldset { min-width:0; }
.task-dialog fieldset .actions { display:flex; flex-wrap:wrap; gap:8px; }
.task-dialog fieldset .check-row { min-height:44px; padding:8px; margin:0; align-items:center; border:1px solid #c5cdd8; border-radius:6px; }
.task-dialog [data-schedule-server-preview] { min-width:0; overflow-x:auto; }
.task-dialog [data-schedule-server-preview]:focus { outline:2px solid #254bab; outline-offset:4px; }
.task-dialog [data-shift-change-error], .task-dialog [data-correction-error] { grid-column:1/-1; }

/* Reviewed attendance configuration and import tasks. */
.attendance-import-flow .import-steps{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 20px}
.import-steps li{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #c5cdd8;border-radius:8px;color:#4b5b72}
.import-steps li[aria-current=step]{border:2px solid #456ad9;color:#254bab;font-weight:700;background:#f5f7ff}
.import-steps li span{font-variant-numeric:tabular-nums}
.attendance-import-flow .import-progress:empty{display:none}
.attendance-import-flow .import-progress:not(:empty),.attendance-import-flow [data-import-review-state]:not(:empty){padding:12px;border-left:4px solid #456ad9;background:#f5f7ff}
.attendance-import-flow form{margin:16px 0 24px;gap:16px}
.attendance-import-flow [data-import-mapping],.attendance-import-flow [data-import-preview]{scroll-margin-top:90px}
.attendance-import-flow :is(input:not([type=checkbox]),select,textarea){min-height:44px;border:1px solid #7c899b;border-radius:8px;font-size:16px;max-width:100%;color:#18263d;background:#fff}
.attendance-import-flow .outline{border:1px solid #7c899b;color:#253650;background:#fff}
.attendance-import-flow button{min-height:44px}
.attendance-import-flow :is(button,input,select,textarea):focus-visible{outline:3px solid #254bab;outline-offset:3px}
.task-dialog .rotation-day-editor,.task-dialog .work-rule-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.task-dialog .rotation-day-editor label{display:flex;flex-direction:column;gap:8px;min-width:0}
@media(max-width:600px){.attendance-import-flow .grid,.task-dialog .rotation-day-editor,.task-dialog .work-rule-days{grid-template-columns:minmax(0,1fr)}.attendance-import-flow .import-steps{gap:8px}.attendance-import-flow .import-steps li{flex:1 1 42%;font-size:14px}.attendance-import-flow .row-actions{flex-wrap:wrap}.attendance-import-flow .table-wrap{overflow-x:auto}}

/* Shared dialog details: keep each business editor's layout and action semantics. */
body[data-product-surface] .workspace-dialog-surface { --control-border:#7c899b; color:#18263d; background:#fff; }
body[data-product-surface] .workspace-dialog-surface :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) { border-color:#7c899b; color:#18263d; background-color:#fff; max-width:100%; }
body[data-product-surface] .workspace-dialog-surface :is(input,select,textarea)::placeholder { color:#59677c; opacity:1; }
body[data-product-surface] .workspace-dialog-surface .outline:not(.danger):not(:disabled) { color:#253650; border-color:#7c899b; background:#fff; }
body[data-product-surface] .workspace-dialog-surface .primary:not(:disabled) { color:#fff; background:#456ad9; border-color:#456ad9; }
body[data-product-surface] .workspace-dialog-surface .primary:hover:not(:disabled) { background:#3455b5; border-color:#3455b5; }
body[data-product-surface] .workspace-dialog-surface .outline.danger:not(:disabled) { color:#a32735; border-color:#a32735; }
body[data-product-surface] .workspace-dialog-surface :is(button,input,select,textarea):disabled { opacity:1; color:#626e80; background-color:#edf0f4; border-color:#a6afbd; cursor:not-allowed; }
body[data-product-surface] .workspace-dialog-surface :is(input,select,textarea)[readonly] { background:#f4f6f9; }
body[data-product-surface] .workspace-dialog-surface :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid #254bab; outline-offset:3px; }
.workspace-dialog-surface :is(h2,h3,p,label,legend,.hint,button) { overflow-wrap:anywhere; }
.workspace-dialog-surface :is(.field,.grid,.row-actions) { min-width:0; }
.workspace-dialog-surface :is(.row-actions,.workspace-decision-actions) { flex-wrap:wrap; gap:10px; }
.workspace-dialog-surface :is(.workspace-form-error,.form-issue-summary) { border:1px solid #a32735; border-inline-start-width:4px; background:#fff2f3; color:#8e2230; padding:12px 14px; border-radius:8px; }
.workspace-dialog-surface [aria-busy=true] button[type=submit] { cursor:progress; }
.workspace-dialog-surface [data-workspace-dialog-saving] { position:sticky; bottom:0; background:#fff; padding:12px; border-top:1px solid #7c899b; }
@media(max-width:600px) {
  body[data-product-surface] .workspace-dialog-surface :is(button,.button-link,select,input:not([type=checkbox]):not([type=radio]):not([type=hidden])) { min-height:44px; }
  body[data-product-surface] .workspace-dialog-surface :is(input,select,textarea) { font-size:16px; }
  .workspace-dialog-surface .task-dialog-actions { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  .workspace-dialog-surface .task-dialog-actions button { white-space:normal; }
}
@media(forced-colors:active) {
  body[data-product-surface] .workspace-dialog-surface :is(button,input,select,textarea) { border-color:ButtonText; }
  body[data-product-surface] .workspace-dialog-surface :focus-visible { outline-color:Highlight; }
  body[data-product-surface] .workspace-dialog-surface :disabled { color:GrayText; border-color:GrayText; }
}

.extension-checkpoint-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin:12px 0;padding-bottom:12px;border-bottom:1px solid #c5cdd8}
.extension-checkpoint-row .field{min-width:0}
@media(max-width:600px){.extension-checkpoint-row{grid-template-columns:minmax(0,1fr)}.extension-checkpoint-row button{justify-self:start}}
/* A floating legacy close button must not narrow the entire form on phones. */
.workspace-dialog-surface > form { clear:both; width:100%; }

.workspace-dialog-surface .interview-criterion-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,1fr);gap:12px;margin:12px 0}
.workspace-dialog-surface .interview-criterion-row label{display:grid;gap:6px;min-width:0}
@media(max-width:600px){.workspace-dialog-surface .interview-criterion-row{grid-template-columns:minmax(0,1fr)}}

/* Filter annotations remain readable against both page and selected-tab surfaces. */
body[data-product-surface] [data-content-filter] > small { color: #59697d; opacity: 1; }

/* Source-backed module context; business forms and state machines remain module-owned. */
.business-work-context { padding: 18px 20px; margin: 16px 0 22px; border: 1px solid #d5dce6; border-radius: 12px; background: #f7f9fc; color: #253044; }
.business-work-context h3 { margin: 0 0 8px; font-size: 17px; }
.business-work-context header p { margin: 0 0 14px; color: #46536a; }
.business-work-context dl { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(180px,100%),1fr)); gap: 16px 24px; margin: 0; }
.business-work-context dl > div { min-width: 0; }
.business-work-context dt { margin-bottom: 5px; color: #59697d; font-size: 13px; }
.business-work-context dd { margin: 0; font-size: 15px; font-weight: 600; overflow-wrap: anywhere; white-space: pre-line; }
.business-work-context details { margin-top: 14px; color: #59697d; font-size: 13px; }
.business-work-context summary { cursor: pointer; padding: 6px 0; }
.business-work-context details p { margin: 8px 0 0; line-height: 1.6; }
.business-work-notice { margin: 14px 0 0; line-height: 1.6; color: #46536a; }
.business-work-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.business-work-actions button { min-height: 44px; white-space: normal; }
.business-work-context [hidden] { display: none !important; }
@media(max-width:600px) { .business-work-context { padding: 16px; } .business-work-context dl { grid-template-columns: 1fr; gap: 12px; } }
