@font-face{font-family:beVietnamPro;src:url(../media/BeVietnamPro_Regular-s.p.3vjrowby5rfus.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:beVietnamPro;src:url(../media/BeVietnamPro_SemiBold-s.p.1f7gn6ohf6vrs.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:beVietnamPro Fallback;src:local(Arial);ascent-override:90.08%;descent-override:23.87%;line-gap-override:0.0%;size-adjust:111.01%}.bevietnampro_8c31ddfe-module__F0fmWq__className{font-family:beVietnamPro,beVietnamPro Fallback,Noto Sans,Tahoma,sans-serif}.bevietnampro_8c31ddfe-module__F0fmWq__variable{--font-be-vietnam-pro:"beVietnamPro", "beVietnamPro Fallback", Noto Sans, Tahoma, sans-serif}
:root{--nav-width:248px;--header-height:64px;--ink-900:#0f2331;--ink-700:#1f3f56;--ink-500:#315f7f;--paper-100:#f3f7fa;--paper-50:#fbfdff;--accent-600:#cb5a2d;--success-600:#1f7a59;--warn-600:#9b5f00;--danger-600:#9f2738;--border:#d6e2ea}html,body{max-width:100vw;overflow-x:hidden}body{color:var(--ink-900);background:linear-gradient(120deg, var(--paper-100), #eef5ff 45%, #f8fbff);font-family:var(--font-be-vietnam-pro), "Noto Sans", "Tahoma", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}*{box-sizing:border-box}a{color:inherit;text-decoration:none}:focus-visible{outline-offset:2px;outline:3px solid #cb5a2d75}.app-shell{grid-template-columns:var(--nav-width) minmax(0, 1fr);min-height:100vh;display:grid}.app-sidebar{background:radial-gradient(circle at 5% 0,#ffffffe6,#0000 38%),linear-gradient(#eaf2f8 0%,#e5eff6 54%,#edf4f8 100%);border-right:1px solid #d4e0e9;height:100vh;padding:20px 14px;position:sticky;top:0}.brand{margin-bottom:18px}.brand-eyebrow{color:var(--accent-600);letter-spacing:.12em;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.brand h1{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:25px;line-height:1.13}.brand p{color:var(--ink-500);margin:8px 0 0;font-size:12px;line-height:1.45}.app-sidebar ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.app-sidebar a,.nav-group-toggle{width:100%;color:var(--ink-700);font:inherit;text-align:left;cursor:pointer;background:#ffffff8a;border:1px solid #0000;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.25;transition:border-color .12s,background .12s,color .12s,transform .12s;display:block}.nav-group-toggle{justify-content:space-between;align-items:center;display:flex}.app-sidebar a:hover,.nav-group-toggle:hover{color:#122d42;background:#fffffff2;border-color:#adc5d7;transform:translate(2px)}.nav-group-toggle.nav-active:hover{color:#102b40;background:#dce9f3}.app-sidebar a.nav-active,.nav-group-toggle.nav-active{color:#102b40;background:#dce9f3;border-color:#a5bed1;font-weight:700}.nav-group-toggle.nav-active{box-shadow:inset 3px 0 #315f7f}.nav-group-indicator{color:#24495f;background:#315f7f1f;border-radius:999px;place-items:center;width:20px;height:20px;font-weight:700;display:grid}.nav-submenu{gap:6px!important;margin-top:6px!important;padding-left:8px!important}.nav-submenu a{background:#ffffffb8;padding:8px 10px 8px 14px;font-size:13px}.nav-submenu a.nav-active{background:#dfeaf4}.app-main{flex-direction:column;min-width:0;min-height:100vh;padding:0 18px;display:flex}.app-screen{flex-direction:column;min-height:100vh;display:flex}.app-screen-main{flex:1;min-height:0}.app-footer{text-align:center;color:#98a2b3;margin-top:auto;padding:8px 12px 10px;font-size:14px;line-height:1.4}.app-topbar{min-height:var(--header-height);border-bottom:1px solid #c5d5e1cc;justify-content:space-between;align-items:center;gap:16px;display:flex}.app-topbar-context,.app-topbar-actions{align-items:center;gap:10px;display:flex}.app-topbar-context{min-width:0}.app-topbar-label{color:#24495f;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:12px;font-weight:700}.app-topbar-caption{color:#64748b;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.app-topbar-actions{flex-wrap:wrap;justify-content:flex-end}.chip{color:#8f4324;background:#ffefe8;border:1px solid #edc0ad;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-block}.chip-role{color:#236046;background:#eaf8f0;border-color:#b7d5c2}.app-content{flex:1;min-width:0;min-height:0;padding-top:18px}.grid{gap:12px;min-width:0;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{border:1px solid var(--border);background:#ffffffd6;border-radius:12px;min-width:0;max-width:100%;padding:14px}.compact-toolbar{padding:8px 10px}.card h3{margin:0 0 8px;font-size:15px}.metric{color:var(--ink-700);font-size:30px;font-weight:700}.overview-metric-grid{gap:10px}.overview-metric-card{border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.overview-metric-card>strong{font-size:24px;line-height:1}.overview-metric-card h3{margin:0 0 6px;font-size:13px}.overview-metric-card .metric{font-size:22px;line-height:1.1}.table-wrap{border:1px solid var(--border);background:#ffffffe6;border-radius:12px;min-width:0;max-width:100%;overflow-x:auto}.table-wrap-scroll-x{overflow-x:scroll}.table-scroll-top{border:1px solid var(--border);z-index:8;background:#ffffffe6;border-radius:12px;height:14px;margin-bottom:6px;display:none;position:relative;overflow:auto hidden}.table-scroll-top.is-visible{display:block}.table-scroll-top-inner{height:1px}.table-scroll-top.is-floating{z-index:25;position:fixed;top:8px;box-shadow:0 8px 18px #122d4224}table{border-collapse:collapse;width:100%}.fixed-table{table-layout:fixed}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e6edf2;padding:7px 8px;font-size:13px}.fixed-table th,.fixed-table td{word-break:break-word}.fixed-table input,.fixed-table select,.fixed-table textarea{width:100%;min-width:0}.excel-wrap{height:100%;max-height:none;overflow:auto}.excel-scroll-shell{--excel-select-width:40px;--excel-stt-width:56px;--excel-sales-width:96px;--excel-name-width:176px;grid-template-rows:14px minmax(0,1fr);gap:6px;height:100%;min-height:0;display:grid}.excel-scroll-top{border:1px solid var(--border);z-index:12;background:#edf3f8;border-radius:10px;height:14px;position:sticky;top:0;overflow:auto hidden}.excel-overview{border-collapse:separate;border-spacing:0;min-width:max-content}.excel-overview th,.excel-overview td{white-space:nowrap;border-bottom:1px solid #d9e4ed;border-right:1px solid #b8c8d6;font-size:12px}.excel-overview thead th{background:#ecf3f9;overflow:visible}.excel-overview .course-group-head{text-align:center;background:#dfeaf4;min-width:240px;font-weight:700}.excel-overview .course-sub-head{text-align:center;background:#f3f8fc;min-width:92px;font-size:12px}.excel-overview .sticky-col{z-index:6;background:#fff;position:sticky}.excel-overview th.sticky-col{z-index:8;background:#e5eff8}.excel-overview .sticky-sales{left:calc(var(--excel-select-width) + var(--excel-stt-width));min-width:var(--excel-sales-width);max-width:var(--excel-sales-width)}.excel-overview .sticky-name{left:calc(var(--excel-select-width) + var(--excel-stt-width) + var(--excel-sales-width));min-width:var(--excel-name-width);max-width:var(--excel-name-width)}.excel-overview .sticky-stt{left:var(--excel-select-width);min-width:var(--excel-stt-width);max-width:var(--excel-stt-width);text-align:center}.excel-overview .sticky-select{min-width:var(--excel-select-width);max-width:var(--excel-select-width);text-align:center;left:0}.excel-overview .select-cell input[type=checkbox]{width:14px;height:14px;margin:0}.excel-row-select-head{justify-content:center;align-items:center;width:100%;display:inline-flex}.excel-overview .name-cell a{text-overflow:clip;white-space:nowrap;max-width:none;display:block;overflow:visible}.excel-overview thead tr:first-child th{top:0}.excel-overview thead tr:nth-child(2) th{z-index:7;top:34px}.excel-overview tbody tr:hover td{background:#f8fbff}.excel-overview tbody tr:hover td.sticky-col{background:#eef5fb}.excel-overview .alert-head{color:#7b1d2b;background:#ffe7ea;font-weight:800}.excel-overview .alert-row td{background:#fff8f8}.excel-overview .alert-row td.sticky-col{background:#ffeef0}.excel-overview .selected-row td{background:#edf7ff}.excel-overview .selected-row td.sticky-col{background:#e4f2ff}.excel-overview .alert-cell{color:#7d1526;background:#ffe9ed;font-weight:700}.excel-overview .alert-warning{font-size:14px}.excel-overview .alert-employee a,.excel-overview .alert-employee{color:#7c1423;font-weight:800}.excel-head-cell{justify-content:space-between;align-items:center;gap:4px;width:100%;display:inline-flex;position:relative}.excel-filter-anchor{display:inline-flex;position:relative}.excel-filter-anchor.is-open{z-index:150}.excel-filter-trigger{color:#2f4a60;background:#f7fbff;border:1px solid #b8c8d6;border-radius:4px;min-height:16px;padding:0 4px;font-size:11px;line-height:16px}.excel-filter-trigger.is-active{color:#10314a;background:#dcebf6;border-color:#567894}.excel-filter-menu{z-index:180;background:#fff;border:1px solid #b8c8d6;border-radius:8px;width:220px;padding:8px;position:fixed;top:0;left:0;right:auto;box-shadow:0 10px 24px #13273733}.excel-filter-menu.align-start{left:0;right:auto}.excel-filter-menu.align-end{left:auto;right:0}.excel-filter-search{width:100%;margin-bottom:6px;padding:6px 8px;font-size:12px}.excel-filter-actions{gap:6px;margin-bottom:6px;display:flex}.excel-filter-actions .ghost-button{padding:4px 6px;font-size:11px}.excel-filter-options{border:1px solid #d4e1eb;border-radius:6px;max-height:220px;padding:4px;overflow:auto}.excel-filter-date-tree{max-height:280px}.excel-filter-option{align-items:center;gap:6px;padding:3px 2px;font-size:12px;display:flex}.excel-filter-option-all{margin-bottom:6px}.excel-filter-year-block{border-bottom:1px dashed #dce6ee;margin-bottom:4px;padding-bottom:4px}.excel-filter-year-block:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.excel-filter-year{font-weight:600}.excel-filter-month-list{padding-left:16px}.excel-filter-month{color:#29455c;font-size:11px}.excel-filter-option-blank{border-top:1px solid #e2eaf1;margin-top:6px;padding-top:6px}.excel-date-button{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.excel-date-input{border:1px solid #8fb0c7;border-radius:6px;width:100%;min-width:118px;padding:4px 6px;font-size:12px}.excel-date-editor{flex-direction:column;gap:2px;display:flex}.excel-date-error{color:#8f2436;font-size:11px;font-weight:600;line-height:1.2}.employees-page{grid-template-rows:auto minmax(0,1fr);gap:4px;height:100%;min-height:0}.employees-page>.page-head{margin:0}.employees-page .compact-toolbar{padding:4px 8px}.employees-toolbar-row{flex-wrap:wrap;width:100%;margin-bottom:4px}.employees-toolbar-row:last-child{margin-bottom:0}.bulk-status-pill{color:#294a61;background:#f1f6fa;border:1px solid #c4d4e1;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.bulk-progress{align-items:center;gap:8px;min-width:148px;display:inline-flex}.bulk-progress-track{background:#dfe8ef;border-radius:999px;width:120px;height:8px;overflow:hidden}.bulk-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#2d4e69 0%,#4a7090 100%);height:100%;transition:width .12s}.bulk-progress-label{color:#2a4a61;min-width:36px;font-size:12px;font-weight:700}.bulk-status-pill.is-success{color:#246347;background:#eaf8f0;border-color:#b6dbc8}.bulk-status-pill.is-error{color:#8f2436;background:#ffe9ed;border-color:#f1bac3}.bulk-status-pill.is-info{color:#294a61;background:#f1f6fa;border-color:#c4d4e1}th{z-index:1;background:#f4f9fc;position:sticky;top:0}.status-badge{border-radius:999px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-block}.status-overdue{color:var(--danger-600);background:#fbe4e8}.status-due_soon{color:var(--warn-600);background:#fff2d8}.status-valid{color:var(--success-600);background:#e4f5ee}.status-missing,.status-na,.status-exempted,.status-permanent{color:#466075;background:#edf2f6}.overview-overdue-row td{background:#fff0f3}.overview-overdue-row td a,.overview-overdue-emphasis{color:#7d1526;font-weight:700}.overview-due-soon-row td{background:#fff3e4}.overview-due-soon-row td a,.overview-due-soon-emphasis{color:#8f5200;font-weight:700}.page-head{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:12px;padding-right:0;display:flex}.page-head h1{margin:0;font-size:24px}.export-module-grid{grid-template-columns:minmax(0,1.6fr) minmax(320px,.9fr);align-items:stretch;gap:12px;display:grid}.export-module-card{align-content:start;gap:12px;display:grid}.export-module-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.export-module-head h3{margin-bottom:4px}.export-action-row{flex-wrap:wrap;width:100%}.export-training-summary{color:var(--ink-500);gap:6px;font-size:13px;display:grid}.export-status-line{margin:-2px 2px 0}.courses-head{align-items:center}.courses-title{white-space:nowrap;min-width:max-content}.courses-head .inline-form{flex-wrap:wrap;flex:1;justify-content:flex-end;min-width:0}.courses-head .inline-form select{width:100%;min-width:0}.courses-head .inline-form select:first-child{flex:340px;min-width:220px}.courses-head .inline-form select:last-child{flex:0 360px;min-width:220px;max-width:420px}.muted{color:#516c80;font-size:14px}input,select,button,textarea{font:inherit}input,select,textarea{background:#fff;border:1px solid #bfd0de;border-radius:8px;padding:8px 10px}button{color:#fff;cursor:pointer;background:#24495f;border:1px solid #36566f;border-radius:8px;padding:8px 12px}button:hover{background:#1d3d4f}.inline-form{align-items:center;gap:8px;display:flex}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.split-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.danger-button{background:#9f2738;border-color:#8d2938}.danger-button:hover{background:#7f1f2d}.ghost-button{color:#1f3f56;background:#eef5fa;border:1px solid #9ab1c4}.ghost-button:hover{background:#e3eef6}.assignment-list{border:1px solid var(--border);background:#ffffffd1;border-radius:10px;gap:8px;max-height:340px;padding:10px;display:grid;overflow:auto}.assignment-item{border-bottom:1px dashed #d7e4ed;justify-content:space-between;align-items:center;gap:12px;padding-bottom:6px;display:flex}.course-tags{flex-wrap:wrap;gap:6px;display:flex}.tag{background:#f5fbff;border:1px solid #c3d6e4;border-radius:999px;padding:4px 8px;font-size:12px;display:inline-block}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f5f9fc}.selected-row{background:#e9f2f8}.modal-backdrop{z-index:30;background:#0c19226b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border);background:#fff;border-radius:12px;width:min(860px,100%);padding:14px;box-shadow:0 16px 48px #1625303d}.modal-card .page-head{padding-right:0}.modal-card-wide{width:min(1280px,100%);max-height:calc(100vh - 40px);overflow:auto}.certificate-modal-card{width:min(720px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto}.certificate-modal-head{align-items:flex-start;margin-bottom:10px}.certificate-modal-title{min-width:0}.certificate-modal-title h3{white-space:nowrap}.modal-backdrop.modal-stack-top{z-index:42}.management-module-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.module-card{box-shadow:none}.module-card h4{margin:0 0 10px}.training-result-input{min-width:150px}.training-result-cell{align-items:center;gap:6px;min-width:180px;display:flex}.training-result-select{min-width:152px;color:inherit;background:#fff;border:1px solid #8fb0c7;border-radius:6px;padding:4px 6px;font-size:12px}.training-info-button{color:#991b1b;cursor:pointer;background:#fee2e2;border:1px solid #b91c1c;border-radius:999px;flex:none;width:22px;height:22px;padding:0;font-size:12px;font-weight:800;line-height:1}.training-page-grid{grid-template-rows:auto minmax(0,1fr);align-content:start;gap:6px;height:100%;min-height:0}.training-toolbar-card{padding:6px 10px}.training-toolbar-head{min-height:40px;margin-bottom:0}.training-toolbar-head h3{margin-bottom:0}.training-search-input{min-width:260px;padding:6px 10px}.training-scroll-shell{--excel-select-width:0px;--excel-stt-width:52px;--excel-sales-width:92px;--excel-name-width:220px;height:100%;min-height:360px}.training-overview .training-course-head{min-width:360px}.training-overview .training-date-head{min-width:118px}.training-overview .training-result-head{min-width:190px}.training-certificate-head,.training-certificate-cell{min-width:170px}.training-certificate-button{color:#17334a;cursor:pointer;text-align:left;background:#f8fbff;border:1px solid #bfd0df;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:5px 8px;display:flex}.training-certificate-button:hover{background:#eef6ff;border-color:#7898b3}.training-certificate-number{text-overflow:ellipsis;overflow:hidden}.training-certificate-count,.training-report-count{color:#17334a;background:#e7f0f8;border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:700}.training-certificate-count{align-items:center;gap:5px;display:inline-flex}.training-overview .training-incomplete-row td,.training-overview .training-incomplete-row td.sticky-col{background:#fff1f2}.training-overview .training-incomplete-cell{color:#991b1b;font-weight:700}.training-overview .training-pass-cell{color:#15803d;font-weight:700}.training-note-textarea{resize:vertical;width:100%;min-height:180px;font:inherit;border:1px solid #8fb0c7;border-radius:10px;padding:10px 12px}.training-note-readonly{color:#17334a;white-space:pre-wrap;background:#f7fbff;border:1px solid #d4e1eb;border-radius:10px;min-height:120px;padding:12px}.training-note-readonly.is-empty{color:#6b7f8f;font-style:italic}.certificate-panel{background:#f8fbff;border:1px solid #d4e1eb;border-radius:10px;gap:8px;padding:10px;display:grid}.certificate-control-row{grid-template-columns:minmax(160px,220px) minmax(0,1fr);align-items:end;gap:10px;display:grid}.form-field{gap:6px;font-weight:700;display:grid}.form-field input{font:inherit;border:1px solid #bfd0df;border-radius:10px;padding:8px 10px;font-weight:400}.certificate-number-field input{width:100%}.certificate-action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.certificate-action-row button,.certificate-upload-button{border-radius:10px;min-height:38px;padding:8px 14px}.certificate-upload-button{cursor:pointer;color:#243f56;background:linear-gradient(#fff 0%,#eef5fb 100%);border:1px solid #9bb3c8;justify-content:center;align-items:center;gap:8px;font-weight:700;line-height:1;display:inline-flex;position:relative;overflow:hidden}.certificate-upload-button:hover{background:#e7f0f8;border-color:#36566f}.certificate-upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.certificate-limit-note{margin:0;font-size:12px}.certificate-file-list{gap:8px;margin-top:10px;display:grid}.certificate-file-list h4{margin:0}.certificate-file-row{background:#fff;border:1px solid #e0e9f0;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:8px 10px;display:flex}.certificate-file-info{align-items:center;gap:10px;min-width:0;display:flex}.certificate-file-info strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.pdf-mini-icon,.pdf-button-icon,.pdf-file-icon{color:#a3162d;letter-spacing:.04em;background:linear-gradient(#fff7f8 0%,#ffe5e9 100%);border:1px solid #f2b4bd;border-radius:7px;flex:none;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.pdf-mini-icon{border-radius:999px;min-width:28px;height:18px;font-size:9px}.pdf-button-icon{width:34px;height:24px;font-size:10px;box-shadow:inset 0 -1px #a3162d1a}.pdf-file-icon{border-radius:10px;width:42px;height:48px;font-size:11px;box-shadow:0 8px 18px #a3162d1f}.training-report-page{gap:10px}.training-report-page>.page-head{margin-bottom:0}.training-report-page>.page-head h1{margin-bottom:4px}.training-report-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.training-report-table-wrap{border-radius:10px}.training-report-table th,.training-report-table td{vertical-align:top;padding:8px 10px}.training-report-table thead th{background:#eaf2f8;font-size:13px}.training-incomplete-table{table-layout:fixed;min-width:1120px}.training-incomplete-table th:first-child,.training-incomplete-table td:first-child{width:170px}.training-incomplete-table th:nth-child(2),.training-incomplete-table td:nth-child(2){width:88px}.training-incomplete-table th:nth-child(3),.training-incomplete-table td:nth-child(3){width:96px}.training-incomplete-table th:nth-child(4),.training-incomplete-table td:nth-child(4){width:130px}.training-incomplete-table th:nth-child(5),.training-incomplete-table td:nth-child(5){width:145px}.training-incomplete-table th:nth-child(6),.training-incomplete-table td:nth-child(6){width:92px}.training-incomplete-table th:nth-child(7),.training-incomplete-table td:nth-child(7){width:150px}.training-report-lines{grid-auto-rows:minmax(30px,auto);align-items:stretch;gap:5px;display:grid}.training-report-line{word-break:break-word;align-items:center;min-height:30px;line-height:1.35;display:flex}.training-note-lines .training-report-line{color:#31546d;white-space:normal}.training-status-pill{color:#8b2032;background:#ffe4e9;border:1px solid #f0b8c2;border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:800;display:inline-flex}.training-course-summary-table td:nth-child(2){width:120px}.compact-table{table-layout:auto;width:max-content;min-width:100%}.compact-table th,.compact-table td{white-space:nowrap;padding:6px 8px}.compact-table-all-courses col.course-col{width:220px}.compact-table-all-courses th:first-child,.compact-table-all-courses td:first-child{text-overflow:ellipsis;max-width:220px;overflow:hidden}.modal-actions{gap:8px;margin-top:12px;display:flex}.login-shell{place-items:center;min-height:100vh;padding:16px;display:grid}.login-shell.login-shell-embedded{flex:1;min-height:0}.login-card{border:1px solid var(--border);background:#ffffffeb;border-radius:12px;gap:10px;width:min(460px,100%);padding:18px;display:grid}.login-card h1,.login-card h2{margin:0}.login-error{color:var(--danger-600);margin:0;font-weight:600}.login-hints{color:#315f7f;gap:4px;font-size:12px;display:grid}.user-portal{align-content:start;gap:12px;min-height:100vh;padding:16px;display:grid}.app-screen-main .user-portal{min-height:calc(100vh - 44px)}.user-portal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.user-employee-picker{gap:10px;display:grid}.user-module-switch{grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px;display:grid}.user-module-button{color:#1f3f56;background:#ffffffdb;border:1px solid #b9cddd;min-height:48px;font-weight:800}.user-module-button:hover{background:#edf5fb}.user-module-button.is-active{color:#fff;background:#24495f;border-color:#36566f}.user-employee-search-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-employee-search-input{flex:260px;min-width:220px}.user-employee-select{width:100%;min-width:0}.user-employee-picker-button{color:#142435;width:100%;min-height:54px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #b9cddd;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:16px;display:flex}.user-employee-picker-button:hover:not(:disabled){background:#f8fbff;border-color:#7897ad}.user-employee-picker-button:disabled{color:#6a7b88;cursor:not-allowed}.user-employee-picker-arrow{color:#486479;font-weight:800}.user-employee-count{color:#294a61;white-space:nowrap;background:#f1f6fa;border-color:#c4d4e1}.user-employee-clear-button{white-space:nowrap}.user-picker-modal-backdrop{z-index:120;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1424356b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.user-picker-modal-card{background:#fff;border:1px solid #c9d8e4;border-radius:22px;width:min(980px,100%);max-height:min(86vh,820px);overflow:hidden;box-shadow:0 24px 64px #1424353d}.user-picker-modal-head{background:#f5f9fd;border-bottom:1px solid #d8e3ec;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;padding:14px 16px;display:grid}.user-picker-modal-head h3{text-align:center;margin:0;font-size:clamp(22px,2vw,30px);line-height:1.1}.user-picker-icon-button{color:#36566f;cursor:pointer;background:#fff;border:1px solid #b9cddd;border-radius:999px;width:44px;height:44px;font-size:30px;line-height:1}.user-picker-icon-button:hover:not(:disabled){background:#edf5fb;border-color:#7897ad}.user-picker-icon-button-hidden{visibility:hidden;pointer-events:none}.user-picker-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;max-height:calc(86vh - 74px);padding:14px;display:grid;overflow:auto}.user-picker-grid-names{grid-template-columns:repeat(2,minmax(0,1fr))}.user-picker-letter-button,.user-picker-name-button{color:#17334a;cursor:pointer;background:linear-gradient(#fff 0%,#f1f7fc 100%);border:1px solid #c1d3e1;border-radius:16px;transition:transform .12s,border-color .12s,background .12s,color .12s,box-shadow .12s}.user-picker-letter-button{min-height:82px;font-size:30px;font-weight:900;box-shadow:inset 0 -1px #17334a0f}.user-picker-name-button{text-align:left;align-content:center;gap:5px;min-height:92px;padding:12px 14px;display:grid}.user-picker-name-button strong{color:#142435;font-size:24px;line-height:1}.user-picker-name-button span{color:#24495f;font-weight:800}.user-picker-name-button small{color:#63798b;font-size:12px}.user-picker-letter-button:hover,.user-picker-name-button:hover{color:#fff;background:#24495f;border-color:#24495f;transform:translateY(-1px);box-shadow:0 12px 28px #24495f38}.user-picker-name-button:hover strong,.user-picker-name-button:hover span,.user-picker-name-button:hover small{color:#fff}.user-picker-empty{grid-column:1/-1;margin:8px 0}.user-portal .user-course-warning td{color:#7d1526;background:#ffeef1;font-weight:700}.user-portal .user-course-warning td:first-child{font-weight:800}.user-course-warning-pill{color:#8b2032;background:#ffe3e8;border:1px solid #f2b6c0;border-radius:999px;align-items:center;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:700;display:inline-flex}.user-training-pass{color:#15803d;font-weight:800}.user-training-incomplete{color:#8b2032;font-weight:800}.user-certificate-panel{background:#f8fbff;border:1px solid #d4e1eb;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 12px;padding:12px;display:grid}.user-certificate-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.user-certificate-download-button{align-items:center;gap:8px;display:inline-flex}.user-certificate-panel .login-error{grid-column:1/-1}.user-self-training-panel{background:#f8fbff;border:1px solid #d4e1eb;border-radius:12px;gap:12px;padding:14px;display:grid}.user-self-training-existing{background:#fff;border:1px solid #c7d9e8;border-radius:12px;gap:10px;padding:12px;display:grid}.user-self-training-existing-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.user-self-training-existing-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.user-self-training-existing-head strong{color:#102536;font-size:15px}.user-self-training-existing-head span{color:#516c80;font-size:12px;font-weight:800}.user-self-training-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.user-self-training-summary-grid>div{background:#f8fbff;border:1px solid #e1ebf2;border-radius:10px;gap:4px;padding:10px;display:grid}.user-self-training-summary-grid span{color:#516c80;font-size:12px;font-weight:800}.user-self-training-summary-grid strong{color:#102536;white-space:pre-line;font-size:14px;line-height:1.4}.user-self-training-summary-wide{grid-column:1/-1}.user-self-training-chip-list{flex-wrap:wrap;gap:6px;display:flex}.user-self-training-chip-list span{color:#1f3f56;background:#eef6ff;border:1px solid #b6cbdc;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900}.user-self-training-panel label{color:#315f7f;gap:5px;font-size:13px;font-weight:800;display:grid}.user-self-training-panel input,.user-self-training-panel textarea{width:100%}.user-self-training-edit-form{gap:12px;display:grid}.user-self-training-field-title{color:#315f7f;margin-bottom:6px;font-size:13px;font-weight:800;display:block}.user-self-training-methods{flex-wrap:wrap;gap:7px;display:flex}.user-self-training-methods button{color:#1f3f56;background:#f4f9fc;border:1px solid #b6cbdc;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.user-self-training-methods button.is-selected{color:#fff;background:#24495f;border-color:#24495f}.user-self-training-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.user-self-training-form-actions button{min-width:150px}.self-training-page{gap:12px}.self-training-head{align-items:flex-end}.self-training-head h1{margin-bottom:4px}.self-training-kicker,.self-training-section-title span,.self-training-hero-label{color:#bf5a2e;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:900}.self-training-head-actions{flex-wrap:wrap;justify-content:flex-end}.self-training-hero{background:radial-gradient(circle at 10% 0,#cb5a2d24,#0000 34%),linear-gradient(135deg,#fff 0%,#eef7fb 56%,#e8f1f7 100%);border:1px solid #cad9e6;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid;box-shadow:0 12px 28px #122d4214}.self-training-hero h2{color:#102536;max-width:820px;margin:0;font-size:clamp(24px,2.2vw,38px);line-height:1.08}.self-training-flow{gap:8px;min-width:230px;display:grid}.self-training-flow span{color:#1f3f56;background:#ffffffc7;border:1px solid #bad1e2;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800}.self-training-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.self-training-metrics article{background:#ffffffdb;border:1px solid #d2dfeb;border-radius:14px;padding:12px}.self-training-metrics span{color:#516c80;font-size:12px;font-weight:700;display:block}.self-training-metrics strong{color:#17334a;margin-top:6px;font-size:30px;line-height:1;display:block}.self-training-workspace{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:12px;display:grid}.self-training-form-card,.self-training-inspector,.self-training-admin-card,.self-training-method-card{padding:14px}.self-training-section-title h3{color:#102536;margin:0 0 12px;font-size:20px}.self-training-section-title h1{color:#102536;margin:0;font-size:clamp(25px,2vw,34px);line-height:1.1}.self-training-page-compact .self-training-admin-card{padding:18px 22px 22px}.self-training-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.self-training-form-grid label,.self-training-inspector label{color:#315f7f;gap:5px;font-size:13px;font-weight:800;display:grid}.self-training-form-grid input,.self-training-form-grid textarea,.self-training-inspector select,.self-training-inspector textarea{width:100%}.self-training-wide-field{grid-column:1/-1}.self-training-method-picker,.self-training-method-list{flex-wrap:wrap;gap:6px;display:flex}.self-training-method-picker{margin:12px 0}.self-training-method-picker button,.self-training-method-list span{color:#1f3f56;background:#f4f9fc;border:1px solid #b6cbdc;border-radius:999px;font-size:12px;font-weight:800}.self-training-method-picker button{padding:7px 10px}.self-training-method-picker button.is-selected{color:#fff;background:#24495f;border-color:#24495f}.self-training-method-list span{padding:4px 8px}.self-training-person{background:#f1f7fb;border:1px solid #d5e3ee;border-radius:14px;gap:4px;padding:12px;display:grid}.self-training-person strong{font-size:20px}.self-training-person span{color:#516c80;font-size:13px}.self-training-detail-list{gap:8px;margin:12px 0;display:grid}.self-training-detail-list p{gap:3px;margin:0;display:grid}.self-training-detail-list span{color:#516c80;font-size:12px;font-weight:700}.self-training-detail-list strong{color:#102536;font-size:14px;line-height:1.35}.self-training-admin-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.self-training-filters{flex-wrap:wrap;justify-content:flex-end}.self-training-filters input{width:min(320px,38vw)}.self-training-table-wrap{max-height:520px}.self-training-table{min-width:1080px}.self-training-table-simple{table-layout:fixed;width:100%;min-width:0}.self-training-admin-col-person{width:12%}.self-training-admin-col-certificate{width:15%}.self-training-admin-col-need{width:13%}.self-training-admin-col-manager{width:27%}.self-training-admin-col-method{width:8%}.self-training-admin-col-note{width:17%}.self-training-admin-col-date{width:8%}.self-training-table th{z-index:2;color:#102536;background:#e8f0f7;position:sticky;top:0}.self-training-table-simple th,.self-training-table-simple td{vertical-align:top;padding:8px 10px}.self-training-table tbody tr{cursor:pointer}.self-training-table tbody tr:hover td,.self-training-row-active td{background:#f2f7fb}.self-training-table-simple tbody tr{cursor:default}.self-training-manager-input{resize:vertical;color:#102536;width:100%;min-width:0;min-height:38px;font:inherit;background:#fff;border:1px solid #c8d6e4;border-radius:10px;padding:7px 9px;line-height:1.35}.self-training-manager-editor{gap:6px;display:grid}.self-training-manager-save{border-radius:999px;justify-self:end;min-height:30px;padding:5px 14px;font-size:12px;font-weight:800}.self-training-manager-save:disabled{opacity:.5;cursor:not-allowed}.self-training-manager-cell,.self-training-note-cell{white-space:normal;overflow-wrap:anywhere;word-break:normal}.self-training-note-cell{color:#33475b;font-size:13px;line-height:1.35}.self-training-manager-input:focus{border-color:#36536d;outline:none;box-shadow:0 0 0 3px #36536d1f}.self-training-table td:first-child strong,.self-training-table td:first-child span,.self-training-table td:last-child strong,.self-training-table td:last-child span{display:block}.self-training-table td:first-child span,.self-training-table td:last-child span{color:#516c80;margin-top:4px;font-size:12px}.self-training-status{border:1px solid #d2dfeb;border-radius:999px;justify-content:center;align-items:center;min-width:104px;padding:4px 9px;font-size:12px;font-weight:900;display:inline-flex}.self-training-status-pending{color:#8a4f00;background:#fff6e8;border-color:#f0c58f}.self-training-status-in_progress{color:#1d4f83;background:#eef6ff;border-color:#a9c9ec}.self-training-status-completed{color:#17643f;background:#effaf3;border-color:#a8d8bd}.self-training-status-cancelled{color:#8b2032;background:#fff0f2;border-color:#efb8c1}.self-training-method-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.self-training-method-stats button{color:#1f3f56;background:#f7fbfe;border-color:#c8d9e6;justify-content:space-between;align-items:center;gap:8px;display:flex}.self-training-method-stats button:hover,.self-training-method-stats button.is-active{color:#fff;background:#24495f;border-color:#24495f}.self-training-method-stats strong{font-size:18px}.personnel-workspace{gap:12px;min-width:0;display:grid}.personnel-page-head{margin-bottom:0}.personnel-dialog-eyebrow{color:var(--accent-600);letter-spacing:.11em;margin:0 0 4px;font-size:11px;font-weight:700}.personnel-workspace-card{gap:12px;padding:12px;display:grid}.personnel-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.personnel-toolbar-summary{color:#526b7d;white-space:nowrap;flex:none;font-size:13px}.personnel-toolbar-summary strong{color:var(--ink-900)}.personnel-toolbar-controls{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.personnel-toolbar-controls input{width:min(280px,28vw)}.personnel-toolbar-controls select{width:min(190px,22vw)}.personnel-mobile-grid-toggle{display:none}.personnel-scroll-top{border:1px solid var(--border);background:#edf3f8;border-radius:9px;height:14px;overflow:auto hidden}.personnel-scroll-top>div{height:1px}.personnel-table-wrap{border:1px solid var(--border);background:#fff;border-radius:11px;max-height:min(68vh,720px);overflow:auto}.personnel-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:max-content;min-width:1700px}.personnel-table th,.personnel-table td{vertical-align:middle;border-bottom:1px solid #e5edf3;border-right:1px solid #dce6ee;padding:8px 10px}.personnel-table thead th{z-index:4;color:#18364d;text-align:left;white-space:nowrap;background:#eaf1f7;font-size:12px;font-weight:700;position:sticky;top:0}.personnel-table thead tr:first-child th{color:#153046;letter-spacing:.015em;background:#dce9f3}.personnel-table tbody tr:hover td{background:#f8fbfd}.personnel-sort-button{width:auto;min-height:0;color:inherit;font:inherit;background:0 0;border:0;border-radius:0;align-items:center;gap:2px;padding:0;display:inline-flex}.personnel-sort-button:hover{color:var(--accent-600);background:0 0}.personnel-derived-cell{color:#254b64;gap:2px;min-width:112px;display:grid}.personnel-derived-cell span{font-size:13px;font-weight:600}.personnel-derived-cell small{font-size:11px;line-height:1.25}.personnel-derived-cell:hover{color:var(--accent-600);text-underline-offset:3px;text-decoration:underline}.personnel-derived-cell.status-overdue,.personnel-derived-cell.status-due_soon{color:#9f2738}.personnel-derived-cell.status-valid,.personnel-derived-cell.status-permanent{color:#1f7a59}.personnel-status{white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:700;display:inline-flex}.personnel-status-active{color:#236046;background:#eaf8f0}.personnel-status-inactive{color:#64748b;background:#eef2f6}.personnel-row-action{padding:6px 9px;font-size:12px}.personnel-mobile-cards{display:none}.personnel-editor-dialog{width:min(760px,94vw)}.personnel-cccd-dialog{width:min(460px,94vw)}.personnel-cccd-field{color:#526b7d;gap:6px;margin-top:12px;font-size:12px;font-weight:600;display:grid}.personnel-cccd-field input{min-height:42px}.personnel-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.personnel-editor-grid label{color:#526b7d;gap:5px;font-size:12px;font-weight:600;display:grid}.personnel-editor-grid input,.personnel-editor-grid select,.personnel-editor-grid textarea{width:100%}.personnel-editor-notes{grid-column:1/-1}@media (max-width:1050px){.app-shell{grid-template-columns:1fr}.app-topbar{min-height:58px}.page-head{padding-right:0}.export-module-grid{grid-template-columns:1fr}.app-sidebar{height:auto;padding:14px;position:static}.grid-4,.training-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.self-training-hero,.self-training-workspace{grid-template-columns:1fr}.self-training-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.personnel-toolbar{flex-direction:column;align-items:flex-start}.personnel-toolbar-controls{justify-content:flex-start;width:100%}.personnel-toolbar-controls input{width:min(320px,42vw)}}@media (max-width:680px){.app-main{padding:0 12px}.app-topbar{flex-direction:column;align-items:flex-start;gap:8px;padding:10px 0}.app-topbar-context,.app-topbar-actions{width:100%}.app-topbar-actions{justify-content:flex-start}.app-topbar-caption{white-space:normal}.app-content{padding-top:12px}.excel-overview .sticky-col{position:static}.grid-4{grid-template-columns:1fr}.page-head,.user-portal-head{flex-direction:column;align-items:flex-start}.user-employee-search-row{width:100%}.user-module-switch{grid-template-columns:1fr}.user-self-training-existing-head{flex-direction:column;align-items:flex-start}.user-self-training-summary-grid{grid-template-columns:1fr}.user-employee-search-input{width:100%;min-width:0}.certificate-control-row,.user-certificate-panel,.training-report-metrics{grid-template-columns:1fr}.certificate-action-row,.user-certificate-actions{justify-content:flex-start}.user-picker-modal-backdrop{align-items:end;padding:0}.user-picker-modal-card{border-radius:20px 20px 0 0;max-height:min(88dvh,760px)}.user-picker-modal-head{grid-template-columns:38px minmax(0,1fr) 38px;padding:12px}.user-picker-icon-button{width:38px;height:38px;font-size:26px}.user-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:calc(88dvh - 64px);padding:10px}.user-picker-grid-names{grid-template-columns:1fr}.user-picker-letter-button{min-height:64px;font-size:24px}.form-grid,.split-grid{grid-template-columns:1fr}.self-training-head{align-items:flex-start}.self-training-head-actions,.self-training-admin-head,.self-training-filters{justify-content:flex-start}.self-training-flow,.self-training-metrics,.self-training-form-grid,.self-training-method-stats{grid-template-columns:1fr}.personnel-toolbar-summary{white-space:normal}.personnel-toolbar-controls{flex-wrap:wrap;align-items:stretch}.personnel-toolbar-controls input,.personnel-toolbar-controls select{width:100%}.personnel-toolbar-controls button{flex:auto}.personnel-mobile-grid-toggle{display:inline-block}.personnel-table-wrap,.personnel-scroll-top{display:none}.personnel-mobile-cards{gap:10px;display:grid}.personnel-mobile-card{background:#fff;border:1px solid #d6e2ea;border-radius:12px;gap:8px;padding:12px;display:grid}.personnel-mobile-card header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.personnel-mobile-card header div{gap:3px;display:grid}.personnel-mobile-card header .personnel-mobile-actions{flex:none;gap:6px;display:flex}.personnel-mobile-card header span,.personnel-mobile-card>p{color:#64748b;margin:0;font-size:12px}.personnel-mobile-compliance{border:1px solid #e0e9ef;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.personnel-mobile-compliance a{color:#254b64;border-bottom:1px solid #e0e9ef;border-right:1px solid #e0e9ef;gap:3px;min-width:0;padding:8px;font-size:11px;display:grid}.personnel-mobile-compliance a:nth-child(2n){border-right:0}.personnel-mobile-compliance a:nth-last-child(-n+2){border-bottom:0}.personnel-mobile-compliance strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.personnel-workspace.is-mobile-grid .personnel-table-wrap{max-height:65vh;display:block}.personnel-workspace.is-mobile-grid .personnel-scroll-top{display:block}.personnel-workspace.is-mobile-grid .personnel-mobile-cards{display:none}.personnel-editor-grid{grid-template-columns:1fr}.personnel-editor-notes{grid-column:auto}.self-training-table-wrap{max-height:none;overflow:visible}.self-training-table-simple{min-width:0;display:block}.self-training-table-simple colgroup,.self-training-table-simple thead{display:none}.self-training-table-simple tbody{gap:12px;display:grid}.self-training-table-simple tbody tr{background:#fff;border:1px solid #d7e2ec;border-radius:14px;display:grid;overflow:hidden;box-shadow:0 6px 18px #1025360d}.self-training-table-simple tbody td[data-label]{border:0;border-bottom:1px solid #e6edf3;grid-template-columns:minmax(112px,34%) minmax(0,1fr);gap:10px;width:100%;padding:10px 12px;display:grid}.self-training-table-simple tbody td[data-label]:before{content:attr(data-label);color:#516c80;font-size:12px;font-weight:800;line-height:1.4}.self-training-table-simple tbody td[data-label]:last-child{border-bottom:0}.self-training-table-simple tbody td:not([data-label]){border:0;width:100%;padding:12px;display:block}.self-training-filters input{width:100%}.user-self-training-form-actions{justify-content:stretch}.user-self-training-form-actions button{flex:100%;width:100%}}.data-status-banner{color:#7a1f1f;background:#fff7f7;border:1px solid #e5b9b9;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.data-status-banner span{flex:1}.health-workspace{gap:10px}.health-sheet-card,.health-table-card{padding:10px}.health-feedback{border:1px solid #cbd9e8;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.health-feedback.is-success{color:#235f36;background:#f3faf4;border-color:#b9d8c1}.health-feedback.is-error{color:#7a1f1f;background:#fff7f7;border-color:#e5b9b9}.health-sheet-header,.health-table-toolbar,.health-toolbar-actions,.health-dialog-head,.health-scope-tools{align-items:center;gap:8px;display:flex}.health-sheet-header,.health-table-toolbar,.health-dialog-head{justify-content:space-between}.health-sheet-title{align-items:baseline;gap:10px;display:flex}.health-sheet-title .personnel-dialog-eyebrow,.health-sheet-title h1,.health-dialog-head h3{margin:0}.health-sheet-title h1{font-size:22px}.health-new-type-button{white-space:nowrap;min-height:34px;padding:7px 11px}.health-type-tabs{gap:6px;margin-top:8px;padding-bottom:1px;display:flex;overflow-x:auto}.health-type-tabs button{color:#29435f;min-height:34px;font:inherit;background:#f7fafd;border:1px solid #cbd9e8;border-radius:8px;flex:none;align-items:baseline;gap:7px;padding:6px 10px;font-size:13px;font-weight:700;display:flex}.health-type-tabs button:hover,.health-type-tabs button.is-active{color:#fff;background:#314c68;border-color:#294966}.health-type-tabs small{color:inherit;opacity:.78;font-weight:500}.health-table-toolbar{grid-template-columns:minmax(160px,1fr) auto;align-items:end;margin:0 2px 8px;display:grid}.health-table-toolbar>div:first-child{gap:2px;min-width:150px;display:grid}.health-table-toolbar strong{font-size:16px}.health-table-toolbar span,.health-cycle-input span{color:#61738b;font-size:12px}.health-toolbar-actions{grid-template-columns:auto auto minmax(220px,320px) auto;align-items:end;min-width:0;display:grid}.health-cycle-control{align-items:end;gap:6px;display:flex}.health-cycle-control .ghost-button,.health-scope-button,.health-delete-button{white-space:nowrap;min-height:34px}.health-cycle-input{gap:2px;width:132px;display:grid}.health-toolbar-actions>input{width:100%}.health-cycle-input input,.health-toolbar-actions>input,.health-table input,.health-new-type-fields input,.health-scope-tools input{color:#172c45;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #cbd9e8;border-radius:7px}.health-cycle-input input,.health-toolbar-actions>input,.health-new-type-fields input,.health-scope-tools input{padding:7px 9px}.health-table-wrap{max-height:min(74vh,760px)}.health-table{border-collapse:separate;border-spacing:0;min-width:1050px}.health-table th,.health-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e0e9f2;padding:7px 9px}.health-table th{z-index:1;color:#1c3651;white-space:nowrap;background:#e8f0f9;font-size:12px;position:sticky;top:0}.health-table tbody tr:hover td{background:#f6faff}.health-table td{font-size:13px}.health-table td:first-child{width:82px}.health-table td:nth-child(2){min-width:160px}.health-table td:nth-child(3){min-width:98px}.health-table td:nth-child(4),.health-table td:nth-child(6){width:132px}.health-table td:nth-child(5),.health-table td:nth-child(7){color:#50657c;width:118px}.health-table td:nth-child(8){min-width:190px}.health-table td:nth-child(9){width:66px}.health-table input{padding:6px 7px;font-size:13px}.health-empty-state{color:#61738b;border:1px dashed #cbd9e8;border-radius:8px;padding:14px;font-size:13px}.health-scope-dialog{width:min(820px,96vw);max-height:min(84vh,720px);overflow:auto}.health-new-type-dialog{width:min(520px,96vw)}.health-archive-dialog{width:min(500px,96vw)}.health-archive-copy{color:#52677f;margin:12px 0;font-size:14px;line-height:1.5}.health-archive-confirm{color:#425b72;gap:5px;font-size:13px;font-weight:700;display:grid}.health-archive-confirm input{color:#172c45;width:100%;font:inherit;background:#fff;border:1px solid #cbd9e8;border-radius:7px;padding:7px 9px}.health-delete-button,.health-danger-button{color:#9d2222;font:inherit;background:#fff8f8;border:1px solid #d79d9d;border-radius:7px;padding:7px 10px;font-weight:700}.health-delete-button:hover,.health-danger-button:hover:not(:disabled){background:#fff0f0;border-color:#b74444}.health-danger-button:disabled{cursor:not-allowed;opacity:.5}.health-scope-options{color:#2f4862;gap:16px;margin:10px 0;font-size:14px;display:flex}.health-scope-options label,.health-scope-person{align-items:center;gap:8px;display:flex}.health-scope-tools{margin-bottom:8px}.health-scope-tools input{flex:1}.health-scope-tools strong{color:#314c68;flex:none;font-size:13px}.health-scope-list{border:1px solid #d8e3ef;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:410px;display:grid;overflow:auto}.health-scope-person{border-bottom:1px solid #e6edf5;min-width:0;padding:8px 10px}.health-scope-person:nth-child(odd){border-right:1px solid #e6edf5}.health-scope-person span{min-width:0;display:grid}.health-scope-person strong,.health-scope-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.health-scope-person small,.health-scope-all-note{color:#61738b;font-size:12px}.health-new-type-fields{grid-template-columns:minmax(0,1.5fr) minmax(150px,.75fr);gap:10px;margin-top:12px;display:grid}.health-new-type-fields label{color:#425b72;gap:5px;font-size:13px;font-weight:700;display:grid}.health-dialog-actions{justify-content:flex-end;margin-top:12px}@media (max-width:900px){.health-table-toolbar,.health-toolbar-actions{align-items:stretch}.health-table-toolbar{grid-template-columns:1fr}.health-toolbar-actions{grid-template-columns:auto auto minmax(220px,1fr) auto}.health-toolbar-actions>input{min-width:0}}@media (max-width:680px){.data-status-banner{flex-direction:column;align-items:flex-start}.health-sheet-header,.health-scope-tools,.health-scope-options{flex-direction:column;align-items:stretch}.health-new-type-button{width:100%}.health-toolbar-actions{grid-template-columns:1fr 1fr}.health-cycle-control,.health-toolbar-actions>input,.health-delete-button{grid-column:1/-1}.health-cycle-control{justify-content:space-between}.health-cycle-input{flex:1}.health-scope-list,.health-new-type-fields{grid-template-columns:1fr}.health-scope-person:nth-child(odd){border-right:0}}
