@cyberskill/design 1.1.1 → 1.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DESIGN.md +28 -5
- package/README.md +23 -22
- package/SKILL.md +7 -7
- package/THIRD-PARTY-NOTICES.md +35 -0
- package/VERSION +1 -1
- package/_ds_bundle.js +1495 -1733
- package/_ds_manifest.json +1 -1
- package/_esm/cs.mjs +18 -4
- package/_esm/react.d.ts +2 -0
- package/_esm/react.mjs +7 -1
- package/_vendor/NOTICE.md +16 -0
- package/_vendor/babel/README.md +7 -0
- package/_vendor/babel/babel.min.js +4 -0
- package/_vendor/react/README.md +3 -0
- package/_vendor/react/react-dom.production.min.js +1 -0
- package/_vendor/react/react.production.min.js +1 -0
- package/assets/aurora-hoa.webp +0 -0
- package/assets/aurora-kim.webp +0 -0
- package/assets/aurora-moc.webp +0 -0
- package/assets/aurora-tho.webp +0 -0
- package/assets/aurora-thuy.webp +0 -0
- package/base/a11y.css +18 -0
- package/base/ai.css +9 -4
- package/base/collections.css +18 -7
- package/base/components.css +16 -4
- package/base/controls.css +116 -66
- package/base/data.css +4 -4
- package/base/feedback.css +14 -2
- package/base/forms.css +10 -4
- package/base/glass.css +7 -1
- package/base/interaction.css +6 -2
- package/base/navigation.css +9 -3
- package/base/reset.css +7 -1
- package/base/responsive.css +38 -12
- package/base/shell.css +15 -3
- package/components/_i18n/i18n.js +41 -4
- package/components/_i18n/strings.js +89 -22
- package/components/ai/ChatMessage.d.ts +2 -0
- package/components/ai/ChatMessage.jsx +8 -4
- package/components/ai/ConfidenceMeter.d.ts +2 -0
- package/components/ai/ConfidenceMeter.jsx +8 -6
- package/components/ai/HumanReviewGate.d.ts +2 -0
- package/components/ai/PromptInput.d.ts +2 -0
- package/components/ai/TypingIndicator.d.ts +2 -0
- package/components/ai/ai-conversation.card.html +3 -3
- package/components/ai/ai-lumi.card.html +3 -3
- package/components/ai/ai.card.html +3 -3
- package/components/brand/brand.card.html +3 -3
- package/components/button/buttons.card.html +3 -3
- package/components/data/Image.jsx +18 -2
- package/components/data/Sortable.d.ts +5 -1
- package/components/data/Sortable.jsx +42 -9
- package/components/data/Sortable.prompt.md +4 -2
- package/components/data/Terminal.jsx +3 -2
- package/components/data/Tooltip.d.ts +2 -0
- package/components/data/Tooltip.jsx +6 -3
- package/components/data/Tree.d.ts +2 -1
- package/components/data/Tree.jsx +137 -16
- package/components/data/Tree.prompt.md +1 -1
- package/components/data/Watermark.jsx +11 -3
- package/components/data/collections.card.html +3 -3
- package/components/data/data.card.html +3 -3
- package/components/datatable/DataGrid.jsx +10 -1
- package/components/datatable/DataTable.d.ts +24 -1
- package/components/datatable/DataTable.jsx +78 -5
- package/components/datatable/DataTable.prompt.md +2 -1
- package/components/datatable/datatable.card.html +20 -16
- package/components/dialog/Dialog.jsx +13 -45
- package/components/dialog/dialog.card.html +3 -3
- package/components/feedback/Alert.d.ts +2 -0
- package/components/feedback/Alert.jsx +8 -2
- package/components/feedback/EmptyState.d.ts +2 -0
- package/components/feedback/EmptyState.jsx +6 -3
- package/components/feedback/ProgressBar.d.ts +2 -0
- package/components/feedback/ProgressBar.jsx +9 -4
- package/components/feedback/Toast.jsx +15 -1
- package/components/feedback/Toast.prompt.md +2 -1
- package/components/feedback/feedback-2.card.html +3 -3
- package/components/feedback/feedback.card.html +3 -3
- package/components/forms/Cascader.jsx +76 -8
- package/components/forms/Editor.jsx +37 -2
- package/components/forms/FileUpload.d.ts +2 -0
- package/components/forms/FileUpload.jsx +22 -8
- package/components/forms/Form.d.ts +3 -1
- package/components/forms/Form.jsx +9 -1
- package/components/forms/Form.prompt.md +1 -1
- package/components/forms/Mentions.d.ts +1 -1
- package/components/forms/Mentions.jsx +59 -7
- package/components/forms/Mentions.prompt.md +3 -1
- package/components/forms/Rating.d.ts +3 -2
- package/components/forms/Rating.jsx +34 -3
- package/components/forms/Rating.prompt.md +1 -1
- package/components/forms/Select.d.ts +2 -0
- package/components/forms/Select.jsx +6 -2
- package/components/forms/Slider.d.ts +2 -0
- package/components/forms/Slider.jsx +5 -2
- package/components/forms/Switch.d.ts +2 -0
- package/components/forms/Switch.jsx +15 -3
- package/components/forms/TimePicker.jsx +3 -1
- package/components/forms/Toggle.d.ts +2 -0
- package/components/forms/Toggle.jsx +14 -2
- package/components/forms/forms-2.card.html +3 -3
- package/components/forms/forms.card.html +3 -3
- package/components/icon/Icon.d.ts +1 -1
- package/components/icon/Icon.jsx +1 -0
- package/components/icon/Icon.prompt.md +1 -1
- package/components/icon/icon.card.html +3 -3
- package/components/logo/logo.card.html +3 -3
- package/components/navigation/CommandPalette.d.ts +2 -0
- package/components/navigation/CommandPalette.jsx +22 -7
- package/components/navigation/Menu.d.ts +2 -0
- package/components/navigation/Menu.jsx +60 -6
- package/components/navigation/Steps.d.ts +2 -0
- package/components/navigation/Steps.jsx +6 -3
- package/components/navigation/Tabs.d.ts +2 -0
- package/components/navigation/Tabs.jsx +6 -3
- package/components/navigation/Toolbar.d.ts +3 -2
- package/components/navigation/Toolbar.jsx +119 -12
- package/components/navigation/Toolbar.prompt.md +1 -1
- package/components/navigation/navigation.card.html +3 -3
- package/components/navigation/shell.card.html +3 -3
- package/components/overlays/AlertDialog.jsx +19 -49
- package/components/overlays/ContextMenu.d.ts +2 -0
- package/components/overlays/ContextMenu.jsx +6 -3
- package/components/overlays/Drawer.d.ts +2 -0
- package/components/overlays/Drawer.jsx +24 -20
- package/components/overlays/OverlayManager.d.ts +40 -0
- package/components/overlays/OverlayManager.jsx +214 -0
- package/components/overlays/OverlayManager.prompt.md +12 -0
- package/components/overlays/Tour.jsx +14 -7
- package/components/overlays/alertdialog.card.html +3 -3
- package/components/overlays/overlays.card.html +3 -3
- package/components/textfield/textfield.card.html +3 -3
- package/dist/styles.min.css +2252 -0
- package/docs/benchmark-rubric.md +1 -1
- package/docs/ci-cd.md +19 -12
- package/docs/consumer-grant.md +3 -0
- package/docs/consuming.md +13 -13
- package/docs/contrast-report.md +79 -1
- package/docs/conventions.md +21 -8
- package/docs/decisions.md +45 -7
- package/docs/deploy.md +17 -6
- package/docs/design-styles.md +2 -2
- package/docs/quality-gates.md +35 -15
- package/docs/release-notes.md +2 -2
- package/docs/release-runbook.md +78 -0
- package/docs/sync.md +2 -2
- package/docs/vi/benchmark-rubric.md +1 -1
- package/docs/vi/ci-cd.md +17 -12
- package/docs/vi/consumer-grant.md +3 -0
- package/docs/vi/consuming.md +13 -13
- package/docs/vi/contrast-report.md +79 -1
- package/docs/vi/conventions.md +20 -7
- package/docs/vi/decisions.md +43 -6
- package/docs/vi/deploy.md +17 -6
- package/docs/vi/quality-gates.md +34 -15
- package/docs/vi/release-notes.md +2 -2
- package/docs/vi/release-runbook.md +78 -0
- package/docs/vi/sync.md +2 -2
- package/docs/viewer.html +2 -2
- package/fonts/OFL.txt +98 -0
- package/guidelines/atomic-view.html +13 -9
- package/guidelines/brand-imagery.html +1 -1
- package/guidelines/elements-variants.html +5 -5
- package/guidelines/spacing-breakpoints.html +2 -1
- package/guidelines/surfaces-glass.html +1 -1
- package/llms.txt +5 -5
- package/package.json +38 -10
- package/templates/_ds-base.canonical.js +55 -0
- package/templates/ai-cluster-demo.html +2 -2
- package/templates/app-shell/AppShell.dc.html +7 -5
- package/templates/app-shell/content-schema.json +7 -0
- package/templates/app-shell/ds-base.js +33 -1
- package/templates/app-shell/support.js +13 -20
- package/templates/article/Article.dc.html +7 -3
- package/templates/article/content-schema.json +7 -0
- package/templates/article/ds-base.js +33 -1
- package/templates/article/support.js +13 -20
- package/templates/auth/Auth.dc.html +33 -12
- package/templates/auth/content-schema.json +37 -0
- package/templates/auth/ds-base.js +33 -1
- package/templates/auth/support.js +13 -20
- package/templates/bod-deck/BodDeck.dc.html +11 -10
- package/templates/bod-deck/ds-base.js +33 -1
- package/templates/bod-deck/support.js +13 -20
- package/templates/bod-investor-update/BodInvestorUpdate.dc.html +4 -3
- package/templates/bod-investor-update/ds-base.js +33 -1
- package/templates/bod-investor-update/support.js +13 -20
- package/templates/bod-memo/BodMemo.dc.html +6 -5
- package/templates/bod-memo/ds-base.js +33 -1
- package/templates/bod-memo/support.js +13 -20
- package/templates/bod-minutes/BodMinutes.dc.html +2 -1
- package/templates/bod-minutes/ds-base.js +33 -1
- package/templates/bod-minutes/support.js +13 -20
- package/templates/bod-report/BodReport.dc.html +3 -2
- package/templates/bod-report/ds-base.js +33 -1
- package/templates/bod-report/support.js +13 -20
- package/templates/bod-resolution/BodResolution.dc.html +5 -4
- package/templates/bod-resolution/ds-base.js +33 -1
- package/templates/bod-resolution/support.js +13 -20
- package/templates/culture-event-invite/CultureEventInvite.dc.html +3 -2
- package/templates/culture-event-invite/ds-base.js +33 -1
- package/templates/culture-event-invite/support.js +13 -20
- package/templates/dashboard/Dashboard.dc.html +10 -6
- package/templates/dashboard/content-schema.json +7 -0
- package/templates/dashboard/ds-base.js +33 -1
- package/templates/dashboard/support.js +13 -20
- package/templates/delivery-change-note/DeliveryChangeNote.dc.html +4 -3
- package/templates/delivery-change-note/ds-base.js +33 -1
- package/templates/delivery-change-note/support.js +13 -20
- package/templates/delivery-kickoff/DeliveryKickoff.dc.html +3 -2
- package/templates/delivery-kickoff/ds-base.js +33 -1
- package/templates/delivery-kickoff/support.js +13 -20
- package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +6 -5
- package/templates/delivery-qbr-deck/ds-base.js +33 -1
- package/templates/delivery-qbr-deck/support.js +13 -20
- package/templates/delivery-runbook/DeliveryRunbook.dc.html +5 -4
- package/templates/delivery-runbook/ds-base.js +33 -1
- package/templates/delivery-runbook/support.js +13 -20
- package/templates/delivery-status-email/DeliveryStatusEmail.dc.html +3 -2
- package/templates/delivery-status-email/ds-base.js +33 -1
- package/templates/delivery-status-email/support.js +13 -20
- package/templates/doc-style-guide/DocStyleGuide.dc.html +67 -64
- package/templates/doc-style-guide/ds-base.js +33 -1
- package/templates/doc-style-guide/support.js +13 -20
- package/templates/doc-suite-index/DocSuiteIndex.dc.html +46 -45
- package/templates/doc-suite-index/ds-base.js +33 -1
- package/templates/doc-suite-index/support.js +13 -20
- package/templates/doc-templates/DocTemplates.dc.html +42 -41
- package/templates/doc-templates/ds-base.js +33 -1
- package/templates/doc-templates/support.js +13 -20
- package/templates/email/Email.dc.html +3 -2
- package/templates/email/ds-base.js +33 -1
- package/templates/email/support.js +13 -20
- package/templates/email-safe/email-announcement.html +2 -2
- package/templates/email-safe/email-dunning.html +2 -2
- package/templates/email-safe/email-investor.html +2 -2
- package/templates/email-safe/email-launch.html +2 -2
- package/templates/email-safe/email-newsletter.html +2 -2
- package/templates/email-safe/email-status.html +2 -2
- package/templates/email-safe/email-transactional.html +2 -2
- package/templates/finance-dunning-email/FinanceDunningEmail.dc.html +6 -5
- package/templates/finance-dunning-email/ds-base.js +33 -1
- package/templates/finance-dunning-email/support.js +13 -20
- package/templates/finance-expense-report/FinanceExpenseReport.dc.html +4 -3
- package/templates/finance-expense-report/ds-base.js +33 -1
- package/templates/finance-expense-report/support.js +13 -20
- package/templates/finance-invoice/FinanceInvoice.dc.html +6 -5
- package/templates/finance-invoice/ds-base.js +33 -1
- package/templates/finance-invoice/support.js +13 -20
- package/templates/finance-quote/FinanceQuote.dc.html +6 -5
- package/templates/finance-quote/ds-base.js +33 -1
- package/templates/finance-quote/support.js +13 -20
- package/templates/hr-announcement/HrAnnouncement.dc.html +5 -4
- package/templates/hr-announcement/ds-base.js +33 -1
- package/templates/hr-announcement/support.js +13 -20
- package/templates/hr-interview-kit/HrInterviewKit.dc.html +5 -4
- package/templates/hr-interview-kit/ds-base.js +33 -1
- package/templates/hr-interview-kit/support.js +13 -20
- package/templates/hr-offboarding/HrOffboarding.dc.html +2 -1
- package/templates/hr-offboarding/ds-base.js +33 -1
- package/templates/hr-offboarding/support.js +13 -20
- package/templates/hr-performance-review/HrPerformanceReview.dc.html +2 -1
- package/templates/hr-performance-review/ds-base.js +33 -1
- package/templates/hr-performance-review/support.js +13 -20
- package/templates/hr-pip/HrPip.dc.html +2 -1
- package/templates/hr-pip/ds-base.js +33 -1
- package/templates/hr-pip/support.js +13 -20
- package/templates/kitchen-sink.html +9 -4
- package/templates/legal-msa/LegalMsa.dc.html +2 -1
- package/templates/legal-msa/ds-base.js +33 -1
- package/templates/legal-msa/support.js +13 -20
- package/templates/legal-sow/LegalSow.dc.html +2 -1
- package/templates/legal-sow/ds-base.js +33 -1
- package/templates/legal-sow/support.js +13 -20
- package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +3 -2
- package/templates/marketing-campaign-brief/ds-base.js +33 -1
- package/templates/marketing-campaign-brief/support.js +13 -20
- package/templates/marketing-case-study/MarketingCaseStudy.dc.html +6 -5
- package/templates/marketing-case-study/ds-base.js +33 -1
- package/templates/marketing-case-study/support.js +13 -20
- package/templates/marketing-launch/MarketingLaunch.dc.html +6 -5
- package/templates/marketing-launch/ds-base.js +33 -1
- package/templates/marketing-launch/support.js +13 -20
- package/templates/marketing-newsletter/MarketingNewsletter.dc.html +13 -12
- package/templates/marketing-newsletter/ds-base.js +33 -1
- package/templates/marketing-newsletter/support.js +13 -20
- package/templates/marketing-page/MarketingPage.dc.html +19 -14
- package/templates/marketing-page/content-schema.json +1 -0
- package/templates/marketing-page/ds-base.js +33 -1
- package/templates/marketing-page/support.js +13 -20
- package/templates/marketing-press-release/MarketingPressRelease.dc.html +2 -1
- package/templates/marketing-press-release/ds-base.js +33 -1
- package/templates/marketing-press-release/support.js +13 -20
- package/templates/marketing-social-kit/MarketingSocialKit.dc.html +5 -4
- package/templates/marketing-social-kit/ds-base.js +33 -1
- package/templates/marketing-social-kit/support.js +13 -20
- package/templates/sales-one-pager/SalesOnePager.dc.html +5 -4
- package/templates/sales-one-pager/ds-base.js +33 -1
- package/templates/sales-one-pager/support.js +13 -20
- package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +7 -6
- package/templates/sales-proposal-deck/ds-base.js +33 -1
- package/templates/sales-proposal-deck/support.js +13 -20
- package/templates/settings/Settings.dc.html +7 -3
- package/templates/settings/content-schema.json +7 -0
- package/templates/settings/ds-base.js +33 -1
- package/templates/settings/support.js +13 -20
- package/templates/slide-deck/SlideDeck.dc.html +5 -4
- package/templates/slide-deck/ds-base.js +33 -1
- package/templates/slide-deck/support.js +13 -20
- package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +2 -1
- package/templates/team-meeting-agenda/ds-base.js +33 -1
- package/templates/team-meeting-agenda/support.js +13 -20
- package/templates/tech-incident-report/TechIncidentReport.dc.html +3 -2
- package/templates/tech-incident-report/ds-base.js +33 -1
- package/templates/tech-incident-report/support.js +13 -20
- package/templates/tech-release-notes/TechReleaseNotes.dc.html +6 -5
- package/templates/tech-release-notes/ds-base.js +33 -1
- package/templates/tech-release-notes/support.js +13 -20
- package/templates/tech-retro/TechRetro.dc.html +4 -3
- package/templates/tech-retro/ds-base.js +33 -1
- package/templates/tech-retro/support.js +13 -20
- package/templates/tech-rfc/TechRfc.dc.html +3 -2
- package/templates/tech-rfc/ds-base.js +33 -1
- package/templates/tech-rfc/support.js +13 -20
- package/templates/vn-appointment-transfer/VnAppointmentTransfer.dc.html +36 -35
- package/templates/vn-appointment-transfer/ds-base.js +33 -1
- package/templates/vn-appointment-transfer/support.js +13 -20
- package/templates/vn-certificate-of-employment/VnCertificateOfEmployment.dc.html +27 -26
- package/templates/vn-certificate-of-employment/ds-base.js +33 -1
- package/templates/vn-certificate-of-employment/support.js +13 -20
- package/templates/vn-code-of-conduct/VnCodeOfConduct.dc.html +44 -43
- package/templates/vn-code-of-conduct/ds-base.js +33 -1
- package/templates/vn-code-of-conduct/support.js +13 -20
- package/templates/vn-compensation-regulation/VnCompensationRegulation.dc.html +53 -52
- package/templates/vn-compensation-regulation/ds-base.js +33 -1
- package/templates/vn-compensation-regulation/support.js +13 -20
- package/templates/vn-contract-amendment/VnContractAmendment.dc.html +41 -40
- package/templates/vn-contract-amendment/ds-base.js +33 -1
- package/templates/vn-contract-amendment/support.js +13 -20
- package/templates/vn-contractor-agreement/VnContractorAgreement.dc.html +50 -49
- package/templates/vn-contractor-agreement/ds-base.js +33 -1
- package/templates/vn-contractor-agreement/support.js +13 -20
- package/templates/vn-data-protection-policy/VnDataProtectionPolicy.dc.html +54 -53
- package/templates/vn-data-protection-policy/ds-base.js +33 -1
- package/templates/vn-data-protection-policy/support.js +13 -20
- package/templates/vn-disciplinary-case-file/VnDisciplinaryCaseFile.dc.html +72 -71
- package/templates/vn-disciplinary-case-file/ds-base.js +33 -1
- package/templates/vn-disciplinary-case-file/support.js +13 -20
- package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +21 -20
- package/templates/vn-disciplinary-schedule/ds-base.js +33 -1
- package/templates/vn-disciplinary-schedule/support.js +13 -20
- package/templates/vn-employee-request/VnEmployeeRequest.dc.html +54 -53
- package/templates/vn-employee-request/ds-base.js +33 -1
- package/templates/vn-employee-request/support.js +13 -20
- package/templates/vn-exit-handover/VnExitHandover.dc.html +122 -121
- package/templates/vn-exit-handover/ds-base.js +33 -1
- package/templates/vn-exit-handover/support.js +13 -20
- package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +31 -30
- package/templates/vn-foreign-employee-pack/ds-base.js +33 -1
- package/templates/vn-foreign-employee-pack/support.js +13 -20
- package/templates/vn-grassroots-democracy/VnGrassrootsDemocracy.dc.html +54 -53
- package/templates/vn-grassroots-democracy/ds-base.js +33 -1
- package/templates/vn-grassroots-democracy/support.js +13 -20
- package/templates/vn-infosec-policy/VnInfosecPolicy.dc.html +50 -49
- package/templates/vn-infosec-policy/ds-base.js +33 -1
- package/templates/vn-infosec-policy/support.js +13 -20
- package/templates/vn-internal-labor-regulations/VnInternalLaborRegulations.dc.html +84 -83
- package/templates/vn-internal-labor-regulations/ds-base.js +33 -1
- package/templates/vn-internal-labor-regulations/support.js +13 -20
- package/templates/vn-internship-agreement/VnInternshipAgreement.dc.html +44 -43
- package/templates/vn-internship-agreement/ds-base.js +33 -1
- package/templates/vn-internship-agreement/support.js +13 -20
- package/templates/vn-job-description/VnJobDescription.dc.html +28 -27
- package/templates/vn-job-description/ds-base.js +33 -1
- package/templates/vn-job-description/support.js +13 -20
- package/templates/vn-labor-contract/VnLaborContract.dc.html +109 -108
- package/templates/vn-labor-contract/ds-base.js +33 -1
- package/templates/vn-labor-contract/support.js +13 -20
- package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +32 -31
- package/templates/vn-labour-management-book/ds-base.js +33 -1
- package/templates/vn-labour-management-book/support.js +13 -20
- package/templates/vn-mutual-nda/VnMutualNda.dc.html +45 -44
- package/templates/vn-mutual-nda/ds-base.js +33 -1
- package/templates/vn-mutual-nda/support.js +13 -20
- package/templates/vn-ndnca-ip/VnNdncaIp.dc.html +73 -72
- package/templates/vn-ndnca-ip/ds-base.js +33 -1
- package/templates/vn-ndnca-ip/support.js +13 -20
- package/templates/vn-offer-letter/VnOfferLetter.dc.html +32 -31
- package/templates/vn-offer-letter/ds-base.js +33 -1
- package/templates/vn-offer-letter/support.js +13 -20
- package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +16 -15
- package/templates/vn-onboarding-checklist/ds-base.js +33 -1
- package/templates/vn-onboarding-checklist/support.js +13 -20
- package/templates/vn-pdpl-consent/VnPdplConsent.dc.html +43 -42
- package/templates/vn-pdpl-consent/ds-base.js +33 -1
- package/templates/vn-pdpl-consent/support.js +13 -20
- package/templates/vn-performance-evaluation-regulation/VnPerformanceEvaluationRegulation.dc.html +65 -64
- package/templates/vn-performance-evaluation-regulation/ds-base.js +33 -1
- package/templates/vn-performance-evaluation-regulation/support.js +13 -20
- package/templates/vn-performance-review-form/VnPerformanceReviewForm.dc.html +49 -48
- package/templates/vn-performance-review-form/ds-base.js +33 -1
- package/templates/vn-performance-review-form/support.js +13 -20
- package/templates/vn-phantom-stock/VnPhantomStock.dc.html +41 -40
- package/templates/vn-phantom-stock/ds-base.js +33 -1
- package/templates/vn-phantom-stock/support.js +13 -20
- package/templates/vn-probation-contract/VnProbationContract.dc.html +56 -55
- package/templates/vn-probation-contract/ds-base.js +33 -1
- package/templates/vn-probation-contract/support.js +13 -20
- package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +28 -27
- package/templates/vn-receipt-acknowledgement/ds-base.js +33 -1
- package/templates/vn-receipt-acknowledgement/support.js +13 -20
- package/templates/vn-remote-work-policy/VnRemoteWorkPolicy.dc.html +44 -43
- package/templates/vn-remote-work-policy/ds-base.js +33 -1
- package/templates/vn-remote-work-policy/support.js +13 -20
- package/templates/vn-resignation-letter/VnResignationLetter.dc.html +20 -19
- package/templates/vn-resignation-letter/ds-base.js +33 -1
- package/templates/vn-resignation-letter/support.js +13 -20
- package/templates/vn-salary-scale/VnSalaryScale.dc.html +39 -38
- package/templates/vn-salary-scale/ds-base.js +33 -1
- package/templates/vn-salary-scale/support.js +13 -20
- package/templates/vn-sow-appendix/VnSowAppendix.dc.html +21 -20
- package/templates/vn-sow-appendix/ds-base.js +33 -1
- package/templates/vn-sow-appendix/support.js +13 -20
- package/templates/vn-termination-decision/VnTerminationDecision.dc.html +25 -24
- package/templates/vn-termination-decision/ds-base.js +33 -1
- package/templates/vn-termination-decision/support.js +13 -20
- package/templates/vn-total-rewards-appendix/VnTotalRewardsAppendix.dc.html +63 -62
- package/templates/vn-total-rewards-appendix/ds-base.js +33 -1
- package/templates/vn-total-rewards-appendix/support.js +13 -20
- package/templates/vn-training-commitment/VnTrainingCommitment.dc.html +39 -38
- package/templates/vn-training-commitment/ds-base.js +33 -1
- package/templates/vn-training-commitment/support.js +13 -20
- package/templates/vn-travel-expense-policy/VnTravelExpensePolicy.dc.html +50 -49
- package/templates/vn-travel-expense-policy/ds-base.js +33 -1
- package/templates/vn-travel-expense-policy/support.js +13 -20
- package/tokens/colors.css +19 -1
- package/tokens/component-tokens.css +1 -0
- package/tokens/element-seeds.json +2 -2
- package/tokens/elements.css +228 -21
- package/tokens/elevation.css +8 -2
- package/tokens/native/CSTokens.kt +37 -2
- package/tokens/native/CSTokens.swift +37 -2
- package/tokens/native/cs_tokens.dart +37 -2
- package/tokens/provenance.json +12 -12
- package/tokens/spacing.css +4 -1
- package/tokens/tokens.dtcg.json +129 -16
- package/tokens/tokens.js +59 -18
- package/tokens/tokens.json +58 -17
- package/tokens/typography.css +2 -0
- package/ui_kits/deck/index.html +4 -0
- package/ui_kits/status-hub/StatusHub.jsx +30 -4
- package/ui_kits/status-hub/index.html +3 -3
- package/ui_kits/status-hub/login.html +55 -9
- package/ui_kits/status-hub/project.html +4 -0
- package/ui_kits/status-hub/settings.html +35 -13
- package/ui_kits/status-hub/status.css +5 -1
- package/ui_kits/website/Website.jsx +25 -3
- package/ui_kits/website/careers.html +5 -1
- package/ui_kits/website/chat.html +5 -3
- package/ui_kits/website/index.html +3 -3
- package/ui_kits/website/site.css +3 -3
- package/ui_kits/website/work.html +5 -1
- package/assets/aurora-hoa.png +0 -0
- package/assets/aurora-kim.png +0 -0
- package/assets/aurora-moc.png +0 -0
- package/assets/aurora-thuy.png +0 -0
- package/docs/status/assets/favicon.svg +0 -5
- package/docs/status/assets/status-legacy.css +0 -399
- package/docs/status/assets/status-legacy.js +0 -505
- package/docs/status/assets/status.css +0 -644
- package/docs/status/assets/status.js +0 -1308
- package/docs/status/data/status-feed.json +0 -1
- package/docs/status/data/task/TASK-REL-001.js +0 -1
- package/docs/status/data/task/TASK-REL-002.js +0 -1
- package/docs/status/index.html +0 -42
- package/docs/status/roadmap.html +0 -4
- package/docs/status/status-legacy.html +0 -117
- package/docs/tasks/BACKLOG.md +0 -26
- package/docs/tasks/release/TASK-REL-001-launch-1-1-0/spec.md +0 -55
- package/docs/tasks/release/TASK-REL-002-republish-1-1-1/spec.md +0 -54
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
|
-
<html>
|
|
2
|
+
<html lang="en">
|
|
3
3
|
<head>
|
|
4
|
+
<title>HR Suite · Biểu mẫu đánh giá kết quả công việc — Performance Review Form · CyberSkill</title>
|
|
4
5
|
<meta charset="utf-8">
|
|
5
6
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
7
|
<meta name="omelette-owns-print" content="1">
|
|
@@ -13,104 +14,104 @@
|
|
|
13
14
|
<script src="./ds-base.js"></script>
|
|
14
15
|
<style>@page{size:A4;margin:23mm 20mm 20mm 20mm}@media print{html,body{background:#fff!important}.cs-desk{background:#fff!important;padding:0!important;min-height:0!important}.cs-sheet{box-shadow:none!important;border:none!important;max-width:none!important;border-radius:0!important;padding:0!important}.cs-avoid{break-inside:avoid}}</style>
|
|
15
16
|
</helmet>
|
|
16
|
-
<div lang="vi" data-cs-element="{{ elAttr }}" data-cs-variant="{{ vaAttr }}" class="cs-desk" style="background:#efe6d8;min-height:100vh;padding:40px 16px;font-family:var(--cs-font-family-ui);color
|
|
17
|
+
<div lang="vi" data-cs-element="{{ elAttr }}" data-cs-variant="{{ vaAttr }}" class="cs-desk" style="background:#efe6d8;min-height:100vh;padding:40px 16px;font-family:var(--cs-font-family-ui);color:var(--cs-doc-ink)">
|
|
17
18
|
<div class="cs-sheet" style="max-width:794px;margin:0 auto;background:#fff;border:1px solid var(--cs-color-border-default);border-radius:12px;box-shadow:var(--cs-shadow-md);padding:56px 60px;text-align:left">
|
|
18
19
|
<div style="display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--cs-color-text-muted);padding-bottom:6px;border-bottom:1px solid var(--cs-color-border-default);margin-bottom:14px">
|
|
19
20
|
<x-import component-from-global-scope="CyberSkillDS.Logo" size="18" hint-size="18px,18px"></x-import>
|
|
20
|
-
<b style="color:var(--cs-color-brand-umber)">CyberSkill</b><span>· Biểu mẫu đánh giá kết quả công việc</span><span style="margin-left:auto;font-family:var(--cs-font-family-mono)">Số/No. <span style="background
|
|
21
|
+
<b style="color:var(--cs-color-brand-umber)">CyberSkill</b><span>· Biểu mẫu đánh giá kết quả công việc</span><span style="margin-left:auto;font-family:var(--cs-font-family-mono)">Số/No. <span style="background:var(--cs-doc-fill);padding:0 3px">.....</span>/2026/BMĐG-CYBERSKILL</span>
|
|
21
22
|
</div>
|
|
22
23
|
<div class="cs-avoid" style="display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-bottom:18px">
|
|
23
|
-
<div><div style="font-weight:800;font-size:11.5px;line-height:1.45">CÔNG TY CỔ PHẦN TƯ VẤN VÀ PHÁT TRIỂN GIẢI PHÁP PHẦN MỀM CYBERSKILL</div><div style="font-size:10px;color
|
|
24
|
-
<div style="text-align:center"><div style="font-weight:800;font-size:11.5px;line-height:1.5">CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</div><div style="font-weight:700;font-size:11px">Độc lập – Tự do – Hạnh phúc</div><div style="letter-spacing:0.1em;font-size:10px;margin:1px 0">———————————</div><div style="font-size:9.5px;color
|
|
24
|
+
<div><div style="font-weight:800;font-size:11.5px;line-height:1.45">CÔNG TY CỔ PHẦN TƯ VẤN VÀ PHÁT TRIỂN GIẢI PHÁP PHẦN MỀM CYBERSKILL</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.45;margin-top:2px">CYBERSKILL SOFTWARE SOLUTIONS CONSULTANCY AND DEVELOPMENT JOINT STOCK COMPANY</div><div style="font-size:10.5px;margin-top:4px">Hiện Thực Hoá Ý Chí · <span style="color:var(--cs-doc-slate);font-style:italic">Turn Your Will Into Real</span></div></div>
|
|
25
|
+
<div style="text-align:center"><div style="font-weight:800;font-size:11.5px;line-height:1.5">CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</div><div style="font-weight:700;font-size:11px">Độc lập – Tự do – Hạnh phúc</div><div style="letter-spacing:0.1em;font-size:10px;margin:1px 0">———————————</div><div style="font-size:9.5px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">The Socialist Republic of Vietnam · Independence – Freedom – Happiness</div></div>
|
|
25
26
|
</div>
|
|
26
27
|
<div class="cs-avoid" style="text-align:center;margin-bottom:14px">
|
|
27
28
|
<h1 style="font-size:23px;font-weight:800;color:var(--cs-color-brand-umber);letter-spacing:-0.01em;margin:0 0 3px;line-height:1.25">BIỂU MẪU ĐÁNH GIÁ KẾT QUẢ CÔNG VIỆC</h1>
|
|
28
|
-
<div style="font-size:13.5px;color
|
|
29
|
-
<div style="font-size:12.5px;margin-top:8px">Số / No.: <span style="background
|
|
30
|
-
<div style="font-size:12px;margin-top:2px">Phiên bản / Version 1.0 · Hiệu lực từ / Effective from: <span style="background
|
|
29
|
+
<div style="font-size:13.5px;color:var(--cs-doc-slate);font-style:italic">Performance Review Form</div>
|
|
30
|
+
<div style="font-size:12.5px;margin-top:8px">Số / No.: <span style="background:var(--cs-doc-fill);padding:0 3px">......</span>/2026/BMĐG-CYBERSKILL</div>
|
|
31
|
+
<div style="font-size:12px;margin-top:2px">Phiên bản / Version 1.0 · Hiệu lực từ / Effective from: <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span></div>
|
|
31
32
|
<div style="color:var(--cs-accent);font-size:13px;letter-spacing:0.5em;margin-top:10px">◆ ◆ ◆</div>
|
|
32
33
|
</div>
|
|
33
34
|
<p style="font-size:13px;line-height:1.5;margin:0 0 1px">Biểu mẫu này thực hiện Quy chế đánh giá mức độ hoàn thành công việc. Kết quả đánh giá là căn cứ để xét nâng lương, thưởng, bổ nhiệm — và, khi đủ điều kiện tại Điều 6 Quy chế, là căn cứ áp dụng điểm a khoản 1 Điều 36 Bộ luật Lao động.</p>
|
|
34
|
-
<p style="font-size:12px;line-height:1.4;color
|
|
35
|
+
<p style="font-size:12px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 14px">This form gives effect to the Performance Evaluation Regulation. The rating founds decisions on pay, bonus and promotion — and, where the conditions in Article 6 of that Regulation are met, founds the application of Article 36.1(a) of the Labor Code.</p>
|
|
35
36
|
|
|
36
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 1 · THÔNG TIN KỲ ĐÁNH GIÁ <span style="font-weight:400;font-size:11px;color
|
|
37
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 1 · THÔNG TIN KỲ ĐÁNH GIÁ <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 1 · The cycle</span></h2>
|
|
37
38
|
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 8px">
|
|
38
39
|
<tbody>
|
|
39
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:230px;vertical-align:top">Người lao động<div style="color
|
|
40
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Chức danh / Bộ phận<div style="color
|
|
41
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Quản lý trực tiếp<div style="color
|
|
42
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Kỳ đánh giá<div style="color
|
|
43
|
-
<tr><td style="padding:5px 10px;vertical-align:top">Mục tiêu đã thống nhất bằng văn bản đầu kỳ?<div style="color
|
|
40
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:230px;vertical-align:top">Người lao động<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Employee</div></td><td style="padding:5px 10px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td></tr>
|
|
41
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Chức danh / Bộ phận<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Position / Department</div></td><td style="padding:5px 10px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td></tr>
|
|
42
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Quản lý trực tiếp<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Line manager</div></td><td style="padding:5px 10px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td></tr>
|
|
43
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Kỳ đánh giá<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Cycle</div></td><td style="padding:5px 10px">☐ Giữa năm (tháng 6) ☐ Cuối năm (tháng 12) ☐ Cuối thử việc<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">☐ Mid-year (June) ☐ Year-end (December) ☐ End of probation</div></td></tr>
|
|
44
|
+
<tr><td style="padding:5px 10px;vertical-align:top">Mục tiêu đã thống nhất bằng văn bản đầu kỳ?<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Objectives agreed in writing at the start of the cycle?</div></td><td style="padding:5px 10px">☐ Có ☐ Không<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">☐ Yes ☐ No</div></td></tr>
|
|
44
45
|
</tbody>
|
|
45
46
|
</table>
|
|
46
47
|
<div class="cs-avoid" style="background:#FBF4E9;border:1px solid var(--cs-color-border-default);border-radius:8px;padding:9px 13px;margin-bottom:16px">
|
|
47
48
|
<p style="font-size:12px;line-height:1.45;margin:0 0 1px"><b>Ghi chú soạn thảo:</b> Nếu trả lời KHÔNG ở dòng cuối, KHÔNG được cho mức 1 hoặc mức 2 trong kỳ này (khoản 3.1 Quy chế). Không có mục tiêu bằng văn bản thì không có căn cứ kết luận không hoàn thành.</p>
|
|
48
|
-
<p style="font-size:11px;line-height:1.4;color
|
|
49
|
+
<p style="font-size:11px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0"><b>Drafting note:</b> If the answer to the last line is NO, a rating of 1 or 2 may NOT be given this cycle (Article 3.1 of the Regulation). With no written objectives there is no basis for concluding that work was not completed.</p>
|
|
49
50
|
</div>
|
|
50
51
|
|
|
51
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 2 · CHẤM ĐIỂM THEO TIÊU CHÍ <span style="font-weight:400;font-size:11px;color
|
|
52
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 2 · CHẤM ĐIỂM THEO TIÊU CHÍ <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 2 · Scoring against the criteria</span></h2>
|
|
52
53
|
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12px;margin:0 0 10px">
|
|
53
|
-
<thead><tr style="background:var(--cs-color-brand-umber);color
|
|
54
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:var(--cs-color-text-inverse,#fff)"><th style="text-align:left;padding:5px 9px;font-size:10px">Nhóm tiêu chí <i style="font-weight:400">Criterion</i></th><th style="text-align:left;padding:5px 9px;font-size:10px;width:60px">Trọng số <i style="font-weight:400">Weight</i></th><th style="text-align:left;padding:5px 9px;font-size:10px;width:60px">Điểm 1-5 <i style="font-weight:400">Score</i></th><th style="text-align:left;padding:5px 9px;font-size:10px">Bằng chứng cụ thể <i style="font-weight:400">Evidence</i></th></tr></thead>
|
|
54
55
|
<tbody>
|
|
55
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Kết quả công việc<div style="color
|
|
56
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Chất lượng kỹ thuật<div style="color
|
|
57
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Hợp tác và trách nhiệm<div style="color
|
|
58
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Tuân thủ<div style="color
|
|
59
|
-
<tr style="background:var(--cs-color-surface-raised);border-top:2px solid var(--cs-color-brand-umber)"><td style="padding:7px 9px;font-weight:800">ĐIỂM TỔNG (bình quân gia quyền)<div style="color
|
|
56
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Kết quả công việc<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Delivery</div></td><td style="padding:6px 9px">50%</td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............</span></td></tr>
|
|
57
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Chất lượng kỹ thuật<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Quality of craft</div></td><td style="padding:6px 9px">20%</td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............</span></td></tr>
|
|
58
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Hợp tác và trách nhiệm<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Collaboration</div></td><td style="padding:6px 9px">20%</td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............</span></td></tr>
|
|
59
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">Tuân thủ<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Compliance</div></td><td style="padding:6px 9px">10%</td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td><td style="padding:6px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............</span></td></tr>
|
|
60
|
+
<tr style="background:var(--cs-color-surface-raised);border-top:2px solid var(--cs-color-brand-umber)"><td style="padding:7px 9px;font-weight:800">ĐIỂM TỔNG (bình quân gia quyền)<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px;font-weight:400">Weighted total</div></td><td style="padding:7px 9px;font-weight:800">100%</td><td style="padding:7px 9px;font-weight:800"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td><td style="padding:7px 9px">—</td></tr>
|
|
60
61
|
</tbody>
|
|
61
62
|
</table>
|
|
62
63
|
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12px;margin:0 0 16px">
|
|
63
|
-
<thead><tr style="background:var(--cs-color-brand-umber);color
|
|
64
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:var(--cs-color-text-inverse,#fff)"><th style="text-align:left;padding:5px 9px;font-size:10px;width:120px">Mức <i style="font-weight:400">Rating</i></th><th style="text-align:left;padding:5px 9px;font-size:10px">Nghĩa <i style="font-weight:400">Meaning</i></th><th style="text-align:left;padding:5px 9px;font-size:10px">Hệ quả <i style="font-weight:400">Consequence</i></th></tr></thead>
|
|
64
65
|
<tbody>
|
|
65
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">5 · Xuất sắc<div style="color
|
|
66
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">4 · Tốt<div style="color
|
|
67
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">3 · Đạt yêu cầu<div style="color
|
|
68
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">2 · Chưa đạt<div style="color
|
|
69
|
-
<tr><td style="padding:6px 9px;font-weight:600">1 · Không hoàn thành<div style="color
|
|
66
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">5 · Xuất sắc<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Outstanding</div></td><td style="padding:6px 9px">Vượt xa yêu cầu<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Far exceeds</div></td><td style="padding:6px 9px">P3 = 150%</td></tr>
|
|
67
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">4 · Tốt<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Exceeds</div></td><td style="padding:6px 9px">Vượt yêu cầu ở một số mục tiêu<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Exceeds on some</div></td><td style="padding:6px 9px">P3 = 120%</td></tr>
|
|
68
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">3 · Đạt yêu cầu<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Meets</div></td><td style="padding:6px 9px">HOÀN THÀNH công việc theo hợp đồng<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Has completed the contracted work</div></td><td style="padding:6px 9px">P3 = 100%</td></tr>
|
|
69
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:6px 9px;font-weight:600">2 · Chưa đạt<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Below</div></td><td style="padding:6px 9px">KHÔNG HOÀN THÀNH công việc<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Has not completed the work</div></td><td style="padding:6px 9px">P3 = 50% · bắt buộc lập Kế hoạch Cải thiện<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">P3 = 50% · Improvement Plan mandatory</div></td></tr>
|
|
70
|
+
<tr><td style="padding:6px 9px;font-weight:600">1 · Không hoàn thành<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Fails</div></td><td style="padding:6px 9px">KHÔNG HOÀN THÀNH công việc<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Has not completed the work</div></td><td style="padding:6px 9px">P3 = 0% · bắt buộc lập Kế hoạch Cải thiện<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">P3 = 0% · Improvement Plan mandatory</div></td></tr>
|
|
70
71
|
</tbody>
|
|
71
72
|
</table>
|
|
72
73
|
|
|
73
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px">PHẦN 3 · TỰ ĐÁNH GIÁ CỦA NGƯỜI LAO ĐỘNG <span style="font-weight:400;font-size:11px;color
|
|
74
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px">PHẦN 3 · TỰ ĐÁNH GIÁ CỦA NGƯỜI LAO ĐỘNG <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 3 · The employee's self-assessment</span></h2>
|
|
74
75
|
<p style="font-size:14px;line-height:1.9;margin:0 0 14px;color:#6B5E52">..............................................................................................................<br>..............................................................................................................</p>
|
|
75
76
|
|
|
76
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px">PHẦN 4 · NHẬN XÉT CỦA QUẢN LÝ TRỰC TIẾP <span style="font-weight:400;font-size:11px;color
|
|
77
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px">PHẦN 4 · NHẬN XÉT CỦA QUẢN LÝ TRỰC TIẾP <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 4 · The line manager's assessment</span></h2>
|
|
77
78
|
<p style="font-size:14px;line-height:1.9;margin:0 0 14px;color:#6B5E52">..............................................................................................................<br>..............................................................................................................</p>
|
|
78
79
|
|
|
79
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 5 · MỤC TIÊU KỲ TỚI <span style="font-weight:400;font-size:11px;color
|
|
80
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 5 · MỤC TIÊU KỲ TỚI <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 5 · Objectives for the next cycle</span></h2>
|
|
80
81
|
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12px;margin:0 0 16px">
|
|
81
|
-
<thead><tr style="background:var(--cs-color-brand-umber);color
|
|
82
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:var(--cs-color-text-inverse,#fff)"><th style="text-align:left;padding:5px 9px;font-size:10px;width:40px">STT <i style="font-weight:400">No.</i></th><th style="text-align:left;padding:5px 9px;font-size:10px">Mục tiêu (cụ thể, đo lường được) <i style="font-weight:400">Objective (specific, measurable)</i></th><th style="text-align:left;padding:5px 9px;font-size:10px;width:110px">Thời hạn <i style="font-weight:400">Due</i></th></tr></thead>
|
|
82
83
|
<tbody>
|
|
83
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">1</td><td style="padding:7px 9px"><span style="background
|
|
84
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">2</td><td style="padding:7px 9px"><span style="background
|
|
85
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">3</td><td style="padding:7px 9px"><span style="background
|
|
86
|
-
<tr><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">4</td><td style="padding:7px 9px"><span style="background
|
|
84
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">1</td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">.../.../...</span></td></tr>
|
|
85
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">2</td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">.../.../...</span></td></tr>
|
|
86
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">3</td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">.../.../...</span></td></tr>
|
|
87
|
+
<tr><td style="padding:7px 9px;font-family:var(--cs-font-family-mono)">4</td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">..............................</span></td><td style="padding:7px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">.../.../...</span></td></tr>
|
|
87
88
|
</tbody>
|
|
88
89
|
</table>
|
|
89
90
|
|
|
90
|
-
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 6 · MỨC ĐÁNH GIÁ CUỐI CÙNG <span style="font-weight:400;font-size:11px;color
|
|
91
|
+
<h2 class="cs-avoid" style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 8px">PHẦN 6 · MỨC ĐÁNH GIÁ CUỐI CÙNG <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Part 6 · Final rating</span></h2>
|
|
91
92
|
<table class="cs-avoid" style="width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 8px">
|
|
92
93
|
<tbody>
|
|
93
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:300px;vertical-align:top">Mức do quản lý đề xuất<div style="color
|
|
94
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Mức do Tổng Giám đốc phê duyệt<div style="color
|
|
95
|
-
<tr><td style="padding:5px 10px;vertical-align:top">Người lao động đồng ý với kết quả?<div style="color
|
|
94
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;width:300px;vertical-align:top">Mức do quản lý đề xuất<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Rating proposed by the manager</div></td><td style="padding:5px 10px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td></tr>
|
|
95
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 10px;vertical-align:top">Mức do Tổng Giám đốc phê duyệt<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Rating approved by the CEO</div></td><td style="padding:5px 10px"><span style="background:var(--cs-doc-fill);padding:0 3px">......</span></td></tr>
|
|
96
|
+
<tr><td style="padding:5px 10px;vertical-align:top">Người lao động đồng ý với kết quả?<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">Does the employee agree with the outcome?</div></td><td style="padding:5px 10px">☐ Đồng ý ☐ Không đồng ý (ghi ý kiến bên dưới)<div style="color:var(--cs-doc-slate);font-style:italic;font-size:11px">☐ Agrees ☐ Disagrees (record the view below)</div></td></tr>
|
|
96
97
|
</tbody>
|
|
97
98
|
</table>
|
|
98
99
|
<p style="font-size:13px;line-height:1.5;margin:0 0 1px">Ý kiến không đồng ý của người lao động (nếu có):</p>
|
|
99
|
-
<p style="font-size:12px;line-height:1.4;color
|
|
100
|
+
<p style="font-size:12px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 2px">The employee's disagreement, if any:</p>
|
|
100
101
|
<p style="font-size:14px;line-height:1.9;margin:0 0 8px;color:#6B5E52">..............................................................................................................</p>
|
|
101
102
|
<p style="font-size:13px;line-height:1.5;margin:0 0 1px">Người lao động có quyền khiếu nại kết quả bằng văn bản trong 10 ngày làm việc kể từ ngày nhận thông báo (khoản 4.2 Quy chế).</p>
|
|
102
|
-
<p style="font-size:12px;line-height:1.4;color
|
|
103
|
+
<p style="font-size:12px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 16px">The employee may appeal the rating in writing within 10 working days of notification (Article 4.2 of the Regulation).</p>
|
|
103
104
|
|
|
104
105
|
<div class="cs-avoid">
|
|
105
|
-
<p style="font-size:13px;line-height:1.5;margin:0 0 1px">Thành phố Hồ Chí Minh, ngày <span style="background
|
|
106
|
-
<p style="font-size:12px;line-height:1.4;color
|
|
106
|
+
<p style="font-size:13px;line-height:1.5;margin:0 0 1px">Thành phố Hồ Chí Minh, ngày <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> tháng <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> năm <span style="background:var(--cs-doc-fill);padding:0 3px">......</span></p>
|
|
107
|
+
<p style="font-size:12px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 14px">Ho Chi Minh City, <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span></p>
|
|
107
108
|
<div style="display:grid;grid-template-columns:1fr 1fr;gap:44px">
|
|
108
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">NGƯỜI LAO ĐỘNG</div><div style="font-size:11px;color
|
|
109
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">QUẢN LÝ TRỰC TIẾP / TỔNG GIÁM ĐỐC</div><div style="font-size:11px;color
|
|
109
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">NGƯỜI LAO ĐỘNG</div><div style="font-size:11px;color:var(--cs-doc-slate);font-style:italic">The Employee</div><div style="font-size:10.5px;margin-top:1px">(Ký, ghi rõ họ tên / <i style="color:var(--cs-doc-slate)">Sign and state full name</i>)</div><div style="height:60px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:70%;margin:0 auto"></div></div>
|
|
110
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">QUẢN LÝ TRỰC TIẾP / TỔNG GIÁM ĐỐC</div><div style="font-size:11px;color:var(--cs-doc-slate);font-style:italic">Line manager / CEO</div><div style="font-size:10.5px;margin-top:1px">(Ký, ghi rõ họ tên / <i style="color:var(--cs-doc-slate)">Sign and state full name</i>)</div><div style="height:60px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:70%;margin:0 auto"></div></div>
|
|
110
111
|
</div>
|
|
111
112
|
</div>
|
|
112
113
|
|
|
113
|
-
<div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:20px;display:flex;gap:10px;font-size:10.5px;color:var(--cs-color-text-muted);flex-wrap:wrap">Hiện Thực Hoá Ý Chí · <i style="color
|
|
114
|
+
<div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:20px;display:flex;gap:10px;font-size:10.5px;color:var(--cs-color-text-muted);flex-wrap:wrap">Hiện Thực Hoá Ý Chí · <i style="color:var(--cs-doc-slate)">Turn Your Will Into Real</i><span>·</span>MST: 0316475200<span>·</span>info@cyberskill.world<span>·</span>(+84) 906 878 091<span style="margin-left:auto">Trang / Page 1</span></div>
|
|
114
115
|
</div>
|
|
115
116
|
</div>
|
|
116
117
|
</x-dc>
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// Loads this design system into the template. In a consuming project, point
|
|
2
2
|
// base at the bound DS folder relative to this file (e.g. '_ds/<folder>' at
|
|
3
3
|
// the project root, '../_ds/<folder>' one level down) — one line to edit.
|
|
4
|
+
// Artifact head standard (UX-002 / B1): ensure <html lang> + <title> from @template.
|
|
4
5
|
(() => {
|
|
5
6
|
const base = '../..';
|
|
6
|
-
for (const p of ['styles.css']) {
|
|
7
|
+
for (const p of ['dist/styles.min.css']) {
|
|
7
8
|
const l = document.createElement('link');
|
|
8
9
|
l.rel = 'stylesheet'; l.href = base + '/' + p;
|
|
9
10
|
document.head.appendChild(l);
|
|
@@ -20,4 +21,35 @@
|
|
|
20
21
|
};
|
|
21
22
|
s.onerror = () => console.error('ds-base.js: failed to load ' + s.src + ' — if this is a consuming project, point the base line in ds-base.js at the bound _ds/<folder> tree relative to this page (e.g. _ds/<folder> at the project root, ../_ds/<folder> one level down); in a fresh design system this can just mean the bundle is not compiled yet');
|
|
22
23
|
document.head.appendChild(s);
|
|
24
|
+
|
|
25
|
+
const syncLang = () => {
|
|
26
|
+
try {
|
|
27
|
+
const a = document.querySelector('[lang]');
|
|
28
|
+
const v = a && a.getAttribute('lang');
|
|
29
|
+
// Ignore unresolved DC holes like {{ langAttr }}
|
|
30
|
+
if (v && v.indexOf('{{') === -1) document.documentElement.setAttribute('lang', v);
|
|
31
|
+
else if (!document.documentElement.getAttribute('lang')) document.documentElement.setAttribute('lang', 'en');
|
|
32
|
+
} catch (e) { /* authoring host may sandbox */ }
|
|
33
|
+
};
|
|
34
|
+
const ensureHead = () => {
|
|
35
|
+
try {
|
|
36
|
+
if (!document.title || !document.title.trim()) {
|
|
37
|
+
const src = document.documentElement.innerHTML;
|
|
38
|
+
const m = src.match(/@template\s+name="([^"]+)"/);
|
|
39
|
+
if (m) document.title = m[1] + ' · CyberSkill';
|
|
40
|
+
}
|
|
41
|
+
syncLang();
|
|
42
|
+
const obs = new MutationObserver(syncLang);
|
|
43
|
+
obs.observe(document.body || document.documentElement, {
|
|
44
|
+
attributes: true,
|
|
45
|
+
attributeFilter: ['lang'],
|
|
46
|
+
subtree: true,
|
|
47
|
+
});
|
|
48
|
+
} catch (e) { /* authoring host may sandbox */ }
|
|
49
|
+
};
|
|
50
|
+
if (document.readyState === 'loading') {
|
|
51
|
+
document.addEventListener('DOMContentLoaded', ensureHead);
|
|
52
|
+
} else {
|
|
53
|
+
ensureHead();
|
|
54
|
+
}
|
|
23
55
|
})();
|
|
@@ -1070,16 +1070,15 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var
|
|
1074
|
-
var
|
|
1075
|
-
var
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
function cdnScriptFor(url, sri) {
|
|
1073
|
+
var REACT_LOCAL = "../../_vendor/react/react.production.min.js";
|
|
1074
|
+
var REACT_DOM_LOCAL = "../../_vendor/react/react-dom.production.min.js";
|
|
1075
|
+
var BABEL_LOCAL = "../../_vendor/babel/babel.min.js";
|
|
1076
|
+
// Product surfaces are offline-first (UX-026 / D4): no third-party script origins.
|
|
1077
|
+
// Host editors may still remap via window.__resources[localPath].
|
|
1078
|
+
function localScriptFor(path) {
|
|
1080
1079
|
const res = window.__resources;
|
|
1081
|
-
const v = res ? res[
|
|
1082
|
-
return typeof v === "string" && v ?
|
|
1080
|
+
const v = res ? res[path] : void 0;
|
|
1081
|
+
return typeof v === "string" && v ? v : path;
|
|
1083
1082
|
}
|
|
1084
1083
|
|
|
1085
1084
|
// src/external.ts
|
|
@@ -1106,16 +1105,12 @@
|
|
|
1106
1105
|
function ensureBabel() {
|
|
1107
1106
|
if (window.Babel) return Promise.resolve();
|
|
1108
1107
|
if (babelLoading) return babelLoading;
|
|
1109
|
-
const
|
|
1108
|
+
const src = localScriptFor(BABEL_LOCAL);
|
|
1110
1109
|
babelLoading = new Promise((res, rej) => {
|
|
1111
1110
|
const s = document.createElement("script");
|
|
1112
|
-
s.src =
|
|
1113
|
-
if (babel.integrity) {
|
|
1114
|
-
s.integrity = babel.integrity;
|
|
1115
|
-
s.crossOrigin = "anonymous";
|
|
1116
|
-
}
|
|
1111
|
+
s.src = src;
|
|
1117
1112
|
s.onload = () => res();
|
|
1118
|
-
s.onerror = rej;
|
|
1113
|
+
s.onerror = () => rej(new Error("failed to load local Babel: " + src));
|
|
1119
1114
|
document.head.appendChild(s);
|
|
1120
1115
|
});
|
|
1121
1116
|
return babelLoading;
|
|
@@ -1768,11 +1763,9 @@
|
|
|
1768
1763
|
function loadReactUmd() {
|
|
1769
1764
|
const w = window;
|
|
1770
1765
|
if (w.React && w.ReactDOM) return Promise.resolve();
|
|
1771
|
-
const react = cdnScriptFor(REACT_URL, REACT_SRI);
|
|
1772
|
-
const reactDom = cdnScriptFor(REACT_DOM_URL, REACT_DOM_SRI);
|
|
1773
1766
|
return Promise.all([
|
|
1774
|
-
loadScript(
|
|
1775
|
-
loadScript(
|
|
1767
|
+
loadScript(localScriptFor(REACT_LOCAL)),
|
|
1768
|
+
loadScript(localScriptFor(REACT_DOM_LOCAL))
|
|
1776
1769
|
]).then(() => void 0);
|
|
1777
1770
|
}
|
|
1778
1771
|
function init() {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<!DOCTYPE html>
|
|
2
|
-
<html>
|
|
2
|
+
<html lang="en">
|
|
3
3
|
<head>
|
|
4
|
+
<title>HR Suite · Thỏa thuận Cổ phần ảo — Phantom Stock Agreement · CyberSkill</title>
|
|
4
5
|
<meta charset="utf-8">
|
|
5
6
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
7
|
<meta name="omelette-owns-print" content="1">
|
|
@@ -13,85 +14,85 @@
|
|
|
13
14
|
<script src="./ds-base.js"></script>
|
|
14
15
|
<style>@page{size:A4;margin:23mm 20mm 20mm 20mm}@media print{html,body{background:#fff!important}.cs-desk{background:#fff!important;padding:0!important;min-height:0!important}.cs-sheet{box-shadow:none!important;border:none!important;max-width:none!important;border-radius:0!important;padding:0!important}.cs-avoid{break-inside:avoid}}</style>
|
|
15
16
|
</helmet>
|
|
16
|
-
<div lang="vi" data-cs-element="{{ elAttr }}" data-cs-variant="{{ vaAttr }}" class="cs-desk" style="background:#efe6d8;min-height:100vh;padding:40px 16px;font-family:var(--cs-font-family-ui);color
|
|
17
|
+
<div lang="vi" data-cs-element="{{ elAttr }}" data-cs-variant="{{ vaAttr }}" class="cs-desk" style="background:#efe6d8;min-height:100vh;padding:40px 16px;font-family:var(--cs-font-family-ui);color:var(--cs-doc-ink)">
|
|
17
18
|
<div class="cs-sheet" style="max-width:794px;margin:0 auto;background:#fff;border:1px solid var(--cs-color-border-default);border-radius:12px;box-shadow:var(--cs-shadow-md);padding:56px 60px;text-align:left">
|
|
18
19
|
<div style="display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--cs-color-text-muted);padding-bottom:6px;border-bottom:1px solid var(--cs-color-border-default);margin-bottom:14px">
|
|
19
20
|
<x-import component-from-global-scope="CyberSkillDS.Logo" size="18" hint-size="18px,18px"></x-import>
|
|
20
21
|
<b style="color:var(--cs-color-brand-umber)">CyberSkill</b><span>· Thỏa thuận Cổ phần ảo</span><span style="margin-left:auto;font-family:var(--cs-font-family-mono)">Số/No. 02/2026/TTCPA-CYBERSKILL</span>
|
|
21
22
|
</div>
|
|
22
23
|
<div class="cs-avoid" style="display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-bottom:18px">
|
|
23
|
-
<div><div style="font-weight:800;font-size:11.5px;line-height:1.45">CÔNG TY CỔ PHẦN TƯ VẤN VÀ PHÁT TRIỂN GIẢI PHÁP PHẦN MỀM CYBERSKILL</div><div style="font-size:10px;color
|
|
24
|
-
<div style="text-align:center"><div style="font-weight:800;font-size:11.5px;line-height:1.5">CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</div><div style="font-weight:700;font-size:11px">Độc lập - Tự do - Hạnh phúc</div><div style="letter-spacing:0.1em;font-size:10px;margin:1px 0">———————————</div><div style="font-size:9.5px;color
|
|
24
|
+
<div><div style="font-weight:800;font-size:11.5px;line-height:1.45">CÔNG TY CỔ PHẦN TƯ VẤN VÀ PHÁT TRIỂN GIẢI PHÁP PHẦN MỀM CYBERSKILL</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.45;margin-top:2px">CYBERSKILL SOFTWARE SOLUTIONS CONSULTANCY AND DEVELOPMENT JOINT STOCK COMPANY</div></div>
|
|
25
|
+
<div style="text-align:center"><div style="font-weight:800;font-size:11.5px;line-height:1.5">CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM</div><div style="font-weight:700;font-size:11px">Độc lập - Tự do - Hạnh phúc</div><div style="letter-spacing:0.1em;font-size:10px;margin:1px 0">———————————</div><div style="font-size:9.5px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">THE SOCIALIST REPUBLIC OF VIETNAM · Independence - Freedom - Happiness</div></div>
|
|
25
26
|
</div>
|
|
26
27
|
<div class="cs-avoid" style="text-align:center;margin-bottom:14px">
|
|
27
28
|
<h1 style="font-size:24px;font-weight:800;color:var(--cs-color-brand-umber);letter-spacing:-0.01em;margin:0 0 3px;line-height:1.25">THỎA THUẬN CỔ PHẦN ẢO</h1>
|
|
28
|
-
<div style="font-size:13.5px;color
|
|
29
|
-
<div style="font-size:11.5px;margin-top:3px">(Thỏa thuận khung · <span style="color
|
|
30
|
-
<div style="font-size:11.5px;margin-top:2px">Hiện Thực Hoá Ý Chí · <span style="color
|
|
29
|
+
<div style="font-size:13.5px;color:var(--cs-doc-slate);font-style:italic">Phantom Stock Agreement</div>
|
|
30
|
+
<div style="font-size:11.5px;margin-top:3px">(Thỏa thuận khung · <span style="color:var(--cs-doc-slate);font-style:italic">Master Agreement</span>)</div>
|
|
31
|
+
<div style="font-size:11.5px;margin-top:2px">Hiện Thực Hoá Ý Chí · <span style="color:var(--cs-doc-slate);font-style:italic">Turn Your Will Into Real</span></div>
|
|
31
32
|
<div style="color:var(--cs-accent);font-size:13px;letter-spacing:0.5em;margin-top:8px">◆ ◆ ◆</div>
|
|
32
33
|
</div>
|
|
33
34
|
|
|
34
35
|
<div class="cs-avoid" style="margin-bottom:12px">
|
|
35
|
-
<div style="font-weight:800;font-size:12px;color:var(--cs-color-brand-umber);margin-bottom:4px">CĂN CỨ <span style="font-weight:400;color
|
|
36
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Bộ luật Dân sự số 91/2015/QH13 và nguyên tắc tự do, tự nguyện cam kết, thỏa thuận;</p><p style="font-size:11.5px;line-height:1.4;color
|
|
37
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Luật Doanh nghiệp số 59/2020/QH14 và Luật Trọng tài Thương mại số 54/2010/QH12;</p><p style="font-size:11.5px;line-height:1.4;color
|
|
38
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Nghị quyết Hội đồng Quản trị số <span style="background
|
|
39
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Thỏa thuận này là một giao dịch dân sự độc lập, được xác lập tách biệt và không phải là một bộ phận của bất kỳ hợp đồng lao động nào giữa hai Bên; quyền và nghĩa vụ tại đây phát sinh từ quan hệ hợp đồng dân sự, không phát sinh từ quan hệ lao động;</p><p style="font-size:11.5px;line-height:1.4;color
|
|
40
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Cổ phần ảo theo Thỏa thuận này là quyền tài sản theo hợp đồng được thanh toán bằng tiền, không phải là cổ phần hay chứng khoán; không có bất kỳ đợt phát hành hay chào bán chứng khoán nào theo Luật Chứng khoán số 54/2019/QH14 phát sinh từ Thỏa thuận này;</p><p style="font-size:11.5px;line-height:1.4;color
|
|
41
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Thỏa thuận này cụ thể hóa cơ chế được tóm tắt tại Điều 5 Phụ lục Đãi ngộ Toàn diện & Lộ trình Phát triển số 01/2026/PLĐN-CYBERSKILL;</p><p style="font-size:11.5px;line-height:1.4;color
|
|
42
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Hai Bên được xác định tại Thông báo Cấp phát (mẫu kèm theo) thống nhất ký kết Thỏa thuận Cổ phần ảo này (“Thỏa thuận”) với các điều khoản sau:</p><p style="font-size:11.5px;line-height:1.4;color
|
|
36
|
+
<div style="font-weight:800;font-size:12px;color:var(--cs-color-brand-umber);margin-bottom:4px">CĂN CỨ <span style="font-weight:400;color:var(--cs-doc-slate);font-style:italic">WHEREAS</span></div>
|
|
37
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Bộ luật Dân sự số 91/2015/QH13 và nguyên tắc tự do, tự nguyện cam kết, thỏa thuận;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 3px">- Pursuant to the Civil Code No. 91/2015/QH13 and the principle of freedom and voluntariness of commitment and agreement;</p>
|
|
38
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Luật Doanh nghiệp số 59/2020/QH14 và Luật Trọng tài Thương mại số 54/2010/QH12;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 3px">- Pursuant to the Law on Enterprises No. 59/2020/QH14 and the Law on Commercial Arbitration No. 54/2010/QH12;</p>
|
|
39
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Căn cứ Nghị quyết Hội đồng Quản trị số <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span>/NQ-HĐQT ngày <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span> của Công ty về việc phê duyệt Chương trình Cổ phần ảo và mẫu Thỏa thuận khung này;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 3px">- Pursuant to Board of Directors Resolution No. <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span>/NQ-HĐQT dated <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span> of the Company approving the Phantom Stock Program and this Master Agreement template;</p>
|
|
40
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Thỏa thuận này là một giao dịch dân sự độc lập, được xác lập tách biệt và không phải là một bộ phận của bất kỳ hợp đồng lao động nào giữa hai Bên; quyền và nghĩa vụ tại đây phát sinh từ quan hệ hợp đồng dân sự, không phát sinh từ quan hệ lao động;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 3px">- Whereas this Agreement is an independent civil transaction, established separately from, and not forming part of, any labor contract between the Parties, the rights and obligations herein arise from a civil contractual relationship, not from the employment relationship;</p>
|
|
41
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Cổ phần ảo theo Thỏa thuận này là quyền tài sản theo hợp đồng được thanh toán bằng tiền, không phải là cổ phần hay chứng khoán; không có bất kỳ đợt phát hành hay chào bán chứng khoán nào theo Luật Chứng khoán số 54/2019/QH14 phát sinh từ Thỏa thuận này;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 3px">- Whereas Phantom Stock under this Agreement is a cash-settled contractual property right, not a share or a security; no issuance or offering of securities under the Securities Law No. 54/2019/QH14 arises from this Agreement;</p>
|
|
42
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">- Xét rằng Thỏa thuận này cụ thể hóa cơ chế được tóm tắt tại Điều 5 Phụ lục Đãi ngộ Toàn diện & Lộ trình Phát triển số 01/2026/PLĐN-CYBERSKILL;</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 6px">- Whereas this Agreement gives full effect to the mechanism summarized in Article 5 of the Total Rewards & Career Path Appendix No. 01/2026/PLĐN-CYBERSKILL;</p>
|
|
43
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Hai Bên được xác định tại Thông báo Cấp phát (mẫu kèm theo) thống nhất ký kết Thỏa thuận Cổ phần ảo này (“Thỏa thuận”) với các điều khoản sau:</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0">The two Parties identified in the Grant Notice (form attached) agree to enter into this Phantom Stock Agreement (the “Agreement”) on the following terms:</p>
|
|
43
44
|
</div>
|
|
44
45
|
|
|
45
46
|
<div style="display:grid;gap:12px">
|
|
46
|
-
<div class="cs-avoid"><h2 style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px;padding-bottom:3px;border-bottom:1px solid var(--cs-color-border-default)">Điều 1. Định nghĩa <span style="font-weight:400;font-size:11px;color
|
|
47
|
+
<div class="cs-avoid"><h2 style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px;padding-bottom:3px;border-bottom:1px solid var(--cs-color-border-default)">Điều 1. Định nghĩa <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">Article 1. Definitions</span></h2>
|
|
47
48
|
<sc-for list="{{ defs }}" as="d" hint-placeholder-count="9">
|
|
48
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px"><b>{{ d.term }}</b> {{ d.vi }}</p><p style="font-size:11.5px;line-height:1.4;color
|
|
49
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px"><b>{{ d.term }}</b> {{ d.vi }}</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 4px">{{ d.en }}</p>
|
|
49
50
|
</sc-for></div>
|
|
50
51
|
|
|
51
52
|
<sc-for list="{{ articles }}" as="a" hint-placeholder-count="11">
|
|
52
|
-
<div class="cs-avoid"><h2 style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px;padding-bottom:3px;border-bottom:1px solid var(--cs-color-border-default)">{{ a.vi }} <span style="font-weight:400;font-size:11px;color
|
|
53
|
+
<div class="cs-avoid"><h2 style="font-size:12.5px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 5px;padding-bottom:3px;border-bottom:1px solid var(--cs-color-border-default)">{{ a.vi }} <span style="font-weight:400;font-size:11px;color:var(--cs-doc-slate);font-style:italic">{{ a.en }}</span></h2>
|
|
53
54
|
<sc-for list="{{ a.paras }}" as="p" hint-placeholder-count="4">
|
|
54
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">{{ p.vi }}</p><p style="font-size:11.5px;line-height:1.4;color
|
|
55
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">{{ p.vi }}</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 4px">{{ p.en }}</p>
|
|
55
56
|
</sc-for></div>
|
|
56
57
|
</sc-for>
|
|
57
58
|
</div>
|
|
58
59
|
|
|
59
60
|
<div class="cs-avoid" style="margin-top:18px">
|
|
60
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Thành phố Hồ Chí Minh, ngày <span style="background
|
|
61
|
-
<p style="font-size:11.5px;line-height:1.4;color
|
|
61
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Thành phố Hồ Chí Minh, ngày <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span> tháng <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span> năm 2026</p>
|
|
62
|
+
<p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 12px">Ho Chi Minh City, <span style="background:var(--cs-doc-fill);padding:0 3px">[date]</span> 2026</p>
|
|
62
63
|
<div style="display:grid;grid-template-columns:1fr 1fr;gap:44px">
|
|
63
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">THÀNH VIÊN</div><div style="font-size:11px;color
|
|
64
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">CÔNG TY</div><div style="font-size:11px;color
|
|
64
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">THÀNH VIÊN</div><div style="font-size:11px;color:var(--cs-doc-slate);font-style:italic">The Member</div><div style="font-size:11px;margin-top:3px;line-height:1.4">Tôi xác nhận đã đọc, hiểu rõ, tự nguyện đồng ý và chịu sự ràng buộc bởi toàn bộ các điều khoản của Thỏa thuận này.</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">I confirm that I have read, fully understood, voluntarily agreed to, and am bound by all terms of this Agreement.</div><div style="font-size:10.5px;margin-top:3px">Ký, ghi rõ họ tên / <i style="color:var(--cs-doc-slate)">Sign and state full name</i></div><div style="height:52px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:75%;margin:0 auto"></div><div style="font-size:11px;color:var(--cs-color-text-muted);margin-top:3px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Họ và tên / Full name]</span></div></div>
|
|
65
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12.5px">CÔNG TY</div><div style="font-size:11px;color:var(--cs-doc-slate);font-style:italic">The Company</div><div style="font-size:11px;margin-top:3px;line-height:1.4">Người đại diện có thẩm quyền ký theo Nghị quyết HĐQT dẫn chiếu tại Thông báo Cấp phát.</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">Authorized representative signing per the Board Resolution referenced in the Grant Notice.</div><div style="font-size:10.5px;margin-top:3px">Ký, ghi rõ họ tên và đóng dấu / <i style="color:var(--cs-doc-slate)">Sign, state your full name, and stamp</i></div><div style="height:52px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:75%;margin:0 auto"></div><div style="font-size:11px;color:var(--cs-color-text-muted);margin-top:3px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Họ và tên / Full name]</span></div></div>
|
|
65
66
|
</div>
|
|
66
67
|
</div>
|
|
67
68
|
|
|
68
69
|
<div class="cs-avoid" style="margin-top:24px;border-top:2px solid var(--cs-color-brand-umber);padding-top:12px">
|
|
69
70
|
<h2 style="font-size:14px;font-weight:800;color:var(--cs-color-brand-umber);margin:0 0 2px">PHỤ LỤC A - THÔNG BÁO CẤP PHÁT CỔ PHẦN ẢO</h2>
|
|
70
|
-
<div style="font-size:12px;color
|
|
71
|
-
<div style="font-size:12px;margin-bottom:2px">Số / No.: 02.<span style="background
|
|
72
|
-
<div style="font-size:12px;margin-bottom:8px">Phiên bản / Version 1.0 · Hiệu lực từ / Effective from: <span style="background
|
|
73
|
-
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Thông báo Cấp phát này được lập theo và là bộ phận không tách rời của Thỏa thuận Cổ phần ảo khung số 02/2026/TTCPA-CYBERSKILL (“Thỏa thuận khung”). Thành viên xác nhận đã nhận, đọc và đồng ý chịu sự ràng buộc của Thỏa thuận khung.</p><p style="font-size:11.5px;line-height:1.4;color
|
|
71
|
+
<div style="font-size:12px;color:var(--cs-doc-slate);font-style:italic;margin-bottom:2px">Schedule A - Phantom Stock Grant Notice</div>
|
|
72
|
+
<div style="font-size:12px;margin-bottom:2px">Số / No.: 02.<span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span>/2026/TBCP-CYBERSKILL</div>
|
|
73
|
+
<div style="font-size:12px;margin-bottom:8px">Phiên bản / Version 1.0 · Hiệu lực từ / Effective from: <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">......</span></div>
|
|
74
|
+
<p style="font-size:12.5px;line-height:1.5;margin:0 0 1px">Thông báo Cấp phát này được lập theo và là bộ phận không tách rời của Thỏa thuận Cổ phần ảo khung số 02/2026/TTCPA-CYBERSKILL (“Thỏa thuận khung”). Thành viên xác nhận đã nhận, đọc và đồng ý chịu sự ràng buộc của Thỏa thuận khung.</p><p style="font-size:11.5px;line-height:1.4;color:var(--cs-doc-slate);font-style:italic;margin:0 0 8px">This Grant Notice is made under, and forms an integral part of, Master Phantom Stock Agreement No. 02/2026/TTCPA-CYBERSKILL (the “Master Agreement”). The Member confirms receipt of, and agreement to be bound by, the Master Agreement.</p>
|
|
74
75
|
<table style="width:100%;border-collapse:collapse;font-size:12px">
|
|
75
|
-
<thead><tr style="background:var(--cs-color-brand-umber);color
|
|
76
|
+
<thead><tr style="background:var(--cs-color-brand-umber);color:var(--cs-color-text-inverse,#fff)"><th colspan="2" style="text-align:left;padding:5px 9px;font-size:10.5px">THÔNG TIN CẤP PHÁT <i style="font-weight:400">Grant details</i></th></tr></thead>
|
|
76
77
|
<tbody>
|
|
77
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;width:230px;vertical-align:top">Thành viên<div style="color
|
|
78
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Số CCCD<div style="color
|
|
79
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Địa chỉ / Email nhận thông báo<div style="color
|
|
80
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Số lượng SP được cấp<div style="color
|
|
81
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Ngày cấp<div style="color
|
|
82
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Ngày bắt đầu tính mở khóa<div style="color
|
|
83
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Lộ trình mở khóa<div style="color
|
|
84
|
-
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Nghị quyết HĐQT chấp thuận<div style="color
|
|
85
|
-
<tr><td style="padding:5px 9px;vertical-align:top">Người ký bên Công ty<div style="color
|
|
78
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;width:230px;vertical-align:top">Thành viên<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Member (full name)</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Họ và tên]</span></td></tr>
|
|
79
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Số CCCD<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">ID card no.</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Số CCCD]</span></td></tr>
|
|
80
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Địa chỉ / Email nhận thông báo<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Notice address/email</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Địa chỉ]</span> / <span style="background:var(--cs-doc-fill);padding:0 3px">[Email]</span></td></tr>
|
|
81
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Số lượng SP được cấp<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Number of SP granted</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Số lượng]</span> SP</td></tr>
|
|
82
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Ngày cấp<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Grant date</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Ngày/tháng/năm]</span></td></tr>
|
|
83
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Ngày bắt đầu tính mở khóa<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Vesting commencement date</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Ngày/tháng/năm]</span></td></tr>
|
|
84
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Lộ trình mở khóa<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Vesting schedule</div></td><td style="padding:5px 9px">25%/năm trong 4 năm; thời gian chờ 12 tháng cho đợt đầu (Điều 4 Thỏa thuận khung)<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">25%/year over 4 years; 12-month cliff for the first tranche (Article 4, Master Agreement)</div></td></tr>
|
|
85
|
+
<tr style="border-bottom:1px solid var(--cs-color-border-default)"><td style="padding:5px 9px;vertical-align:top">Nghị quyết HĐQT chấp thuận<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Approving Board Resolution</div></td><td style="padding:5px 9px">Số <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span>/NQ-HĐQT ngày <span style="background:var(--cs-doc-fill);padding:0 3px">[__]</span> (thành viên có lợi ích liên quan không biểu quyết / <i style="color:var(--cs-doc-slate)">interested member abstaining</i>)</td></tr>
|
|
86
|
+
<tr><td style="padding:5px 9px;vertical-align:top">Người ký bên Công ty<div style="color:var(--cs-doc-slate);font-style:italic;font-size:10.5px">Company signatory</div></td><td style="padding:5px 9px"><span style="background:var(--cs-doc-fill);padding:0 3px">[Họ tên, chức danh; theo ủy quyền tại Nghị quyết nêu trên nếu Thành viên là người đại diện theo pháp luật]</span></td></tr>
|
|
86
87
|
</tbody>
|
|
87
88
|
</table>
|
|
88
89
|
<div style="display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:16px">
|
|
89
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12px">THÀNH VIÊN</div><div style="font-size:10.5px;color
|
|
90
|
-
<div style="text-align:center"><div style="font-weight:700;font-size:12px">CÔNG TY</div><div style="font-size:10.5px;color
|
|
90
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12px">THÀNH VIÊN</div><div style="font-size:10.5px;color:var(--cs-doc-slate);font-style:italic">The Member</div><div style="font-size:10.5px;margin-top:2px;line-height:1.4">Tôi xác nhận các thông tin trên và đồng ý chịu sự ràng buộc của Thỏa thuận khung.</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">I confirm the details above and agree to be bound by the Master Agreement.</div><div style="height:48px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:75%;margin:0 auto"></div></div>
|
|
91
|
+
<div style="text-align:center"><div style="font-weight:700;font-size:12px">CÔNG TY</div><div style="font-size:10.5px;color:var(--cs-doc-slate);font-style:italic">The Company</div><div style="font-size:10.5px;margin-top:2px;line-height:1.4">Người đại diện có thẩm quyền theo Nghị quyết HĐQT nêu trên.</div><div style="font-size:10px;color:var(--cs-doc-slate);font-style:italic;line-height:1.4">Authorized representative per the Board Resolution above.</div><div style="height:48px"></div><div style="border-top:1px solid var(--cs-doc-ink);width:75%;margin:0 auto"></div></div>
|
|
91
92
|
</div>
|
|
92
93
|
</div>
|
|
93
94
|
|
|
94
|
-
<div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:20px;display:flex;gap:10px;font-size:10.5px;color:var(--cs-color-text-muted);flex-wrap:wrap">Hiện Thực Hoá Ý Chí · <i style="color
|
|
95
|
+
<div style="border-top:1px solid var(--cs-color-border-default);padding-top:8px;margin-top:20px;display:flex;gap:10px;font-size:10.5px;color:var(--cs-color-text-muted);flex-wrap:wrap">Hiện Thực Hoá Ý Chí · <i style="color:var(--cs-doc-slate)">Turn Your Will Into Real</i><span>·</span>MST: 0316475200<span>·</span>info@cyberskill.world<span>·</span>(+84) 906 878 091</div>
|
|
95
96
|
</div>
|
|
96
97
|
</div>
|
|
97
98
|
</x-dc>
|