diff --git a/docs/redesign/phase-2/TRACEABILITY.md b/docs/redesign/phase-2/TRACEABILITY.md index 19b9ebd..3092b59 100644 --- a/docs/redesign/phase-2/TRACEABILITY.md +++ b/docs/redesign/phase-2/TRACEABILITY.md @@ -1,5 +1,7 @@ # Redesign traceability +CV Content successor: [P5-10 scoped editing/source trace](../phase-5/p5-10/README.md#change-impact-contract) maps C01/C02/C05–C12, W05/W07 and E07–E09 to explicit source/CV-only descriptions, independent field reset, omitted-entry editing and confirmed add/delete/reorder focus. Four unit and four native locale/theme journeys supplement existing source/history/frozen-package boundaries; the original sixteen renderer HTML outputs and 36 aligned preview/PDF pages remain unchanged. Settings history is not a historical Career Profile snapshot. Human screen-reader, incomplete checks, pointer/reflow/font/photo qualification and F04 remain open; P5-11 has not begun. + CV frame/navigation successor: [P5-09 scoped frame trace](../phase-5/p5-09/README.md#approved-change-and-preservation-mapping) maps C05–C10, W05 and E07–E09 to the existing editor owner, Content-first studio, named section navigation, pane entry, visible save/version state and native actions. C01/C02, C11/C12 and W07 remain source/AI/export/frozen regression boundaries. The implementation record owns executed results and visual evidence; historical readiness findings below are retained. Human screen-reader acceptance, F04 and production font/photo qualification remain open. Pagination successor: [P5-09 pagination-fidelity trace](../phase-5/p5-09-pagination-readiness/README.md#preservation-and-changed-owners) preserves C01/C02/C06–C12, W05/W07 and E05/E08/E09 through unchanged source/revision/export owners, native screen fragmentation, deterministic readiness and the original 16-fixture PDF oracle. The former six failures now pass the same tolerances. Human screen-reader, F04 and broader font/photo/fragment qualification remain separately recorded. diff --git a/docs/redesign/phase-5/README.md b/docs/redesign/phase-5/README.md index 9b79e8c..647a406 100644 --- a/docs/redesign/phase-5/README.md +++ b/docs/redesign/phase-5/README.md @@ -1,6 +1,8 @@ # Phase 5 — Representative screens / major UI redesign plan -**Current successor: [P5-09 CV editor frame/navigation](p5-09/README.md) — accepted locally, stop before P5-10.** Content-first studio, compact CV identity/scope/save/actions, ordered section navigation and keyboard pane entry retain the existing forms, revision owner and native renderer. Baseline: **941 backend / 426 frontend / 102 actual browser passes**, security 9/6/1, configuration 3; revision 5/5 and original fidelity 16/16, 36 aligned pages. Actual EN/Bokmål, light/dark, desktop/intermediate/phone evidence and incomplete accessibility findings are recorded. Production font/photo qualification, F04 and human screen-reader acceptance remain open. No P5-10+, Phase 8 or B07 implementation occurred. +**Current successor: [P5-10 CV section editing/source clarity](p5-10/README.md) — accepted locally, stop before P5-11.** Compact source-backed/CV-only forms, field-specific reset, editable omitted content and add/delete/reorder focus reuse the P5-09 frame and existing save/history/source owners. Baseline: **941 backend / 430 frontend / 106 actual browser passes**, security 9/6/1, configuration 3; revision 5/5 and fidelity 16/16 with 36 aligned pages and unchanged renderer HTML. EN/Bokmål, light/dark, desktop/intermediate/320px evidence is retained. Human screen-reader/incomplete checks, broader pointer/reflow/font/photo qualification, F04 and separately recorded debt remain open. No P5-11+, Phase 8 or B07 implementation occurred. + +**Previous implementation: [P5-09 CV editor frame/navigation](p5-09/README.md).** Content-first studio, compact CV identity/scope/save/actions, ordered section navigation and keyboard pane entry retain the existing forms, revision owner and native renderer. Baseline: **941 backend / 426 frontend / 102 actual browser passes**, security 9/6/1, configuration 3; revision 5/5 and original fidelity 16/16, 36 aligned pages. Actual EN/Bokmål, light/dark, desktop/intermediate/phone evidence and incomplete accessibility findings are recorded. Production font/photo qualification, F04 and human screen-reader acceptance remain open. No P5-10+, Phase 8 or B07 implementation occurred at that checkpoint. **Previous readiness: [CV pagination-fidelity repair](p5-09-pagination-readiness/README.md) — GO for P5-09.** The original 16 fixtures passed the unchanged PDF oracle, including all six former page-count/placement failures. Preview uses native fragmentation, renderer-owned geometry/print rules and deterministic settled measurement; PDF output is unchanged. [Revision readiness](p5-09-readiness/README.md) remains accepted. That checkpoint's baseline was **941 backend / 422 frontend / 98 actual browser passes**, security 9/6/1, configuration 3. No CV redesign or B07 had begun at that readiness checkpoint. P2-D01 remains ordinary passing; broader font/photo/wrapped-line qualification and production/manual acceptance remain explicit. diff --git a/docs/redesign/phase-5/p5-10/README.md b/docs/redesign/phase-5/p5-10/README.md new file mode 100644 index 0000000..1cf3baa --- /dev/null +++ b/docs/redesign/phase-5/p5-10/README.md @@ -0,0 +1,188 @@ +# P5-10 — CV section editing and source/override clarity + +Starts from `44b944e5edd22f9f826663719aa581b5e6db8a83` on `codex/ui-redesign-phase4`. Scope is the existing ContentTab, SectionRow and EntryEditor. The [P5-09 frame](../p5-09/README.md), [revision contract](../p5-09-readiness/README.md) and [pagination proof](../p5-09-pagination-readiness/README.md) remain authoritative. No P5-11+, B07, schema, API or canonical-data mutation is authorised by this slice. + +## Discovered model and preservation boundary + +`GET /api/cv/outline` resolves the current Career Profile with empty settings. It supplies canonical values, including stable entry keys, rather than a variant's effective values. The current preview/export applies CV settings over that source. + +- `settings.headline`, section `title`/`items`, and entry `title`/`subtitle`/`bullets` provide CV-specific wording. Entry dates/meta and tags are not separately editable overrides. +- A missing/null/blank title or subtitle inherits the source; missing/null bullets or section items inherit, while an empty array deliberately empties that content. Inclusion, ordering and presentation do not make source wording “customized”. +- `settings.customSections` contains CV-only string content, including presets and the existing multiple-entry format. It is not a second canonical structured Experience/Education editor. +- Section inclusion and entry `overrides[key].hidden` remain distinct from content overrides. Omitted content is editable; labels/icons communicate omission rather than whole-container dimming. +- History preserves **settings revisions**, not Career Profile snapshots. Restoring old settings creates a new current settings version against the current source. Explicit historical overrides remain unchanged. Immutable submitted packages separately freeze effective source/settings/files. This accepted distinction is preserved; the UI must not claim that settings history is an immutable historical PDF. + +## Change-impact contract + +IDs below use the `PRES-` prefix from the 57-contract ledger (for example C07 is PRES-C07). This is scoped traceability, not a claim of exhaustive coverage of all 57 groups. + +| PRES IDs | Existing behaviour retained | P5-10 boundary | Required proof | +|---|---|---|---| +| C01/C02 | Canonical source and source navigation | Explicit Career Profile wording; no embedded canonical editor | Native canonical/sibling readback, inheritance and override retention after source change | +| C05/C06/C07 | Current variant, Content forms, overrides, inclusion, section/item order and custom content | Compact entry hierarchy and field-level scope/reset descriptions | Behavioural edit/reset/hide/reorder/add/delete/focus tests and persisted readback | +| C10 | One save queue, undo/redo, conflict/recovery and settings history | Same update callback/transactions; source reset remains different from undo/restore | Complete inherited tests and five native/relational revision cases | +| C08/C09/C12 | Template/settings, shared preview/PDF truth and export | Renderer and frame unchanged | Original 16-fixture oracle, 36 aligned preview/PDF pages and preview keyboard cases | +| C11 | Grounded section AI review/accept/reject | Existing assistant and CV-only apply target retained | Existing section/whole-document acceptance tests | +| W05/W07 | Linked CV, frozen package contents and their ownership | Relationship regression boundary only | Native package/P2-D01 and ownership regressions | +| E07/E09 | Existing navigation and account-switch private-state disposal | Frame/routes and session boundary unchanged | Inherited shell, account-isolation and stale-client cases | +| E08 | Localisation, themes, confirmation and responsive controls | Named fields/actions, explicit inclusion, focus after destructive/reset actions | EN/Bokmål × light/dark rendered desktop/tablet/phone and scoped axe evidence | + +Builder `/career/builder/:id` and source `/career/profile` compatibility route remain unchanged. No route or information-architecture migration occurs. + +## Scope exclusions and acceptance qualifications + +P5-11 owns preview presentation; P5-12 owns template/document controls; P5-13 owns AI review presentation; P5-14 owns final responsive CV acceptance. The existing controls/rendering owners remain in place. + +Human screen-reader acceptance, incomplete axe/manual checks, pointer/reflow qualification, production font/photo qualification, F04 production evidence, Dashboard preference-save 500, Board scaling/native touch and deferred `followMode` UI remain open. P2-D01 remains an ordinary passing regression, not expected failure. + +## Implemented Content presentation + +Content retains the existing ordered section selector, multi-open disclosures, headline override and source link. Each expanded section now states its CV-only editing scope and Included/Omitted state. Entry groups use their current title as their accessible name, show translated inclusion beside that title, and separate entries with a border instead of another outlined card. Title and Subtitle share a row when space permits and stack on narrow screens; bullet content remains the existing multiline field and Markdown toolbar. Outline dates are not newly displayed here: the source outline currently formats open-ended dates with default document-language settings, which would leak English into Bokmål. Existing document date rendering remains unchanged. + +Fields identify **Using Career Profile**, **Customized for this CV**, or, for an explicitly blank title/subtitle, **Blank uses Career Profile**. This describes the existing resolver rules; optional fields acquire no new required-field validation. Omitted entries keep their fields and actions available. Their inclusion label and visibility action convey omission without reducing editable contrast. + +The existing forms and advanced actions remain available: + +- All twelve standard sections, populated long-tail outline sections, built-in inclusion, custom sections, the four presets and free text. +- Section names, inclusion, confirmed removal, section drag and move buttons, disclosure and navigation. Removing a built-in section omits it; confirmed removal of a custom section deletes its CV-only content and its order row. +- Rows/Grid/Compact presentation, Bubble where supported and one/two Grid columns. +- Profile-backed entry Title, Subtitle and bullet overrides, entry inclusion, item drag and move buttons. Dates/meta remain source information rather than invented editable overrides. +- Profile-backed paragraph/list/tag content, and custom paragraphs, bullets or multiple entries with add, edit, move and confirmed deletion. +- Existing section/entry AI entry points and explicit review/apply behavior. Their update targets remain CV settings. + +## Source reset, undo and settings history + +Each defined entry wording override has its own **Use Career Profile: {field}** action. It removes only that field from the existing override object; other wording, hidden state, sibling overrides and section/item order remain intact. Profile-backed section content retains its existing reset, now **Use Career Profile content / Bruk innhold fra Karriereprofil**. Resetting an empty content array also returns to inheritance. Effective preview/export then uses the current canonical source through the existing resolver; the editor's outline is refreshed on reload, without adding source polling or snapshots. + +Reset uses the same `update` callback as other edits. Session Undo restores the preceding CV settings, including the removed override; Redo reapplies the reset. History Restore remains a separate confirmed operation that creates a new acknowledged settings revision against the current Career Profile. Neither operation rewrites Career Profile or changes the accepted immutable submitted-package boundary. + +Reset returns focus to the affected field. Custom entry add/reorder focuses the resulting entry; confirmed entry deletion focuses a surviving entry, or Add entry when none remains. Confirmed custom-section deletion focuses Add content. Cancel/Escape retains content and returns focus through the existing confirmation dialog. + +## Localisation and touched owners + +English/Bokmål scope and reset copy use the existing translation owner: **Using Career Profile / Bruker Karriereprofil**, **Customized for this CV / Tilpasset denne CV-en**, **CV-only content / Innhold bare i denne CV-en**, and **Use Career Profile: {field} / Bruk Karriereprofil: {field}**. UI language remains independent of document language and user-authored source/custom content. No content is translated to fit the forms. + +| File | Bounded responsibility | +|---|---| +| `job-tracker-ui/src/views/CvBuilderEditor.tsx` | Existing Content form hierarchy, scope/inclusion descriptions, independent wording reset and local focus handling; same settings/update/save owners | +| `job-tracker-ui/src/components/RichTextField.tsx` | Optional `helperText` passed to the existing MUI TextField so list/bullet fields can expose the same scope descriptions; unchanged storage and Markdown toolbar | +| `job-tracker-ui/src/i18n/translations.ts` | Matching English/Bokmål source and field-reset labels within the existing catalogue | +| `job-tracker-ui/src/cv-builder-deep-link.test.tsx` | Four focused cases plus stronger custom-content scope/confirmation/focus assertions | +| `job-tracker-ui/e2e/cv-section-scope.spec.ts` | Native item wording/reset/inheritance, selected/sibling/canonical readback, inclusion/order, custom confirmation/focus and settings-history journey in the four theme/locale pairs | + +No model, API, schema, save protocol, renderer, template capability, provider or route owner changes are required. + +## Focused regression evidence + +The four new unit cases ran before implementation and **4/4 failed** on the missing named entry groups/reset controls. After implementation, the complete editor file passed **30/30**, with no skipped/failed cases. The four additions cover CV-only Title/Subtitle/bullet writes; independent reset with omission/sibling-order preservation and Undo/Redo; omitted-entry draft retention after save failure; and section-content inheritance while retaining inclusion/presentation. The existing custom-content case additionally proves scope text, Cancel focus and focus after confirmed entry deletion. + +Commands used the repository's `rtk` prefix. Raw focused reports remain ignored at `.artifacts/p5-10-before-jest.json` and `.artifacts/p5-10-after-focused-jest.json`. The initial focused native source/reset/custom-content scenario passed **1/1** against the local disposable API. The final complete run passed all four new native cases plus all 102 inherited cases, as recorded below. + +## Separately scoped drag caveat + +Review identified an inherited boundary in the unchanged `useDragReorder` hook: item drag events can bubble through their enclosing draggable section. A cross-section item drag can therefore reach the section reorder handler; moving an entry between source sections is not a supported operation. This slice preserves within-section native drag and the explicit keyboard move controls. A separate bounded follow-up should define and test nested drag propagation/drop ownership; P5-10 does not silently replace the reorder model or claim cross-section transfer support. + +## Native source, revision and rendering proof + +The four theme/language cases use a fresh ordinary synthetic account, real local cookie authentication and B02 session context, native Career Profile/CV endpoints, and the production static frontend. External browser requests are blocked. Each starts with three source Experience entries, Education, Projects, Skills, a selected CV and an untouched sibling CV. + +The journey edits all three entry wording fields, omits and edits an entry, moves it by keyboard and native pointer drag, resets each field independently, and compares outgoing mutation fields and persisted native readback. Every checkpoint compares the canonical profile and sibling CV. After a separate native source update and reload, a retained Title override stays local while the reset Subtitle/bullets inherit the updated source. Custom content is added, edited, reordered and deleted using the real confirmations at phone width; Cancel/Escape leaves native content unchanged, and successful removal returns focus to a meaningful surviving control. Finally, native History restores version 1 as a new settings version. The updated Career Profile remains unchanged and the inherited fields use that current source, consistent with the accepted settings-only history model. + +The unchanged 16-fixture PDF oracle passes with **36 preview pages = 36 PDF pages**. All sixteen generated `render.html` SHA-256 values match the accepted pagination checkpoint exactly. No settings fixture, renderer, PDF semantics or fidelity tolerance changes were made. + +| Measurement | Declared limit retained | Largest measured variance | +|---|---|---| +| Page count / marker page membership | Exact | No mismatch | +| Page dimensions | 0.5 mm | All fixtures within limit | +| Marker X / Y position | 2 mm | X 0.000004 mm / Y 1.493055 mm | +| Font size | 0.5 pt | 0.005026 pt | +| RGB component | 1/255 | 0.000046 | + +The five relational revision-readiness cases remain the stale-save/restore, canonical-source, settings-history and account-ownership gate. Submitted-file invariants retain their separate inherited package tests. The complete inherited browser run additionally retains stale-editor conflict/draft recovery, P4-03 keyboard preview entry/exit, frozen-package/P2-D01 and existing AI review/accept/reject. These proofs do not certify every content/font/photo or production renderer combination. + +## Candidate review corrections + +Pre-final review corrected the existing Bokmål section-reset label, replaced an accidental new `h6` entry heading with a styled paragraph, and kept whitespace-only Title overrides named from their effective source value. It also removed the newly proposed outline-date caption because `GET /cv/outline` uses default document settings and can synthesize English “Present” in a Bokmål interface. The existing unit case contains that metadata and asserts it is not newly displayed; document date rendering is unchanged. + +Earlier partial browser runs were stopped when those corrections required a new production build. They are not counted as completed passes. The first native pointer fixture targeted the centre of a tall form and landed inside its textarea; the fixture now uses the existing entry-header grip area, retains actual browser drag events and requires native `itemOrder` persistence. No drag handler or assertion was replaced to obtain a pass. + +## Visual, responsive and accessibility review + +The retained [visual manifest](evidence/visual-manifest.json) identifies the final-candidate captures and their hashes. Thirty images cover source, customized and reset/omitted entries; populated CV-only content; the workspace after an invalid document name; and confirmed custom-entry deletion. The invalid-name case proves the existing disabled Save action behaviour separately; its scrolled screenshot is not proof of a new inline error UI or complete header visibility. The evidence uses all four light/dark × English/Bokmål pairs, with 1440px desktop, 768px intermediate and 320px phone checks. Native assertions require no horizontal page overflow and focused fields/actions after reflow. + +Actual rendered captures were inspected, including these representative states: + +| State / review purpose | Evidence | +|---|---| +| Light/Bokmål source fields and inclusion | [Desktop source entry](evidence/light-nb-desktop-source-entry.png) | +| Dark/English reset and omitted content remains editable | [Reset omitted entry](evidence/dark-en-desktop-reset-omitted-entry.png) | +| Dark/Bokmål field scope, wrapped reset help and keyboard focus | [320px entry](evidence/dark-nb-scoped-entry-320.png) | +| Light/English repeated custom fields and keyboard controls | [CV-only content](evidence/light-en-custom-cv-only-populated.png) | +| Dark/Bokmål narrow custom-entry actions and localized labels | [320px custom content](evidence/dark-nb-custom-cv-only-320.png) | +| Destructive consequence and phone dialog actions | [Bokmål delete confirmation](evidence/dark-nb-custom-entry-delete-confirmation.png) | + +In the inspected scope, fields remain readable, omission is conveyed without dimming editable text, secondary scope descriptions have light/dark treatments, and action/field focus is visible. Repeated entries use a border-separated hierarchy, not a new card per field. Single-line editable titles retain their full value and scroll within their input; narrow actions and descriptions wrap. No preview container, document geometry, font, final branding or permanent colour decision changed. + +Keyboard behaviour is exercised in the real browser with Enter/Escape, named controls, explicit focus checks and native pointer drag; visual focus inspection complements those assertions. Custom entry actions work at phone width without hover. Field helper text uses MUI's description association. Scope changes do not add a live announcement on every keystroke; reset/add/delete move focus to a meaningful described control. Existing section navigation, preview regions and keyboard entry/exit are regression dependencies, not rewritten here. + +The [axe summary](evidence/axe-summary.json) retains both violations and **incomplete** checks. Scoped automated results do not certify spoken names, live announcements or every dialog/provider state. Human screen-reader acceptance remains required for P5-15, and existing incomplete contrast/ARIA/table findings remain unclosed. Native mobile-touch and broader pointer/reflow qualification are not inferred from desktop Chromium emulation. + +## Final executed validation — 2026-10-07 + +The final candidate includes the metadata/whitespace/heading corrections above. All application checks below completed afterward. No production requests or deployments were made. + +| Gate | P5-09 inherited | Final P5-10 | Change | +|---|---:|---:|---| +| Backend Release | 941 | **941 passed**, zero skipped/failed | No new backend code/tests | +| Frontend Jest | 426 | **430 passed**, 80 suites, zero skipped/failed | Four focused Content cases | +| Chromium browser | 102 | **106 actual passes**, zero skipped/flaky/failed/expected failures | Four native locale/theme journeys | +| Original fidelity oracle | 16/16, 36 pages | **16/16, 36 preview = 36 PDF pages** | Fixtures/tolerances/HTML unchanged | +| Revision subset (included in backend total) | 5/5 | **5/5** | Unchanged gate | +| Rate-limit / ingress / PDF admission | 9 / 6 / 1 | **9 / 6 / 1 passed** | B03/B04/B06 gates; B01/B02/B05 retain complete backend/browser regressions | +| Configuration/Compose fixtures | 3 | **3 passed** | Unchanged repository config gate | +| TypeScript / edited browser TypeScript / lint | Passing | **Passing**, lint zero warnings | No TS/CI gate change | +| Frontend production / API Release builds | Passing | **Passing**, API zero warnings/errors | No build/CI/dependency change | +| Supply-chain / Ollama evaluation / extension fixtures | 3 / 5 / 3 | **3 / 5 / 3 passed** | Ancillary local fixtures | +| Secret / whitespace / document links | Passing | **Passing**; 147 current/root Markdown files, zero missing local targets | Historical archives/external URLs/anchors excluded by the inherited local-target check | + +The [browser summary](evidence/browser-summary.json) records every case's actual/expected status and attempt duration. All expected statuses are `passed`; **P2-D01 is ordinary passing**. Browser duration was 17.8 minutes. Frontend duration was 210.814 seconds; backend reported 19 seconds. Raw Jest/TRX/browser/security outputs stay ignored under `.artifacts/p5-10/`; the retained summaries exclude credentials, requests and raw traces. + +The complete run retains **205 axe scans, zero reported violations**. Sixteen are new P5-10 scoped scans. New scans retain `aria-prohibited-attr` and `color-contrast` incomplete findings; inherited scans additionally retain `aria-hidden-focus`, `aria-valid-attr-value` and `th-has-data-cells`. These are incomplete checks, not certified passes or closures of the manual accessibility gate. + +### Reproducible commands + +Commands below are invoked through `rtk proxy` (Git uses `rtk git`). UI commands run in `job-tracker-ui`. Native test runners use `DOTNET_ROOT=C:/Users/Connor/.dotnet` and `DOTNET_HOST_PATH=C:/Users/Connor/.dotnet/dotnet.exe`. Frontend production build uses `NEXT_PUBLIC_API_BASE_URL=http://localhost:5302/api`; browser runs use `PLAYWRIGHT_STATIC_EXPORT=true`, `PLAYWRIGHT_PREBUILT_EXPORT=true`, `CV_FIDELITY_OUTPUT=../.artifacts/p5-10/fidelity` and `PLAYWRIGHT_JSON_OUTPUT_NAME=../.artifacts/p5-10/browser.json`. Build the static export before the browser runner; specialized native suites share port 5302 and run sequentially. + +```text +dotnet test JobTrackerApi.Tests/JobTrackerApi.Tests.csproj --configuration Release --no-restore --logger "trx;LogFileName=p5-10.trx" --results-directory .artifacts/p5-10/backend +dotnet test JobTrackerApi.Tests/JobTrackerApi.Tests.csproj --configuration Release --no-build --filter "FullyQualifiedName~CvRevisionReadinessTests" +dotnet build JobTrackerApi/JobTrackerApi.csproj --configuration Release --no-restore -warnaserror +npm.cmd test -- --runInBand --silent --json --outputFile=../.artifacts/p5-10/jest.json +npm.cmd run typecheck +npm.cmd exec tsc -- --project ../.artifacts/p5-09-readiness-e2e-tsconfig.json --noEmit --incremental false +npm.cmd run lint +npm.cmd run build +npm.cmd run test:e2e -- --output=../.artifacts/p5-10/browser --reporter=line,json +python -X utf8 scripts/verify-cv-fidelity.py .artifacts/p5-10/fidelity +npm.cmd run test:rate-limits -- --output=../.artifacts/p5-10/rate-limits --reporter=line +npm.cmd exec playwright test -- --config=playwright.ingress.config.ts --output=../.artifacts/p5-10/ingress --reporter=line +npm.cmd run test:pdf-admission -- --output=../.artifacts/p5-10/pdf-admission --reporter=line +python scripts/test-ingress.py +python scripts/test-supply-chain.py +python scripts/test-ollama-evaluation.py +node browser-extension/tests/capture-url.test.mjs +python scripts/supply-chain.py scan-secrets +python .artifacts/p4-04-check-doc-links.py +git diff --check +git diff --cached --check +``` + +Fidelity uses the already configured bundled Python with PDF libraries, not a newly installed dependency. The temporary browser-type/link helpers retain the inherited checkpoint procedures; no CI or package.json change is needed. Evidence summaries and thirty final-candidate screenshots are the only new retained artifacts. + +## Acceptance and remaining P5-11 boundary + +**P5-10 accepted locally.** Career Profile, sibling CV and submitted-package boundaries remain protected; current Content edits write the selected CV only. Revision safety, preview keyboard behaviour and the original measurable fidelity gate pass. No rendering/page-count regression blocks the next preview-presentation slice. + +P5-11 owns live-preview presentation and must preserve this same renderer/geometry/fidelity contract. P5-12 owns template/document controls, P5-13 AI review and P5-14 full responsive CV acceptance. They were not implemented here. The inherited settings-history distinction must remain explicit in future work. + +Keep open: P5-02 human screen-reader acceptance for P5-15, incomplete axe/manual checks, broader pointer/reflow and production font/photo qualification, **F04 production ingress evidence**, Dashboard preference-save 500, Board full-result scaling/native touch, deferred `followMode` compose UI and unchanged inherited timing observations. **P5-10-O01** records the separately scoped nested drag/drop ownership caveat above; it does not authorize unsupported cross-section item transfer or block preview-only P5-11. No unrelated remediation or B07 work occurred. diff --git a/docs/redesign/phase-5/p5-10/evidence/axe-summary.json b/docs/redesign/phase-5/p5-10/evidence/axe-summary.json new file mode 100644 index 0000000..45277bb --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/axe-summary.json @@ -0,0 +1,6877 @@ +{ + "scanCount": 205, + "scans": [ + { + "case": "[PRES-S01 S02 E07 E08 E09 J05 J09] Analytics native reports, direct entry, period, drill-down and owner isolation", + "state": "analytics-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ] + ] + } + ] + }, + { + "case": "[PRES-S01 S02 E07 E08 E09 J05 J09] Analytics native reports, direct entry, period, drill-down and owner isolation", + "state": "analytics-dark-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + ".MuiDrawer-modal" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ] + ] + } + ] + }, + { + "case": "[PRES-J07 J05 W01 W02 E07 E08 E09] Board query membership matches Table and preserves moves, focus and route", + "state": "board-phone-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + "a[href=\"/jobs?source=board&view=table\"]" + ], + [ + "a[href=\"/jobs?source=board&view=board\"]" + ], + [ + "#_r_5v_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_62_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J07 J05 W01 W02 E07 E08 E09] Board query membership matches Table and preserves moves, focus and route", + "state": "board-phone-dark-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + "a[href=\"/jobs?source=board&view=table\"]" + ], + [ + "a[href=\"/jobs?source=board&view=board\"]" + ], + [ + "#_r_5v_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_62_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J07 E08] Board loading, retryable error and fully empty columns", + "state": "board-empty-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + ".MuiChip-root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_i_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_l_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/en preview keyboard, pagination and responsive state", + "state": "transition-900-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/en preview keyboard, pagination and responsive state", + "state": "transition-1024-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/en preview keyboard, pagination and responsive state", + "state": "transition-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/en preview keyboard, pagination and responsive state", + "state": "loaded-final-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/nb preview keyboard, pagination and responsive state", + "state": "transition-900-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/nb preview keyboard, pagination and responsive state", + "state": "transition-1024-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/nb preview keyboard, pagination and responsive state", + "state": "transition-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/nb preview keyboard, pagination and responsive state", + "state": "loaded-final-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/nb preview keyboard, pagination and responsive state", + "state": "transition-900-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/nb preview keyboard, pagination and responsive state", + "state": "transition-1024-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/nb preview keyboard, pagination and responsive state", + "state": "transition-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/nb preview keyboard, pagination and responsive state", + "state": "loaded-final-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/en preview keyboard, pagination and responsive state", + "state": "transition-900-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/en preview keyboard, pagination and responsive state", + "state": "transition-1024-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/en preview keyboard, pagination and responsive state", + "state": "transition-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/en preview keyboard, pagination and responsive state", + "state": "loaded-final-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_10_" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/en CV frame navigation, actions and pending editing", + "state": "desktop-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_10_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/en CV frame navigation, actions and pending editing", + "state": "history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/en CV frame navigation, actions and pending editing", + "state": "phone-edit-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + ".css-1o5rj1a" + ], + [ + ".css-gxlcvs" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#_r_10_" + ], + [ + "#_r_3h_" + ], + [ + "#_r_3r_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_41_" + ], + [ + "#_r_4b_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/nb CV frame navigation, actions and pending editing", + "state": "desktop-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_10_" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/nb CV frame navigation, actions and pending editing", + "state": "history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/nb CV frame navigation, actions and pending editing", + "state": "phone-edit-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + ".css-1o5rj1a" + ], + [ + ".css-gxlcvs" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#_r_10_" + ], + [ + "#_r_3h_" + ], + [ + "#_r_3r_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_41_" + ], + [ + "#_r_4b_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/nb CV frame navigation, actions and pending editing", + "state": "desktop-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_10_" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/nb CV frame navigation, actions and pending editing", + "state": "history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] light/nb CV frame navigation, actions and pending editing", + "state": "phone-edit-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + ".css-1o5rj1a" + ], + [ + ".css-gxlcvs" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#_r_10_" + ], + [ + "#_r_3h_" + ], + [ + "#_r_3r_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_41_" + ], + [ + "#_r_4b_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/en CV frame navigation, actions and pending editing", + "state": "desktop-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_10_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/en CV frame navigation, actions and pending editing", + "state": "history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C06 C07 C10 W05 E08] dark/en CV frame navigation, actions and pending editing", + "state": "phone-edit-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + ".css-1o5rj1a" + ], + [ + ".css-gxlcvs" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#_r_10_" + ], + [ + "#_r_3h_" + ], + [ + "#_r_3r_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_41_" + ], + [ + "#_r_4b_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/en CV field scope, source resets, entry order and custom content", + "state": "desktop-source-entry-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_48_" + ], + [ + "#_r_4d_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4n_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + "#_r_v_-helper-text" + ], + [ + ".css-1g5wsz1" + ], + [ + ".css-0.MuiBox-root > .css-ayodbu.MuiTypography-caption.MuiTypography-root" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-768-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlinedSizeSmall.MuiButton-outlined" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-320-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlined.MuiButton-outlinedPrimary" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/nb CV field scope, source resets, entry order and custom content", + "state": "desktop-source-entry-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_48_" + ], + [ + "#_r_4d_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4n_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + ".MuiAlert-message" + ], + [ + "a[href$=\"profile\"]" + ], + [ + "#_r_v_" + ], + [ + "#_r_v_-helper-text" + ], + [ + ".css-1g5wsz1" + ], + [ + ".css-0.MuiBox-root > .css-ayodbu.MuiTypography-caption.MuiTypography-root" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-768-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlinedSizeSmall.MuiButton-outlined" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-320-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlined.MuiButton-outlinedPrimary" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/nb CV field scope, source resets, entry order and custom content", + "state": "desktop-source-entry-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_48_" + ], + [ + "#_r_4d_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4n_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + "#_r_v_" + ], + [ + "#_r_v_-helper-text" + ], + [ + ".css-1g5wsz1" + ], + [ + ".css-0.MuiBox-root > .css-ayodbu.MuiTypography-caption.MuiTypography-root" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-768-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlinedSizeSmall.MuiButton-outlined" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] light/nb CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-320-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlined.MuiButton-outlinedPrimary" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/en CV field scope, source resets, entry order and custom content", + "state": "desktop-source-entry-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_3v_" + ], + [ + "#_r_48_" + ], + [ + "#_r_4d_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4n_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-1440-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "h2" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + ".css-1ydlhs2 > .MuiButton-text.MuiButton-textPrimary.MuiButton-textSizeSmall" + ], + [ + ".MuiAlert-message" + ], + [ + "a[href$=\"profile\"]" + ], + [ + "#_r_v_" + ], + [ + "#_r_v_-helper-text" + ], + [ + ".css-1g5wsz1" + ], + [ + ".css-0.MuiBox-root > .css-ayodbu.MuiTypography-caption.MuiTypography-root" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-768-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlinedSizeSmall.MuiButton-outlined" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-C05 C07 C10 W05 E08] dark/en CV field scope, source resets, entry order and custom content", + "state": "scoped-entry-320-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "#_r_3a_" + ], + [ + "#_r_3u_" + ], + [ + "#_r_40_" + ], + [ + "#_r_49_" + ], + [ + "div[aria-label=\"Retained CV title\"] > .css-1ea0d1y.MuiStack-root > .css-13ssfkv.MuiButton-outlined.MuiButton-outlinedPrimary" + ], + [ + "#_r_3f_" + ], + [ + "#_r_3g_" + ], + [ + "#_r_3p_" + ], + [ + "#_r_4e_" + ], + [ + "#_r_4f_" + ], + [ + "#_r_4o_" + ] + ] + } + ] + }, + { + "case": "[PRES-S01 S02 E07 E08 E09] Dashboard native data, visibility and responsive presentation", + "state": "dashboard-light-menu-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".css-17t4hgu" + ] + ] + } + ] + }, + { + "case": "[PRES-S01 S02 E07 E08 E09] Dashboard native data, visibility and responsive presentation", + "state": "dashboard-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".Mui-focusVisible" + ] + ] + } + ] + }, + { + "case": "[PRES-S01 S02 E07 E08 E09] Dashboard native data, visibility and responsive presentation", + "state": "dashboard-dark-menu-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".css-17t4hgu" + ] + ] + } + ] + }, + { + "case": "[PRES-S01 S02 E07 E08 E09] Dashboard native data, visibility and responsive presentation", + "state": "dashboard-dark-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".Mui-focusVisible" + ] + ] + } + ] + }, + { + "case": "[PRES-W01 W02 W03 J05 E08 E09] native Job header/Overview retains actions, custom status, aliases and mobile progress keyboard access", + "state": "job-overview-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(4) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(5) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1h36fbo" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(7) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ] + ] + } + ] + }, + { + "case": "[PRES-W01 W02 W03 J05 E08 E09] native Job header/Overview retains actions, custom status, aliases and mobile progress keyboard access", + "state": "job-overview-dark-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(4) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(5) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1h36fbo" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(7) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ] + ] + } + ] + }, + { + "case": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, light)", + "state": "sections-documents-en-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, light)", + "state": "sections-correspondence-en-light-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_11_" + ] + ] + } + ] + }, + { + "case": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, light)", + "state": "sections-notes-tasks-en-light-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_15_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(3) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(3) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(3) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(4) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(4) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(4) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(5) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(5) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(5) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(6) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(6) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(6) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(7) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(7) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(7) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(8) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(8) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(8) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(9) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(9) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + ".css-1c9ky8i.MuiStack-root:nth-child(9) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_2s_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_2s_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_2s_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_33_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(1) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "section[aria-labelledby=\"_r_3g_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root:nth-child(2) > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Not relevant for this role\"]" + ], + [ + "section[aria-labelledby=\"_r_3t_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move up\"]" + ], + [ + "section[aria-labelledby=\"_r_3t_\"] > .css-31l7gp.MuiBox-root > .css-qfnqh.MuiStack-root > .css-1c9ky8i.MuiStack-root > .checklist-actions.css-1iqpi3n.MuiStack-root > span[aria-label=\"Move down\"]" + ], + [ + "span[aria-label=\"Delete\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_44_" + ] + ] + } + ] + }, + { + "case": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, light)", + "state": "sections-interview-en-light-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Delete\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_1t_" + ], + [ + "#_r_21_" + ], + [ + "#_r_23_" + ], + [ + "#_r_1j_" + ], + [ + "#_r_1l_" + ], + [ + "#_r_1n_" + ], + [ + "#_r_25_" + ], + [ + "#_r_26_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "state": "command-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "state": "cv-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-2" + ], + [ + ".MuiSelect-select.MuiSelect-outlined[aria-labelledby=\"_r_3b_-cvEditorHeadingFont\"]" + ], + [ + "div[aria-label=\"Skills presentation\"]" + ], + [ + "div[aria-label=\"Page size\"]" + ], + [ + "div[aria-label=\"Density\"]" + ], + [ + "div[aria-label=\"Language\"]" + ], + [ + "div[aria-label=\"Date format\"]" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "state": "cover-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_1i_" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiAction\"]" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiTone\"]" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiDocumentLanguage\"]" + ], + [ + "#_r_17_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "state": "prompt-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + "#_r_1q_" + ], + [ + ".css-m42v8x" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "state": "confirm-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible" + ], + [ + ".MuiButton-containedError" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "state": "command-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "state": "cv-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-2" + ], + [ + ".MuiSelect-select.MuiSelect-outlined[aria-labelledby=\"_r_3b_-cvEditorHeadingFont\"]" + ], + [ + "div[aria-label=\"Visning av ferdigheter\"]" + ], + [ + "div[aria-label=\"Sidestørrelse\"]" + ], + [ + "div[aria-label=\"Tetthet\"]" + ], + [ + "div[aria-label=\"Dokumentspråk\"]" + ], + [ + "div[aria-label=\"Datoformat\"]" + ], + [ + "iframe[title=\"CV-forhåndsvisning side 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "state": "cover-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_1i_" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiAction\"]" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiTone\"]" + ], + [ + "div[aria-labelledby=\"_r_u_-coverAiDocumentLanguage\"]" + ], + [ + "#_r_17_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "state": "prompt-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + "#_r_1v_" + ], + [ + ".css-m42v8x" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "state": "confirm-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible" + ], + [ + ".MuiButton-containedError" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "state": "command-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "state": "cv-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Angre\"]" + ], + [ + "span[aria-label=\"Gjør om\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-2" + ], + [ + ".MuiSelect-select.MuiSelect-outlined[aria-labelledby=\"_r_3d_-cvEditorHeadingFont\"]" + ], + [ + "div[aria-label=\"Visning av ferdigheter\"]" + ], + [ + "div[aria-label=\"Sidestørrelse\"]" + ], + [ + "div[aria-label=\"Tetthet\"]" + ], + [ + "div[aria-label=\"Dokumentspråk\"]" + ], + [ + "div[aria-label=\"Datoformat\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "state": "cover-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(4) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(5) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(6) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(7) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + "#_r_1d_" + ], + [ + "div[aria-labelledby=\"_r_v_-coverAiAction\"]" + ], + [ + "div[aria-labelledby=\"_r_v_-coverAiTone\"]" + ], + [ + "div[aria-labelledby=\"_r_v_-coverAiDocumentLanguage\"]" + ], + [ + "#_r_1k_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "state": "prompt-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + "#_r_1r_" + ], + [ + ".css-m42v8x" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "state": "confirm-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiAlert-colorWarning > .MuiAlert-message.css-127h8j3" + ], + [ + ".Mui-focusVisible" + ], + [ + ".MuiButton-containedError" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "state": "command-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "state": "cv-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#cv-studio-tab-2" + ], + [ + ".MuiSelect-select.MuiSelect-outlined[aria-labelledby=\"_r_3d_-cvEditorHeadingFont\"]" + ], + [ + "div[aria-label=\"Skills presentation\"]" + ], + [ + "div[aria-label=\"Page size\"]" + ], + [ + "div[aria-label=\"Density\"]" + ], + [ + "div[aria-label=\"Language\"]" + ], + [ + "div[aria-label=\"Date format\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "state": "cover-controls-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(4) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(5) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(6) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + ".css-1vcc3k.MuiBox-root:nth-child(7) > .css-b7tg9p.MuiStack-root > .css-1etkf64.MuiTypography-caption" + ], + [ + "#_r_1m_" + ], + [ + "div[aria-labelledby=\"_r_18_-coverAiAction\"]" + ], + [ + "div[aria-labelledby=\"_r_18_-coverAiTone\"]" + ], + [ + "div[aria-labelledby=\"_r_18_-coverAiDocumentLanguage\"]" + ], + [ + "#_r_1t_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "state": "prompt-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + "#_r_1r_" + ], + [ + ".css-m42v8x" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "state": "confirm-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible" + ], + [ + ".MuiButton-containedError" + ] + ] + } + ] + }, + { + "case": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (en, light)", + "state": "navigation-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (en, dark)", + "state": "navigation-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (nb, light)", + "state": "navigation-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (nb, dark)", + "state": "navigation-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/1440 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/1440 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/1440 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_n_" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/390 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/390 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/en/390 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ], + [ + "#_r_10_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_n_" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/390 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/390 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] light/nb/390 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ], + [ + "#_r_10_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J05 PRES-J07] light loaded status semantics, navigation and command focus", + "state": "loaded-jobs-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-cv-template-button-hover-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_v_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-cv-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-cv-customize-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "div[aria-label=\"Skills presentation\"]" + ], + [ + "div[aria-label=\"Page size\"]" + ], + [ + "div[aria-label=\"Density\"]" + ], + [ + "div[aria-label=\"Language\"]" + ], + [ + "div[aria-label=\"Date format\"]" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-cv-ai-locked-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#_r_3t_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-cv-history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "state": "loaded-settings-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".Mui-selected.MuiTab-root.MuiTab-textColorPrimary" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + ".css-17t4hgu" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/1440 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/1440 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/1440 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_n_" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/390 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/390 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/en/390 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ], + [ + "#_r_10_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/1440 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_n_" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/390 loading → error → retry → empty → populated", + "state": "loaded-error-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/390 loading → error → retry → empty → populated", + "state": "loaded-company-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-J08] dark/nb/390 loading → error → retry → empty → populated", + "state": "loaded-company-dialog-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_o_" + ], + [ + "#_r_p_" + ], + [ + "#_r_q_" + ], + [ + "#_r_r_" + ], + [ + "#_r_s_" + ], + [ + "#_r_t_" + ], + [ + "#_r_u_" + ], + [ + "#_r_v_" + ], + [ + "#_r_10_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 PRES-E08 PRES-J05 PRES-J07] dark loaded status semantics, navigation and command focus", + "state": "loaded-jobs-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-invisible" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-cv-template-button-hover-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_v_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-cv-content-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#_r_r_" + ], + [ + "#_r_v_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-cv-customize-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "div[aria-label=\"Skills presentation\"]" + ], + [ + "div[aria-label=\"Page size\"]" + ], + [ + "div[aria-label=\"Density\"]" + ], + [ + "div[aria-label=\"Language\"]" + ], + [ + "div[aria-label=\"Date format\"]" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-cv-ai-locked-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#_r_3t_" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-cv-history-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + "span[aria-label=\"Undo\"]" + ], + [ + "span[aria-label=\"Redo\"]" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".css-15ja76x" + ], + [ + "#cv-studio-tab-1" + ], + [ + "#cv-studio-tab-0" + ], + [ + "#cv-studio-tab-2" + ], + [ + "#cv-studio-tab-3" + ], + [ + "#cv-studio-tab-4" + ], + [ + "iframe[title=\"CV preview page 1\"]", + "h1" + ] + ] + } + ] + }, + { + "case": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "state": "loaded-settings-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".Mui-selected.MuiTab-root.MuiTab-textColorPrimary" + ], + [ + ".MuiButton-containedSizeMedium" + ], + [ + ".css-17t4hgu" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "state": "general-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "state": "phone-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"settings-section-label\"]" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "state": "rules-error-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "state": "notifications-error-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "state": "backup-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "state": "general-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "state": "phone-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"settings-section-label\"]" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "state": "rules-error-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "state": "notifications-error-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "state": "backup-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "state": "general-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "state": "phone-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"settings-section-label\"]" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "state": "rules-error-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "state": "notifications-error-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "state": "backup-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "state": "general-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "state": "phone-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "div[aria-labelledby=\"settings-section-label\"]" + ], + [ + "div[aria-labelledby=\"theme-mode-label\"]" + ], + [ + "div[aria-labelledby=\"language-label\"]" + ], + [ + "div[aria-labelledby=\"page-size-label\"]" + ], + [ + "#_r_1e_" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "state": "rules-error-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "state": "notifications-error-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "state": "backup-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + ".MuiSelect-select" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] light-en mobile labels, focus and admin reflow", + "state": "account-metadata-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".css-1bb2m2l" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] light-en mobile labels, focus and admin reflow", + "state": "drawer-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Job Applications\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(4) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(5) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Job email\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Career\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Career profile\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Career\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"CV Builder\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(4) > .MuiList-padding.css-k1qkeu[aria-label=\"Insights\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-j56oom.MuiListItemButton-root[aria-label=\"Analytics\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Audit log\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Users\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-j56oom.MuiListItemButton-root[aria-label=\"System\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .Mui-selected[aria-current=\"page\"][aria-label=\"Settings\"] > .MuiListItemText-root.css-a2y5gf > .css-12qg13c.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Settings\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Settings\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] light-en command list, keyboard and no-write actions", + "state": "commands-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-rounded" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] light-en command list, keyboard and no-write actions", + "state": "commands-empty-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] light-en utility search and notification states", + "state": "utility-error-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] light-en utility search and notification states", + "state": "utility-notifications-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + ".MuiPaper-elevation8" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] light-en real Tooltip contrast and open-toast action access", + "state": "redo-tooltip-light-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] light-en real Tooltip contrast and open-toast action access", + "state": "shell-tooltip-light-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] light-en grouped shell, rail menu and route focus", + "state": "grouped-shell-light-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] light-en grouped shell, rail menu and route focus", + "state": "grouped-mobile-light-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] light-nb mobile labels, focus and admin reflow", + "state": "account-metadata-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".css-1bb2m2l" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] light-nb mobile labels, focus and admin reflow", + "state": "drawer-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Jobbsøknader\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(4) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(5) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Jobb-e-post\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Karriere\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Karriereprofil\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Karriere\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"CV-bygger\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(4) > .MuiList-padding.css-k1qkeu[aria-label=\"Innsikt\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-j56oom.MuiListItemButton-root[aria-label=\"Analyse\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Revisjonslogg\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Brukere\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-j56oom.MuiListItemButton-root[aria-label=\"System\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .Mui-selected[aria-current=\"page\"][aria-label=\"Innstillinger\"] > .MuiListItemText-root.css-a2y5gf > .css-12qg13c.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Innstillinger\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Innstillinger\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] light-nb command list, keyboard and no-write actions", + "state": "commands-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-rounded" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] light-nb command list, keyboard and no-write actions", + "state": "commands-empty-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] light-nb utility search and notification states", + "state": "utility-error-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] light-nb utility search and notification states", + "state": "utility-notifications-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + ".MuiPaper-elevation8" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] light-nb real Tooltip contrast and open-toast action access", + "state": "redo-tooltip-light-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] light-nb real Tooltip contrast and open-toast action access", + "state": "shell-tooltip-light-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] light-nb grouped shell, rail menu and route focus", + "state": "grouped-shell-light-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] light-nb grouped shell, rail menu and route focus", + "state": "grouped-mobile-light-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] dark-en mobile labels, focus and admin reflow", + "state": "account-metadata-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".css-1bb2m2l" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] dark-en mobile labels, focus and admin reflow", + "state": "drawer-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Job Applications\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(4) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Job Applications\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(5) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Job search\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Job email\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Career\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Career profile\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Career\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"CV Builder\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(4) > .MuiList-padding.css-k1qkeu[aria-label=\"Insights\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-j56oom.MuiListItemButton-root[aria-label=\"Analytics\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Audit log\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Users\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-j56oom.MuiListItemButton-root[aria-label=\"System\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .Mui-selected[aria-current=\"page\"][aria-label=\"Settings\"] > .MuiListItemText-root.css-a2y5gf > .css-12qg13c.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Settings\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Account\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Settings\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] dark-en command list, keyboard and no-write actions", + "state": "commands-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-rounded" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] dark-en command list, keyboard and no-write actions", + "state": "commands-empty-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] dark-en utility search and notification states", + "state": "utility-error-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] dark-en utility search and notification states", + "state": "utility-notifications-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + ".MuiPaper-elevation8" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] dark-en real Tooltip contrast and open-toast action access", + "state": "redo-tooltip-dark-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] dark-en real Tooltip contrast and open-toast action access", + "state": "shell-tooltip-dark-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] dark-en grouped shell, rail menu and route focus", + "state": "grouped-shell-dark-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] dark-en grouped shell, rail menu and route focus", + "state": "grouped-mobile-dark-en-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] dark-nb mobile labels, focus and admin reflow", + "state": "account-metadata-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".css-1bb2m2l" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 E08 A03] dark-nb mobile labels, focus and admin reflow", + "state": "drawer-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".Mui-focusVisible > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Jobbsøknader\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(4) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-1rv7atp[aria-label=\"Jobbsøknader\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(5) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Jobbsøk\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Jobb-e-post\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Karriere\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Karriereprofil\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(3) > .MuiList-padding.css-k1qkeu[aria-label=\"Karriere\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"CV-bygger\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-184269b.MuiBox-root > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(4) > .MuiList-padding.css-k1qkeu[aria-label=\"Innsikt\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-j56oom.MuiListItemButton-root[aria-label=\"Analyse\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-j56oom.MuiListItemButton-root[aria-label=\"Revisjonslogg\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-j56oom.MuiListItemButton-root[aria-label=\"Brukere\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(1) > .MuiList-padding.css-k1qkeu[aria-label=\"Admin\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters:nth-child(3) > .css-j56oom.MuiListItemButton-root[aria-label=\"System\"] > .MuiListItemText-root.css-a2y5gf > .css-1e345qr.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .Mui-selected[aria-current=\"page\"][aria-label=\"Innstillinger\"] > .MuiListItemText-root.css-a2y5gf > .css-12qg13c.MuiTypography-body1.MuiListItemText-primary" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Innstillinger\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(1) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ], + [ + ".MuiPaper-elevation16 > .css-1vpgucn > .css-6zugs3.MuiBox-root > .css-r91acf.MuiBox-root:nth-child(2) > .MuiList-padding.css-k1qkeu[aria-label=\"Konto\"] > .css-hapf9j.MuiListItem-root.MuiListItem-gutters > .css-1rv7atp[aria-label=\"Innstillinger\"] > .css-1ohqk82.MuiListItem-root.MuiListItem-gutters:nth-child(2) > .css-m9zpd7.MuiListItemButton-root.MuiListItemButton-gutters > .MuiListItemText-root.css-a2y5gf > .css-1x12d21.MuiTypography-body2" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] dark-nb command list, keyboard and no-write actions", + "state": "commands-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-rounded" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E07 J03 J08] dark-nb command list, keyboard and no-write actions", + "state": "commands-empty-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] dark-nb utility search and notification states", + "state": "utility-error-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-valid-attr-value", + "targets": [ + [ + ".MuiPaper-elevation24" + ] + ] + } + ] + }, + { + "case": "[P5-02 PRES-E07 E08 E09 S02] dark-nb utility search and notification states", + "state": "utility-notifications-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-prohibited-attr", + "targets": [ + [ + ".MuiPaper-elevation8" + ] + ] + } + ] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] dark-nb real Tooltip contrast and open-toast action access", + "state": "redo-tooltip-dark-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-00 PRES-E08 C06 S05] dark-nb real Tooltip contrast and open-toast action access", + "state": "shell-tooltip-dark-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] dark-nb grouped shell, rail menu and route focus", + "state": "grouped-shell-dark-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[P5-01 PRES-E07 E08 A03] dark-nb grouped shell, rail menu and route focus", + "state": "grouped-mobile-dark-nb-axe", + "violations": [], + "incomplete": [] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "desktop-comfortable-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "desktop-compact-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "phone-comfortable-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + ".MuiPopover-root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_4e_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_4h_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiButton-text" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-14z6lsx" + ], + [ + ".Mui-focusVisible" + ], + [ + ".css-14mgqxp > .MuiFormControlLabel-label.css-1k1e65w.MuiTypography-body1" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "phone-compact-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_a0_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_a3_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-fkab0k" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "empty-trash-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_d_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "state": "list-error-light-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiSelect-outlined.css-1ehla7j[aria-labelledby=\"job-table-density-label\"]" + ] + ] + }, + { + "id": "th-has-data-cells", + "targets": [ + [ + "table" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "desktop-comfortable-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "desktop-compact-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "phone-comfortable-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + ".MuiPopover-root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_4e_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_4h_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiButton-text" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-14z6lsx" + ], + [ + ".Mui-focusVisible" + ], + [ + ".css-14mgqxp > .MuiFormControlLabel-label.css-1k1e65w.MuiTypography-body1" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "phone-compact-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_a0_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_a3_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "empty-trash-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_d_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "state": "list-error-light-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + "#menu-" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiSelect-outlined.css-1ehla7j[aria-labelledby=\"job-table-density-label\"]" + ] + ] + }, + { + "id": "th-has-data-cells", + "targets": [ + [ + "table" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "desktop-comfortable-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "desktop-compact-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "phone-comfortable-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + ".MuiPopover-root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_4e_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_4h_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiButton-text" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-14z6lsx" + ], + [ + ".Mui-focusVisible" + ], + [ + ".css-14mgqxp > .MuiFormControlLabel-label.css-1k1e65w.MuiTypography-body1" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "phone-compact-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_a0_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_a3_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-fkab0k" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "empty-trash-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_d_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "state": "list-error-dark-en-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + }, + { + "id": "th-has-data-cells", + "targets": [ + [ + "table" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "desktop-comfortable-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "desktop-compact-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-98liy8 > .css-1laywfi > .css-ubcfx2.MuiBox-root > .MuiChip-filled.MuiChip-colorWarning.MuiChip-clickableColorWarning > .css-4y436t.MuiChip-label.MuiChip-labelSmall" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "phone-comfortable-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "aria-hidden-focus", + "targets": [ + [ + ".MuiPopover-root" + ] + ] + }, + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_4e_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_4h_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + ".MuiButton-text" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ], + [ + ".css-14z6lsx" + ], + [ + ".Mui-focusVisible" + ], + [ + ".css-14mgqxp > .MuiFormControlLabel-label.css-1k1e65w.MuiTypography-body1" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "phone-compact-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_a0_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_a3_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "empty-trash-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_d_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + } + ] + }, + { + "case": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "state": "list-error-dark-nb-axe", + "violations": [], + "incomplete": [ + { + "id": "color-contrast", + "targets": [ + [ + ".MuiBadge-badge" + ], + [ + "#_r_g_" + ], + [ + "div[aria-labelledby=\"job-table-status-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-company-label\"]" + ], + [ + "#_r_j_" + ], + [ + "div[aria-labelledby=\"job-table-readiness-label\"]" + ], + [ + "div[aria-labelledby=\"job-table-density-label\"]" + ] + ] + }, + { + "id": "th-has-data-cells", + "targets": [ + [ + "table" + ] + ] + } + ] + } + ] +} diff --git a/docs/redesign/phase-5/p5-10/evidence/browser-summary.json b/docs/redesign/phase-5/p5-10/evidence/browser-summary.json new file mode 100644 index 0000000..25e3d5b --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/browser-summary.json @@ -0,0 +1,1284 @@ +{ + "stats": { + "startTime": "2026-10-07T11:30:01.797Z", + "duration": 1069231.776, + "expected": 106, + "skipped": 0, + "unexpected": 0, + "flaky": 0 + }, + "cases": [ + { + "file": "accessibility.spec.ts", + "title": "public entry points meet automated WCAG A and AA checks", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2740 + } + ] + }, + { + "file": "accessibility.spec.ts", + "title": "primary authenticated workspaces meet automated WCAG A and AA checks", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10153 + } + ] + }, + { + "file": "account-isolation.spec.ts", + "title": "retained profile request from A cannot write using B cookies and fresh B CSRF", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1096 + } + ] + }, + { + "file": "account-isolation.spec.ts", + "title": "missing and forged session contexts fail closed while same-account profile saves work", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 598 + } + ] + }, + { + "file": "account-isolation.spec.ts", + "title": "crafted CV identifiers cannot cross read update delete or job-association ownership", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1021 + } + ] + }, + { + "file": "account-isolation.spec.ts", + "title": "[P5-00 PRES-E05 E07 E08] account switch disposes open command, account and notification surfaces", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 6834 + } + ] + }, + { + "file": "account-isolation.spec.ts", + "title": "two tabs discard A's private form before B can use it, including Back navigation", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 5999 + } + ] + }, + { + "file": "analytics-presentation.spec.ts", + "title": "[PRES-S01 S02 E07 E08 E09 J05 J09] Analytics native reports, direct entry, period, drill-down and owner isolation", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 20574 + } + ] + }, + { + "file": "analytics-presentation.spec.ts", + "title": "[PRES-S01 E08] Analytics independent loading and failure states never masquerade as empty reports", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3148 + } + ] + }, + { + "file": "board-presentation.spec.ts", + "title": "[PRES-J07 J05 W01 W02 E07 E08 E09] Board query membership matches Table and preserves moves, focus and route", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 25023 + } + ] + }, + { + "file": "board-presentation.spec.ts", + "title": "[PRES-J05 J07 E07 W01] legacy Board replaces history and preserves query, hash and route state; default Jobs stays Table", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1491 + } + ] + }, + { + "file": "board-presentation.spec.ts", + "title": "[PRES-J07 E08] Board loading, retryable error and fully empty columns", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2863 + } + ] + }, + { + "file": "builder-preview-keyboard.spec.ts", + "title": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/en preview keyboard, pagination and responsive state", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 20898 + } + ] + }, + { + "file": "builder-preview-keyboard.spec.ts", + "title": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/nb preview keyboard, pagination and responsive state", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 20442 + } + ] + }, + { + "file": "builder-preview-keyboard.spec.ts", + "title": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] light/nb preview keyboard, pagination and responsive state", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19459 + } + ] + }, + { + "file": "builder-preview-keyboard.spec.ts", + "title": "[PRES-C06 PRES-C07 PRES-C10 PRES-E08] dark/en preview keyboard, pagination and responsive state", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 18085 + } + ] + }, + { + "file": "csv-export.spec.ts", + "title": "CSV export has safe cells and headers, and browser download preserves its UTF-8 bytes", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3640 + } + ] + }, + { + "file": "cv-editor-frame.spec.ts", + "title": "[PRES-C05 C06 C07 C10 W05 E08] light/en CV frame navigation, actions and pending editing", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 20842 + } + ] + }, + { + "file": "cv-editor-frame.spec.ts", + "title": "[PRES-C05 C06 C07 C10 W05 E08] dark/nb CV frame navigation, actions and pending editing", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 21118 + } + ] + }, + { + "file": "cv-editor-frame.spec.ts", + "title": "[PRES-C05 C06 C07 C10 W05 E08] light/nb CV frame navigation, actions and pending editing", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 21589 + } + ] + }, + { + "file": "cv-editor-frame.spec.ts", + "title": "[PRES-C05 C06 C07 C10 W05 E08] dark/en CV frame navigation, actions and pending editing", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19881 + } + ] + }, + { + "file": "cv-pagination.spec.ts", + "title": "[PRES-C09 C12] original flowing/boundary fixtures retain native PDF page membership", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 598 + } + ] + }, + { + "file": "cv-pagination.spec.ts", + "title": "[PRES-C06 C09] pagination waits for image layout and publishes one settled measurement", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 261 + } + ] + }, + { + "file": "cv-readiness.spec.ts", + "title": "[PRES-C06 C08 C09 C12] native preview/PDF fidelity corpus records unchanged output at fixed settings", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 46582 + } + ] + }, + { + "file": "cv-readiness.spec.ts", + "title": "[PRES-C10 E05] independent authenticated clients cannot save or restore a stale CV revision", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 362 + } + ] + }, + { + "file": "cv-readiness.spec.ts", + "title": "[PRES-C06 C10 E08] stale editor retains and downloads its draft; reviewed reload resumes versioned saves", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3334 + } + ] + }, + { + "file": "cv-section-scope.spec.ts", + "title": "[PRES-C05 C07 C10 W05 E08] light/en CV field scope, source resets, entry order and custom content", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 31308 + } + ] + }, + { + "file": "cv-section-scope.spec.ts", + "title": "[PRES-C05 C07 C10 W05 E08] dark/nb CV field scope, source resets, entry order and custom content", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 31455 + } + ] + }, + { + "file": "cv-section-scope.spec.ts", + "title": "[PRES-C05 C07 C10 W05 E08] light/nb CV field scope, source resets, entry order and custom content", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 31740 + } + ] + }, + { + "file": "cv-section-scope.spec.ts", + "title": "[PRES-C05 C07 C10 W05 E08] dark/en CV field scope, source resets, entry order and custom content", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 31639 + } + ] + }, + { + "file": "dashboard-presentation.spec.ts", + "title": "[PRES-S01 S02 E07 E08 E09] Dashboard native data, visibility and responsive presentation", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 21677 + } + ] + }, + { + "file": "dashboard-presentation.spec.ts", + "title": "[PRES-S01 E08] Dashboard loading and independent failed resources retain retry and exact values", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2932 + } + ] + }, + { + "file": "job-discovery.spec.ts", + "title": "discovery remains usable across widths and opens the reviewed import", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3871 + } + ] + }, + { + "file": "job-overview-presentation.spec.ts", + "title": "[PRES-W01 W02 W03 J05 E08 E09] native Job header/Overview retains actions, custom status, aliases and mobile progress keyboard access", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12491 + } + ] + }, + { + "file": "job-overview-presentation.spec.ts", + "title": "[PRES-W01 W02 E08] Job Overview loading, failed read, retry and unavailable resource remain explicit", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1584 + } + ] + }, + { + "file": "job-sections-presentation.spec.ts", + "title": "[PRES-W01 W08 M01 E08] Job section loading and partial read failures stay explicit and recover locally", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 7000 + } + ] + }, + { + "file": "job-sections-presentation.spec.ts", + "title": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, light)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 23239 + } + ] + }, + { + "file": "job-sections-presentation.spec.ts", + "title": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (en, dark)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19966 + } + ] + }, + { + "file": "job-sections-presentation.spec.ts", + "title": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (nb, light)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19908 + } + ] + }, + { + "file": "job-sections-presentation.spec.ts", + "title": "[PRES-W01–W11 E08 E09] native Job sections retain drafts, frozen documents, tasks and history (nb, dark)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19904 + } + ] + }, + { + "file": "kanban-theme.spec.ts", + "title": "kanban columns use dark theme surfaces", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3497 + } + ] + }, + { + "file": "named-controls-modal-state.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/en/1440 named controls, modal keyboard and retained draft", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10839 + } + ] + }, + { + "file": "named-controls-modal-state.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/nb/1440 named controls, modal keyboard and retained draft", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10708 + } + ] + }, + { + "file": "named-controls-modal-state.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] light/nb/390 named controls, modal keyboard and retained draft", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10257 + } + ] + }, + { + "file": "named-controls-modal-state.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J08 PRES-C08 PRES-C09 PRES-W06 PRES-W08] dark/en/390 named controls, modal keyboard and retained draft", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10123 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-C01 PRES-C06 PRES-C07 PRES-C10] mobile CV override persists without changing the canonical profile or sibling CV", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2964 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-W01 PRES-W05 PRES-W06 PRES-W07 PRES-W08] legacy workspace preserves frozen documents after current sources change", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2955 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (en, light)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 13552 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (en, dark)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 13907 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (nb, light)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 13706 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-W01 PRES-W04 PRES-W08 PRES-E08 PRES-E09] native workspace aliases, keyboard sections and history retain context (nb, dark)", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 13924 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-S03 PRES-W11] responsive settings navigation keeps rule edits and persists notification preferences", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3256 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-S03] rule changes persist through the real API", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 344 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-E07 PRES-W01 PRES-J04] keyboard command navigation and legacy workspace entry preserve the selected job", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2567 + } + ] + }, + { + "file": "redesign-preservation.spec.ts", + "title": "[PRES-A01 PRES-S04 PRES-E07] non-admin navigation cannot grant API privileges or unlock CV AI", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2726 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] light/en/1440 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4865 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] light/en/390 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4660 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] light/nb/1440 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4857 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] light/nb/390 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4743 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J05 PRES-J07] light loaded status semantics, navigation and command focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2661 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] light loaded CV tabs, selects and settings", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11419 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] dark/en/1440 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4856 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] dark/en/390 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4661 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] dark/nb/1440 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4821 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-J08] dark/nb/390 loading → error → retry → empty → populated", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4694 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E07 PRES-E08 PRES-J05 PRES-J07] dark loaded status semantics, navigation and command focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2830 + } + ] + }, + { + "file": "semantic-foundations.spec.ts", + "title": "[PRES-E08 PRES-C06 PRES-C07 PRES-C08 PRES-C09 PRES-C11 PRES-S03] dark loaded CV tabs, selects and settings", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11830 + } + ] + }, + { + "file": "settings-page-layout.spec.ts", + "title": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/en Settings headings, reflow and retained actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12616 + } + ] + }, + { + "file": "settings-page-layout.spec.ts", + "title": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] light/nb Settings headings, reflow and retained actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12524 + } + ] + }, + { + "file": "settings-page-layout.spec.ts", + "title": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/en Settings headings, reflow and retained actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12343 + } + ] + }, + { + "file": "settings-page-layout.spec.ts", + "title": "[PRES-E07 E08 E09 S03 S04 S05 J05 J10 M06 W11] dark/nb Settings headings, reflow and retained actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12363 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E08 A03] light-en mobile labels, focus and admin reflow", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11501 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 J03 J08] light-en command list, keyboard and no-write actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4189 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-02 PRES-E07 E08 E09 S02] light-en utility search and notification states", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3424 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E08 C06 S05] light-en real Tooltip contrast and open-toast action access", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11175 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-01 PRES-E07 E08 A03] light-en grouped shell, rail menu and route focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3789 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E09 C06 S02 S03] light-en dirty editor survives shell utilities and cancel", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 5125 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E08 A03] light-nb mobile labels, focus and admin reflow", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11492 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 J03 J08] light-nb command list, keyboard and no-write actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4111 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-02 PRES-E07 E08 E09 S02] light-nb utility search and notification states", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3336 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E08 C06 S05] light-nb real Tooltip contrast and open-toast action access", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 10821 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-01 PRES-E07 E08 A03] light-nb grouped shell, rail menu and route focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3928 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E08 A03] dark-en mobile labels, focus and admin reflow", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11787 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 J03 J08] dark-en command list, keyboard and no-write actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4543 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-02 PRES-E07 E08 E09 S02] dark-en utility search and notification states", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3502 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E08 C06 S05] dark-en real Tooltip contrast and open-toast action access", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11272 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-01 PRES-E07 E08 A03] dark-en grouped shell, rail menu and route focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3939 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E08 A03] dark-nb mobile labels, focus and admin reflow", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 12241 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 J03 J08] dark-nb command list, keyboard and no-write actions", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 4154 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-02 PRES-E07 E08 E09 S02] dark-nb utility search and notification states", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3518 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E08 C06 S05] dark-nb real Tooltip contrast and open-toast action access", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11650 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-01 PRES-E07 E08 A03] dark-nb grouped shell, rail menu and route focus", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 3925 + } + ] + }, + { + "file": "shell-readiness.spec.ts", + "title": "[P5-00 PRES-E07 E09 C06 S02 S03] dark-nb dirty editor survives shell utilities and cancel", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 6238 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "API liveness and database readiness are separate public probes", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 114 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "public plans stay honest, responsive and keyboard accessible", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2782 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "login establishes an authenticated session", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1278 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "a Free account keeps manual work available while AI actions stay honestly locked", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 5255 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "a saved job can be created through the reviewed UI flow", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 2299 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "the dedicated application workspace survives deep links, long data and unsaved navigation", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 8112 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "Career Workspace loads from the authenticated application shell", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 11973 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "a public CV renders anonymously and downloads as PDF", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 1597 + } + ] + }, + { + "file": "smoke.spec.ts", + "title": "the Code template exports a long structured CV as searchable multi-page PDF", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 6830 + } + ] + }, + { + "file": "table-density.spec.ts", + "title": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/en table and cards preserve behavior at both densities", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 19438 + } + ] + }, + { + "file": "table-density.spec.ts", + "title": "[PRES-J05 J06 W01 W02 S03 E08 E09] light/nb table and cards preserve behavior at both densities", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 18403 + } + ] + }, + { + "file": "table-density.spec.ts", + "title": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/en table and cards preserve behavior at both densities", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 18487 + } + ] + }, + { + "file": "table-density.spec.ts", + "title": "[PRES-J05 J06 W01 W02 S03 E08 E09] dark/nb table and cards preserve behavior at both densities", + "status": "expected", + "expectedStatus": "passed", + "attempts": [ + { + "status": "passed", + "durationMs": 18523 + } + ] + } + ] +} diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-320.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-320.png new file mode 100644 index 0000000..31fbe8c Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-populated.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-populated.png new file mode 100644 index 0000000..f6b63e9 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-custom-cv-only-populated.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-customized-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-customized-entry.png new file mode 100644 index 0000000..bd85e85 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-customized-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-reset-omitted-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-reset-omitted-entry.png new file mode 100644 index 0000000..32a56f0 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-reset-omitted-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-source-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-source-entry.png new file mode 100644 index 0000000..4ea67ec Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-desktop-source-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-en-scoped-entry-320.png b/docs/redesign/phase-5/p5-10/evidence/dark-en-scoped-entry-320.png new file mode 100644 index 0000000..a1fcf6d Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-en-scoped-entry-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-320.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-320.png new file mode 100644 index 0000000..ff291da Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-populated.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-populated.png new file mode 100644 index 0000000..e88689c Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-cv-only-populated.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-entry-delete-confirmation.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-entry-delete-confirmation.png new file mode 100644 index 0000000..433931f Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-custom-entry-delete-confirmation.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-customized-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-customized-entry.png new file mode 100644 index 0000000..0def712 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-customized-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-reset-omitted-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-reset-omitted-entry.png new file mode 100644 index 0000000..77f25e6 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-reset-omitted-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-source-entry.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-source-entry.png new file mode 100644 index 0000000..e3f644e Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-desktop-source-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-name-validation.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-name-validation.png new file mode 100644 index 0000000..8e9dc7d Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-name-validation.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-320.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-320.png new file mode 100644 index 0000000..86c0ceb Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-768.png b/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-768.png new file mode 100644 index 0000000..b00b72f Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/dark-nb-scoped-entry-768.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/fidelity-results.json b/docs/redesign/phase-5/p5-10/evidence/fidelity-results.json new file mode 100644 index 0000000..a461893 --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/fidelity-results.json @@ -0,0 +1,2986 @@ +{ + "tolerances": { + "pageDimensionMm": 0.5, + "positionMm": 2, + "fontPt": 0.5, + "rgbComponent": 0.00392156862745098, + "pageCountAndMembership": "exact" + }, + "browserVersion": "151.0.7922.34", + "passed": 16, + "total": 16, + "fixtures": [ + { + "fixture": "default-modern", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.8846697945210119, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1543915080462135, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9466801572814106, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9549481108404655, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.224669824365667, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1419864412927418, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9218730223856111, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC# React Norsk Accessibility\nLANGUAGES\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 50.27343534527347, + 404.4988765624195, + 549.1329995190109 + ] + } + ] + }, + { + "fixture": "default-minimal", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.23840431700673748, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.2504673297077049, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3210852416595337, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.32935319521854844, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.34141620791947574, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.27940338673890797, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3376192305484088, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC# · React · Norsk · Accessibility\nLanguages\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.08593547808607, + 412.1041846030788, + 548.0121011340744 + ] + } + ] + }, + { + "fixture": "default-executive", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+Georgia-Bold", + "BAAAAA+Georgia" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.18982195911552188, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.23753521760940605, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.30557576736205694, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.31384372092107166, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.3615569794149959, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.33261704182818697, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3882555234384297, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.921568627450467e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC# · React · Norsk · Accessibility\nLanguages\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.919431563356966, + 404.3816489774241, + 563.8316439427281 + ] + } + ] + }, + { + "fixture": "default-technical", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.2623550758939605, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 0.3343444905847756, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.27475597545992514, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.1465979824043807, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 0.27646518867508024, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 0.28059828902232004, + "fontDeltaPt": 4.3750003442255547e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.022572538480772168, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Professional Summary\nFixture R01 Builds reliable and accessible career software using documented\nevidence.\nCareer platform\nengineer\nProfessional Experience\nE01 Platform engineer\nase@example.tes\nt Nordlys Fixture AS\nOslo, Norge B01 Delivered accessible application workflows with documented\noutcomes.\nSkills B02 Maintained reliable APIs and verified releases.\nC#\nEducation\nReact\nE02 Computer science\nNorsk\nFixture University\nAccessibility\nProjects\nLanguages\nP01 Evidence workspace\nNorsk — Native B03 Created a source-grounded review workflow.", + "glyphBoundsPt": [ + 45.35156061035156, + 46.45019332457525, + 526.7734687109811, + 344.76210960282447 + ] + } + ] + }, + { + "fixture": "default-ats-classic", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.21773375511438012, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.20912620592295006, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.2797441178747789, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.28801207143383367, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.27940452224240364, + "fontDeltaPt": 0.005025608125045267, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.19672113916945838, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.2549369829789592, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.08593547808607, + 412.1041846030788, + 600.5120989465744 + ] + } + ] + }, + { + "fixture": "default-nordic", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.8350616432189417, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1254537201990138, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.917742369434211, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.946680686448096, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.2164023999732976, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1337190169003926, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9136055979932417, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "PROFESSIONAL SUMMARY Åse\nR01 Builds reliable and accessible career software using documented Fixture\nevidence.\nCareer platform\nengineer\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer ase@example.tes\nt\nNordlys Fixture AS\nOslo, Norge\nB01 Delivered accessible application workflows with documented\noutcomes.\nSKILLS\nB02 Maintained reliable APIs and verified releases.\nC# React\nEDUCATION\nNorsk\nE02 Computer science\nFixture University Accessibility\nPROJECTS LANGUAGES\nP01 Evidence workspace Norsk — Native\nB03 Created a source-grounded review workflow.", + "glyphBoundsPt": [ + 45.35156061035156, + 48.609958661877954, + 549.9178689110568, + 371.50912266022937 + ] + } + ] + }, + { + "fixture": "default-elegant", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+SegoeUI", + "BAAAAA+Georgia-Bold", + "CAAAAA+SegoeUI-Bold" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 1.0541681506842109, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1709275474559542, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9632161966911514, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.9714841502501661, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.0882435470219096, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 1.1171811695045502, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 3.1372549019609286e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.8970677505974194, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 3.1372549019609286e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "CURRICULUM VITAE\nÅse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC# React Norsk Accessibility\nLanguages\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.632322215319846, + 404.4988765624195, + 600.1329973940109 + ] + } + ] + }, + { + "fixture": "default-creative", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 1.0624379673508535, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 1.3156230461538534, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.8433283730800265, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 0.8722666900939117, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 1.104781405442041, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.9270142247130983e-06, + "deltaYmm": 1.2494743465010878, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 1.764705882352502e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.1144274124177778e-06, + "deltaYmm": 1.029360927593937, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 1.764705882352502e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Professional Summary\nFixture R01 Builds reliable and accessible career software using documented\nevidence.\nCareer platform\nengineer\nProfessional Experience\nase@example.tes E01 Platform engineer\nt Nordlys Fixture AS\nOslo, Norge B01 Delivered accessible application workflows with documented\noutcomes.\nSkills B02 Maintained reliable APIs and verified releases.\nC# React\nEducation\nNorsk\nE02 Computer science\nAccessibility Fixture University\nProjects\nLanguages\nP01 Evidence workspace\nNorsk — Native\nB03 Created a source-grounded review workflow.", + "glyphBoundsPt": [ + 45.35156061035156, + 48.7617166882618, + 536.2813995678008, + 363.25912300397937 + ] + } + ] + }, + { + "fixture": "default-code", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI", + "CAAAAA+Consolas-Bold" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3408694274723905, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4617630733497646, + "fontDeltaPt": 0.005025658124935717, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2623199936181995, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2747220727848567, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.395615718662311, + "fontDeltaPt": 0.005025658125049404, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4328217356761774, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2168424621946015, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\n01 — PROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\n02 — PROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\n03 — EDUCATION\nE02 Computer science\nFixture University\n04 — PROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\n05 — SKILLS\nC#\nReact\nNorsk\nAccessibility\n06 — LANGUAGES\nNorsk — Native", + "glyphBoundsPt": [ + 43.19531070019531, + 48.39990026333737, + 381.55365235795125, + 565.482412882962 + ] + } + ] + }, + { + "fixture": "long-en-minimal", + "pass": true, + "failures": [], + "previewPages": 4, + "pdfPages": 4, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.23840431700673748, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.2504673297077049, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3210852416595337, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.39136428558311953, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.1970600071977014, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.17604846061041962, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B04", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.24666637256228857, + "fontDeltaPt": 0.002475491562471177, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B05", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3169454164859145, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B06", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3872244604095003, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.39094513795416674, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.19697972759697155, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.26725877152059746, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.33753781544418326, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.31652626885694163, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B10", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3871441808087905, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B11", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.19283990242333224, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B12", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.26311894634695815, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E05", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.25857139472509827, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B13", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.32918930667692714, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B14", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3994683506004728, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B15", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.20516407221507474, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E06", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.18415252562783307, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B16", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.25477043757968193, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B17", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.32504948150330787, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B18", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3953285254269338, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.3825111350897526, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E08", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.34530344238135574, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.28329062120090825, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.34150646501022863, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test Oslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source", + "glyphBoundsPt": [ + 45.35156061035156, + 47.08593547808607, + 549.9112904894672, + 782.118578210681 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "evidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.\nE03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.", + "glyphBoundsPt": [ + 45.35156061035156, + 46.871108920993265, + 549.9112904894672, + 767.8685788044307 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "E05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented\nsource evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers.", + "glyphBoundsPt": [ + 45.35156061035156, + 47.58499322520481, + 549.9112904894672, + 683.1185823356808 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Education\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC# · React · Norsk · Accessibility\nLanguages\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.54296673904298, + 408.051991873659, + 335.76210997782437 + ] + } + ] + }, + { + "fixture": "long-nb-code", + "pass": true, + "failures": [], + "previewPages": 4, + "pdfPages": 4, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI", + "CAAAAA+Consolas-Bold" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3408694274723905, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4617630733497646, + "fontDeltaPt": 0.005025658124935717, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2623199936181995, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3491355399723557, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4359510863265321, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3542717506067425, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B04", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4194119931841813, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B05", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2416442172293136, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B06", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3284597635834698, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3293904325511838, + "fontDeltaPt": 0.005025658124935717, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3945306751286426, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.216762899173775, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3035784455279311, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2218991098081617, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B10", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2870393523856005, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B11", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3738548987397168, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B12", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.460670445093913, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E05", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3789911093741036, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B13", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4441313519515624, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B14", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2663635759967347, + "fontDeltaPt": 0.0024756165624957305, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B15", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.328301993531498, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E06", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2466226578117086, + "fontDeltaPt": 0.005025658125049404, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B16", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3117629003891271, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B17", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3985784467433235, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B18", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2208106707884159, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.300361395919303, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E08", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4409206743915568, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "P01", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2135433690963993, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2621474179238674, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nPlattformutvikler med erfaring fra tilgjengelige, pålitelige arbeidsflyter\nase@example.test Oslo, Norge\n01 — PROFIL\nR01 Builds reliable and accessible career software using documented evidence.\n02 — ARBEIDSERFARING\nE01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nB01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2\nB04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.", + "glyphBoundsPt": [ + 43.19531070019531, + 48.39990026333737, + 550.4331237820651, + 782.3585195678572 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "E03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4\nB10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5\nB13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.", + "glyphBoundsPt": [ + 43.19531070019531, + 46.9638995529009, + 550.4331237820651, + 779.3585196928572 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "B15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og\ntydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\n03 — UTDANNING\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\n04 — PROSJEKTER\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\n05 — FERDIGHETER\nC#\nReact\nNorsk\nAccessibility", + "glyphBoundsPt": [ + 43.19531070019531, + 46.9610504344198, + 550.4331237820651, + 758.3585205678573 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "06 — SPRÅK\nNorsk — Native", + "glyphBoundsPt": [ + 43.19531070019531, + 45.69976097835922, + 112.36207023748328, + 81.73243303921174 + ] + } + ] + }, + { + "fixture": "compact-8mm-letter", + "pass": true, + "failures": [], + "previewPages": 4, + "pdfPages": 4, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.35829410294419367, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.38689375036736284, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.45751166231919166, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.5567295193504602, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.39136405407268465, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.5357174325722038, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B04", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.3417520222150287, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B05", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.4409698792462772, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B06", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.5401877362775457, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.4406394889090288, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.5112574008608577, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.3458919355830621, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.44510979261433065, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.32487984880482573, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B10", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.39549776075667464, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B11", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.49471561778794315, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B12", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.3293501525101877, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E05", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.4737035310097269, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B13", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.5443214429615557, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B14", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.37895597768380024, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B15", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.45338030381237815, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E06", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.33315036000289333, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B16", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.40376827195472215, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B17", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.5029861289859907, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B18", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.3376206637082352, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.5522535822251378, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E08", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.43649785574944844, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 2.731960717896855e-07, + "deltaYmm": 0.39102166929104226, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 4.6060926701427556e-07, + "deltaYmm": 0.44923751310052307, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 215.89999999999998, + 279.4 + ], + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test Oslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.", + "glyphBoundsPt": [ + 18.58593672558594, + 20.835936571835987, + 587.6313359927984, + 768.6185787731808 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 215.89999999999998, + 279.4 + ], + "text": "E03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.\nE05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.", + "glyphBoundsPt": [ + 18.58593672558594, + 21.334994318954728, + 587.6313359927984, + 771.6185786481808 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 215.89999999999998, + 279.4 + ], + "text": "B15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable\nworkflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nDeveloped reliable workflows with accessible navigation, documented source evidence and explicit review for people\nmanaging their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit\nreview for people managing their careers.\nEDUCATION\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility", + "glyphBoundsPt": [ + 18.58593672558594, + 20.62111001474375, + 587.6313359927984, + 720.6185807731813 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 215.89999999999998, + 279.4 + ], + "text": "LANGUAGES\nNorsk — Native", + "glyphBoundsPt": [ + 18.58593672558594, + 21.211522291760616, + 95.17926274729487, + 57.512121571574085 + ] + } + ] + }, + { + "fixture": "roomy-28mm-nb", + "pass": true, + "failures": [], + "previewPages": 5, + "pdfPages": 5, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.012826464659883, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.3610962450254052, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.14511659894808, + "fontDeltaPt": 0.0024754915624427554, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.2236635192605956, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0376271172640672, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.2701393852163572, + "fontDeltaPt": 0.005025608125002634, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0954271758578251, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B05", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.1739740961703409, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B06", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 0.9879376941738325, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.4850332844351664, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0044703160488773, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0830172363613528, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.1615641566738284, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E04", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.3113203576990557, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B10", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0953407116217306, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B11", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.1738876319342262, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B12", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 0.9878512299376777, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E05", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.4849468201989915, + "fontDeltaPt": 0.005025608125002634, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B13", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0952605091911456, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B14", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.1738074295036212, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B15", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 0.9877710275070728, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E06", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.4848666177684868, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B16", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0043036493820774, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B17", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.0828505696947937, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B18", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.1613974900073496, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.4930542145565866, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E08", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.402102966119161, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "P01", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 1.376660156064228e-06, + "deltaYmm": 1.493052241205946, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 1.564073353795455e-06, + "deltaYmm": 1.103440091309301, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nPlattformutvikler med erfaring fra tilgjengelige, pålitelige arbeidsflyter\nase@example.test Oslo, Norge\nPROFIL\nR01 Builds reliable and accessible career software using documented evidence.\nARBEIDSERFARING\nE01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nB01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2", + "glyphBoundsPt": [ + 93.65624609765625, + 99.02343331402346, + 499.10543914547947, + 743.5091071602294 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "B04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige", + "glyphBoundsPt": [ + 93.65624609765625, + 98.26163412054177, + 499.10543914547947, + 742.0091072227292 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4\nB10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5", + "glyphBoundsPt": [ + 93.65624609765625, + 98.26163412054177, + 499.10543914547947, + 733.7591075664791 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "B13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige", + "glyphBoundsPt": [ + 93.65624609765625, + 98.26163412054154, + 499.10543914547947, + 742.0091072227292 + ] + }, + { + "page": 5, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag\nog tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med\ntilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert\nkildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige\narbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige\nvurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUTDANNING\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROSJEKTER\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nFERDIGHETER\nC# React Norsk Accessibility\nSPRÅK\nNorsk — Native", + "glyphBoundsPt": [ + 93.65624609765625, + 98.26163412054132, + 499.10543914547947, + 607.6329970815107 + ] + } + ] + }, + { + "fixture": "grid-and-bubbles", + "pass": true, + "failures": [], + "previewPages": 1, + "pdfPages": 1, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT" + ], + "comparisons": [ + { + "token": "P01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.2256635021035085, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.2838793459129893, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.30834377632225735, + "fontDeltaPt": 0.00502560812510211, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3789616882741062, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.3872296418331209, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.540391718665002e-07, + "deltaYmm": 0.14745014712825316, + "fontDeltaPt": 0.002475491562499599, + "colorDelta": 4.117647058823892e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.666259766419102e-07, + "deltaYmm": 0.1595131598291805, + "fontDeltaPt": 0.005025608124988423, + "colorDelta": 4.117647058823892e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nCareer platform engineer\nase@example.test Oslo, Norge\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC# · React · Norsk · Accessibility\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nEducation\nE02 Computer science\nFixture University\nLanguages\nNorsk — Native", + "glyphBoundsPt": [ + 45.35156061035156, + 47.08593547808607, + 412.1041846030788, + 552.5121009465745 + ] + } + ] + }, + { + "fixture": "long-sidebar-nb", + "pass": true, + "failures": [], + "previewPages": 5, + "pdfPages": 5, + "fontNames": [ + "AAAAAA+Arial-BoldMT", + "BAAAAA+ArialMT", + "CAAAAA+Consolas-Bold" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.2623550758939605, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.3343444905847756, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.27475597545992514, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.12179234681410282, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.2334120404772845, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.2929966750466093, + "fontDeltaPt": 4.374999775791366e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B04", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.23340815992171868, + "fontDeltaPt": 0.0050255456249956865, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B05", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.08044453127589639, + "fontDeltaPt": 0.005025545624981476, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B06", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.01835889394947985, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.3425268508277685, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.018355013393893987, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.1299747070570957, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.2415944007203175, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.3011790352895821, + "fontDeltaPt": 4.3750000600084604e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B10", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.14643355367180483, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B11", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.25805324733492635, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B12", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.10508961868910406, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E05", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.429257575567493, + "fontDeltaPt": 4.3750003442255547e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B13", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.10508573813359841, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B14", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.21670543179680013, + "fontDeltaPt": 0.0050255456249956865, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B15", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.06374180315097785, + "fontDeltaPt": 0.0050255456249956865, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E06", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.40437386523766095, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B16", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.08020202780378645, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B17", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.19182172146690796, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B18", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.038858092821085675, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E02", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.3010139230503117, + "fontDeltaPt": 4.374999775791366e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "E08", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.3671591500468748, + "fontDeltaPt": 4.374999775791366e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "P01", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 3.49987250353302e-06, + "deltaYmm": 0.5117790544736865, + "fontDeltaPt": 4.3749992073571775e-07, + "colorDelta": 4.509803921570743e-05 + }, + { + "token": "B03", + "previewPage": 5, + "pdfPage": 5, + "deltaXmm": 3.687285701264247e-06, + "deltaYmm": 0.25375330393217876, + "fontDeltaPt": 0.005025545624967265, + "colorDelta": 4.509803921570743e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Profil\nFixture R01 Builds reliable and accessible career software using documented\nevidence.\nPlattformutvikler med\nerfaring fra\nArbeidserfaring\ntilgjengelige, pålitelige\narbeidsflyter E01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nase@example.test B01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\nOslo, Norge\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nFerdigheter\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nSamarbeid Norsk\nnorske arbeidssøkere.\nTilgje\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\nngelig\ndokumentert kildegrunnlag og tydelige vurderinger for norske\nhet\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nSpråk\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nNorsk — Native\nnorske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2\nB04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig", + "glyphBoundsPt": [ + 45.35156061035156, + 46.45019332457525, + 543.7773705024852, + 778.2620915403244 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nE03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4", + "glyphBoundsPt": [ + 238.10155257910156, + 46.517122179699186, + 541.6400492415406, + 788.0120911340741 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "B10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5\nB13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for", + "glyphBoundsPt": [ + 238.10155257910156, + 46.51712217969941, + 541.6400492415406, + 790.2620910403243 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon,\ndokumentert kildegrunnlag og tydelige vurderinger for norske\narbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig\nnavigasjon, dokumentert kildegrunnlag og tydelige vurderinger for\nnorske arbeidssøkere.\nUtdanning\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og\ninformasjonsarkitektur\nFixture Academy", + "glyphBoundsPt": [ + 238.10155257910156, + 46.51712217969941, + 541.6400492415406, + 737.7620932278246 + ] + }, + { + "page": 5, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Prosjekter\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.", + "glyphBoundsPt": [ + 238.10155257910156, + 47.54296673904253, + 458.26688706372056, + 94.26212004032413 + ] + } + ] + }, + { + "fixture": "unbreakable-and-boundary", + "pass": true, + "failures": [], + "previewPages": 4, + "pdfPages": 4, + "fontNames": [ + "AAAAAA+SegoeUI-Bold", + "BAAAAA+SegoeUI", + "CAAAAA+Consolas-Bold" + ], + "comparisons": [ + { + "token": "R01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3408694274723905, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4617630733497646, + "fontDeltaPt": 0.005025658124935717, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B01", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2623199936181995, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3491355399723557, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4359510863265321, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3542717506067425, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B04", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4194119931841813, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B05", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2416442172293136, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B06", + "previewPage": 1, + "pdfPage": 1, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3284597635834698, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E03", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3293904325511838, + "fontDeltaPt": 0.005025658124935717, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B07", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3945306751286426, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B08", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.216762899173775, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B09", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3035784455279311, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E04", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2218991098081617, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B10", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2870393523856005, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B11", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3738548987397168, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B12", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.460670445093913, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E05", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.3789911093741036, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B13", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.4441313519515624, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B14", + "previewPage": 2, + "pdfPage": 2, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2663635759967347, + "fontDeltaPt": 0.0024756165624957305, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B15", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.328301993531498, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E06", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2466226578117086, + "fontDeltaPt": 0.005025658125049404, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B16", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3117629003891271, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B17", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.3985784467433235, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B18", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2208106707884159, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E02", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.300361395919303, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "E08", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.4409206743915568, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "P01", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2135433690963993, + "fontDeltaPt": 0.00502565812499256, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "B03", + "previewPage": 3, + "pdfPage": 3, + "deltaXmm": 8.223442926909759e-07, + "deltaYmm": 1.2621474179238674, + "fontDeltaPt": 0.0024756165625099413, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "S09", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 1.0445529540782495e-06, + "deltaYmm": 0.6517525032163634, + "fontDeltaPt": 0.0024749615624948262, + "colorDelta": 3.725490196078429e-05 + }, + { + "token": "R09", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.2331328341564494, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + }, + { + "token": "R10", + "previewPage": 4, + "pdfPage": 4, + "deltaXmm": 6.349310999730227e-07, + "deltaYmm": 1.245533325823131, + "fontDeltaPt": 0.002475616562453098, + "colorDelta": 3.921568627450467e-05 + } + ], + "pages": [ + { + "page": 1, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test Oslo, Norge\n01 — PROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\n02 — PROFESSIONAL EXPERIENCE\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.", + "glyphBoundsPt": [ + 43.19531070019531, + 48.39990026333737, + 549.0611897192267, + 782.3585195678572 + ] + }, + { + "page": 2, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "E03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.\nE05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.", + "glyphBoundsPt": [ + 43.19531070019531, + 46.9638995529009, + 549.0611897192267, + 779.3585196928572 + ] + }, + { + "page": 3, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "B15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for\npeople managing their careers. Developed reliable workflows with accessible navigation, documented source evidence\nand explicit review for people managing their careers. Developed reliable workflows with accessible navigation,\ndocumented source evidence and explicit review for people managing their careers. Developed reliable workflows with\naccessible navigation, documented source evidence and explicit review for people managing their careers. Developed\nreliable workflows with accessible navigation, documented source evidence and explicit review for people managing\ntheir careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review\nfor people managing their careers. Developed reliable workflows with accessible navigation, documented source\nevidence and explicit review for people managing their careers. Developed reliable workflows with accessible\nnavigation, documented source evidence and explicit review for people managing their careers.\n03 — EDUCATION\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\n04 — PROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\n05 — SKILLS\nC#\nReact\nNorsk\nAccessibility", + "glyphBoundsPt": [ + 43.19531070019531, + 46.9610504344198, + 549.0611897192267, + 758.3585205678573 + ] + }, + { + "page": 4, + "dimensionsMm": [ + 209.88865255555555, + 297.01065961111107 + ], + "text": "06 — LANGUAGES\nNorsk — Native\n07 — S09 BOUNDARY CONTENT\nR09\nUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvi\ndenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreak\nableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceU\nnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvid\nenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreaka\nbleEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUn\nbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvide\nnce\nR10 Final recorded paragraph — æøå.", + "glyphBoundsPt": [ + 43.19531070019531, + 45.69976097835922, + 552.0684606989041, + 263.35854119285716 + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-320.png b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-320.png new file mode 100644 index 0000000..f2a631b Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-populated.png b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-populated.png new file mode 100644 index 0000000..5199df9 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-cv-only-populated.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-custom-entry-delete-confirmation.png b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-entry-delete-confirmation.png new file mode 100644 index 0000000..c1c2ee7 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-custom-entry-delete-confirmation.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-customized-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-customized-entry.png new file mode 100644 index 0000000..2caccc7 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-customized-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-reset-omitted-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-reset-omitted-entry.png new file mode 100644 index 0000000..c28024b Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-reset-omitted-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-source-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-source-entry.png new file mode 100644 index 0000000..a5509c3 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-desktop-source-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-name-validation.png b/docs/redesign/phase-5/p5-10/evidence/light-en-name-validation.png new file mode 100644 index 0000000..eae2ede Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-name-validation.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-320.png b/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-320.png new file mode 100644 index 0000000..dcc9c36 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-768.png b/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-768.png new file mode 100644 index 0000000..c1b9b1e Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-en-scoped-entry-768.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-320.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-320.png new file mode 100644 index 0000000..b0a7dc1 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-populated.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-populated.png new file mode 100644 index 0000000..ad973c4 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-custom-cv-only-populated.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-customized-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-customized-entry.png new file mode 100644 index 0000000..a83cf88 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-customized-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-reset-omitted-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-reset-omitted-entry.png new file mode 100644 index 0000000..4c600de Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-reset-omitted-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-source-entry.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-source-entry.png new file mode 100644 index 0000000..c9150f0 Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-desktop-source-entry.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/light-nb-scoped-entry-320.png b/docs/redesign/phase-5/p5-10/evidence/light-nb-scoped-entry-320.png new file mode 100644 index 0000000..13ccd7d Binary files /dev/null and b/docs/redesign/phase-5/p5-10/evidence/light-nb-scoped-entry-320.png differ diff --git a/docs/redesign/phase-5/p5-10/evidence/measurements.json b/docs/redesign/phase-5/p5-10/evidence/measurements.json new file mode 100644 index 0000000..548aeed --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/measurements.json @@ -0,0 +1,8540 @@ +{ + "browserVersion": "151.0.7922.34", + "fixtures": [ + { + "fixture": "default-modern", + "settings": { + "themeId": "modern", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 24.5, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 206.671875, + "rawX": 77.46875, + "rawY": 206.671875, + "page": 1, + "width": 22.359375, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 283.65625, + "rawX": 60.46875, + "rawY": 283.65625, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 329.4375, + "rawX": 77.46875, + "rawY": 329.4375, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 354.40625, + "rawX": 77.46875, + "rawY": 354.40625, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 431.390625, + "rawX": 60.46875, + "rawY": 431.390625, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 530.703125, + "rawX": 60.46875, + "rawY": 530.703125, + "page": 1, + "width": 25.875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 551.53125, + "rawX": 77.46875, + "rawY": 551.53125, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 676.640625, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 110.8125, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(255, 255, 255)", + "background": "rgb(37, 99, 235)", + "padding": "0px 60.4724px 22.6772px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 171.28125, + "width": 793.6875, + "height": 565.828125, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #2563eb; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#2563eb 28%,transparent); --cv-ink: #111827; --cv-muted: #4b5563; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Roboto, Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(37, 99, 235); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(75, 85, 99); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(75, 85, 99); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(37, 99, 235); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 10.2pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(75, 85, 99); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(75, 85, 99); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(37, 99, 235); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(37, 99, 235); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 171.28125, + "width": 672.75, + "height": 54.3125 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 248.265625, + "width": 672.75, + "height": 125.0625 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 396, + "width": 672.75, + "height": 76.640625 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 495.3125, + "width": 672.75, + "height": 75.140625 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 593.125, + "width": 672.75, + "height": 60.65625 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 676.453125, + "width": 672.75, + "height": 60.65625 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-minimal", + "settings": { + "themeId": "minimal", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 22.69999998807907, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\n\nC# · React · Norsk · Accessibility\n\nLanguages\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 210.59375, + "rawX": 77.46875, + "rawY": 210.59375, + "page": 1, + "width": 24.46875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 289.5, + "rawX": 60.46875, + "rawY": 289.5, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 334.28125, + "rawX": 77.46875, + "rawY": 334.28125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 359.25, + "rawX": 77.46875, + "rawY": 359.25, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 438.15625, + "rawX": 60.46875, + "rawY": 438.15625, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 538.390625, + "rawX": 60.46875, + "rawY": 538.390625, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 558.21875, + "rawX": 77.46875, + "rawY": 558.21875, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 677.828125, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 116.59375, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 26.4567px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 177.0625, + "width": 793.6875, + "height": 561.234375, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #111827; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#111827 28%,transparent); --cv-ink: #111827; --cv-muted: #6b7280; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Helvetica Neue\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Helvetica Neue\", Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(17, 24, 39); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(107, 114, 128); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(107, 114, 128); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 7mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 7mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(17, 24, 39); }", + ".section-title { letter-spacing: 0.01em; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.75mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(107, 114, 128); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(107, 114, 128); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 7mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(17, 24, 39); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(17, 24, 39); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 177.0625, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 254.96875, + "width": 672.75, + "height": 122.203125 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 403.625, + "width": 672.75, + "height": 73.78125 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 503.859375, + "width": 672.75, + "height": 72.28125 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 602.59375, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 680.5, + "width": 672.75, + "height": 57.796875 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-executive", + "settings": { + "themeId": "executive", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 35.3999999910593, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\n\nC# · React · Norsk · Accessibility\n\nLanguages\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 215.875, + "rawX": 77.46875, + "rawY": 215.875, + "page": 1, + "width": 23.265625, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 297.65625, + "rawX": 60.46875, + "rawY": 297.65625, + "page": 1, + "width": 28.046875, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 342.4375, + "rawX": 77.46875, + "rawY": 342.4375, + "page": 1, + "width": 22.625, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 367.40625, + "rawX": 77.46875, + "rawY": 367.40625, + "page": 1, + "width": 24.34375, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 449.1875, + "rawX": 60.46875, + "rawY": 449.1875, + "page": 1, + "width": 30.046875, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 552.296875, + "rawX": 60.46875, + "rawY": 552.296875, + "page": 1, + "width": 27.75, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 572.125, + "rawX": 77.46875, + "rawY": 572.125, + "page": 1, + "width": 24.265625, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Georgia, \"Times New Roman\", serif", + "color": "rgb(28, 25, 23)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "Georgia, \"Times New Roman\", serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(28, 25, 23)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 697.484375, + "font": "Georgia, \"Times New Roman\", serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(28, 25, 23)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 115.21875, + "font": "Georgia, \"Times New Roman\", serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(28, 25, 23)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 22.6772px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 175.6875, + "width": 793.6875, + "height": 582.265625, + "font": "Georgia, \"Times New Roman\", serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(28, 25, 23)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #7c2d12; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#7c2d12 28%,transparent); --cv-ink: #1c1917; --cv-muted: #57534e; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: Georgia, \"Times New Roman\", serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Georgia, \"Times New Roman\", serif; }", + ".name { margin: 0px; font-size: 27pt; color: rgb(28, 25, 23); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(124, 45, 18); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(87, 83, 78); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(87, 83, 78); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 24pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(124, 45, 18); }", + ".section-title { border-bottom: 1.5px solid var(--cv-accent-soft); padding-bottom: 1.5mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(87, 83, 78); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(87, 83, 78); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(124, 45, 18); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(124, 45, 18); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 175.6875, + "width": 672.75, + "height": 58.109375 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 256.46875, + "width": 672.75, + "height": 128.859375 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 408, + "width": 672.75, + "height": 80.4375 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 511.109375, + "width": 672.75, + "height": 78.9375 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 612.71875, + "width": 672.75, + "height": 58.109375 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 693.5, + "width": 672.75, + "height": 64.453125 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-technical", + "settings": { + "themeId": "technical", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 43.79999999701977, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nSkills\nC#\nReact\nNorsk\nAccessibility\nLanguages\nNorsk — Native\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.", + "tokens": [ + { + "token": "R01", + "x": 311.796875, + "y": 93.03125, + "rawX": 311.796875, + "rawY": 93.03125, + "page": 1, + "width": 23.234375, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E01", + "x": 294.796875, + "y": 181.703125, + "rawX": 294.796875, + "rawY": 181.703125, + "page": 1, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B01", + "x": 311.796875, + "y": 223.984375, + "rawX": 311.796875, + "rawY": 223.984375, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B02", + "x": 311.796875, + "y": 264.46875, + "rawX": 311.796875, + "rawY": 264.46875, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E02", + "x": 294.796875, + "y": 335.921875, + "rawX": 294.796875, + "rawY": 335.921875, + "page": 1, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "P01", + "x": 294.796875, + "y": 427.90625, + "rawX": 294.796875, + "rawY": 427.90625, + "page": 1, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B03", + "x": 311.796875, + "y": 446.9375, + "rawX": 311.796875, + "rawY": 446.9375, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 408.734375, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 60.46875, + "y": 60.46875, + "width": 113.390625, + "height": 103.5, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px", + "margin": "0px 0px 22.6772px" + }, + "main": { + "x": 234.328125, + "y": 60.46875, + "width": 559.359375, + "height": 408.734375, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": { + "x": 0, + "y": 60.46875, + "width": 234.328125, + "height": 408.734375, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(255, 255, 255)", + "background": "rgb(15, 76, 92)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #0f4c5c; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#0f4c5c 28%,transparent); --cv-ink: #102a43; --cv-muted: #486581; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: Roboto, Arial, sans-serif; font-size: 9.5pt; line-height: 1.36; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(16, 42, 67); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(15, 76, 92); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(72, 101, 129); font-size: 10pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(72, 101, 129); font-size: 9pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(15, 76, 92); }", + ".section-title { padding-left: 2.5mm; border-left: 3px solid rgb(15, 76, 92); }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 10.5pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(72, 101, 129); font-size: 9pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(72, 101, 129); font-size: 9.5pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".cols { display: grid; grid-template-columns: 62mm minmax(0px, 1fr); min-height: 297mm; }", + ".sidebar { background: var(--cv-accent-color); color: var(--cv-accent-ink); padding: 16mm; }", + ".sidebar .section-title { color: var(--cv-accent-ink); border-color: color-mix(in srgb,var(--cv-accent-ink) 38%,transparent); }", + ".sidebar .tag { border-color: color-mix(in srgb,var(--cv-accent-ink) 45%,transparent); }", + ".sidebar .contact, .sidebar .headline, .sidebar .entry-meta, .sidebar .entry-subtitle { color: var(--cv-accent-ink); }", + ".sidebar a { color: inherit; }", + ".main { padding: 16mm; }", + ".hero .name { color: var(--cv-accent-ink); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 265.046875, + "width": 113.390625, + "height": 118.578125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 406.296875, + "width": 113.390625, + "height": 55.15625 + } + ] + }, + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 294.796875, + "y": 60.46875, + "width": 438.421875, + "height": 66 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 294.796875, + "y": 149.140625, + "width": 438.421875, + "height": 131.546875 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 294.796875, + "y": 303.359375, + "width": 438.421875, + "height": 69.3125 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 294.796875, + "y": 395.34375, + "width": 438.421875, + "height": 67.8125 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-ats-classic", + "settings": { + "themeId": "ats-classic", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 33.1000000089407, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 209.671875, + "rawX": 77.46875, + "rawY": 209.671875, + "page": 1, + "width": 24.46875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 287.65625, + "rawX": 60.46875, + "rawY": 287.65625, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 332.4375, + "rawX": 77.46875, + "rawY": 332.4375, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 357.40625, + "rawX": 77.46875, + "rawY": 357.40625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 435.390625, + "rawX": 60.46875, + "rawY": 435.390625, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 534.703125, + "rawX": 60.46875, + "rawY": 534.703125, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 554.53125, + "rawX": 77.46875, + "rawY": 554.53125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 747.203125, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 112.8125, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 22.6772px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 173.28125, + "width": 793.6875, + "height": 634.390625, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #334155; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#334155 28%,transparent); --cv-ink: #111827; --cv-muted: #374151; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: Arial, Helvetica, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Arial, Helvetica, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(51, 65, 85); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(55, 65, 81); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(55, 65, 81); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(51, 65, 85); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 10.2pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(55, 65, 81); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(55, 65, 81); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(51, 65, 85); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(51, 65, 85); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 173.28125, + "width": 672.75, + "height": 54.3125 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 250.265625, + "width": 672.75, + "height": 125.0625 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 398, + "width": 672.75, + "height": 76.640625 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 497.3125, + "width": 672.75, + "height": 75.140625 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 595.125, + "width": 672.75, + "height": 129.21875 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 747.015625, + "width": 672.75, + "height": 60.65625 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-nordic", + "settings": { + "themeId": "nordic", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 20.700000002980232, + "text": "PROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nÅse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 95.859375, + "rawX": 77.46875, + "rawY": 95.859375, + "page": 1, + "width": 22.359375, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 191.765625, + "rawX": 60.46875, + "rawY": 191.765625, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 237.546875, + "rawX": 77.46875, + "rawY": 237.546875, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 281.4375, + "rawX": 77.46875, + "rawY": 281.4375, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 358.421875, + "rawX": 60.46875, + "rawY": 358.421875, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 457.734375, + "rawX": 60.46875, + "rawY": 457.734375, + "page": 1, + "width": 25.875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 478.5625, + "rawX": 77.46875, + "rawY": 478.5625, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 443.0625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 619.828125, + "y": 60.46875, + "width": 113.390625, + "height": 107, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px", + "margin": "0px 0px 22.6772px" + }, + "main": { + "x": 0, + "y": 60.46875, + "width": 559.359375, + "height": 443.0625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": { + "x": 559.359375, + "y": 60.46875, + "width": 234.328125, + "height": 443.0625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(255, 255, 255)", + "background": "rgb(59, 110, 165)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #3b6ea5; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#3b6ea5 28%,transparent); --cv-ink: #1f2937; --cv-muted: #4b5563; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(31, 41, 55); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(59, 110, 165); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(75, 85, 99); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(75, 85, 99); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(59, 110, 165); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 10.2pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(75, 85, 99); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(75, 85, 99); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".cols { display: grid; grid-template-columns: minmax(0px, 1fr) 62mm; min-height: 297mm; }", + ".sidebar { background: var(--cv-accent-color); color: var(--cv-accent-ink); padding: 16mm; }", + ".sidebar .section-title { color: var(--cv-accent-ink); border-color: color-mix(in srgb,var(--cv-accent-ink) 38%,transparent); }", + ".sidebar .tag { border-color: color-mix(in srgb,var(--cv-accent-ink) 45%,transparent); }", + ".sidebar .contact, .sidebar .headline, .sidebar .entry-meta, .sidebar .entry-subtitle { color: var(--cv-accent-ink); }", + ".sidebar a { color: inherit; }", + ".main { padding: 16mm; }", + ".hero .name { color: var(--cv-accent-ink); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 60.46875, + "width": 438.421875, + "height": 73.234375 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 156.375, + "width": 438.421875, + "height": 143.984375 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 323.03125, + "width": 438.421875, + "height": 76.640625 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 422.34375, + "width": 438.421875, + "height": 75.140625 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 619.828125, + "y": 273.5625, + "width": 113.390625, + "height": 124.78125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 619.828125, + "y": 421.015625, + "width": 113.390625, + "height": 60.65625 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-elegant", + "settings": { + "themeId": "elegant", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 34.29999999701977, + "text": "CURRICULUM VITAE\nÅse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\nC#\nReact\nNorsk\nAccessibility\nLanguages\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 237.03125, + "rawX": 77.46875, + "rawY": 237.03125, + "page": 1, + "width": 22.359375, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 321.59375, + "rawX": 60.46875, + "rawY": 321.59375, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 367.375, + "rawX": 77.46875, + "rawY": 367.375, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 392.34375, + "rawX": 77.46875, + "rawY": 392.34375, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 476.90625, + "rawX": 60.46875, + "rawY": 476.90625, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 583.796875, + "rawX": 60.46875, + "rawY": 583.796875, + "page": 1, + "width": 25.875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 604.625, + "rawX": 77.46875, + "rawY": 604.625, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(31, 41, 55)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 744.890625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 137.375, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 26.4567px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 197.84375, + "width": 793.6875, + "height": 607.515625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(31, 41, 55)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #7c3aed; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#7c3aed 28%,transparent); --cv-ink: #1f2937; --cv-muted: #4b5563; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Georgia, \"Times New Roman\", serif; }", + ".name { margin: 0px; font-size: 26pt; color: rgb(31, 41, 55); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(124, 58, 237); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(75, 85, 99); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(75, 85, 99); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 7mm; }", + ".hero .name { font-size: 23pt; }", + ".section { margin-top: 7mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(124, 58, 237); }", + ".section-title { border-bottom: 1.5px solid var(--cv-accent-soft); padding-bottom: 1.5mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(75, 85, 99); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(75, 85, 99); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 7mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(124, 58, 237); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(124, 58, 237); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 197.84375, + "width": 672.75, + "height": 58.109375 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 282.40625, + "width": 672.75, + "height": 128.859375 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 437.71875, + "width": 672.75, + "height": 80.4375 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 544.609375, + "width": 672.75, + "height": 78.9375 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 650, + "width": 672.75, + "height": 64.453125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 740.90625, + "width": 672.75, + "height": 64.453125 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-creative", + "settings": { + "themeId": "creative", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 35.29999999701977, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nSkills\nC#\nReact\nNorsk\nAccessibility\nLanguages\nNorsk — Native\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEducation\nE02 Computer science\nFixture University\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.", + "tokens": [ + { + "token": "R01", + "x": 311.796875, + "y": 93, + "rawX": 311.796875, + "rawY": 93, + "page": 1, + "width": 22.359375, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "E01", + "x": 294.796875, + "y": 186.046875, + "rawX": 294.796875, + "rawY": 186.046875, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "B01", + "x": 311.796875, + "y": 231.828125, + "rawX": 311.796875, + "rawY": 231.828125, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "B02", + "x": 311.796875, + "y": 275.71875, + "rawX": 311.796875, + "rawY": 275.71875, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "E02", + "x": 294.796875, + "y": 349.84375, + "rawX": 294.796875, + "rawY": 349.84375, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "P01", + "x": 294.796875, + "y": 446.296875, + "rawX": 294.796875, + "rawY": 446.296875, + "page": 1, + "width": 25.875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + }, + { + "token": "B03", + "x": 311.796875, + "y": 467.125, + "rawX": 311.796875, + "rawY": 467.125, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Arial, sans-serif", + "color": "rgb(24, 24, 27)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(24, 24, 27)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 431.625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(24, 24, 27)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 60.46875, + "y": 60.46875, + "width": 113.390625, + "height": 107, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px", + "margin": "0px 0px 22.6772px" + }, + "main": { + "x": 234.328125, + "y": 60.46875, + "width": 559.359375, + "height": 431.625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(24, 24, 27)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": { + "x": 0, + "y": 60.46875, + "width": 234.328125, + "height": 431.625, + "font": "\"Segoe UI\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(255, 255, 255)", + "background": "rgb(219, 39, 119)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #db2777; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#db2777 28%,transparent); --cv-ink: #18181b; --cv-muted: #52525b; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Poppins, \"Segoe UI\", Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(24, 24, 27); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(219, 39, 119); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(82, 82, 91); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(82, 82, 91); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(219, 39, 119); }", + ".section-title { padding-left: 2.5mm; border-left: 3px solid rgb(219, 39, 119); }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(82, 82, 91); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(82, 82, 91); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".cols { display: grid; grid-template-columns: 62mm minmax(0px, 1fr); min-height: 297mm; }", + ".sidebar { background: var(--cv-accent-color); color: var(--cv-accent-ink); padding: 16mm; }", + ".sidebar .section-title { color: var(--cv-accent-ink); border-color: color-mix(in srgb,var(--cv-accent-ink) 38%,transparent); }", + ".sidebar .tag { border-color: color-mix(in srgb,var(--cv-accent-ink) 45%,transparent); }", + ".sidebar .contact, .sidebar .headline, .sidebar .entry-meta, .sidebar .entry-subtitle { color: var(--cv-accent-ink); }", + ".sidebar a { color: inherit; }", + ".main { padding: 16mm; }", + ".hero .name { color: var(--cv-accent-ink); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 273.5625, + "width": 113.390625, + "height": 121.921875 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 418.15625, + "width": 113.390625, + "height": 57.796875 + } + ] + }, + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 294.796875, + "y": 60.46875, + "width": 438.421875, + "height": 70.375 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 294.796875, + "y": 153.515625, + "width": 438.421875, + "height": 141.125 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 294.796875, + "y": 317.3125, + "width": 438.421875, + "height": 73.78125 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 294.796875, + "y": 413.765625, + "width": 438.421875, + "height": 72.28125 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "default-code", + "settings": { + "themeId": "code", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1008, + "layoutDurationMs": 40.79999999701977, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nEDUCATION\nE02 Computer science\nFixture University\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 74.59375, + "y": 200.546875, + "rawX": 74.59375, + "rawY": 200.546875, + "page": 1, + "width": 21.015625, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E01", + "x": 57.59375, + "y": 271.09375, + "rawX": 57.59375, + "rawY": 271.09375, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B01", + "x": 74.59375, + "y": 314.84375, + "rawX": 74.59375, + "rawY": 314.84375, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B02", + "x": 74.59375, + "y": 338.796875, + "rawX": 74.59375, + "rawY": 338.796875, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E02", + "x": 57.59375, + "y": 409.34375, + "rawX": 57.59375, + "rawY": 409.34375, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "P01", + "x": 57.59375, + "y": 501.203125, + "rawX": 57.59375, + "rawY": 501.203125, + "page": 1, + "width": 24.46875, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B03", + "x": 74.59375, + "y": 521.015625, + "rawX": 74.59375, + "rawY": 521.015625, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1065.59375, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "57.6px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 57.59375, + "width": 793.6875, + "height": 700.609375, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 57.59375, + "width": 793.6875, + "height": 111.46875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px 21.1654px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 169.0625, + "width": 793.6875, + "height": 589.140625, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #0b7a63; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#0b7a63 28%,transparent); --cv-ink: #171a20; --cv-muted: #555e6b; --cv-paper: #ffffff; --cv-page-margin: 15.24mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Roboto, Arial, sans-serif; font-size: 9.4pt; line-height: 1.43; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 25.5pt; color: rgb(23, 26, 32); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(11, 122, 99); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(85, 94, 107); font-size: 9.9pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(85, 94, 107); font-size: 8.9pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 5.6mm; }", + ".hero .name { font-size: 22.5pt; }", + ".section { margin-top: 5.6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 9.5pt; font-weight: 700; color: rgb(11, 122, 99); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 8.08pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.37mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 8.9pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: Consolas, \"Courier New\", monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.3mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 10.4pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(85, 94, 107); font-size: 8.9pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(85, 94, 107); font-size: 9.4pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 15.24mm 15.24mm; }", + ".header { padding: 15.24mm 15.24mm 5.6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(11, 122, 99); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(11, 122, 99); }", + ".main { counter-reset: cv-section 0; }", + ".main > .section > .section-title { counter-increment: cv-section 1; font-family: Consolas, \"Courier New\", monospace; font-weight: 600; }", + ".main > .section > .section-title::before { content: counter(cv-section, decimal-leading-zero) \" — \"; color: var(--cv-accent-color); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 15.24mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 57.6px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1008px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 57.59375, + "y": 169.0625, + "width": 678.5, + "height": 49.390625 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 57.59375, + "y": 239.609375, + "width": 678.5, + "height": 117.09375 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 57.59375, + "y": 377.859375, + "width": 678.5, + "height": 70.703125 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 57.59375, + "y": 469.71875, + "width": 678.5, + "height": 69.203125 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 57.59375, + "y": 560.078125, + "width": 678.5, + "height": 121.25 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 57.59375, + "y": 702.484375, + "width": 678.5, + "height": 55.71875 + } + ] + } + ], + "effectiveMargin": "15.24mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "long-en-minimal", + "settings": { + "themeId": "minimal", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 4, + "measured": { + "width": 793.6875, + "contentHeight": 4490.08, + "usableHeight": 1002, + "layoutDurationMs": 33.70000000298023, + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test\nOslo, Norge\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nProfessional Experience\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nEducation\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\n\nC# · React · Norsk · Accessibility\n\nLanguages\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 77.46875, + "y": 210.59375, + "rawX": 77.46875, + "rawY": 210.59375, + "page": 1, + "width": 24.46875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 289.5, + "rawX": 60.46875, + "rawY": 289.5, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 334.28125, + "rawX": 77.46875, + "rawY": 334.28125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 416.015625, + "rawX": 77.46875, + "rawY": 416.015625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 497.75, + "rawX": 77.46875, + "rawY": 497.75, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 725.78125, + "rawX": 60.46875, + "rawY": 725.78125, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B04", + "x": 77.46875, + "y": 770.5625, + "rawX": 77.46875, + "rawY": 770.5625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B05", + "x": 77.46875, + "y": 852.296875, + "rawX": 77.46875, + "rawY": 852.296875, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B06", + "x": 77.46875, + "y": 934.03125, + "rawX": 77.46875, + "rawY": 934.03125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E03", + "x": 60.46875, + "y": 1298.48875, + "rawX": 854.15625, + "rawY": 175.96875, + "page": 2, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B07", + "x": 77.46875, + "y": 1343.27, + "rawX": 871.15625, + "rawY": 220.75, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B08", + "x": 77.46875, + "y": 1425.004375, + "rawX": 871.15625, + "rawY": 302.484375, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B09", + "x": 77.46875, + "y": 1506.73875, + "rawX": 871.15625, + "rawY": 384.21875, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E04", + "x": 60.46875, + "y": 1734.77, + "rawX": 854.15625, + "rawY": 612.25, + "page": 2, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B10", + "x": 77.46875, + "y": 1779.55125, + "rawX": 871.15625, + "rawY": 657.03125, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B11", + "x": 77.46875, + "y": 1861.285625, + "rawX": 871.15625, + "rawY": 738.765625, + "page": 2, + "width": 22.734375, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B12", + "x": 77.46875, + "y": 1943.02, + "rawX": 871.15625, + "rawY": 820.5, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E05", + "x": 60.46875, + "y": 2307.50875, + "rawX": 1647.84375, + "rawY": 62.46875, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B13", + "x": 77.46875, + "y": 2352.29, + "rawX": 1664.84375, + "rawY": 107.25, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B14", + "x": 77.46875, + "y": 2434.024375, + "rawX": 1664.84375, + "rawY": 188.984375, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B15", + "x": 77.46875, + "y": 2515.75875, + "rawX": 1664.84375, + "rawY": 270.71875, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E06", + "x": 60.46875, + "y": 2743.79, + "rawX": 1647.84375, + "rawY": 498.75, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B16", + "x": 77.46875, + "y": 2788.57125, + "rawX": 1664.84375, + "rawY": 543.53125, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B17", + "x": 77.46875, + "y": 2870.305625, + "rawX": 1664.84375, + "rawY": 625.265625, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B18", + "x": 77.46875, + "y": 2952.04, + "rawX": 1664.84375, + "rawY": 707, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 3462.56, + "rawX": 2441.53125, + "rawY": 95, + "page": 4, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E08", + "x": 60.46875, + "y": 3522.700625, + "rawX": 2441.53125, + "rawY": 155.140625, + "page": 4, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 60.46875, + "y": 3622.935, + "rawX": 2441.53125, + "rawY": 255.375, + "page": 4, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 3642.763125, + "rawX": 2458.53125, + "rawY": 275.203125, + "page": 4, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 3174.75, + "height": 1002, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 116.59375, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 26.4567px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 60.46875, + "width": 3174.75, + "height": 1002, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #111827; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#111827 28%,transparent); --cv-ink: #111827; --cv-muted: #6b7280; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Helvetica Neue\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Helvetica Neue\", Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(17, 24, 39); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(107, 114, 128); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(107, 114, 128); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 7mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 7mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(17, 24, 39); }", + ".section-title { letter-spacing: 0.01em; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.75mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(107, 114, 128); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(107, 114, 128); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 7mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(17, 24, 39); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(17, 24, 39); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 177.0625, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 254.96875, + "width": 672.75, + "height": 807.5 + }, + { + "x": 854.15625, + "y": 60.46875, + "width": 672.75, + "height": 1002 + }, + { + "x": 1647.84375, + "y": 60.46875, + "width": 672.75, + "height": 853.671875 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 2441.53125, + "y": 60.46875, + "width": 672.75, + "height": 133.921875 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 2441.53125, + "y": 220.84375, + "width": 672.75, + "height": 72.28125 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 2441.53125, + "y": 319.578125, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 2441.53125, + "y": 397.484375, + "width": 672.75, + "height": 57.796875 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "long-nb-code", + "settings": { + "themeId": "code", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "nb", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 4, + "measured": { + "width": 793.6875, + "contentHeight": 4490.08, + "usableHeight": 1008, + "layoutDurationMs": 36.80000001192093, + "text": "Åse Fixture\nPlattformutvikler med erfaring fra tilgjengelige, pålitelige arbeidsflyter\nase@example.test\nOslo, Norge\nPROFIL\nR01 Builds reliable and accessible career software using documented evidence.\nARBEIDSERFARING\nE01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nB01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2\nB04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4\nB10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5\nB13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUTDANNING\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROSJEKTER\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nFERDIGHETER\nC#\nReact\nNorsk\nAccessibility\nSPRÅK\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 74.59375, + "y": 200.546875, + "rawX": 74.59375, + "rawY": 200.546875, + "page": 1, + "width": 21.015625, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E01", + "x": 57.59375, + "y": 271.09375, + "rawX": 57.59375, + "rawY": 271.09375, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B01", + "x": 74.59375, + "y": 314.84375, + "rawX": 74.59375, + "rawY": 314.84375, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B02", + "x": 74.59375, + "y": 392.515625, + "rawX": 74.59375, + "rawY": 392.515625, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B03", + "x": 74.59375, + "y": 470.1875, + "rawX": 74.59375, + "rawY": 470.1875, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E02", + "x": 57.59375, + "y": 665.5, + "rawX": 57.59375, + "rawY": 665.5, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B04", + "x": 74.59375, + "y": 709.25, + "rawX": 74.59375, + "rawY": 709.25, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B05", + "x": 74.59375, + "y": 786.921875, + "rawX": 74.59375, + "rawY": 786.921875, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B06", + "x": 74.59375, + "y": 864.59375, + "rawX": 74.59375, + "rawY": 864.59375, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E03", + "x": 57.59375, + "y": 1180.11375, + "rawX": 851.28125, + "rawY": 57.59375, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B07", + "x": 74.59375, + "y": 1223.86375, + "rawX": 868.28125, + "rawY": 101.34375, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B08", + "x": 74.59375, + "y": 1301.535625, + "rawX": 868.28125, + "rawY": 179.015625, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B09", + "x": 74.59375, + "y": 1379.2075, + "rawX": 868.28125, + "rawY": 256.6875, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E04", + "x": 57.59375, + "y": 1574.52, + "rawX": 851.28125, + "rawY": 452, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B10", + "x": 74.59375, + "y": 1618.27, + "rawX": 868.28125, + "rawY": 495.75, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B11", + "x": 74.59375, + "y": 1695.941875, + "rawX": 868.28125, + "rawY": 573.421875, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B12", + "x": 74.59375, + "y": 1773.61375, + "rawX": 868.28125, + "rawY": 651.09375, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E05", + "x": 57.59375, + "y": 1968.92625, + "rawX": 851.28125, + "rawY": 846.40625, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B13", + "x": 74.59375, + "y": 2012.67625, + "rawX": 868.28125, + "rawY": 890.15625, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B14", + "x": 74.59375, + "y": 2090.348125, + "rawX": 868.28125, + "rawY": 967.828125, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B15", + "x": 74.59375, + "y": 2302.63375, + "rawX": 1661.96875, + "rawY": 57.59375, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E06", + "x": 57.59375, + "y": 2497.94625, + "rawX": 1644.96875, + "rawY": 252.90625, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B16", + "x": 74.59375, + "y": 2541.69625, + "rawX": 1661.96875, + "rawY": 296.65625, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B17", + "x": 74.59375, + "y": 2619.368125, + "rawX": 1661.96875, + "rawY": 374.328125, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B18", + "x": 74.59375, + "y": 2697.04, + "rawX": 1661.96875, + "rawY": 452, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E02", + "x": 57.59375, + "y": 2928.743125, + "rawX": 1644.96875, + "rawY": 683.703125, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E08", + "x": 57.59375, + "y": 2984.211875, + "rawX": 1644.96875, + "rawY": 739.171875, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "P01", + "x": 57.59375, + "y": 3076.07125, + "rawX": 1644.96875, + "rawY": 831.03125, + "page": 3, + "width": 24.46875, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B03", + "x": 74.59375, + "y": 3095.88375, + "rawX": 1661.96875, + "rawY": 850.84375, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1065.59375, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "57.6px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 57.59375, + "width": 3174.75, + "height": 1008, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 57.59375, + "width": 793.6875, + "height": 111.46875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px 21.1654px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 57.59375, + "width": 3174.75, + "height": 1008, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #0b7a63; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#0b7a63 28%,transparent); --cv-ink: #171a20; --cv-muted: #555e6b; --cv-paper: #ffffff; --cv-page-margin: 15.24mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Roboto, Arial, sans-serif; font-size: 9.4pt; line-height: 1.43; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 25.5pt; color: rgb(23, 26, 32); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(11, 122, 99); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(85, 94, 107); font-size: 9.9pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(85, 94, 107); font-size: 8.9pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 5.6mm; }", + ".hero .name { font-size: 22.5pt; }", + ".section { margin-top: 5.6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 9.5pt; font-weight: 700; color: rgb(11, 122, 99); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 8.08pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.37mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 8.9pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: Consolas, \"Courier New\", monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.3mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 10.4pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(85, 94, 107); font-size: 8.9pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(85, 94, 107); font-size: 9.4pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 15.24mm 15.24mm; }", + ".header { padding: 15.24mm 15.24mm 5.6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(11, 122, 99); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(11, 122, 99); }", + ".main { counter-reset: cv-section 0; }", + ".main > .section > .section-title { counter-increment: cv-section 1; font-family: Consolas, \"Courier New\", monospace; font-weight: 600; }", + ".main > .section > .section-title::before { content: counter(cv-section, decimal-leading-zero) \" — \"; color: var(--cv-accent-color); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 15.24mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 57.6px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1008px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Profil", + "fragments": [ + { + "x": 57.59375, + "y": 169.0625, + "width": 678.5, + "height": 49.390625 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Arbeidserfaring", + "fragments": [ + { + "x": 57.59375, + "y": 239.609375, + "width": 678.5, + "height": 825.984375 + }, + { + "x": 851.28125, + "y": 57.59375, + "width": 678.5, + "height": 1008 + }, + { + "x": 1644.96875, + "y": 57.59375, + "width": 678.5, + "height": 573.46875 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Utdanning", + "fragments": [ + { + "x": 1644.96875, + "y": 652.21875, + "width": 678.5, + "height": 126.171875 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Prosjekter", + "fragments": [ + { + "x": 1644.96875, + "y": 799.546875, + "width": 678.5, + "height": 69.203125 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Ferdigheter", + "fragments": [ + { + "x": 1644.96875, + "y": 889.90625, + "width": 678.5, + "height": 121.25 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Språk", + "fragments": [ + { + "x": 2438.65625, + "y": 57.59375, + "width": 678.5, + "height": 55.71875 + } + ] + } + ], + "effectiveMargin": "15.24mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "compact-8mm-letter", + "settings": { + "themeId": "ats-classic", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": "compact", + "pageSize": "letter", + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": 8, + "sectionGapMm": 3, + "entryGapMm": 2, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 4, + "measured": { + "width": 816, + "contentHeight": 4224, + "usableHeight": 1007, + "layoutDurationMs": 37.099999994039536, + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test\nOslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nEDUCATION\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 41.78125, + "y": 168.140625, + "rawX": 41.78125, + "rawY": 168.140625, + "page": 1, + "width": 24.46875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 24.78125, + "y": 230.984375, + "rawX": 24.78125, + "rawY": 230.984375, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 41.78125, + "y": 275.765625, + "rawX": 41.78125, + "rawY": 275.765625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 41.78125, + "y": 356.390625, + "rawX": 41.78125, + "rawY": 356.390625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 41.78125, + "y": 437.015625, + "rawX": 41.78125, + "rawY": 437.015625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 24.78125, + "y": 633.421875, + "rawX": 24.78125, + "rawY": 633.421875, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B04", + "x": 41.78125, + "y": 678.203125, + "rawX": 41.78125, + "rawY": 678.203125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B05", + "x": 41.78125, + "y": 758.828125, + "rawX": 41.78125, + "rawY": 758.828125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B06", + "x": 41.78125, + "y": 839.453125, + "rawX": 41.78125, + "rawY": 839.453125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E03", + "x": 24.78125, + "y": 1082.78125, + "rawX": 840.78125, + "rawY": 26.78125, + "page": 2, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B07", + "x": 41.78125, + "y": 1127.5625, + "rawX": 857.78125, + "rawY": 71.5625, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B08", + "x": 41.78125, + "y": 1208.1875, + "rawX": 857.78125, + "rawY": 152.1875, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B09", + "x": 41.78125, + "y": 1288.8125, + "rawX": 857.78125, + "rawY": 232.8125, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E04", + "x": 24.78125, + "y": 1485.21875, + "rawX": 840.78125, + "rawY": 429.21875, + "page": 2, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B10", + "x": 41.78125, + "y": 1530, + "rawX": 857.78125, + "rawY": 474, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B11", + "x": 41.78125, + "y": 1610.625, + "rawX": 857.78125, + "rawY": 554.625, + "page": 2, + "width": 22.734375, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B12", + "x": 41.78125, + "y": 1691.25, + "rawX": 857.78125, + "rawY": 635.25, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E05", + "x": 24.78125, + "y": 1887.65625, + "rawX": 840.78125, + "rawY": 831.65625, + "page": 2, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B13", + "x": 41.78125, + "y": 1932.4375, + "rawX": 857.78125, + "rawY": 876.4375, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B14", + "x": 41.78125, + "y": 2013.0625, + "rawX": 857.78125, + "rawY": 957.0625, + "page": 2, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B15", + "x": 41.78125, + "y": 2137.78125, + "rawX": 1673.78125, + "rawY": 25.78125, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E06", + "x": 24.78125, + "y": 2334.1875, + "rawX": 1656.78125, + "rawY": 222.1875, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B16", + "x": 41.78125, + "y": 2378.96875, + "rawX": 1673.78125, + "rawY": 266.96875, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B17", + "x": 41.78125, + "y": 2459.59375, + "rawX": 1673.78125, + "rawY": 347.59375, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B18", + "x": 41.78125, + "y": 2540.21875, + "rawX": 1673.78125, + "rawY": 428.21875, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 24.78125, + "y": 2773.359375, + "rawX": 1656.78125, + "rawY": 661.359375, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E08", + "x": 24.78125, + "y": 2820.796875, + "rawX": 1656.78125, + "rawY": 708.796875, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 24.78125, + "y": 2904.96875, + "rawX": 1656.78125, + "rawY": 792.96875, + "page": 3, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 41.78125, + "y": 2924.796875, + "rawX": 1673.78125, + "rawY": 812.796875, + "page": 3, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "Arial, Helvetica, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 816, + "height": 1031.78125, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "24.7937px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 24.78125, + "width": 3264, + "height": 1007, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 24.78125, + "width": 816, + "height": 108.734375, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 24.7937px 18.5953px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 24.78125, + "width": 3264, + "height": 1007, + "font": "Arial, Helvetica, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 24.7937px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #334155; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#334155 28%,transparent); --cv-ink: #111827; --cv-muted: #374151; --cv-paper: #ffffff; --cv-page-margin: 6.56mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: Arial, Helvetica, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 215.9mm; min-height: 279.4mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Arial, Helvetica, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(51, 65, 85); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(55, 65, 81); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(55, 65, 81); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 2.46mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 2.46mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.13mm; font-size: 12pt; font-weight: 700; color: rgb(51, 65, 85); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 10.2pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 1.5mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.62mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.31mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.48mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.39mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 1.64mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(55, 65, 81); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(55, 65, 81); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 6.56mm 6.56mm; }", + ".header { padding: 6.56mm 6.56mm 4.92mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(51, 65, 85); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(51, 65, 85); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 215.9mm 279.4mm; margin: 6.56mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 24.7937px; }", + "[data-cv-preview-flow] { width: 816px; height: 1007px; column-width: 816px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 24.78125, + "y": 133.515625, + "width": 766.4375, + "height": 52.546875 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 24.78125, + "y": 195.359375, + "width": 766.4375, + "height": 836.421875 + }, + { + "x": 840.78125, + "y": 24.78125, + "width": 766.4375, + "height": 1007 + }, + { + "x": 1656.78125, + "y": 24.78125, + "width": 766.4375, + "height": 591.65625 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 1656.78125, + "y": 625.734375, + "width": 766.4375, + "height": 122.3125 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 1656.78125, + "y": 757.34375, + "width": 766.4375, + "height": 73.375 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 1656.78125, + "y": 840.015625, + "width": 766.4375, + "height": 124.125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 2472.78125, + "y": 24.78125, + "width": 766.4375, + "height": 58.890625 + } + ] + } + ], + "effectiveMargin": "6.56mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "roomy-28mm-nb", + "settings": { + "themeId": "modern", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": "roomy", + "pageSize": null, + "dateFormat": null, + "language": "nb", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": 1.6, + "pageMarginMm": 28, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 5, + "measured": { + "width": 793.6875, + "contentHeight": 5612.6, + "usableHeight": 873, + "layoutDurationMs": 29.5, + "text": "Åse Fixture\nPlattformutvikler med erfaring fra tilgjengelige, pålitelige arbeidsflyter\nase@example.test\nOslo, Norge\nPROFIL\nR01 Builds reliable and accessible career software using documented evidence.\nARBEIDSERFARING\nE01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nB01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2\nB04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4\nB10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5\nB13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUTDANNING\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROSJEKTER\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nFERDIGHETER\nC#\nReact\nNorsk\nAccessibility\nSPRÅK\nNorsk — Native", + "tokens": [ + { + "token": "R01", + "x": 141.875, + "y": 286.1875, + "rawX": 141.875, + "rawY": 286.1875, + "page": 1, + "width": 22.359375, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 124.875, + "y": 372.875, + "rawX": 124.875, + "rawY": 372.875, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 141.875, + "y": 424.6875, + "rawX": 141.875, + "rawY": 424.6875, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 141.875, + "y": 538.390625, + "rawX": 141.875, + "rawY": 538.390625, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 141.875, + "y": 652.09375, + "rawX": 141.875, + "rawY": 652.09375, + "page": 1, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 124.875, + "y": 948.21875, + "rawX": 124.875, + "rawY": 948.21875, + "page": 1, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B04", + "x": 141.875, + "y": 1249.395, + "rawX": 935.5625, + "rawY": 126.875, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B05", + "x": 141.875, + "y": 1363.098125, + "rawX": 935.5625, + "rawY": 240.578125, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B06", + "x": 141.875, + "y": 1476.80125, + "rawX": 935.5625, + "rawY": 354.28125, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E03", + "x": 124.875, + "y": 1772.92625, + "rawX": 918.5625, + "rawY": 650.40625, + "page": 2, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B07", + "x": 141.875, + "y": 1824.73875, + "rawX": 935.5625, + "rawY": 702.21875, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B08", + "x": 141.875, + "y": 1938.441875, + "rawX": 935.5625, + "rawY": 815.921875, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B09", + "x": 141.875, + "y": 2052.145, + "rawX": 935.5625, + "rawY": 929.625, + "page": 2, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E04", + "x": 124.875, + "y": 2604.1025, + "rawX": 1712.25, + "rawY": 359.0625, + "page": 3, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B10", + "x": 141.875, + "y": 2655.915, + "rawX": 1729.25, + "rawY": 410.875, + "page": 3, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B11", + "x": 141.875, + "y": 2769.618125, + "rawX": 1729.25, + "rawY": 524.578125, + "page": 3, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B12", + "x": 141.875, + "y": 2883.32125, + "rawX": 1729.25, + "rawY": 638.28125, + "page": 3, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E05", + "x": 124.875, + "y": 3179.44625, + "rawX": 1712.25, + "rawY": 934.40625, + "page": 3, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B13", + "x": 141.875, + "y": 3494.435, + "rawX": 2522.9375, + "rawY": 126.875, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B14", + "x": 141.875, + "y": 3608.138125, + "rawX": 2522.9375, + "rawY": 240.578125, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B15", + "x": 141.875, + "y": 3721.84125, + "rawX": 2522.9375, + "rawY": 354.28125, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E06", + "x": 124.875, + "y": 4017.96625, + "rawX": 2505.9375, + "rawY": 650.40625, + "page": 4, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B16", + "x": 141.875, + "y": 4069.77875, + "rawX": 2522.9375, + "rawY": 702.21875, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B17", + "x": 141.875, + "y": 4183.4818749999995, + "rawX": 2522.9375, + "rawY": 815.921875, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B18", + "x": 141.875, + "y": 4297.1849999999995, + "rawX": 2522.9375, + "rawY": 929.625, + "page": 4, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 124.875, + "y": 4895.455, + "rawX": 3299.625, + "rawY": 405.375, + "page": 5, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E08", + "x": 124.875, + "y": 4961.79875, + "rawX": 3299.625, + "rawY": 471.71875, + "page": 5, + "width": 24.671875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "P01", + "x": 124.875, + "y": 5074.455, + "rawX": 3299.625, + "rawY": 584.375, + "page": 5, + "width": 25.875, + "height": 20, + "fontSize": "14.6667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 141.875, + "y": 5098.92375, + "rawX": 3316.625, + "rawY": 608.84375, + "page": 5, + "width": 22.015625, + "height": 17, + "fontSize": "13.3333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 997.875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "21.3333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "124.876px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 124.875, + "width": 3968.4375, + "height": 873, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "21.3333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 124.875, + "width": 793.6875, + "height": 119.6875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "21.3333px", + "color": "rgb(255, 255, 255)", + "background": "rgb(37, 99, 235)", + "padding": "0px 124.876px 26.7591px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 124.875, + "width": 3968.4375, + "height": 873, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "21.3333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 124.876px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #2563eb; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#2563eb 28%,transparent); --cv-ink: #111827; --cv-muted: #4b5563; --cv-paper: #ffffff; --cv-page-margin: 33.04mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Roboto, Arial, sans-serif; font-size: 10pt; line-height: 1.6; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(37, 99, 235); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(75, 85, 99); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(75, 85, 99); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 7.08mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 7.08mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 3.07mm; font-size: 12pt; font-weight: 700; color: rgb(37, 99, 235); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 10.2pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.92mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.89mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.89mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 2.12mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 2.01mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 5.31mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(75, 85, 99); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(75, 85, 99); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 33.04mm 33.04mm; }", + ".header { padding: 33.04mm 33.04mm 7.08mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(37, 99, 235); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(37, 99, 235); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 33.04mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 124.876px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 873px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Profil", + "fragments": [ + { + "x": 124.875, + "y": 244.5625, + "width": 543.9375, + "height": 60.9375 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Arbeidserfaring", + "fragments": [ + { + "x": 124.875, + "y": 332.25, + "width": 543.9375, + "height": 665.625 + }, + { + "x": 918.5625, + "y": 124.875, + "width": 543.9375, + "height": 873 + }, + { + "x": 1712.25, + "y": 124.875, + "width": 543.9375, + "height": 873 + }, + { + "x": 2505.9375, + "y": 124.875, + "width": 543.9375, + "height": 873 + }, + { + "x": 3299.625, + "y": 124.875, + "width": 543.9375, + "height": 213.125 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Utdanning", + "fragments": [ + { + "x": 3299.625, + "y": 364.75, + "width": 543.9375, + "height": 152.25 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Prosjekter", + "fragments": [ + { + "x": 3299.625, + "y": 543.75, + "width": 543.9375, + "height": 84.40625 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Ferdigheter", + "fragments": [ + { + "x": 3299.625, + "y": 654.90625, + "width": 543.9375, + "height": 67.171875 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Språk", + "fragments": [ + { + "x": 3299.625, + "y": 748.828125, + "width": 543.9375, + "height": 67.171875 + } + ] + } + ], + "effectiveMargin": "33.04mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "grid-and-bubbles", + "settings": { + "themeId": "minimal", + "accentColor": "#126b55", + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": "grid", + "columns": 2 + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": "bubble", + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 1, + "measured": { + "width": 793.6875, + "contentHeight": 1122.52, + "usableHeight": 1002, + "layoutDurationMs": 19.5, + "text": "Åse Fixture\nCareer platform engineer\nase@example.test\nOslo, Norge\nProjects\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSkills\n\nC# · React · Norsk · Accessibility\n\nProfessional Experience\nE01 Platform engineer\nNordlys Fixture AS\nB01 Delivered accessible application workflows with documented outcomes.\nB02 Maintained reliable APIs and verified releases.\nProfessional Summary\nR01 Builds reliable and accessible career software using documented evidence.\nEducation\nE02 Computer science\nFixture University\nLanguages\nNorsk — Native", + "tokens": [ + { + "token": "P01", + "x": 60.46875, + "y": 211.59375, + "rawX": 60.46875, + "rawY": 211.59375, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B03", + "x": 77.46875, + "y": 231.421875, + "rawX": 77.46875, + "rawY": 231.421875, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E01", + "x": 60.46875, + "y": 394.28125, + "rawX": 60.46875, + "rawY": 394.28125, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B01", + "x": 77.46875, + "y": 439.0625, + "rawX": 77.46875, + "rawY": 439.0625, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "B02", + "x": 77.46875, + "y": 464.03125, + "rawX": 77.46875, + "rawY": 464.03125, + "page": 1, + "width": 23.71875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "R01", + "x": 77.46875, + "y": 541.9375, + "rawX": 77.46875, + "rawY": 541.9375, + "page": 1, + "width": 24.46875, + "height": 15, + "fontSize": "13.3333px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + }, + { + "token": "E02", + "x": 60.46875, + "y": 620.84375, + "rawX": 60.46875, + "rawY": 620.84375, + "page": 1, + "width": 26.09375, + "height": 16, + "fontSize": "14.6667px", + "fontFamily": "\"Helvetica Neue\", Arial, sans-serif", + "color": "rgb(17, 24, 39)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 683.875, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 60.46875, + "width": 793.6875, + "height": 116.59375, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px 26.4567px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 177.0625, + "width": 793.6875, + "height": 567.28125, + "font": "\"Helvetica Neue\", Arial, sans-serif", + "fontSize": "13.3333px", + "lineHeight": "18.9333px", + "color": "rgb(17, 24, 39)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #126b55; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#126b55 28%,transparent); --cv-ink: #111827; --cv-muted: #6b7280; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Helvetica Neue\", Arial, sans-serif; font-size: 10pt; line-height: 1.42; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Helvetica Neue\", Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(17, 24, 39); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(18, 107, 85); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(107, 114, 128); font-size: 10.5pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(107, 114, 128); font-size: 9.5pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 7mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 7mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(17, 24, 39); }", + ".section-title { letter-spacing: 0.01em; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.75mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9.5pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 11pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(107, 114, 128); font-size: 9.5pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(107, 114, 128); font-size: 10pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 16mm 16mm; }", + ".header { padding: 16mm 16mm 7mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(18, 107, 85); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(18, 107, 85); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-projects section-presentation-grid", + "title": "Projects", + "fragments": [ + { + "x": 60.46875, + "y": 177.0625, + "width": 672.75, + "height": 78.328125 + } + ] + }, + { + "key": "section section-skills section-presentation-bubble", + "title": "Skills", + "fragments": [ + { + "x": 60.46875, + "y": 281.84375, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-experience section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 60.46875, + "y": 359.75, + "width": 672.75, + "height": 122.203125 + } + ] + }, + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 60.46875, + "y": 508.40625, + "width": 672.75, + "height": 51.453125 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 60.46875, + "y": 586.3125, + "width": 672.75, + "height": 73.78125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 60.46875, + "y": 686.546875, + "width": 672.75, + "height": 57.796875 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "long-sidebar-nb", + "settings": { + "themeId": "technical", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "nb", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": "grouped", + "skillGroups": [ + { + "name": "Samarbeid", + "items": [ + "Norsk", + "Tilgjengelighet" + ] + } + ], + "layout": null, + "sidebarWidthMm": 68, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [] + }, + "previewPages": 5, + "measured": { + "width": 793.6875, + "contentHeight": 5612.6, + "usableHeight": 1002, + "layoutDurationMs": 41.8999999910593, + "text": "Åse Fixture\nPlattformutvikler med erfaring fra tilgjengelige, pålitelige arbeidsflyter\nase@example.test\nOslo, Norge\nFerdigheter\nSamarbeid\nNorsk\nTilgjengelighet\nSpråk\nNorsk — Native\nProfil\nR01 Builds reliable and accessible career software using documented evidence.\nArbeidserfaring\nE01 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 1\nB01 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB02 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB03 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE02 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 2\nB04 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB05 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB06 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE03 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 3\nB07 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB08 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB09 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE04 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 4\nB10 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB11 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB12 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE05 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 5\nB13 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB14 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB15 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nE06 Utvikler av dokumenterte arbeidsflyter og integrasjoner\nNordlys Fixture 6\nB16 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB17 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nB18 Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere. Utviklet pålitelige arbeidsflyter med tilgjengelig navigasjon, dokumentert kildegrunnlag og tydelige vurderinger for norske arbeidssøkere.\nUtdanning\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nProsjekter\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.", + "tokens": [ + { + "token": "R01", + "x": 334.46875, + "y": 93.03125, + "rawX": 334.46875, + "rawY": 93.03125, + "page": 1, + "width": 23.234375, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E01", + "x": 317.46875, + "y": 181.703125, + "rawX": 317.46875, + "rawY": 181.703125, + "page": 1, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B01", + "x": 334.46875, + "y": 223.984375, + "rawX": 334.46875, + "rawY": 223.984375, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B02", + "x": 334.46875, + "y": 350.5625, + "rawX": 334.46875, + "rawY": 350.5625, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B03", + "x": 334.46875, + "y": 477.140625, + "rawX": 334.46875, + "rawY": 477.140625, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E02", + "x": 317.46875, + "y": 786.859375, + "rawX": 317.46875, + "rawY": 786.859375, + "page": 1, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B04", + "x": 334.46875, + "y": 829.140625, + "rawX": 334.46875, + "rawY": 829.140625, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B05", + "x": 334.46875, + "y": 955.71875, + "rawX": 334.46875, + "rawY": 955.71875, + "page": 1, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B06", + "x": 334.46875, + "y": 1224.473125, + "rawX": 1128.15625, + "rawY": 101.953125, + "page": 2, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E03", + "x": 317.46875, + "y": 1534.191875, + "rawX": 1111.15625, + "rawY": 411.671875, + "page": 2, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B07", + "x": 334.46875, + "y": 1576.473125, + "rawX": 1128.15625, + "rawY": 453.953125, + "page": 2, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B08", + "x": 334.46875, + "y": 1703.05125, + "rawX": 1128.15625, + "rawY": 580.53125, + "page": 2, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B09", + "x": 334.46875, + "y": 1829.629375, + "rawX": 1128.15625, + "rawY": 707.109375, + "page": 2, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E04", + "x": 317.46875, + "y": 2139.348125, + "rawX": 1111.15625, + "rawY": 1016.828125, + "page": 2, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B10", + "x": 334.46875, + "y": 2306.50875, + "rawX": 1921.84375, + "rawY": 61.46875, + "page": 3, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B11", + "x": 334.46875, + "y": 2433.086875, + "rawX": 1921.84375, + "rawY": 188.046875, + "page": 3, + "width": 21.59375, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B12", + "x": 334.46875, + "y": 2559.665, + "rawX": 1921.84375, + "rawY": 314.625, + "page": 3, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E05", + "x": 317.46875, + "y": 2869.38375, + "rawX": 1904.84375, + "rawY": 624.34375, + "page": 3, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B13", + "x": 334.46875, + "y": 2911.665, + "rawX": 1921.84375, + "rawY": 666.625, + "page": 3, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B14", + "x": 334.46875, + "y": 3038.243125, + "rawX": 1921.84375, + "rawY": 793.203125, + "page": 3, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B15", + "x": 334.46875, + "y": 3164.82125, + "rawX": 1921.84375, + "rawY": 919.78125, + "page": 3, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E06", + "x": 317.46875, + "y": 3600.9975, + "rawX": 2698.53125, + "rawY": 233.4375, + "page": 4, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B16", + "x": 334.46875, + "y": 3643.27875, + "rawX": 2715.53125, + "rawY": 275.71875, + "page": 4, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B17", + "x": 334.46875, + "y": 3769.856875, + "rawX": 2715.53125, + "rawY": 402.296875, + "page": 4, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B18", + "x": 334.46875, + "y": 3896.435, + "rawX": 2715.53125, + "rawY": 528.875, + "page": 4, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E02", + "x": 317.46875, + "y": 4243.3881249999995, + "rawX": 2698.53125, + "rawY": 875.828125, + "page": 4, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "E08", + "x": 317.46875, + "y": 4298.1381249999995, + "rawX": 2698.53125, + "rawY": 930.578125, + "page": 4, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "P01", + "x": 317.46875, + "y": 4583.11125, + "rawX": 3492.21875, + "rawY": 93.03125, + "page": 5, + "width": 24.921875, + "height": 16, + "fontSize": "14px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + }, + { + "token": "B03", + "x": 334.46875, + "y": 4602.1425, + "rawX": 3509.21875, + "rawY": 112.0625, + "page": 5, + "width": 22.53125, + "height": 14, + "fontSize": "12.6667px", + "fontFamily": "Roboto, Arial, sans-serif", + "color": "rgb(16, 42, 67)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1062.46875, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgba(0, 0, 0, 0)", + "padding": "60.4724px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 60.46875, + "width": 3968.4375, + "height": 1002, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 60.46875, + "y": 60.46875, + "width": 136.0625, + "height": 139.75, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(255, 255, 255)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px", + "margin": "0px 0px 22.6772px" + }, + "main": { + "x": 257, + "y": 60.46875, + "width": 3711.4375, + "height": 1002, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(16, 42, 67)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "sidebar": { + "x": 0, + "y": 60.46875, + "width": 3431.75, + "height": 1002, + "font": "Roboto, Arial, sans-serif", + "fontSize": "12.6667px", + "lineHeight": "17.2267px", + "color": "rgb(255, 255, 255)", + "background": "rgb(15, 76, 92)", + "padding": "0px 60.4724px", + "margin": "0px" + }, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #0f4c5c; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#0f4c5c 28%,transparent); --cv-ink: #102a43; --cv-muted: #486581; --cv-paper: #ffffff; --cv-page-margin: 16mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: Roboto, Arial, sans-serif; font-size: 9.5pt; line-height: 1.36; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 24pt; color: rgb(16, 42, 67); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(15, 76, 92); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(72, 101, 129); font-size: 10pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(72, 101, 129); font-size: 9pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 6mm; }", + ".hero .name { font-size: 21pt; }", + ".section { margin-top: 6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 12pt; font-weight: 700; color: rgb(15, 76, 92); }", + ".section-title { padding-left: 2.5mm; border-left: 3px solid rgb(15, 76, 92); }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.48mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 9pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: \"Roboto Mono\", Consolas, monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.5mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 10.5pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(72, 101, 129); font-size: 9pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(72, 101, 129); font-size: 9.5pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".cols { display: grid; grid-template-columns: 68mm minmax(0px, 1fr); min-height: 297mm; }", + ".sidebar { background: var(--cv-accent-color); color: var(--cv-accent-ink); padding: 16mm; }", + ".sidebar .section-title { color: var(--cv-accent-ink); border-color: color-mix(in srgb,var(--cv-accent-ink) 38%,transparent); }", + ".sidebar .tag { border-color: color-mix(in srgb,var(--cv-accent-ink) 45%,transparent); }", + ".sidebar .contact, .sidebar .headline, .sidebar .entry-meta, .sidebar .entry-subtitle { color: var(--cv-accent-ink); }", + ".sidebar a { color: inherit; }", + ".main { padding: 16mm; }", + ".hero .name { color: var(--cv-accent-ink); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 16mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 60.4724px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1002px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-skills section-presentation-rows", + "title": "Ferdigheter", + "fragments": [ + { + "x": 60.46875, + "y": 284.984375, + "width": 136.0625, + "height": 103.453125 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Språk", + "fragments": [ + { + "x": 60.46875, + "y": 411.109375, + "width": 136.0625, + "height": 55.15625 + } + ] + }, + { + "key": "section section-summary section-presentation-rows", + "title": "Profil", + "fragments": [ + { + "x": 317.46875, + "y": 60.46875, + "width": 415.75, + "height": 66 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Arbeidserfaring", + "fragments": [ + { + "x": 317.46875, + "y": 149.140625, + "width": 415.75, + "height": 913.328125 + }, + { + "x": 1111.15625, + "y": 60.46875, + "width": 415.75, + "height": 1002 + }, + { + "x": 1904.84375, + "y": 60.46875, + "width": 415.75, + "height": 1002 + }, + { + "x": 2698.53125, + "y": 60.46875, + "width": 415.75, + "height": 760.125 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Utdanning", + "fragments": [ + { + "x": 2698.53125, + "y": 843.265625, + "width": 415.75, + "height": 143.09375 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Prosjekter", + "fragments": [ + { + "x": 3492.21875, + "y": 60.46875, + "width": 415.75, + "height": 67.8125 + } + ] + } + ], + "effectiveMargin": "16mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + }, + { + "fixture": "unbreakable-and-boundary", + "settings": { + "themeId": "code", + "accentColor": null, + "headingFont": null, + "bodyFont": null, + "density": null, + "pageSize": null, + "dateFormat": null, + "language": "en", + "headline": null, + "textColor": null, + "mutedColor": null, + "headingColor": null, + "backgroundColor": null, + "baseFontSizePt": null, + "headingSizePt": null, + "lineHeight": null, + "pageMarginMm": null, + "sectionGapMm": null, + "entryGapMm": null, + "headingStyle": null, + "headerStyle": null, + "skillsStyle": null, + "skillGroups": null, + "layout": null, + "sidebarWidthMm": null, + "sidebarSections": null, + "showPhoto": false, + "showPageNumbers": false, + "showIcons": true, + "sections": [ + { + "key": "summary", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "experience", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "education", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "projects", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "skills", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "languages", + "hidden": false, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + }, + { + "key": "interests", + "hidden": true, + "title": null, + "itemOrder": null, + "items": null, + "presentation": null, + "columns": null + } + ], + "overrides": {}, + "customSections": [ + { + "key": "boundary", + "title": "S09 Boundary content", + "items": [ + "R09 UnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidence", + "R10 Final recorded paragraph — æøå." + ], + "hidden": false, + "presetKey": null, + "contentType": "paragraphs" + } + ] + }, + "previewPages": 4, + "measured": { + "width": 793.6875, + "contentHeight": 4490.08, + "usableHeight": 1008, + "layoutDurationMs": 39.20000000298023, + "text": "Åse Fixture\nPlatform engineer with experience in accessible and reliable application workflows\nase@example.test\nOslo, Norge\nPROFESSIONAL SUMMARY\nR01 Builds reliable and accessible career software using documented evidence.\nPROFESSIONAL EXPERIENCE\nE01 Workflow and integration engineer\nNordlys Fixture 1\nB01 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB02 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB03 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE02 Workflow and integration engineer\nNordlys Fixture 2\nB04 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB05 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB06 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE03 Workflow and integration engineer\nNordlys Fixture 3\nB07 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB08 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB09 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE04 Workflow and integration engineer\nNordlys Fixture 4\nB10 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB11 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB12 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE05 Workflow and integration engineer\nNordlys Fixture 5\nB13 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB14 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB15 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nE06 Workflow and integration engineer\nNordlys Fixture 6\nB16 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB17 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nB18 Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers. Developed reliable workflows with accessible navigation, documented source evidence and explicit review for people managing their careers.\nEDUCATION\nE02 Computer science\nFixture University\nE08 Videreutdanning i universell utforming og informasjonsarkitektur\nFixture Academy\nPROJECTS\nP01 Evidence workspace\nB03 Created a source-grounded review workflow.\nSKILLS\nC#\nReact\nNorsk\nAccessibility\nLANGUAGES\nNorsk — Native\nS09 BOUNDARY CONTENT\n\nR09 UnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidenceUnbreakableEvidence\n\nR10 Final recorded paragraph — æøå.", + "tokens": [ + { + "token": "R01", + "x": 74.59375, + "y": 200.546875, + "rawX": 74.59375, + "rawY": 200.546875, + "page": 1, + "width": 21.015625, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E01", + "x": 57.59375, + "y": 271.09375, + "rawX": 57.59375, + "rawY": 271.09375, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B01", + "x": 74.59375, + "y": 314.84375, + "rawX": 74.59375, + "rawY": 314.84375, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B02", + "x": 74.59375, + "y": 392.515625, + "rawX": 74.59375, + "rawY": 392.515625, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B03", + "x": 74.59375, + "y": 470.1875, + "rawX": 74.59375, + "rawY": 470.1875, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E02", + "x": 57.59375, + "y": 665.5, + "rawX": 57.59375, + "rawY": 665.5, + "page": 1, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B04", + "x": 74.59375, + "y": 709.25, + "rawX": 74.59375, + "rawY": 709.25, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B05", + "x": 74.59375, + "y": 786.921875, + "rawX": 74.59375, + "rawY": 786.921875, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B06", + "x": 74.59375, + "y": 864.59375, + "rawX": 74.59375, + "rawY": 864.59375, + "page": 1, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E03", + "x": 57.59375, + "y": 1180.11375, + "rawX": 851.28125, + "rawY": 57.59375, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B07", + "x": 74.59375, + "y": 1223.86375, + "rawX": 868.28125, + "rawY": 101.34375, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B08", + "x": 74.59375, + "y": 1301.535625, + "rawX": 868.28125, + "rawY": 179.015625, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B09", + "x": 74.59375, + "y": 1379.2075, + "rawX": 868.28125, + "rawY": 256.6875, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E04", + "x": 57.59375, + "y": 1574.52, + "rawX": 851.28125, + "rawY": 452, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B10", + "x": 74.59375, + "y": 1618.27, + "rawX": 868.28125, + "rawY": 495.75, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B11", + "x": 74.59375, + "y": 1695.941875, + "rawX": 868.28125, + "rawY": 573.421875, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B12", + "x": 74.59375, + "y": 1773.61375, + "rawX": 868.28125, + "rawY": 651.09375, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E05", + "x": 57.59375, + "y": 1968.92625, + "rawX": 851.28125, + "rawY": 846.40625, + "page": 2, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B13", + "x": 74.59375, + "y": 2012.67625, + "rawX": 868.28125, + "rawY": 890.15625, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B14", + "x": 74.59375, + "y": 2090.348125, + "rawX": 868.28125, + "rawY": 967.828125, + "page": 2, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B15", + "x": 74.59375, + "y": 2302.63375, + "rawX": 1661.96875, + "rawY": 57.59375, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E06", + "x": 57.59375, + "y": 2497.94625, + "rawX": 1644.96875, + "rawY": 252.90625, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B16", + "x": 74.59375, + "y": 2541.69625, + "rawX": 1661.96875, + "rawY": 296.65625, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B17", + "x": 74.59375, + "y": 2619.368125, + "rawX": 1661.96875, + "rawY": 374.328125, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B18", + "x": 74.59375, + "y": 2697.04, + "rawX": 1661.96875, + "rawY": 452, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E02", + "x": 57.59375, + "y": 2928.743125, + "rawX": 1644.96875, + "rawY": 683.703125, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "E08", + "x": 57.59375, + "y": 2984.211875, + "rawX": 1644.96875, + "rawY": 739.171875, + "page": 3, + "width": 23.328125, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "P01", + "x": 57.59375, + "y": 3076.07125, + "rawX": 1644.96875, + "rawY": 831.03125, + "page": 3, + "width": 24.46875, + "height": 18, + "fontSize": "13.8667px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "B03", + "x": 74.59375, + "y": 3095.88375, + "rawX": 1661.96875, + "rawY": 850.84375, + "page": 3, + "width": 20.703125, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "S09", + "x": 94.75, + "y": 3503.02875, + "rawX": 2475.8125, + "rawY": 135.46875, + "page": 4, + "width": 22.296875, + "height": 13, + "fontSize": "10.7733px", + "fontFamily": "Consolas, \"Courier New\", monospace", + "color": "rgb(11, 122, 99)" + }, + { + "token": "R09", + "x": 57.59375, + "y": 3533.513125, + "rawX": 2438.65625, + "rawY": 165.953125, + "page": 4, + "width": 21.015625, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + }, + { + "token": "R10", + "x": 57.59375, + "y": 3701.46625, + "rawX": 2438.65625, + "rawY": 333.90625, + "page": 4, + "width": 21.015625, + "height": 17, + "fontSize": "12.5333px", + "fontFamily": "\"Segoe UI\", Roboto, Arial, sans-serif", + "color": "rgb(23, 26, 32)" + } + ], + "body": { + "x": 0, + "y": 0, + "width": 794, + "height": 1065.59375, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "57.6px 0px 0px", + "margin": "0px" + }, + "page": { + "x": 0, + "y": 57.59375, + "width": 3174.75, + "height": 1008, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgb(255, 255, 255)", + "padding": "0px", + "margin": "0px" + }, + "header": { + "x": 0, + "y": 57.59375, + "width": 793.6875, + "height": 111.46875, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px 21.1654px", + "margin": "0px" + }, + "main": { + "x": 0, + "y": 57.59375, + "width": 3174.75, + "height": 1008, + "font": "\"Segoe UI\", Roboto, Arial, sans-serif", + "fontSize": "12.5333px", + "lineHeight": "17.9227px", + "color": "rgb(23, 26, 32)", + "background": "rgba(0, 0, 0, 0)", + "padding": "0px 57.6px", + "margin": "0px" + }, + "sidebar": null, + "parsedRules": [ + "* { box-sizing: border-box; }", + ":root { --cv-accent-color: #0b7a63; --cv-accent-ink: #fff; --cv-accent-soft: color-mix(in srgb,#0b7a63 28%,transparent); --cv-ink: #171a20; --cv-muted: #555e6b; --cv-paper: #ffffff; --cv-page-margin: 15.24mm; }", + "html, body { min-width: 0px; }", + "body { margin: 0px; background: rgb(233, 237, 242); color: var(--cv-ink); font-family: \"Segoe UI\", Roboto, Arial, sans-serif; font-size: 9.4pt; line-height: 1.43; print-color-adjust: exact; }", + ".page { width: 210mm; min-height: 297mm; margin: 0px auto; background: var(--cv-paper); overflow: visible; overflow-wrap: anywhere; word-break: normal; }", + "h1, h2 { font-family: \"Segoe UI\", Roboto, Arial, sans-serif; }", + ".name { margin: 0px; font-size: 25.5pt; color: rgb(23, 26, 32); line-height: 1.1; overflow-wrap: anywhere; }", + ".kicker { text-transform: uppercase; letter-spacing: 0.3em; font-size: 7.5pt; color: rgb(11, 122, 99); margin-bottom: 1.5mm; }", + ".headline { margin-top: 1.5mm; color: rgb(85, 94, 107); font-size: 9.9pt; }", + ".head-text, .main, .sidebar, .cols > * { min-width: 0px; }", + ".head-text { flex: 1 1 0%; }", + ".photo { width: 30mm; height: 30mm; overflow: hidden; flex: 0 0 auto; border: 1px solid var(--cv-accent-soft); }", + ".photo-square { border-radius: 2mm; }", + ".photo-rounded { border-radius: 5mm; }", + ".photo-circle { border-radius: 50%; }", + ".photo img { width: 100%; height: 100%; object-fit: cover; display: block; }", + ".contact { display: flex; gap: 3mm; flex-wrap: wrap; color: rgb(85, 94, 107); font-size: 8.9pt; margin-top: 2.5mm; }", + ".contact-stacked { flex-direction: column; gap: 1.8mm; }", + ".contact-item { display: inline-flex; align-items: center; gap: 1.2mm; min-width: 0px; max-width: 100%; overflow-wrap: anywhere; }", + ".contact a { color: inherit; text-decoration: none; min-width: 0px; overflow-wrap: anywhere; word-break: break-word; }", + ".main a { color: var(--cv-accent-color); text-decoration-color: var(--cv-accent-soft); }", + ".contact svg { width: 3.2mm; height: 3.2mm; flex: 0 0 auto; opacity: 0.85; }", + ".hero { margin-bottom: 5.6mm; }", + ".hero .name { font-size: 22.5pt; }", + ".section { margin-top: 5.6mm; }", + ".section:first-child { margin-top: 0px; }", + ".section-title { margin: 0px 0px 2.6mm; font-size: 9.5pt; font-weight: 700; color: rgb(11, 122, 99); }", + ".section-title { text-transform: uppercase; letter-spacing: 0.14em; font-size: 8.08pt; color: var(--cv-accent-color); border-bottom: 1px solid var(--cv-accent-soft); padding-bottom: 1.4mm; }", + ".section-presentation-grid { display: grid; grid-template-columns: repeat(var(--cv-section-columns,1),minmax(0,1fr)); column-gap: 4mm; align-items: start; }", + ".section-presentation-grid > .section-title { grid-column: 1 / -1; }", + ".section-presentation-grid > .entry { min-width: 0px; }", + ".section-presentation-compact > .entry { margin-bottom: 2.37mm; }", + ".section-presentation-compact > .bullets li { margin-bottom: 0.75mm; }", + ".section-presentation-bubble > .tags, .section-presentation-bubble > .bullets { list-style: none; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.4mm; }", + ".section-presentation-bubble > .bullets li, .section-presentation-bubble > .tags li { margin: 0px; border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; }", + ".section-presentation-bubble > .bullets li::marker { content: \"\"; }", + ".bullets { margin: 0px; padding-left: 4.5mm; }", + ".bullets li { margin: 0px 0px 1.6mm; }", + ".bullets li::marker { color: var(--cv-accent-color); }", + ".tags { list-style: none; margin: 0px; padding: 0px; display: flex; flex-wrap: wrap; gap: 1.8mm; }", + ".skills-text { margin: 0px; overflow-wrap: anywhere; }", + ".tag { border: 1px solid var(--cv-accent-soft); border-radius: 999px; padding: 0.7mm 2.2mm; font-size: 8.9pt; max-width: 100%; overflow-wrap: anywhere; }", + ".paragraphs p { margin: 0px 0px 1.8mm; white-space: pre-line; }", + ".skill-groups { display: grid; gap: 1.7mm; }", + ".skill-group { display: grid; grid-template-columns: minmax(24mm, 0.3fr) minmax(0px, 1fr); gap: 3mm; break-inside: avoid; }", + ".skill-group-name { font-family: Consolas, \"Courier New\", monospace; font-weight: 700; color: var(--cv-accent-color); overflow-wrap: anywhere; }", + ".skill-group-items { display: flex; flex-wrap: wrap; gap: 0.8mm 3mm; list-style: none; margin: 0px; padding: 0px; }", + ".skill-group-items li { overflow-wrap: anywhere; }", + ".entry { margin-bottom: 4.3mm; }", + ".entry:last-child { margin-bottom: 0px; }", + ".entry-head { display: flex; justify-content: space-between; gap: 1.5mm 4mm; align-items: baseline; flex-wrap: wrap; break-after: avoid; }", + ".entry-title { font-weight: 700; font-size: 10.4pt; min-width: 0px; flex: 1 1 50mm; overflow-wrap: anywhere; }", + ".entry-meta { color: rgb(85, 94, 107); font-size: 8.9pt; white-space: normal; text-align: right; max-width: 100%; overflow-wrap: anywhere; }", + ".entry-subtitle { color: rgb(85, 94, 107); font-size: 9.4pt; margin: 0.4mm 0px 1.2mm; }", + ".entry-tags { margin-top: 1.4mm; }", + ".main { padding: 0px 15.24mm 15.24mm; }", + ".header { padding: 15.24mm 15.24mm 5.6mm; display: flex; gap: 6mm; align-items: center; }", + ".header-band { background: rgb(11, 122, 99); color: rgb(255, 255, 255); }", + ".header-band .name, .header-band .headline, .header-band .contact, .header-band .contact-item, .header-band a { color: rgb(255, 255, 255); }", + ".header-centered { flex-direction: column; text-align: center; justify-content: center; }", + ".header-centered .contact { justify-content: center; }", + ".header-plain { border-bottom: 2px solid rgb(11, 122, 99); }", + ".main { counter-reset: cv-section 0; }", + ".main > .section > .section-title { counter-increment: cv-section 1; font-family: Consolas, \"Courier New\", monospace; font-weight: 600; }", + ".main > .section > .section-title::before { content: counter(cv-section, decimal-leading-zero) \" — \"; color: var(--cv-accent-color); }", + ".entry { break-inside: avoid; }", + ".entry-flow { break-inside: auto; }", + ".section-title { break-after: avoid; }", + ".section-title + .entry, .section-title + .bullets, .section-title + .tags, .section-title + .paragraphs, .section-title + .skill-groups { break-before: avoid; }", + ".section { break-inside: avoid; }", + ".section-flow { break-inside: auto; }", + ".tag, .contact-item { break-inside: avoid; }", + ".bullets li { break-inside: avoid; orphans: 2; widows: 2; overflow-wrap: anywhere; }", + ".bullets li.item-flow { break-inside: auto; }", + "@media print {\n body { background: transparent; }\n .page { width: auto; min-height: 0px; margin: 0px; }\n .cols { min-height: 0px; }\n .header { padding-top: 0px; }\n .main, .sidebar { padding-top: 0px; padding-bottom: 0px; }\n}", + "@page { size: 210mm 297mm; margin: 15.24mm 0px; }", + "body { background: transparent; }", + ".page { width: auto; min-height: 0px; margin: 0px; }", + ".cols { min-height: 0px; }", + ".header { padding-top: 0px; }", + ".main, .sidebar { padding-top: 0px; padding-bottom: 0px; }", + "html, body { overflow: hidden !important; background: transparent !important; }", + "body { padding-top: 57.6px; }", + "[data-cv-preview-flow] { width: 793.688px; height: 1008px; column-width: 793.688px; column-gap: 0px; column-fill: auto; transform-origin: left top; }" + ], + "sections": [ + { + "key": "section section-summary section-presentation-rows", + "title": "Professional Summary", + "fragments": [ + { + "x": 57.59375, + "y": 169.0625, + "width": 678.5, + "height": 49.390625 + } + ] + }, + { + "key": "section section-experience section-flow section-presentation-rows", + "title": "Professional Experience", + "fragments": [ + { + "x": 57.59375, + "y": 239.609375, + "width": 678.5, + "height": 825.984375 + }, + { + "x": 851.28125, + "y": 57.59375, + "width": 678.5, + "height": 1008 + }, + { + "x": 1644.96875, + "y": 57.59375, + "width": 678.5, + "height": 573.46875 + } + ] + }, + { + "key": "section section-education section-presentation-rows", + "title": "Education", + "fragments": [ + { + "x": 1644.96875, + "y": 652.21875, + "width": 678.5, + "height": 126.171875 + } + ] + }, + { + "key": "section section-projects section-presentation-rows", + "title": "Projects", + "fragments": [ + { + "x": 1644.96875, + "y": 799.546875, + "width": 678.5, + "height": 69.203125 + } + ] + }, + { + "key": "section section-skills section-presentation-rows", + "title": "Skills", + "fragments": [ + { + "x": 1644.96875, + "y": 889.90625, + "width": 678.5, + "height": 121.25 + } + ] + }, + { + "key": "section section-languages section-presentation-rows", + "title": "Languages", + "fragments": [ + { + "x": 2438.65625, + "y": 57.59375, + "width": 678.5, + "height": 55.71875 + } + ] + }, + { + "key": "section section-custom:boundary section-presentation-rows", + "title": "S09 Boundary content", + "fragments": [ + { + "x": 2438.65625, + "y": 134.46875, + "width": 678.5, + "height": 217.34375 + } + ] + } + ], + "effectiveMargin": "15.24mm", + "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.7922.34 Safari/537.36" + } + } + ] +} \ No newline at end of file diff --git a/docs/redesign/phase-5/p5-10/evidence/renderer-source-hashes.json b/docs/redesign/phase-5/p5-10/evidence/renderer-source-hashes.json new file mode 100644 index 0000000..30f41ae --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/renderer-source-hashes.json @@ -0,0 +1,82 @@ +[ + { + "fixture": "default-modern", + "sha256": "8e768156c7ffd4ad8dae6914a6a57baa5114668dc53a861f3925e0be8cffb8aa", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-minimal", + "sha256": "26bd74195f0f5ed917751ec5aeb0321ef156f93f105e889cea3fa67b2952bb1c", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-executive", + "sha256": "d57da767c7c6cf446fe351fd381d33b95b555423db21feb84c9c1346775d8c48", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-technical", + "sha256": "681554ff60e68efa848e0a9e0ea6c2776526ea6a2017a05952ef724b08fc9e95", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-ats-classic", + "sha256": "f290eeef533983ea8a46c536e9747c0d88ee2cb7275f94366561c89645dc947b", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-nordic", + "sha256": "361c0d55d3596a6e56d03b02bdecd9c9dbf6b48b7cb0a4add7d75382ca3e2958", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-elegant", + "sha256": "816163e97d55be1fd726228fad0f7da471c707ca7879f0fbb036a1324dbdea47", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-creative", + "sha256": "1cd723eb101ac3d06f87b4c2f8fa28e53252075a0f3ff5aa6002d6f6c2be6799", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "default-code", + "sha256": "579dbd0e1c14afdee09f29f652e7742f5082c22e2de5f7c7ed06b954a2568d35", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "long-en-minimal", + "sha256": "2506bfc9473a1096e29f643b6d2958ff941e226e91ee67b7f05323dd28646a6a", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "long-nb-code", + "sha256": "48bcca5d8713960e7543d4f150bf1c7cc96e7227d9b04b69ed063241dbbc68df", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "compact-8mm-letter", + "sha256": "515fbd6d8e0d031d86fa4cf08dc71c8c508fb84ea385aa19116f6cf13c9c7567", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "roomy-28mm-nb", + "sha256": "cc0052318c874c2600ea0c137bd377411c0f6cd1c0115c1ed65c0d1173a3f1b9", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "grid-and-bubbles", + "sha256": "1e5fc270a8ecf02a6e6bd7ac7b0d1d50c9f15baa00fb4c37a39b7ab3c141de37", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "long-sidebar-nb", + "sha256": "823db293254304db0d8ca2a9bf249af6dd343de959d4a965e741ae4cde633590", + "sameAsPaginationCheckpoint": true + }, + { + "fixture": "unbreakable-and-boundary", + "sha256": "3faf425eb9ecf0be7e5294b5f60859133f24276df9a9d6ed2e569c3cd7069978", + "sameAsPaginationCheckpoint": true + } +] diff --git a/docs/redesign/phase-5/p5-10/evidence/visual-manifest.json b/docs/redesign/phase-5/p5-10/evidence/visual-manifest.json new file mode 100644 index 0000000..5dd10df --- /dev/null +++ b/docs/redesign/phase-5/p5-10/evidence/visual-manifest.json @@ -0,0 +1,245 @@ +{ + "images": [ + { + "file": "light-en-desktop-source-entry.png", + "mode": "light", + "language": "en", + "state": "desktop-source-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "7575d25aae327b6ce9793f1edd878b1665b908f6fac834baf95f6ebe85364407" + }, + { + "file": "light-en-desktop-reset-omitted-entry.png", + "mode": "light", + "language": "en", + "state": "desktop-reset-omitted-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "e1aad23f6d9de71ecb696089b4309f24f1771ab005c86319ce6205861d28a9a9" + }, + { + "file": "light-en-desktop-customized-entry.png", + "mode": "light", + "language": "en", + "state": "desktop-customized-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "ebfcefbca8d46d45af1553f409c1176b9e993e8aaab070da08b8357274c414ae" + }, + { + "file": "light-en-scoped-entry-320.png", + "mode": "light", + "language": "en", + "state": "scoped-entry-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "de20b02bda6d63f771222005b06c80c07bb318f23a461071d38e83063eeda4a3" + }, + { + "file": "light-en-custom-cv-only-populated.png", + "mode": "light", + "language": "en", + "state": "custom-cv-only-populated", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "717590183f4384e613455ce405d0fa2c41c357b2c1ce7f4e52b59be6c21ca596" + }, + { + "file": "light-en-custom-cv-only-320.png", + "mode": "light", + "language": "en", + "state": "custom-cv-only-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "062b4bfedc6c024444e005a5272ee21e3f4f704f3c38260cb7c2c0dd0ef78426" + }, + { + "file": "light-en-scoped-entry-768.png", + "mode": "light", + "language": "en", + "state": "scoped-entry-768", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "eead6b9effdc887073f956fe042f1b51ed70d7eb616b3302124a2c4325ff4179" + }, + { + "file": "light-en-custom-entry-delete-confirmation.png", + "mode": "light", + "language": "en", + "state": "custom-entry-delete-confirmation", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "268f8047a43e3afb453d57588d63aca65907e8eb0796958b9fbdda8c6df2d1b0" + }, + { + "file": "light-en-name-validation.png", + "mode": "light", + "language": "en", + "state": "name-validation", + "sourceOutputFolder": "cv-section-scope--PRES-C05-9c368-ry-order-and-custom-content-chromium", + "sha256": "856bf78677b73a1d1cbe618feb255fb4cec97b40320b512e82f403a6fea792ed" + }, + { + "file": "dark-nb-desktop-source-entry.png", + "mode": "dark", + "language": "nb", + "state": "desktop-source-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "931a384abad4ae7aa82c7ba40c4a323bbee48e1ccc62038dbc8733042477560a" + }, + { + "file": "dark-nb-desktop-reset-omitted-entry.png", + "mode": "dark", + "language": "nb", + "state": "desktop-reset-omitted-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "fb30b0a143ba03bf8e7a2f4fc1a6602fedb8e31d80289e913aa2718b80b5a61d" + }, + { + "file": "dark-nb-desktop-customized-entry.png", + "mode": "dark", + "language": "nb", + "state": "desktop-customized-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "d81a1c8fa8cc4f1ba4e288efa1304a3120c404fd2f271a82924f02d8b4d6df01" + }, + { + "file": "dark-nb-scoped-entry-320.png", + "mode": "dark", + "language": "nb", + "state": "scoped-entry-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "01bc4275a9f0a95baafe651de978c6501e0f857cb5f42688eda9283781966358" + }, + { + "file": "dark-nb-custom-cv-only-populated.png", + "mode": "dark", + "language": "nb", + "state": "custom-cv-only-populated", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "c2b3d050e4387fc27f8aec58d8711067740ee2b492efdcc89b4ee94cebb22c9f" + }, + { + "file": "dark-nb-custom-cv-only-320.png", + "mode": "dark", + "language": "nb", + "state": "custom-cv-only-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "cc4d3c84baede1885624ceced3bd10b5550f68d5a62bc87457e7f9d6dc80cdf5" + }, + { + "file": "dark-nb-scoped-entry-768.png", + "mode": "dark", + "language": "nb", + "state": "scoped-entry-768", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "f2a7c04ea32c325abb870076cb9d476cef4478cbebd85fc9221ea85645d8ca75" + }, + { + "file": "dark-nb-custom-entry-delete-confirmation.png", + "mode": "dark", + "language": "nb", + "state": "custom-entry-delete-confirmation", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "b043d11004fe83057a9f716c6f3d5844223ddfeb0f08aa2ca338a556e4634c21" + }, + { + "file": "dark-nb-name-validation.png", + "mode": "dark", + "language": "nb", + "state": "name-validation", + "sourceOutputFolder": "cv-section-scope--PRES-C05-4cd24-ry-order-and-custom-content-chromium", + "sha256": "6895d54be35bb89dac7d72421a1e1238e611e49aaf685a1e3bbc9d0d654427c5" + }, + { + "file": "light-nb-desktop-source-entry.png", + "mode": "light", + "language": "nb", + "state": "desktop-source-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "cecd4da473a62ea2c88027ed516feb4dcf4f10c316d6e3790bbde2f7680b4fba" + }, + { + "file": "light-nb-desktop-reset-omitted-entry.png", + "mode": "light", + "language": "nb", + "state": "desktop-reset-omitted-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "c187fc501be27f31e498c74be3576bb8519b6613234e1f2e9069e70bfd767916" + }, + { + "file": "light-nb-desktop-customized-entry.png", + "mode": "light", + "language": "nb", + "state": "desktop-customized-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "fe8c4641d5680bb4e1ee1c535849dbf83e9c066144677cdcaa7665fdf45c201d" + }, + { + "file": "light-nb-scoped-entry-320.png", + "mode": "light", + "language": "nb", + "state": "scoped-entry-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "7a7eee5bde980b81e0ea54aaff30ce1cd911819409e3dc1e3779f54b96242f9e" + }, + { + "file": "light-nb-custom-cv-only-populated.png", + "mode": "light", + "language": "nb", + "state": "custom-cv-only-populated", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "de3d4f2c91f4f2124b39340a6665c20c9a602885c61169e65a733a69a1b47c8e" + }, + { + "file": "light-nb-custom-cv-only-320.png", + "mode": "light", + "language": "nb", + "state": "custom-cv-only-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-ebafa-ry-order-and-custom-content-chromium", + "sha256": "3fe661850af3ff091b7853523a20a5435aa1abfb196ae5fcb3761f7bc44c4ce8" + }, + { + "file": "dark-en-desktop-source-entry.png", + "mode": "dark", + "language": "en", + "state": "desktop-source-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "0b2b8fb9ca3cde7fd21e8b5bc7181edd3499c2f671b58b829d1bd636c97ff761" + }, + { + "file": "dark-en-desktop-reset-omitted-entry.png", + "mode": "dark", + "language": "en", + "state": "desktop-reset-omitted-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "8b8e11364f0e3c81f1929de1ee99bd668bb7604e0cf38a289c497992afb1b9cb" + }, + { + "file": "dark-en-desktop-customized-entry.png", + "mode": "dark", + "language": "en", + "state": "desktop-customized-entry", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "298bb14605601feaf577e017caf504a0a1d0b59c69f21a5ad76d7531cdf2c0c0" + }, + { + "file": "dark-en-scoped-entry-320.png", + "mode": "dark", + "language": "en", + "state": "scoped-entry-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "18f7b0c971e3a7dd99002f806ab5f0644d14e7dab6664efc2fd1530e126f8f6b" + }, + { + "file": "dark-en-custom-cv-only-populated.png", + "mode": "dark", + "language": "en", + "state": "custom-cv-only-populated", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "f68e1b4803d3fc6d05e877790509fb902b2d0aa7e6d304f5bbbb423086f059bb" + }, + { + "file": "dark-en-custom-cv-only-320.png", + "mode": "dark", + "language": "en", + "state": "custom-cv-only-320", + "sourceOutputFolder": "cv-section-scope--PRES-C05-fc56a-ry-order-and-custom-content-chromium", + "sha256": "dd1bec574d1a9c4187d49824daafdc54992633916b99414b24748f5c39ec45e7" + } + ], + "review": "Actual final-candidate PNGs inspected: light-nb desktop-source-entry; dark-en desktop-reset-omitted-entry; dark-nb scoped-entry-320 and scoped-entry-768; light-en custom-cv-only-populated and name-validation; dark-nb custom-cv-only-320 and custom-entry-delete-confirmation. Review covered hierarchy, readable scope/inclusion, light/dark contrast, narrow reflow, field/action focus and dialog actions. Name-validation is a scrolled workspace capture, not proof of new inline feedback/full header visibility. Remaining retained images have automated native state/focus/overflow assertions; individual manual inspection of every image is not claimed. Human screen-reader, native touch and broader pointer/reflow qualification remain open." +} diff --git a/docs/roadmap/todo.md b/docs/roadmap/todo.md index a5b2a1f..ed480e1 100644 --- a/docs/roadmap/todo.md +++ b/docs/roadmap/todo.md @@ -4,6 +4,9 @@ Status reconciled: 2026-10-07. ## Current repository work +- **P5-10 — CV section editing/source clarity complete:** [implementation record](../redesign/phase-5/p5-10/README.md) retains P5-09's frame and existing canonical/settings/history/rendering owners. Scope-labelled fields, independent reset, editable omitted entries and compact custom-entry actions have native persistence/focus evidence. Baseline: **941 backend / 430 frontend (+4) / 106 actual browser passes (+4)**, security 9/6/1, configuration 3; revision 5/5 and fidelity 16/16, 36 aligned pages. EN/Bokmål, light/dark, desktop/intermediate/320px evidence retained; 205 axe scans report zero violations but retain incomplete findings. Stop before P5-11+ or B07. F04 and human screen-reader/font/photo/pointer qualifications stay open. +- **P5-10-O01 — inherited nested drag/drop ownership:** unchanged item drag events can bubble to the section reorder handler on cross-section drops. Within-section native drag and keyboard moves remain protected; cross-section transfer is unsupported. Define and test drop ownership in a separate bounded follow-up, without changing the source-section model. This does not block preview-only P5-11. [Evidence](../redesign/phase-5/p5-10/README.md#separately-scoped-drag-caveat). + - **P5-09 — CV editor frame/navigation complete:** [implementation record](../redesign/phase-5/p5-09/README.md). Content-first studio, compact document identity/scope/actions, ordered section navigation and explicit keyboard preview entry reuse the existing forms/save/history/render owners. Baseline: **941 backend / 426 frontend (+4) / 102 actual browser passes (+4)**, security 9/6/1, configuration 3; revision 5/5 and fidelity 16/16 with 36 aligned pages. EN/Bokmål, light/dark and desktop/intermediate/phone evidence retained; incomplete checks and pointer/reflow qualification are explicit. Stop before P5-10+ and B07. F04, production font/photo and human screen-reader acceptance stay open. - **CV pagination-fidelity repair complete — GO for P5-09:** [native pagination evidence](../redesign/phase-5/p5-09-pagination-readiness/README.md) resolves all six original failures, **16/16** at unchanged tolerances, 36 preview/native PDF pages. PDF and accepted [revision protection](../redesign/phase-5/p5-09-readiness/README.md) remain unchanged. Baseline: **941 backend / 422 frontend / 98 actual browser passes (+2)**, security 9/6/1, configuration 3. Broader photo/wrapped-line/deployment-font qualification and native print-quality/control debt remain recorded. Stop before P5-09+ or B07; F04 and human screen-reader acceptance stay open. P2-D01 is ordinary passing. diff --git a/job-tracker-ui/e2e/cv-section-scope.spec.ts b/job-tracker-ui/e2e/cv-section-scope.spec.ts new file mode 100644 index 0000000..f803189 --- /dev/null +++ b/job-tracker-ui/e2e/cv-section-scope.spec.ts @@ -0,0 +1,263 @@ +import { expect, test, type APIRequestContext, type Locator, type Page, type TestInfo } from '@playwright/test'; +import AxeBuilder from '@axe-core/playwright'; +import type { CvOutline, CvVariant } from '../src/cvBuilder'; +import { translations } from '../src/i18n/translations'; + +const apiUrl = 'http://localhost:5302/api'; +const password = 'E2ePassword123!'; +async function login(api: APIRequestContext, email: string) { + expect((await api.post(`${apiUrl}/auth/login`, { data: { email, password } })).status()).toBe(200); + const me = await (await api.get(`${apiUrl}/auth/me`)).json(); + return { 'X-CSRF-TOKEN': (await api.storageState()).cookies.find(cookie => cookie.name === 'XSRF-TOKEN')!.value, 'X-Session-Context': me.sessionContext as string }; +} +async function capture(scope: Locator, info: TestInfo, state: string) { + await scope.scrollIntoViewIfNeeded(); + await scope.screenshot({ path: info.outputPath(`${state}.png`), animations: 'disabled' }); +} +async function scan(page: Page, info: TestInfo, state: string, region: string) { + const result = await new AxeBuilder({ page }).include(`[role="region"][aria-label=${JSON.stringify(region)}]`) + .withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa']).analyze(); + await info.attach(`${state}-axe`, { body: JSON.stringify({ violations: result.violations, incomplete: result.incomplete }), contentType: 'application/json' }); + expect(result.violations).toEqual([]); +} + +for (const [mode, language] of [['light', 'en'], ['dark', 'nb'], ['light', 'nb'], ['dark', 'en']] as const) { + test(`[PRES-C05 C07 C10 W05 E08] ${mode}/${language} CV field scope, source resets, entry order and custom content`, async ({ page, context, playwright }, info) => { + test.setTimeout(180_000); + const t = translations[language]; + const named = (key: keyof typeof t, entry: string) => t[key].replace('{entry}', entry); + const sectionLabel = (key: keyof typeof t, section: string) => t[key].replace('{section}', section); + const resetLabel = (field: string) => t.cvEditorResetField.replace('{field}', field); + const admin = await playwright.request.newContext(); + try { + const adminHeaders = await login(admin, 'e2e@example.test'); + const email = `p510-${Date.now()}-${mode}-${language}@example.test`; + expect((await admin.post(`${apiUrl}/users`, { headers: adminHeaders, data: { email, password, roles: [] } })).status()).toBe(200); + const headers = await login(page.request, email); + await context.route('**/*', route => { + const url = new URL(route.request().url()); + return ['localhost', '127.0.0.1'].includes(url.hostname) || ['data:', 'blob:', 'about:'].includes(url.protocol) ? route.continue() : route.abort(); + }); + await context.addInitScript(({ mode, language }) => { localStorage.setItem('jobtracker.themeMode', mode); localStorage.setItem('uiLanguage', language); }, { mode, language }); + expect((await page.request.put(`${apiUrl}/auth/preferences/language`, { headers, data: { language: language === 'nb' ? 'nb-NO' : 'en' } })).status()).toBe(204); + const profile = { + version: '1', contact: { fullName: 'Åse Eksempel', headline: 'Canonical career information', location: 'Oslo, Norge' }, + summary: ['Verified source experience.'], + jobs: [ + { id: 'job-1', title: 'Platform engineer', company: 'Nordlys AS', startDate: '2021-01', isCurrent: true, bullets: ['Maintained verified, accessible workflows.'] }, + { id: 'job-2', title: 'Systems engineer', company: 'Fjord AS', startDate: '2019-01', endDate: '2020-12', bullets: ['Reviewed documented integrations.'] }, + { id: 'job-3', title: 'Software developer', company: 'Aurora AS', startDate: '2017-01', endDate: '2018-12', bullets: ['Built source-grounded software.'] }, + ], + education: [{ id: 'education-1', qualification: 'Computer science', institution: 'Fixture University', startDate: '2013-08', endDate: '2016-06' }], + projects: [{ id: 'project-1', name: 'Evidence workspace', bullets: ['Documented source-grounded reviews.'] }], skills: ['C#', 'React', 'Norsk'], + }; + expect((await page.request.put(`${apiUrl}/career/profile`, { headers, data: { profile } })).status()).toBe(200); + const source = await (await page.request.get(`${apiUrl}/career/profile`)).json(); + const outline: CvOutline = await (await page.request.get(`${apiUrl}/cv/outline`)).json(); + const entries = outline.sections.find(section => section.key === 'experience')!.entries; + const first = entries.find(entry => entry.title === 'Platform engineer')!; + const second = entries.find(entry => entry.title === 'Systems engineer')!; + const third = entries.find(entry => entry.title === 'Software developer')!; + expect(entries).toHaveLength(3); + const settings = { themeId: 'minimal', sections: [{ key: 'summary' }, { key: 'experience', itemOrder: [first.key!, second.key!, third.key!] }, { key: 'education' }, { key: 'projects' }, { key: 'skills', hidden: true }] }; + const create = async (name: string): Promise => { + const response = await page.request.post(`${apiUrl}/cv/variants`, { headers, data: { name, settings } }); + expect(response.status()).toBe(200); return response.json(); + }; + const cv = await create('Åse — this CV only'); + const sibling = await create('Åse — untouched sibling'); + const read = async (id = cv.id): Promise => (await page.request.get(`${apiUrl}/cv/variants/${id}`)).json(); + const saved = async () => { await expect(page.getByText(t.cvEditorSaved, { exact: true })).toBeVisible(); }; + const unchanged = async (expectedSource = source) => { + expect(await (await page.request.get(`${apiUrl}/career/profile`)).json()).toEqual(expectedSource); + expect(await read(sibling.id)).toEqual(sibling); + }; + const experience = page.getByRole('group', { name: t.cvSectionExperience, exact: true }); + const entry = (title: string) => experience.getByRole('group', { name: title, exact: true }); + const openExperience = async () => { + await page.getByRole('button', { name: sectionLabel('cvEditorExpandSection', t.cvSectionExperience), exact: true }).click(); + await expect(entry(first.title!)).toBeVisible(); + }; + await page.setViewportSize({ width: 1440, height: 900 }); + await page.goto(`/career/builder/${cv.id}`); + await expect(page.getByLabel(t.cvEditorName, { exact: true })).toHaveValue(cv.name); + await openExperience(); await saved(); + await expect(entry(first.title!).getByText(t.cvEditorUsingSource, { exact: true }).first()).toBeVisible(); + await expect(experience.getByText(t.cvEditorEntryScopeHelp, { exact: true })).toBeVisible(); + await capture(entry(first.title!), info, 'desktop-source-entry'); + await scan(page, info, 'desktop-source-entry', t.cvEditorEditingRegion); + + // The native UI writes only the current variant's lens over Career Profile. + await entry(first.title!).getByLabel(t.cvEditorEntryTitle, { exact: true }).fill('CV-specific platform engineer'); + const tailored = entry('CV-specific platform engineer'); + await tailored.getByLabel(t.cvEditorEntrySubtitle, { exact: true }).fill('CV-specific employer — æøå'); + await tailored.getByLabel(t.cvEditorBulletsHelp, { exact: true }).fill('CV-specific evidence.\nSecond tailored bullet.'); + await expect.poll(async () => (await read()).settings.overrides[first.key!]).toMatchObject({ title: 'CV-specific platform engineer', subtitle: 'CV-specific employer — æøå', bullets: ['CV-specific evidence.', 'Second tailored bullet.'] }); + await saved(); await unchanged(); + await expect(tailored.getByText(t.cvEditorCustomized, { exact: true }).first()).toBeVisible(); + + const move = tailored.getByRole('button', { name: named('cvEditorMoveNamedEntryDown', 'CV-specific platform engineer'), exact: true }); + await move.focus(); await page.keyboard.press('Enter'); + await expect(move).toBeFocused(); + const movedOrder = [second.key!, first.key!, third.key!]; + await expect.poll(async () => (await read()).settings.sections.find(section => section.key === 'experience')?.itemOrder).toEqual(movedOrder); + await saved(); + await tailored.getByRole('button', { name: named('cvEditorHideEntry', 'CV-specific platform engineer'), exact: true }).click(); + await expect.poll(async () => (await read()).settings.overrides[first.key!].hidden).toBe(true); + await expect(tailored.getByLabel(t.cvEditorEntryTitle, { exact: true })).toBeEditable(); + await expect(tailored.getByRole('button', { name: named('cvEditorShowEntry', 'CV-specific platform engineer'), exact: true })).toBeVisible(); + await tailored.getByLabel(t.cvEditorEntrySubtitle, { exact: true }).fill('Edited while omitted — æøå'); + await expect.poll(async () => (await read()).settings.overrides[first.key!].subtitle).toBe('Edited while omitted — æøå'); + await saved(); + + for (const [field, label, value] of [ + ['bullets', t.cvEditorBulletsHelp, first.bullets.join('\n')], + ['title', t.cvEditorEntryTitle, first.title!], + ['subtitle', t.cvEditorEntrySubtitle, first.subtitle ?? ''], + ] as const) { + const currentTitle = field === 'subtitle' ? first.title! : 'CV-specific platform engineer'; + const before = await read(); + const reset = entry(currentTitle).getByRole('button', { name: resetLabel(label), exact: true }); + const resetRequest = page.waitForRequest(request => request.url() === `${apiUrl}/cv/variants/${cv.id}` && request.method() === 'PUT'); + await reset.focus(); await page.keyboard.press('Enter'); + await expect(entry(field === 'bullets' ? currentTitle : first.title!).getByLabel(label, { exact: true })).toBeFocused(); + expect((await resetRequest).postDataJSON().settings.overrides[first.key!]).not.toHaveProperty(field); + await expect.poll(async () => (await read()).settings.overrides[first.key!]?.[field] ?? null).toBeNull(); + await saved(); + const after = await read(); + const remaining = { ...before.settings.overrides[first.key!] }; delete remaining[field]; + const persisted = { ...after.settings.overrides[first.key!] }; delete persisted[field]; + expect(persisted).toEqual(remaining); + expect(after.settings.sections).toEqual(before.settings.sections); + await expect(entry(field === 'bullets' ? currentTitle : first.title!).getByLabel(label, { exact: true })).toHaveValue(value); + } + await expect(entry(first.title!).getByText(t.cvEditorUsingSource, { exact: true }).first()).toBeVisible(); + await expect(entry(first.title!).getByRole('button', { name: named('cvEditorShowEntry', first.title!), exact: true })).toBeVisible(); + await unchanged(); + await capture(entry(first.title!), info, 'desktop-reset-omitted-entry'); + + // An absent field inherits the latest source; a retained override remains local. + await entry(first.title!).getByLabel(t.cvEditorEntryTitle, { exact: true }).fill('Retained CV title'); + await expect.poll(async () => (await read()).settings.overrides[first.key!].title).toBe('Retained CV title'); + await saved(); + const changedProfile = { ...profile, jobs: profile.jobs.map(job => job.id === 'job-1' ? { ...job, title: 'Updated source title', company: 'Updated source employer', bullets: ['Updated source evidence — æøå.'] } : job) }; + expect((await page.request.put(`${apiUrl}/career/profile`, { headers, data: { profile: changedProfile } })).status()).toBe(200); + const changedSource = await (await page.request.get(`${apiUrl}/career/profile`)).json(); + const beforeReload = await read(); + await page.reload(); + await page.getByRole('button', { name: sectionLabel('cvEditorExpandSection', t.cvSectionExperience), exact: true }).click(); + const retained = entry('Retained CV title'); + await expect(retained.getByLabel(t.cvEditorEntryTitle, { exact: true })).toHaveValue('Retained CV title'); + await expect(retained.getByLabel(t.cvEditorEntrySubtitle, { exact: true })).toHaveValue('Updated source employer'); + await expect(retained.getByLabel(t.cvEditorBulletsHelp, { exact: true })).toHaveValue('Updated source evidence — æøå.'); + await expect(retained.getByRole('button', { name: named('cvEditorShowEntry', 'Retained CV title'), exact: true })).toBeVisible(); + expect(await read()).toEqual(beforeReload); await unchanged(changedSource); + await retained.getByRole('button', { name: named('cvEditorShowEntry', 'Retained CV title'), exact: true }).click(); + await expect.poll(async () => (await read()).settings.overrides[first.key!].hidden).toBe(false); await saved(); + await expect(retained.getByRole('button', { name: named('cvEditorHideEntry', 'Retained CV title'), exact: true })).toBeVisible(); + + // Actual HTML drag handlers persist the same itemOrder used by keyboard moves. + await entry(second.title!).dragTo(retained, { sourcePosition: { x: 8, y: 24 }, targetPosition: { x: 8, y: 24 } }); + await expect.poll(async () => (await read()).settings.sections.find(section => section.key === 'experience')?.itemOrder).toEqual([first.key!, second.key!, third.key!]); + await saved(); await unchanged(changedSource); + await capture(retained, info, 'desktop-customized-entry'); + for (const width of [1440, 768, 320]) { + await page.setViewportSize({ width, height: 900 }); + await retained.getByLabel(t.cvEditorEntrySubtitle, { exact: true }).focus(); + await expect(retained.getByLabel(t.cvEditorEntrySubtitle, { exact: true })).toBeFocused(); + expect(await page.evaluate(() => document.documentElement.scrollWidth <= innerWidth + 1)).toBe(true); + await capture(retained, info, `scoped-entry-${width}`); + await scan(page, info, `scoped-entry-${width}`, t.cvEditorEditingRegion); + } + + await page.setViewportSize({ width: 1440, height: 900 }); + // Existing document-name validation remains the validation owner; optional + // source fields do not acquire invented required rules in the section UI. + const cvName = page.getByLabel(t.cvEditorName, { exact: true }); + await cvName.fill(''); + await expect(page.getByRole('button', { name: t.cvEditorSaveNow, exact: true })).toBeDisabled(); + await page.screenshot({ path: info.outputPath('name-validation.png'), animations: 'disabled' }); + await cvName.fill(cv.name); await saved(); + const addContent = page.getByRole('button', { name: t.cvEditorAddContent, exact: true }); + await addContent.click(); + const addDialog = page.getByRole('dialog'); + await addDialog.getByText(t.cvEditorAddCustomHelp, { exact: true }).locator('..').getByRole('button', { name: t.cvEditorAdd, exact: true }).click(); + await expect(addDialog).toHaveCount(0); + await expect.poll(async () => (await read()).settings.customSections.length).toBe(1); await saved(); + const customSetting = (await read()).settings.customSections[0]; + const sectionName = page.getByLabel(sectionLabel('cvEditorSectionName', `custom:${customSetting.key}`), { exact: true }); + await sectionName.fill('CV-only volunteering — æøå'); + const custom = page.getByRole('group', { name: 'CV-only volunteering — æøå', exact: true }); + await custom.getByRole('button', { name: sectionLabel('cvEditorExpandSection', 'CV-only volunteering — æøå'), exact: true }).click(); + await expect(custom.getByText(t.cvEditorCvOnly, { exact: true })).toBeVisible(); + await custom.getByRole('combobox', { name: new RegExp(`^${t.cvEditorContentFormat}`) }).click(); + await page.getByRole('option', { name: t.cvEditorMultipleEntries, exact: true }).click(); + const addEntry = custom.getByRole('button', { name: t.cvEditorAddEntry, exact: true }); + const customEntry = (number: number) => custom.getByLabel(t.cvEditorEntry.replace('{number}', String(number)), { exact: true }); + await addEntry.focus(); await page.keyboard.press('Enter'); + await expect(customEntry(1)).toBeFocused(); + await customEntry(1).fill('CV-only first contribution — æøå.'); + await addEntry.click(); await expect(customEntry(2)).toBeFocused(); + await customEntry(2).fill('CV-only second contribution.'); + await expect.poll(async () => (await read()).settings.customSections[0].items).toEqual(['CV-only first contribution — æøå.', 'CV-only second contribution.']); await saved(); + await capture(custom, info, 'custom-cv-only-populated'); + for (const width of [768, 320]) { + await page.setViewportSize({ width, height: 900 }); + await customEntry(2).focus(); await expect(customEntry(2)).toBeFocused(); + expect(await page.evaluate(() => document.documentElement.scrollWidth <= innerWidth + 1)).toBe(true); + await capture(custom, info, `custom-cv-only-${width}`); + } + const customMove = custom.getByRole('button', { name: t.cvEditorMoveEntryUp.replace('{number}', '2'), exact: true }); + await customMove.focus(); await page.keyboard.press('Enter'); + await expect(customEntry(1)).toBeFocused(); + await expect.poll(async () => (await read()).settings.customSections[0].items).toEqual(['CV-only second contribution.', 'CV-only first contribution — æøå.']); await saved(); + const deleteEntry = custom.getByRole('button', { name: t.cvEditorDeleteEntryNumber.replace('{number}', '1'), exact: true }); + const beforeCancel = await read(); + await deleteEntry.click(); + await expect(page.getByRole('dialog').getByRole('button', { name: t.cancel, exact: true })).toBeFocused(); + await page.getByRole('dialog').getByRole('button', { name: t.cancel, exact: true }).click(); + await expect(page.getByRole('dialog')).toHaveCount(0); await expect(deleteEntry).toBeFocused(); + expect(await read()).toEqual(beforeCancel); + await deleteEntry.click(); + await capture(page.getByRole('dialog'), info, 'custom-entry-delete-confirmation'); + await page.getByRole('dialog').getByRole('button', { name: t.cvEditorDeleteEntry, exact: true }).click(); + await expect(page.getByRole('dialog')).toHaveCount(0); await expect(customEntry(1)).toBeFocused(); + await expect.poll(async () => (await read()).settings.customSections[0].items).toEqual(['CV-only first contribution — æøå.']); await saved(); + await custom.getByRole('button', { name: t.cvEditorDeleteEntryNumber.replace('{number}', '1'), exact: true }).click(); + await page.getByRole('dialog').getByRole('button', { name: t.cvEditorDeleteEntry, exact: true }).click(); + await expect(page.getByRole('dialog')).toHaveCount(0); await expect(addEntry).toBeFocused(); + await expect.poll(async () => (await read()).settings.customSections[0].items).toEqual([]); await saved(); + await capture(custom, info, 'custom-cv-only-empty'); await unchanged(changedSource); + + const removeSection = custom.getByRole('button', { name: sectionLabel('cvEditorRemoveSection', 'CV-only volunteering — æøå'), exact: true }); + const beforeRemove = await read(); + await removeSection.click(); await page.keyboard.press('Escape'); + await expect(page.getByRole('dialog')).toHaveCount(0); await expect(removeSection).toBeFocused(); + expect(await read()).toEqual(beforeRemove); + await removeSection.click(); + await page.getByRole('dialog').getByRole('button', { name: t.cvEditorDeleteSection, exact: true }).click(); + await expect(page.getByRole('dialog')).toHaveCount(0); await expect(addContent).toBeFocused(); + await expect.poll(async () => (await read()).settings.customSections).toEqual([]); await saved(); + expect((await read()).settings.sections.some(section => section.key === `custom:${customSetting.key}`)).toBe(false); + await unchanged(changedSource); + + // Existing history stores CV settings; it does not snapshot Career Profile. + await page.setViewportSize({ width: 1440, height: 900 }); + const final = await read(); + await page.getByRole('tab', { name: t.cvEditorHistory, exact: true }).click(); + const history = page.getByRole('tabpanel', { name: t.cvEditorHistory, exact: true }); + await expect(history.getByText(t.cvEditorVersion.replace('{version}', '1'), { exact: true })).toBeVisible(); + await history.getByRole('button', { name: t.cvEditorRestoreTitle.replace('{version}', '1'), exact: true }).click(); + await page.getByRole('dialog').getByRole('button', { name: t.cvEditorRestoreVersion, exact: true }).click(); + await expect.poll(async () => (await read()).version).toBe(final.version + 1); + expect((await read()).settings).toEqual(cv.settings); await unchanged(changedSource); + await page.getByRole('tab', { name: t.cvEditorContent, exact: true }).click(); + const inherited = entry('Updated source title'); + await expect(inherited.getByLabel(t.cvEditorEntryTitle, { exact: true })).toHaveValue('Updated source title'); + await expect(inherited.getByLabel(t.cvEditorEntrySubtitle, { exact: true })).toHaveValue('Updated source employer'); + await expect(inherited.getByLabel(t.cvEditorBulletsHelp, { exact: true })).toHaveValue('Updated source evidence — æøå.'); + await expect(inherited.getByText(t.cvEditorUsingSource, { exact: true }).first()).toBeVisible(); + await unchanged(changedSource); + } finally { await admin.dispose(); } + }); +} diff --git a/job-tracker-ui/src/components/RichTextField.tsx b/job-tracker-ui/src/components/RichTextField.tsx index fe349a1..eeff96d 100644 --- a/job-tracker-ui/src/components/RichTextField.tsx +++ b/job-tracker-ui/src/components/RichTextField.tsx @@ -20,6 +20,7 @@ export default function RichTextField({ placeholder, minRows = 2, ariaLabel, + helperText, disabled = false, }: { value: string; @@ -28,6 +29,7 @@ export default function RichTextField({ placeholder?: string; minRows?: number; ariaLabel?: string; + helperText?: React.ReactNode; disabled?: boolean; }) { const { t } = useI18n(); @@ -63,6 +65,7 @@ export default function RichTextField({ expect(screen.queryByRole('dialog')).not.toBeInTheDocument()); + expect(deleteEntry).toHaveFocus(); expect(screen.getAllByLabelText(/^Entry /)).toHaveLength(2); fireEvent.click(screen.getByRole('button', { name: 'Delete custom entry 1' })); dialog = await screen.findByRole('dialog', { name: 'Delete custom entry' }); fireEvent.click(within(dialog).getByRole('button', { name: 'Delete entry' })); await waitFor(() => expect(screen.getAllByLabelText(/^Entry /)).toHaveLength(1)); await waitFor(() => expect(screen.queryByRole('dialog')).not.toBeInTheDocument()); + expect(screen.getByLabelText('Entry 1')).toHaveFocus(); await waitFor(() => expect(mockedApi.put).toHaveBeenLastCalledWith('/cv/variants/3', expect.objectContaining({ settings: expect.objectContaining({ @@ -500,6 +505,120 @@ test('custom entries can be added, edited, reordered and deleted with confirmati await waitFor(() => expect(screen.queryByLabelText(/Section name for custom:/)).not.toBeInTheDocument()); }); +const contentOutline = { + sections: [{ + key: 'experience', title: 'Experience', kind: 'entries', bullets: [], tags: [], entries: [ + { key: 'job-1', title: 'Engineer', subtitle: 'First Co', meta: '2021-01 – Present', bullets: ['Built APIs'], tags: [] }, + { key: 'job-2', title: 'Lead', subtitle: 'Second Co', bullets: ['Led teams'], tags: [] }, + ], + }], +}; + +test('[P5-10 PRES-C01 C07] source-backed entry edits identify their scope and save only this CV', async () => { + routeGet(() => Promise.resolve({ data: variant }), contentOutline); + renderAt(3); + await openContentTab(); + fireEvent.click(screen.getByRole('button', { name: 'Expand Experience' })); + const entry = screen.getByRole('group', { name: 'Engineer' }); + expect(entry).not.toHaveTextContent('2021-01 – Present'); + expect(within(entry).getAllByText('Using Career Profile')).toHaveLength(3); + fireEvent.change(within(entry).getByLabelText('Title'), { target: { value: ' ' } }); + expect(screen.getByRole('group', { name: 'Engineer' })).toBe(entry); + expect(within(entry).getByText('Blank uses Career Profile')).toBeInTheDocument(); + fireEvent.change(within(entry).getByLabelText('Title'), { target: { value: 'Platform Engineer' } }); + fireEvent.change(within(entry).getByLabelText('Subtitle'), { target: { value: 'CV-specific employer label' } }); + fireEvent.change(within(entry).getByLabelText('Bullet points (one per line)'), { target: { value: 'Reviewed CV bullet\nSecond CV bullet' } }); + expect(within(entry).getAllByText('Customized for this CV')).toHaveLength(3); + fireEvent.click(screen.getByRole('button', { name: 'Save now' })); + await screen.findByText('Saved'); + expect(mockedApi.put).toHaveBeenLastCalledWith('/cv/variants/3', expect.objectContaining({ + expectedVersion: 4, settings: expect.objectContaining({ overrides: { + 'job-1': { title: 'Platform Engineer', subtitle: 'CV-specific employer label', bullets: ['Reviewed CV bullet', 'Second CV bullet'] }, + } }), + })); + expect(mockedApi.put.mock.calls.every(([url]) => url === '/cv/variants/3')).toBe(true); + expect(contentOutline.sections[0].entries[0]).toEqual({ key: 'job-1', title: 'Engineer', subtitle: 'First Co', meta: '2021-01 – Present', bullets: ['Built APIs'], tags: [] }); +}); + +test('[P5-10 PRES-C07 C10] resetting one entry field preserves omission, sibling override and order and supports undo', async () => { + const settings = { ...variant.settings, + sections: [{ key: 'experience', itemOrder: ['job-2', 'job-1'] }], + overrides: { + 'job-1': { title: 'CV Engineer', subtitle: 'CV employer', bullets: ['CV bullet'], hidden: true }, + 'job-2': { title: 'CV Lead', bullets: ['Sibling item override'] }, + }, + }; + routeGet(() => Promise.resolve({ data: { ...variant, settings } }), contentOutline); + renderAt(3); + await openContentTab(); + fireEvent.click(screen.getByRole('button', { name: 'Expand Experience' })); + const entry = screen.getByRole('group', { name: 'CV Engineer' }); + fireEvent.click(within(entry).getByRole('button', { name: 'Use Career Profile: Title' })); + expect(within(entry).getByLabelText('Title')).toHaveValue('Engineer'); + expect(within(entry).getByLabelText('Subtitle')).toHaveValue('CV employer'); + expect(within(entry).getByLabelText('Bullet points (one per line)')).toHaveValue('CV bullet'); + fireEvent.click(within(entry).getByRole('button', { name: 'Use Career Profile: Subtitle' })); + expect(within(entry).getByLabelText('Subtitle')).toHaveValue('First Co'); + fireEvent.click(within(entry).getByRole('button', { name: 'Use Career Profile: Bullet points (one per line)' })); + expect(within(entry).getByLabelText('Bullet points (one per line)')).toHaveValue('Built APIs'); + expect(within(entry).getAllByText('Using Career Profile')).toHaveLength(3); + expect(within(entry).getByRole('button', { name: 'Show Engineer entry' })).toBeInTheDocument(); + fireEvent.click(screen.getByRole('button', { name: 'Undo' })); + expect(within(entry).getByLabelText('Title')).toHaveValue('Engineer'); + expect(within(entry).getByLabelText('Subtitle')).toHaveValue('First Co'); + expect(within(entry).getByLabelText('Bullet points (one per line)')).toHaveValue('CV bullet'); + fireEvent.click(screen.getByRole('button', { name: 'Redo' })); + fireEvent.click(screen.getByRole('button', { name: 'Save now' })); + await screen.findByText('Saved'); + const saved = mockedApi.put.mock.calls[mockedApi.put.mock.calls.length - 1][1] as any; + expect(saved.settings.overrides).toEqual({ 'job-1': { hidden: true }, 'job-2': settings.overrides['job-2'] }); + expect(saved.settings.sections[0].itemOrder).toEqual(['job-2', 'job-1']); +}); + +test('[P5-10 PRES-C07 C10 E08] omitted entries remain editable and retain their draft after a failed save', async () => { + routeGet(() => Promise.resolve({ data: { ...variant, settings: { ...variant.settings, overrides: { 'job-1': { hidden: true } } } } }), contentOutline); + mockedApi.put.mockRejectedValueOnce(new Error('offline')).mockResolvedValueOnce({ data: { ...variant, version: 5 } } as any); + renderAt(3); + await openContentTab(); + fireEvent.click(screen.getByRole('button', { name: 'Expand Experience' })); + const entry = screen.getByRole('group', { name: 'Engineer' }); + expect(within(entry).getByText('Omitted', { exact: true })).toBeInTheDocument(); + expect(within(entry).getByLabelText('Title')).toBeEnabled(); + expect(within(entry).getByLabelText('Subtitle')).toBeEnabled(); + const bullets = within(entry).getByLabelText('Bullet points (one per line)'); + fireEvent.change(bullets, { target: { value: 'Retained omitted-entry draft' } }); + fireEvent.click(screen.getByRole('button', { name: 'Save now' })); + await screen.findByText('Save failed'); + expect(bullets).toHaveValue('Retained omitted-entry draft'); + expect(within(entry).getByRole('button', { name: 'Show Engineer entry' })).toBeInTheDocument(); + fireEvent.click(screen.getByRole('button', { name: 'Save now' })); + await screen.findByText('Saved'); + expect(mockedApi.put).toHaveBeenLastCalledWith('/cv/variants/3', expect.objectContaining({ + settings: expect.objectContaining({ overrides: { 'job-1': { hidden: true, bullets: ['Retained omitted-entry draft'] } } }), + })); +}); + +test('[P5-10 PRES-C01 C07] section content reset inherits source without changing omission or presentation', async () => { + routeGet(() => Promise.resolve({ data: { ...variant, settings: { ...variant.settings, + sections: [{ key: 'skills', items: ['CV-specific skill'], hidden: true, presentation: 'bubble' }], + } } }), { sections: [{ key: 'skills', title: 'Skills', kind: 'tags', tags: ['C#', 'Norsk'], bullets: [], entries: [] }] }); + renderAt(3); + await openContentTab(); + fireEvent.click(screen.getByRole('button', { name: 'Expand Skills' })); + const section = screen.getByRole('group', { name: 'Skills' }); + expect(within(section).getByLabelText('Items (one per line)')).toHaveValue('CV-specific skill'); + fireEvent.click(within(section).getByRole('button', { name: 'Use Career Profile content' })); + expect(within(section).getByLabelText('Items (one per line)')).toHaveValue('C#\nNorsk'); + expect(within(section).getByRole('button', { name: 'Show Skills section' })).toBeInTheDocument(); + fireEvent.click(screen.getByRole('button', { name: 'Save now' })); + await screen.findByText('Saved'); + const saved = mockedApi.put.mock.calls[mockedApi.put.mock.calls.length - 1][1] as any; + const row = saved.settings.sections.find((item: any) => item.key === 'skills'); + expect(row).toEqual(expect.objectContaining({ key: 'skills', hidden: true, presentation: 'bubble' })); + expect(row.items).toBeUndefined(); + expect(mockedApi.put.mock.calls.every(([url]) => url === '/cv/variants/3')).toBe(true); +}); + test('profile-backed sections expand, reorder, hide and persist variant-only overrides', async () => { routeGet(() => Promise.resolve({ data: variant } as any), { sections: [{ diff --git a/job-tracker-ui/src/i18n/translations.ts b/job-tracker-ui/src/i18n/translations.ts index 5d9a38a..bb1bbb3 100644 --- a/job-tracker-ui/src/i18n/translations.ts +++ b/job-tracker-ui/src/i18n/translations.ts @@ -590,12 +590,19 @@ export const translations = { cvEditorDeleteCustomMessage: "Delete the custom section ‘{title}’ and all of its entries?", cvEditorDeleteCustomTitle: "Delete custom section", cvEditorDeleteSection: "Delete section", - cvEditorEditMasterProfile: "Edit master profile", - cvEditorMasterProfileHelp: "Contact details and career history are shared from your master profile. CV-specific headings, wording, order and visibility stay in this version.", + cvEditorEditMasterProfile: "Open Career Profile", + cvEditorMasterProfileHelp: "Career Profile is your source. Editing wording, order or inclusion here changes only this CV.", cvEditorHeadlineOverride: "Headline override", - cvEditorHeadlineHelp: "Blank uses the headline from your master profile.", + cvEditorHeadlineHelp: "Blank uses your Career Profile headline. Changes here affect only this CV.", cvEditorSections: "Sections", - cvEditorSectionsHelp: "Drag to reorder, or use the arrows. Content comes from your master profile.", + cvEditorSectionsHelp: "Drag to reorder, or use the arrows. Omitted content stays editable.", + cvEditorUsingSource: "Using Career Profile", + cvEditorCustomized: "Customized for this CV", + cvEditorCvOnly: "CV-only content", + cvEditorEntryScopeHelp: "Changes here affect only this CV. Career Profile stays unchanged.", + cvEditorBlankUsesSource: "Blank uses Career Profile", + cvEditorResetField: "Use Career Profile: {field}", + cvEditorResetFieldHelp: "Replaces this CV field with the current Career Profile value. Other fields, order and inclusion stay unchanged.", cvEditorAddSection: "Add a section", cvEditorAddSectionButton: "Add section", cvEditorAddSectionHelp: "Preset sections use the same editable, reorderable card as every other section.", @@ -642,7 +649,7 @@ export const translations = { cvEditorBulletsHelp: "Bullet points (one per line)", cvEditorItemsHelp: "Items (one per line)", cvEditorContentItemsHelp: "Content (one item per line)", - cvEditorResetMasterProfile: "Reset to master profile", + cvEditorResetMasterProfile: "Use Career Profile content", cvEditorMoveNamedEntryUp: "Move {entry} entry up", cvEditorMoveNamedEntryDown: "Move {entry} entry down", cvEditorShowEntry: "Show {entry} entry", @@ -3137,12 +3144,19 @@ export const translations = { cvEditorDeleteCustomMessage: "Slette den egendefinerte seksjonen «{title}» og alle oppføringene?", cvEditorDeleteCustomTitle: "Slett egendefinert seksjon", cvEditorDeleteSection: "Slett seksjon", - cvEditorEditMasterProfile: "Rediger hovedprofil", - cvEditorMasterProfileHelp: "Kontaktopplysninger og karrierehistorikk deles fra hovedprofilen. CV-spesifikke overskrifter, formuleringer, rekkefølge og synlighet beholdes i denne versjonen.", + cvEditorEditMasterProfile: "Åpne Karriereprofil", + cvEditorMasterProfileHelp: "Karriereprofil er kilden din. Endringer i tekst, rekkefølge og synlighet her gjelder bare denne CV-en.", cvEditorHeadlineOverride: "Egen overskrift", - cvEditorHeadlineHelp: "Tomt felt bruker overskriften fra hovedprofilen.", + cvEditorHeadlineHelp: "Tomt felt bruker overskriften fra Karriereprofil. Endringer her gjelder bare denne CV-en.", cvEditorSections: "Seksjoner", - cvEditorSectionsHelp: "Dra for å endre rekkefølgen, eller bruk pilene. Innholdet kommer fra hovedprofilen.", + cvEditorSectionsHelp: "Dra for å endre rekkefølgen, eller bruk pilene. Utelatt innhold kan fortsatt redigeres.", + cvEditorUsingSource: "Bruker Karriereprofil", + cvEditorCustomized: "Tilpasset denne CV-en", + cvEditorCvOnly: "Innhold bare i denne CV-en", + cvEditorEntryScopeHelp: "Endringer her gjelder bare denne CV-en. Karriereprofil endres ikke.", + cvEditorBlankUsesSource: "Tomt felt bruker Karriereprofil", + cvEditorResetField: "Bruk Karriereprofil: {field}", + cvEditorResetFieldHelp: "Erstatter dette CV-feltet med gjeldende verdi fra Karriereprofil. Andre felt, rekkefølge og synlighet endres ikke.", cvEditorAddSection: "Legg til seksjon", cvEditorAddSectionButton: "Legg til seksjon", cvEditorAddSectionHelp: "Forhåndsdefinerte seksjoner bruker det samme redigerbare kortet som alle andre seksjoner.", @@ -3189,7 +3203,7 @@ export const translations = { cvEditorBulletsHelp: "Punkter (ett per linje)", cvEditorItemsHelp: "Elementer (ett per linje)", cvEditorContentItemsHelp: "Innhold (ett element per linje)", - cvEditorResetMasterProfile: "Tilbakestill til hovedprofil", + cvEditorResetMasterProfile: "Bruk innhold fra Karriereprofil", cvEditorMoveNamedEntryUp: "Flytt oppføringen {entry} opp", cvEditorMoveNamedEntryDown: "Flytt oppføringen {entry} ned", cvEditorShowEntry: "Vis oppføringen {entry}", diff --git a/job-tracker-ui/src/views/CvBuilderEditor.tsx b/job-tracker-ui/src/views/CvBuilderEditor.tsx index 4e77942..bfd1d36 100644 --- a/job-tracker-ui/src/views/CvBuilderEditor.tsx +++ b/job-tracker-ui/src/views/CvBuilderEditor.tsx @@ -818,6 +818,7 @@ function ContentTab({ settings, update, outline, showPreviewEntry, onFocusPrevie const { t } = useI18n(); const { confirmAction } = useDialogActions(); const [addContentOpen, setAddContentOpen] = useState(false); + const addContentButton = useRef(null); const [activeSection, setActiveSection] = useState(null); const [expandedSections, setExpandedSections] = useState>(() => new Set()); const sectionButtons = useRef>({}); @@ -902,6 +903,7 @@ function ContentTab({ settings, update, outline, showPreviewEntry, onFocusPrevie customSections: settings.customSections.filter((c) => c.key !== section.key), sections: sectionRows.filter((row) => row.key !== `custom:${section.key}`), }); + requestAnimationFrame(() => addContentButton.current?.focus()); }; return ( @@ -964,7 +966,7 @@ function ContentTab({ settings, update, outline, showPreviewEntry, onFocusPrevie - + setAddContentOpen(false)} fullWidth maxWidth="md" aria-labelledby="cv-add-content-title"> {t("cvEditorAddContent")} @@ -1029,6 +1031,12 @@ function SectionRow({ const { t } = useI18n(); const { confirmAction } = useDialogActions(); const sectionLabel = customSection?.title ?? row.title ?? sectionName(row.key, SECTION_LABELS[row.key] ?? row.key, t); + const customInputs = useRef>({}); + const addEntryButton = useRef(null); + const contentRef = useRef(null); + const focusCustomEntry = (index: number) => requestAnimationFrame(() => { + (customInputs.current[index] ?? addEntryButton.current)?.focus(); + }); const sourceItems = outlineSection?.kind === "tags" ? outlineSection.tags : outlineSection?.bullets ?? []; const editableItems = row.items ?? sourceItems; const customText = customSection?.items.join("\n\n") ?? ""; @@ -1044,7 +1052,7 @@ function SectionRow({ opacity: dragging ? 0.4 : 1, borderTop: over ? "2px solid" : undefined, borderTopColor: over ? "primary.main" : undefined, transition: "opacity 150ms ease, border-color 120ms ease, box-shadow 150ms ease", - overflow: "hidden", "&:hover": { boxShadow: 1 }, + minWidth: 0, }} > @@ -1053,10 +1061,9 @@ function SectionRow({ onMove(-1)}> onMove(1)}> - customSection ? onRenameCustom(e.target.value) : onPatch({ title: e.target.value })} slotProps={{ input: { disableUnderline: true }, htmlInput: { "aria-label": t("cvEditorSectionName", { section: row.key }) } }} /> - {customSection && } onPatch({ hidden: !row.hidden })}> {row.hidden ? : } @@ -1070,8 +1077,11 @@ function SectionRow({ - - + + + {customSection ? t("cvEditorCvOnly") : t("cvEditorEntryScopeHelp")} · {t(row.hidden ? "cvEditorOmitted" : "cvEditorIncluded")} + + {t("cvEditorSectionLayout")} @@ -1087,20 +1097,22 @@ function SectionRow({ {[1, 2].map((columns) => )} } - + {customSection ? ( onUpdateCustom({ contentType: event.target.value as CvCustomSectionSetting["contentType"] })}> {t("cvEditorParagraphs")}{t("cvEditorBulletList")}{t("cvEditorMultipleEntries")} {customSection.contentType === "entries" ? - {customSection.items.map((item, itemIndex) => - onUpdateCustom({ items: customSection.items.map((current, index) => index === itemIndex ? event.target.value : current) })} /> - onUpdateCustom({ items: moveItem(customSection.items, itemIndex, itemIndex - 1) })}> - onUpdateCustom({ items: moveItem(customSection.items, itemIndex, itemIndex + 1) })}> - void confirmAction(t("cvEditorDeleteEntryMessage"), { title: t("cvEditorDeleteEntryTitle"), confirmLabel: t("cvEditorDeleteEntry"), destructive: true }).then((confirmed) => { if (confirmed) onUpdateCustom({ items: customSection.items.filter((_, index) => index !== itemIndex) }); })}> + {customSection.items.map((item, itemIndex) => + { customInputs.current[itemIndex] = input; }} fullWidth size="small" multiline minRows={2} label={t("cvEditorEntry", { number: itemIndex + 1 })} value={item} onChange={(event) => onUpdateCustom({ items: customSection.items.map((current, index) => index === itemIndex ? event.target.value : current) })} /> + + { onUpdateCustom({ items: moveItem(customSection.items, itemIndex, itemIndex - 1) }); focusCustomEntry(itemIndex - 1); }}> + { onUpdateCustom({ items: moveItem(customSection.items, itemIndex, itemIndex + 1) }); focusCustomEntry(itemIndex + 1); }}> + void confirmAction(t("cvEditorDeleteEntryMessage"), { title: t("cvEditorDeleteEntryTitle"), confirmLabel: t("cvEditorDeleteEntry"), destructive: true }).then((confirmed) => { if (confirmed) { onUpdateCustom({ items: customSection.items.filter((_, index) => index !== itemIndex) }); focusCustomEntry(Math.max(0, Math.min(itemIndex, customSection.items.length - 2))); } })}> + )} - + : onUpdateCustom({ items: customSection.contentType === "paragraphs" ? value.split(/\n\s*\n/) : value.split("\n") })} />} onUpdateCustom({ items: customSection.contentType === "paragraphs" ? value.split(/\n\s*\n/) : value.split("\n") })} /> @@ -1109,8 +1121,14 @@ function SectionRow({ ) : ( - onPatch({ items: value.split("\n") })} /> - {row.items && } + onPatch({ items: value.split("\n") })} /> + {row.items && + {t("cvEditorResetFieldHelp")} + + } onPatch({ items: value.split("\n") })} /> )} @@ -1128,6 +1146,7 @@ function EntryEditor({ section, row, settings, onPatch, onUpdateSettings }: { onUpdateSettings: (p: Partial) => void; }) { const { t } = useI18n(); + const fieldRefs = useRef>({}); // Entry order: itemOrder if set, else master order; always covering every entry key. const orderedKeys: string[] = useMemo(() => { const master = Array.from(new Set(section.entries.map((e) => e.key ?? "").filter(Boolean))); @@ -1149,6 +1168,10 @@ function EntryEditor({ section, row, settings, onPatch, onUpdateSettings }: { const overrides = { ...settings.overrides, [key]: { ...settings.overrides[key], ...patch } }; onUpdateSettings({ overrides }); }; + const resetField = (key: string, field: "title" | "subtitle" | "bullets") => { + setOverride(key, { [field]: undefined }); + requestAnimationFrame(() => fieldRefs.current[`${key}:${field}`]?.focus()); + }; return ( @@ -1157,39 +1180,52 @@ function EntryEditor({ section, row, settings, onPatch, onUpdateSettings }: { if (!entry) return null; const ov = settings.overrides[key] ?? {}; const hidden = !!ov.hidden; - const entryLabel = ov.title || entry.title || t("cvEditorUntitled"); + const entryLabel = ov.title?.trim() || entry.title || t("cvEditorUntitled"); return ( - - + - {entryLabel} + + {entryLabel} + {t(hidden ? "cvEditorOmitted" : "cvEditorIncluded")} + + onPatch({ itemOrder: moveItem(orderedKeys, i, i - 1) })}> onPatch({ itemOrder: moveItem(orderedKeys, i, i + 1) })}> setOverride(key, { hidden: !hidden })}> {hidden ? : } + - {!hidden && ( - setOverride(key, { title: e.target.value })} /> - setOverride(key, { subtitle: e.target.value })} /> + + {(["title", "subtitle"] as const).map((field) => { + const fieldLabel = t(field === "title" ? "cvEditorEntryTitle" : "cvEditorEntrySubtitle"); + return + { fieldRefs.current[`${key}:${field}`] = input; }} size="small" fullWidth label={fieldLabel} value={ov[field] ?? entry[field] ?? ""} + placeholder={entry[field]} helperText={t(ov[field]?.trim() ? "cvEditorCustomized" : ov[field] != null ? "cvEditorBlankUsesSource" : "cvEditorUsingSource")} + onChange={(e) => setOverride(key, { [field]: e.target.value })} /> + {ov[field] != null && } + ; + })} + + { fieldRefs.current[`${key}:bullets`] = box?.querySelector("textarea:not([aria-hidden])") ?? null; }}> setOverride(key, { bullets: v.split("\n") })} /> + + {ov.bullets != null && } + {(ov.title != null || ov.subtitle != null || ov.bullets != null) && {t("cvEditorResetFieldHelp")}} setOverride(key, { bullets: value.split("\n") })} /> - {ov.bullets && ( - - )} - )} - + ); })}