:root{font-family:Aptos,"Segoe UI",Arial,sans-serif}
.section-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;overflow:visible}.section-nav .nav-pill{min-width:0;padding-inline:7px;text-align:center}
.brand,.editor-heading h1,.section-title h2,.resume-identity h2,.resume-entry h4,.dialog-card h2{font-family:Georgia,"Times New Roman",serif}
.brand-logo{display:block;width:112px;height:52px;object-fit:contain}.brand-divider{width:1px;height:31px;background:var(--line)}.builder-name{font-size:1.12rem;color:var(--ink);letter-spacing:.02em}
.download-group{display:flex;border-radius:9px;overflow:hidden;box-shadow:0 5px 14px color-mix(in srgb,var(--accent),transparent 72%)}
.download-group .button{border-radius:0;box-shadow:none}
.button-word{background:#275b9a;color:#fff}
.privacy-note{font-size:.75rem;color:var(--muted);margin:9px 0 0}
.photo-editor{display:flex;gap:15px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:13px;margin-bottom:12px;background:#fbf8f4}
.photo-placeholder{width:76px;height:92px;flex:none;border:1px dashed #bcae9f;border-radius:9px;background:#f3ece3;padding:0;overflow:hidden;color:var(--accent)}
.photo-placeholder img{width:100%;height:100%;object-fit:cover}
.photo-placeholder span{display:grid;place-items:center;gap:3px}
.photo-placeholder b{font-size:1.35rem}.photo-placeholder small{font-size:.62rem}
.photo-copy strong{font-size:.84rem}.photo-copy strong em{font-style:normal;font-weight:400;color:var(--muted)}
.photo-copy p{font-size:.72rem;line-height:1.4;color:var(--muted);margin:5px 0}
.photo-actions{display:flex;gap:12px}.text-button{border:0;background:transparent;padding:2px 0;color:var(--accent);font-size:.75rem;font-weight:700}.danger-text{color:var(--danger)}
.photo-review{border-radius:10px;background:#f7f1e9;padding:12px 14px;margin:-2px 0 18px;font-size:.75rem}
.photo-review strong{display:block;margin-bottom:6px}.photo-review ul{margin:0;padding-left:18px;line-height:1.55}.photo-review .good{color:#2f7258}.photo-review .check{color:#8b6425}
.resume-photo{width:82px;height:98px;object-fit:cover;border:3px solid rgba(255,255,255,.78);border-radius:8px;flex:none}
.template-elegant .resume-photo{width:78px;height:92px;border-color:#ded3c7}.template-elegant .resume-header{flex-wrap:wrap}.template-compact .resume-photo{width:64px;height:76px}
.export-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.export-hint{display:block;margin:9px 2px 0;color:var(--muted);font-size:.7rem;line-height:1.45}
.atlas-thumb{background-image:linear-gradient(90deg,var(--accent) 7%,transparent 7%),linear-gradient(90deg,transparent 68%,var(--accent-soft) 68%),linear-gradient(#aea197 2px,transparent 2px);background-size:100% 100%,100% 100%,48% 9px;background-position:0,0,18% 17px}
.editorial-thumb{background-image:linear-gradient(var(--accent) 2px,transparent 2px),linear-gradient(#aea197 2px,transparent 2px);background-size:72% 100%,60% 11px;background-position:50% 9px,50% 23px}
.contrast-thumb{background-image:linear-gradient(90deg,var(--accent) 36%,transparent 36%),linear-gradient(var(--highlight,#6fa4ff) 3px,transparent 3px),linear-gradient(#aea197 2px,transparent 2px);background-size:100% 100%,24% 10px,47% 9px;background-position:0,7% 16px,75% 17px}
.palette-presets{border:0;padding:0;margin:0 0 20px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.palette-presets legend{grid-column:1/-1}.palette-presets button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 10px;text-align:left;color:var(--ink);font-size:.72rem;font-weight:600}.palette-presets button:hover{border-color:var(--accent)}.palette-presets button>span{display:flex}.palette-presets i{display:block;width:17px;height:17px;border-radius:50%;background:var(--swatch);border:2px solid #fff;box-shadow:0 0 0 1px #d8ccc0}.palette-presets i+i{margin-left:-5px}
.resume-paper{--paper-highlight:#6fa4ff}.resume-main h3{border-bottom-color:var(--paper-highlight)}.resume-entry .place{color:color-mix(in srgb,var(--paper-highlight),black 34%)}.resume-tags span{border-color:color-mix(in srgb,var(--paper-highlight),white 48%)}
.data-card{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fbf7f1;margin-bottom:15px}
.data-card strong{font-size:.86rem}.data-card p{font-size:.75rem;line-height:1.45;color:var(--muted);margin:4px 0 11px}.data-card>small{display:block;font-size:.68rem;color:var(--muted);margin-top:9px}.data-actions{display:flex;gap:8px}.data-actions .button{font-size:.75rem;padding:8px 11px}
.template-atlas .resume-header{background:#fff;color:#3f332a;border-left:13px solid var(--paper-accent);padding-left:39px;border-bottom:1px solid #e6ded5}
.template-atlas .resume-identity p{color:var(--paper-accent);opacity:1;font-weight:600}.template-atlas .monogram{background:var(--paper-accent);color:#fff;border:0;border-radius:12px}.template-atlas .resume-photo{border-color:var(--paper-accent);border-radius:12px}
.template-atlas .resume-body{grid-template-columns:1fr 230px}.template-atlas .resume-main{grid-column:1;grid-row:1}.template-atlas .resume-sidebar{grid-column:2;grid-row:1;background:color-mix(in srgb,var(--paper-accent),white 91%);border-left:1px solid color-mix(in srgb,var(--paper-accent),white 78%)}
.template-editorial .resume-header{background:#fff;color:#3f332a;justify-content:center;text-align:center;min-height:190px;padding-top:54px;border-bottom:1px solid var(--paper-accent)}.template-editorial .monogram{display:none}.template-editorial .resume-photo{width:74px;height:74px;border-radius:50%;border-color:var(--paper-accent)}
.template-editorial .resume-identity h2{font-size:3rem}.template-editorial .resume-identity p{color:var(--paper-highlight);opacity:1;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.template-editorial .resume-body{display:block}.template-editorial .resume-sidebar{background:#fff;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:25px 54px 8px;border-bottom:2px solid var(--paper-highlight)}.template-editorial .resume-sidebar section{margin-bottom:14px}.template-editorial .resume-main{padding:28px 72px}.template-editorial .resume-main h3{text-align:center;border:0}.template-editorial .resume-main h3:after{content:"";display:block;width:34px;height:2px;background:var(--paper-highlight);margin:8px auto 0}
.template-contrast .resume-header{background:#f3ece3;color:#3f332a;padding-left:278px;position:relative;border-bottom:5px solid var(--paper-highlight)}.template-contrast .monogram{background:var(--paper-accent);color:#fff;border:0}.template-contrast .resume-photo{border-color:var(--paper-highlight)}.template-contrast .resume-body{grid-template-columns:245px 1fr}.template-contrast .resume-sidebar{background:var(--paper-accent);color:#fff;padding:46px 29px}.template-contrast .resume-sidebar h3{color:#fff;border-bottom:3px solid var(--paper-highlight);padding-bottom:7px}.template-contrast .resume-sidebar .contact-list b{color:var(--paper-highlight)}.template-contrast .resume-sidebar .resume-tags span{color:#fff;background:rgba(255,255,255,.08);border-color:var(--paper-highlight)}.template-contrast .resume-main{padding-top:46px}.template-contrast .resume-main h3{color:#343a38;border-bottom:3px solid var(--paper-highlight)}.template-contrast .resume-entry .place,.template-contrast .resume-entry time{color:color-mix(in srgb,var(--paper-highlight),black 34%)}
.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:1.5rem;color:var(--muted)}
.import-dialog .dialog-card{position:relative;width:min(460px,calc(100vw - 28px))}
.import-dialog .dialog-card>p:not(.eyebrow){font-size:.82rem;line-height:1.55;color:var(--muted)}
.upload-zone{display:flex;flex-direction:column;align-items:center;width:100%;border:1px dashed #b6a99d;border-radius:12px;background:#faf7f2;padding:25px 15px;color:var(--ink)}
.upload-zone:hover{background:var(--accent-soft);border-color:var(--accent)}
.upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#fff;font-size:1.25rem;margin-bottom:8px}
.upload-zone strong{font-size:.88rem}.upload-zone small{color:var(--muted);margin-top:3px}
.import-status{margin-top:13px;padding:11px 12px;border-radius:9px;background:#f5eee6;font-size:.78rem;line-height:1.45}
.import-status.error{background:#faeeee;color:#8a2d3a}.import-hint{font-size:.7rem!important;margin-bottom:0}
.import-dialog[open]{animation:dialog-in .18s ease}@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}}
/* Match the warm Haug Lektorat canvas and give the preview more room. */
:root{--canvas:#f6f2ec;--editor-width:540px}
.workspace{grid-template-columns:minmax(460px,var(--editor-width)) 12px minmax(520px,1fr)}
.workspace-resizer{position:relative;z-index:8;width:12px;min-width:12px;background:#eee6dc;cursor:col-resize;touch-action:none;user-select:none}
.workspace-resizer::before{content:"";position:absolute;inset:0 -5px}
.workspace-resizer span{position:sticky;top:calc(50vh + 44px);display:block;width:4px;height:54px;margin:calc(50vh - 99px) auto 0;border-radius:999px;background:#b9a99a;box-shadow:0 0 0 1px rgba(255,255,255,.65)}
.workspace-resizer:hover,.workspace-resizer.is-dragging,.workspace-resizer:focus-visible{background:#e0d4c8;outline:none}
.workspace-resizer:hover span,.workspace-resizer.is-dragging span,.workspace-resizer:focus-visible span{background:var(--accent)}
.editor,.editor form,.form-section,.repeat-card,.repeat-card-body,.field-grid,.field-grid>*{min-width:0}
.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.field-grid input,.field-grid select,.task-row input{min-width:0;max-width:100%}
.editor{scrollbar-color:#9f8b79 #eee6dc;scrollbar-width:auto}
.editor::-webkit-scrollbar{width:11px;height:13px}.editor::-webkit-scrollbar-track{background:#eee6dc}.editor::-webkit-scrollbar-thumb{border:3px solid #eee6dc;border-radius:999px;background:#9f8b79}.editor::-webkit-scrollbar-thumb:hover{background:var(--accent)}
.preview-pane,.preview-toolbar{background:#f6f2ec}
.preview-toolbar{border-bottom-color:#e4ddd4}
.zoom-controls{background:#fbf8f4;border-color:#ddd5ca}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(460px,var(--editor-width)) 12px minmax(460px,1fr)}}
@media(max-width:980px){.top-actions #importButton{font-size:0;padding:10px}.top-actions #importButton svg{margin:0}.download-group .button{font-size:0;padding:10px}.download-group .button svg{margin:0}}
@media(max-width:820px){.top-actions #importButton{display:inline-block}}
@media(max-width:520px){.export-buttons,.palette-presets{grid-template-columns:1fr}.photo-editor{align-items:flex-start}.brand-logo{width:92px}.brand-divider,.builder-name{display:none}}
.access-status{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .7rem;border-radius:999px;background:#f3eadc;color:#76552d;font-size:.78rem;font-weight:750;white-space:nowrap}
@media(max-width:760px){.access-status{display:none}}

.design-options{display:grid;grid-template-columns:1fr;gap:2px;margin-bottom:20px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbf8f4}
select{width:100%;border:1px solid #d8cec4;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit;font-size:.86rem}
select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent),transparent 65%);outline-offset:2px}
.sidebar-picker{flex-wrap:wrap}.sidebar-picker legend{line-height:1.35}
.sidebar-picker>small{flex-basis:100%;color:var(--muted);font-size:.7rem;line-height:1.4}
.custom-colours{margin:0 0 20px;border:1px solid var(--line);border-radius:11px;background:#fbf8f4}
.custom-colours summary{padding:13px 15px;color:var(--accent);font-size:.82rem;font-weight:700;cursor:pointer}
.custom-colour-body{padding:3px 15px 15px}.cmyk-group>span{display:block;margin-bottom:8px;color:#5f5147;font-size:.79rem;font-weight:700}.cmyk-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.cmyk-fields label{margin:0}.cmyk-fields label>span{text-align:center}.cmyk-fields input{text-align:center;padding:9px 4px}.custom-colour-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.custom-colour-actions .button{padding:10px 7px;font-size:.74rem}.custom-colour-status{min-height:1.15em;margin:9px 0 0;color:#526f5e;font-size:.72rem}.custom-colour-status.error{color:var(--danger)}
.design-zoom{display:grid;grid-template-columns:1fr 180px;gap:14px;align-items:center;margin:0 0 20px;padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:#fff}.design-zoom strong,.design-zoom small{display:block}.design-zoom strong{font-size:.82rem}.design-zoom small{margin-top:3px;color:var(--muted);font-size:.68rem;line-height:1.35}.design-zoom>div:last-child{display:flex;gap:8px;align-items:center}.design-zoom input{padding:0;border:0;background:transparent}.design-zoom output{min-width:38px;color:var(--accent);font-size:.75rem;font-weight:700}

.resume-paper{--paper-sidebar:#f3ece3;--font-scale:1}
.resume-paper p{font-size:calc(.77rem * var(--font-scale))}.resume-paper h3{font-size:calc(.68rem * var(--font-scale) * var(--section-title-scale,1))}.contact-list li,.plain-list li{font-size:calc(.7rem * var(--font-scale))}.contact-list b{font-size:calc(.55rem * var(--font-scale))}.resume-tags span{font-size:calc(.64rem * var(--font-scale))}.resume-entry h4{font-size:calc(1.05rem * var(--font-scale))}.resume-entry time{font-size:calc(.64rem * var(--font-scale))}.resume-entry .place{font-size:calc(.7rem * var(--font-scale))}.resume-entry li{font-size:calc(.71rem * var(--font-scale))}
.resume-entry-head{grid-template-columns:1fr auto}.resume-entry-head .entry-titles{grid-column:1;grid-row:1}.resume-entry-head time{grid-column:2;grid-row:1}.resume-entry .place{margin:2px 0 7px}
.dates-left .resume-entry-head{grid-template-columns:92px 1fr;gap:12px;align-items:start}.dates-left .resume-entry-head time{grid-column:1;grid-row:1;padding-top:3px}.dates-left .resume-entry-head .entry-titles{grid-column:2;grid-row:1}.dates-left .resume-entry ul{margin-left:104px}
.spacing-tight section{margin-bottom:20px}.spacing-tight .resume-entry{margin-bottom:12px}.spacing-tight .resume-main h3{margin-bottom:9px}.spacing-wide section{margin-bottom:42px}.spacing-wide .resume-entry{margin-bottom:29px}.spacing-wide .resume-main h3{margin-bottom:17px}
.template-clear .resume-sidebar,.template-compact .resume-sidebar,.template-atlas .resume-sidebar{background:var(--paper-sidebar)}
.template-contrast .resume-header{background:var(--paper-sidebar)}
.template-profile .resume-header{min-height:112px;padding:25px 37px;background:#fff;color:#3f332a;border-top:9px solid var(--paper-accent);border-bottom:2px solid var(--paper-highlight)}.template-profile .monogram{width:55px;height:55px;border:0;border-radius:4px;background:var(--paper-accent);color:#fff}.template-profile .resume-photo{width:58px;height:72px;border:2px solid var(--paper-highlight);border-radius:3px}.template-profile .resume-identity h2{font-size:2.15rem}.template-profile .resume-identity p{color:var(--paper-accent);opacity:1;font-size:.8rem}.template-profile .resume-body{grid-template-columns:1fr 205px}.template-profile .resume-main{grid-column:1;grid-row:1;padding:26px 31px}.template-profile .resume-sidebar{grid-column:2;grid-row:1;padding:27px 21px;background:var(--paper-sidebar);border-left:1px solid color-mix(in srgb,var(--paper-accent),white 78%)}.template-profile section{margin-bottom:18px}.template-profile .resume-main h3{margin-bottom:10px;padding-bottom:5px;border-bottom:2px solid var(--paper-highlight)}.template-profile .resume-entry{margin-bottom:11px}.template-profile .resume-entry ul{margin-top:3px}.template-profile .resume-entry li{line-height:1.3;margin-bottom:1px}.template-profile.dates-left .resume-entry-head{grid-template-columns:88px 1fr}.template-profile.dates-left .resume-entry ul{margin-left:100px}.template-profile.spacing-tight section{margin-bottom:12px}.template-profile.spacing-tight .resume-entry{margin-bottom:7px}.template-profile.spacing-wide section{margin-bottom:28px}.template-profile.spacing-wide .resume-entry{margin-bottom:19px}
.profile-thumb{background-image:linear-gradient(90deg,transparent 72%,var(--paper-sidebar,#f3ece3) 72%),linear-gradient(var(--paper-accent) 6px,transparent 6px),linear-gradient(#aea197 2px,transparent 2px);background-size:100% 100%,100% 100%,52% 8px;background-position:0,0,12% 18px}

@media(max-width:520px){.custom-colour-actions,.design-zoom{grid-template-columns:1fr}.design-zoom>div:last-child{width:100%}}

@media(min-width:821px){
  .editor{position:sticky;top:72px;height:calc(100vh - 72px);align-self:start;overflow:auto;overscroll-behavior:contain}
  .editor>*{min-width:520px}
  .preview-pane{position:sticky;top:72px;height:calc(100vh - 72px);align-self:start}
  .preview-toolbar{flex:none}
  .paper-stage{min-height:0}
}
@media(max-width:980px){.workspace{display:block}.workspace-resizer{display:none}.editor{position:static;height:auto;overflow:visible;border-right:0}.editor>*{min-width:0}.preview-pane{position:static;height:auto}.preview-toolbar{position:sticky;top:72px;z-index:4}}

.photo-adjustments{display:grid;gap:10px;margin:-2px 0 18px;padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:#fbf8f4}
.photo-adjustments[hidden]{display:none}
.photo-adjustments-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.photo-adjustments-head strong{font-size:.84rem}.photo-adjustments label{margin:0}.photo-adjustments label>span{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:.72rem}.photo-adjustments output{color:var(--accent);font-weight:700}.photo-adjustments input[type="range"]{height:22px;padding:0;border:0;background:transparent;accent-color:var(--accent);cursor:pointer}
.undo-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.undo-button:not(:disabled){border-color:#bcae9f;color:var(--accent)}
@media(max-width:820px){.topbar .undo-button{display:inline-flex;padding:9px 10px;font-size:.74rem}.topbar .undo-button:not(:disabled){align-items:center}}
.repeat-card-actions{display:flex;align-items:center;gap:9px}.move-entry{width:auto;max-width:150px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:5px 22px 5px 7px;color:var(--accent);font-size:.67rem;font-weight:700;cursor:pointer}
.order-controls{display:flex;gap:3px}.order-entry{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--accent);font-size:.88rem;font-weight:800;cursor:pointer}.order-entry:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.order-entry:disabled{opacity:.3;cursor:default}
@media(max-width:520px){.repeat-card-head{align-items:flex-start}.repeat-card-actions{flex-wrap:wrap;justify-content:flex-end}.move-entry{order:2;max-width:135px}.order-controls{order:1}}
.section-settings,.design-disclosure{margin:18px 0;border:1px solid var(--line);border-radius:11px;background:#fbf8f4;overflow:hidden}.section-settings summary,.design-disclosure summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 40px 13px 14px;color:var(--ink);font-size:.8rem;font-weight:800;cursor:pointer;list-style:none}.section-settings summary::-webkit-details-marker,.design-disclosure summary::-webkit-details-marker{display:none}.section-settings summary:after,.design-disclosure summary:after{content:"+";position:absolute;right:15px;top:50%;translate:0 -50%;color:var(--accent);font-size:1.15rem;font-weight:500}.section-settings[open] summary:after,.design-disclosure[open] summary:after{content:"−"}.section-settings[open] summary,.design-disclosure[open] summary{border-bottom:1px solid var(--line);background:#fff}.section-settings-body{display:grid;grid-template-columns:1fr 1fr;gap:13px 16px;padding:15px}.section-settings-body label{margin:0}.design-disclosure{margin:0 0 12px}.design-disclosure summary>span,.design-disclosure summary>small{display:block}.design-disclosure summary>small{margin-left:auto;color:var(--muted);font-size:.65rem;font-weight:500;text-align:right}.design-disclosure-body{padding:16px}.design-disclosure-body>:first-child{margin-top:0}.design-disclosure-body>:last-child{margin-bottom:0}@media(max-width:520px){.section-settings-body{grid-template-columns:1fr}.design-disclosure summary{align-items:flex-start;flex-direction:column;gap:3px}.design-disclosure summary>small{margin:0;text-align:left}}
.resume-header{overflow:hidden}.resume-photo{--photo-base-width:82px;width:calc(var(--photo-base-width) * var(--photo-width-scale,1));border-radius:var(--photo-radius,8%)!important;transform:translate(var(--photo-x,0),var(--photo-y,0)) scale(var(--photo-scale,1));transform-origin:center;transition:transform .12s ease,border-radius .12s ease,width .12s ease}
.resume-identity{min-width:0}.resume-document-title{margin:0 0 4px!important;color:inherit!important;font-size:.62rem!important;font-weight:700;letter-spacing:.17em;text-transform:uppercase;opacity:.78}.resume-identity h2{display:inline-block;transform:translate(var(--name-x,0),var(--name-y,0)) scale(var(--name-scale,1));transform-origin:left center;transition:transform .12s ease}.resume-identity #previewTitle{display:block;width:max-content;max-width:100%;transform:translate(var(--job-title-x,0),var(--job-title-y,0)) scale(var(--job-title-scale,1));transform-origin:left center;transition:transform .12s ease}.template-elegant .resume-identity h2,.template-editorial .resume-identity h2,.template-elegant .resume-identity #previewTitle,.template-editorial .resume-identity #previewTitle{transform-origin:center}
.template-elegant .resume-photo{--photo-base-width:78px}.template-compact .resume-photo{--photo-base-width:64px}.template-editorial .resume-photo{--photo-base-width:74px}.template-profile .resume-photo{--photo-base-width:58px}
.personal-details{margin:1px 0 20px;padding:14px 14px 0;border:1px solid var(--line);border-radius:10px;background:#faf7f2}.personal-details>strong{display:block;margin-bottom:12px;color:var(--accent);font-size:.82rem}
.contact-style-icons .contact-list li{display:grid;grid-template-columns:19px 1fr;gap:7px;align-items:start}.contact-style-icons .contact-icon{display:block;color:var(--paper-accent);margin:0}.contact-style-icons .contact-icon svg{display:block;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.template-contrast.contact-style-icons .contact-icon{color:var(--paper-highlight)}
.monogram[hidden]{display:none!important}
.section-layout-card,.surface-size-card{margin:0 0 20px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbf8f4}.section-layout-heading strong,.section-layout-heading small{display:block}.section-layout-heading strong{font-size:.86rem}.section-layout-heading small,.surface-size-card>small,.layout-touch-hint{margin-top:4px;color:var(--muted);font-size:.69rem;line-height:1.45}.section-layout-columns{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);gap:10px;margin-top:13px}.layout-column>span{display:block;margin:0 0 6px;color:#66584e;font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.layout-dropzone{display:grid;align-content:start;gap:6px;min-height:92px;padding:7px;border:1px dashed #cbbdaf;border-radius:9px;background:#fff;transition:.15s ease}.layout-dropzone.drag-over{border-color:var(--accent);background:var(--accent-soft)}.layout-chip{display:flex;align-items:center;gap:5px;min-width:0;padding:7px 6px;border:1px solid #ddd2c7;border-radius:8px;background:#fff;box-shadow:0 2px 5px rgba(78,58,41,.05);cursor:grab}.layout-chip.dragging{opacity:.48}.layout-chip.locked{background:#f1e9df;cursor:default}.layout-chip.has-page-break{border-color:color-mix(in srgb,var(--accent),white 45%);background:var(--accent-soft)}.layout-grip{color:#a99a8c;font-size:.76rem}.layout-chip>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.7rem;white-space:nowrap}.layout-chip-actions{display:flex;gap:2px;margin-left:auto}.layout-chip-actions button{display:grid;place-items:center;width:21px;height:21px;padding:0;border:1px solid #d7ccc1;border-radius:5px;background:#fff;color:var(--accent);font-size:.67rem;font-weight:800;cursor:pointer}.layout-chip-actions button[data-layout-page]{width:30px;font-size:.56rem}.layout-chip-actions button:hover{border-color:var(--accent);background:var(--accent-soft)}.layout-chip-actions button[aria-pressed="true"]{border-color:var(--accent);background:var(--accent);color:#fff}.layout-lock{padding:3px 5px;border-radius:4px;background:var(--accent);color:#fff;font-size:.54rem;text-transform:uppercase}.layout-touch-hint{display:block}.surface-size-card{display:grid;gap:13px}.surface-size-card label{margin:0}.surface-size-card label>span{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:.75rem}.surface-size-card output{color:var(--accent);font-weight:800}.surface-size-card input[type="range"]{height:22px;padding:0;border:0;background:transparent;accent-color:var(--accent);cursor:pointer}
.layout-chip{flex-wrap:wrap}.layout-title-size{display:grid!important;grid-template-columns:auto minmax(52px,1fr) auto;align-items:center;gap:6px;width:100%;margin:3px 0 0!important;color:#76695e!important;font-size:.58rem!important;cursor:default}.layout-title-size input{min-width:0;height:16px;padding:0;border:0;background:transparent;accent-color:var(--accent)}.layout-title-size output{color:var(--accent);font-weight:800}
.resume-paper{--sidebar-width:29%;--surface-height:957px}.template-clear .resume-body,.template-contrast .resume-body{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.template-compact .resume-body,.template-atlas .resume-body,.template-profile .resume-body{grid-template-columns:minmax(0,1fr) var(--sidebar-width)}.template-clear .resume-sidebar,.template-compact .resume-sidebar,.template-atlas .resume-sidebar,.template-contrast .resume-sidebar,.template-profile .resume-sidebar{height:var(--surface-height);align-self:start}.template-contrast .resume-header{padding-left:calc(var(--sidebar-width) + 33px)}
@media(max-width:520px){.section-layout-columns{grid-template-columns:1fr}.layout-dropzone{min-height:56px}.layout-chip>strong{font-size:.74rem}}
.language-bar-item{display:grid;gap:4px;margin-bottom:9px}.language-bar-item>span{line-height:1.25}.language-bar-item>i{display:block;height:5px;border-radius:999px;background:color-mix(in srgb,var(--paper-accent),transparent 82%);overflow:hidden}.language-bar-item>i>b{display:block;height:100%;border-radius:inherit;background:var(--paper-highlight)}.template-contrast .language-bar-item>i{background:rgba(255,255,255,.2)}
.visual-colour-picker{display:grid;grid-template-columns:90px 1fr;gap:10px;align-items:end;margin-bottom:15px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff}.visual-colour-picker label{margin:0}.visual-colour-picker label>span{display:flex;justify-content:space-between;gap:8px}.visual-colour-picker input[type="color"]{height:42px;padding:3px;cursor:pointer}.visual-colour-picker input[type="range"]{height:42px;padding:0;border:0;background:transparent;accent-color:var(--accent);cursor:pointer}.visual-colour-picker .button{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:8px}.visual-colour-picker .button i{display:block;width:20px;height:20px;border-radius:50%;background:var(--swatch);border:2px solid #fff;box-shadow:0 0 0 1px #cfc4b9}

/* Structured controls and true A4 page preview. */
.colour-workbench{padding-top:14px}.colour-workbench>h3{margin:0 15px 12px;color:var(--accent);font-size:.86rem}.rgb-group>span{display:block;margin-bottom:8px;color:#5f5147;font-size:.79rem;font-weight:700}.rgb-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.rgb-fields label{margin:0}.rgb-fields label>span{text-align:center}.rgb-fields input{text-align:center;padding:9px 4px}.custom-colour-actions{grid-template-columns:repeat(3,1fr)}
.resume-pages{width:794px;margin:0 auto;transform:scale(.8);transform-origin:top center}.resume-page-frame{position:relative;width:794px;height:1123px;margin-bottom:42px;overflow:hidden;background:#fff;box-shadow:0 18px 55px rgba(79,61,45,.16)}.resume-page-frame::after{content:attr(data-page-label);position:absolute;right:17px;bottom:10px;z-index:3;padding:4px 8px;border:1px solid #e2d8cd;border-radius:999px;background:rgba(250,247,242,.94);color:#81746a;font:600 11px/1 "DM Sans",sans-serif;letter-spacing:.02em}.resume-page-frame.page-copy::before{content:attr(data-continuation);position:absolute;left:26px;top:12px;z-index:3;color:#9a8a7d;font:600 10px/1 "DM Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase}.resume-pages .resume-paper{margin:0!important;box-shadow:none!important;transform:none!important;translate:none!important}.resume-page-frame.page-copy .resume-paper{position:absolute;inset:0 auto auto 0}.resume-page-frame:last-child{margin-bottom:0}.resume-paper [data-page-break-spacer]{break-before:page}
.resume-page-frame.page-copy.surface-left{background:linear-gradient(to right,var(--frame-surface) 0 var(--frame-sidebar-width),#fff var(--frame-sidebar-width)) no-repeat;background-size:100% var(--frame-surface-height)}.resume-page-frame.page-copy.surface-right{background:linear-gradient(to left,var(--frame-surface) 0 var(--frame-sidebar-width),#fff var(--frame-sidebar-width)) no-repeat;background-size:100% var(--frame-surface-height)}.resume-page-frame.page-copy .resume-paper{background:transparent!important}
.resume-page-frame .continuation-surface{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.resume-page-frame.page-copy .resume-paper{z-index:1}.resume-page-frame.page-copy{print-color-adjust:exact;-webkit-print-color-adjust:exact}
.resume-paper.font-modern{font-family:"DM Sans",Arial,sans-serif}.resume-paper.font-classic{font-family:Georgia,"Times New Roman",serif}.resume-paper.font-arial{font-family:Arial,sans-serif}.resume-paper.font-calibri{font-family:Aptos,Calibri,Arial,sans-serif}.resume-paper.font-classic h2,.resume-paper.font-classic h3,.resume-paper.font-classic h4{font-family:Georgia,"Times New Roman",serif}.resume-paper.font-arial h2,.resume-paper.font-arial h3,.resume-paper.font-arial h4,.resume-paper.font-calibri h2,.resume-paper.font-calibri h3,.resume-paper.font-calibri h4{font-family:inherit}
.sidebar-spacing-tight .resume-sidebar>section{margin-bottom:18px}.sidebar-spacing-wide .resume-sidebar>section{margin-bottom:42px}.main-spacing-tight .resume-main>section,.main-spacing-tight .resume-main>#customBlock{margin-bottom:18px}.main-spacing-wide .resume-main>section,.main-spacing-wide .resume-main>#customBlock{margin-bottom:42px}.resume-entry ul{margin-top:calc(5px + var(--details-offset,0px))}.contact-list.address-stacked li span{white-space:pre-line}.resume-sidebar #previewSkills li,.resume-sidebar #previewInterests li{position:relative;padding-left:11px}.resume-sidebar #previewSkills li::before,.resume-sidebar #previewInterests li::before{content:"•";position:absolute;left:0;color:var(--paper-highlight)}
.resume-sidebar .skill-bullet-list li{position:relative;padding-left:11px}.resume-sidebar .skill-bullet-list li::before{content:"•";position:absolute;left:0;color:var(--paper-highlight)}

/* Flexible station dates, bullets and consistent continuation pages. */
.resume-entry.date-position-left .resume-entry-head{grid-template-columns:auto minmax(0,1fr);align-items:start}.resume-entry.date-position-left .resume-entry-head time{grid-column:1;grid-row:1;padding-top:3px}.resume-entry.date-position-left .entry-titles{grid-column:2;grid-row:1}
.resume-entry.date-position-right .resume-entry-head{grid-template-columns:minmax(0,1fr) auto}.resume-entry.date-position-right .entry-titles{grid-column:1;grid-row:1}.resume-entry.date-position-right .resume-entry-head time{grid-column:2;grid-row:1}
.resume-entry.date-position-above .resume-entry-head,.resume-entry.date-position-below .resume-entry-head{grid-template-columns:1fr;gap:4px;align-items:start}.resume-entry.date-position-above .resume-entry-head time{grid-column:1;grid-row:1}.resume-entry.date-position-above .entry-titles{grid-column:1;grid-row:2}.resume-entry.date-position-below .entry-titles{grid-column:1;grid-row:1}.resume-entry.date-position-below .resume-entry-head time{grid-column:1;grid-row:2;margin-top:2px}.resume-entry.date-position-above ul,.resume-entry.date-position-below ul{margin-left:0!important}
.resume-paper{--bullet-symbol:"•"}.resume-paper.bullets-square{--bullet-symbol:"▪"}.resume-paper.bullets-dash{--bullet-symbol:"–"}.resume-paper.bullets-arrow{--bullet-symbol:"›"}.resume-paper.bullets-check{--bullet-symbol:"✓"}.resume-entry ul{list-style:none;padding-left:0}.resume-entry li,.resume-paper .plain-list>li{position:relative;padding-left:13px}.resume-entry li::before,.resume-paper .plain-list>li::before{content:var(--bullet-symbol);position:absolute;left:0;color:var(--paper-highlight);font-weight:700}.resume-entry.no-bullets li{padding-left:0}.resume-entry.no-bullets li::before{content:none}.resume-sidebar #previewSkills li::before,.resume-sidebar #previewInterests li::before,.resume-sidebar .skill-bullet-list li::before{content:var(--bullet-symbol)}
.resume-page-frame.page-copy.hide-continuation::before{display:none}.resume-page-frame.page-copy.template-cards{background:color-mix(in srgb,var(--frame-sidebar),white 36%)}.resume-page-frame.page-copy.template-contrast{--frame-surface:var(--frame-accent)}

/* Editorial: quieter hierarchy and predictable two-column information band. */
.template-editorial .resume-header{justify-content:flex-start;text-align:left;padding:34px 52px;border-bottom:3px solid var(--paper-highlight)}.template-editorial .resume-identity h2{font-size:2.65rem}.template-editorial .resume-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 34px;padding:23px 52px 12px;border-bottom:1px solid color-mix(in srgb,var(--paper-accent),white 72%)}.template-editorial .resume-sidebar section{padding:11px 13px;margin:0 0 10px;border-left:3px solid var(--paper-highlight);background:color-mix(in srgb,var(--paper-sidebar),white 58%)}.template-editorial .resume-main{padding:31px 58px}.template-editorial .resume-main h3{text-align:left;border-bottom:1px solid color-mix(in srgb,var(--paper-accent),white 74%)}.template-editorial .resume-main h3:after{margin:8px 0 0}
@media(max-width:1100px){.resume-pages{transform:scale(.68)}}
@media(max-width:820px){.resume-pages{margin-left:50%;translate:-50% 0;transform:scale(.62)}}
@media(max-width:520px){.resume-pages{transform:scale(.49)}.custom-colour-actions{grid-template-columns:1fr}}
@media print{.resume-pages{width:210mm;margin:0;transform:none!important;translate:none!important}.resume-page-frame{height:297mm;margin:0;box-shadow:none;break-after:page;overflow:hidden}.resume-page-frame:last-child{break-after:auto}.resume-paper [data-page-break-spacer]{break-before:auto}.resume-page-frame::after,.resume-page-frame::before{display:none}}

/* Knowledge groups, manual page breaks and tabular CV. */
#customBlock{display:contents}.tag{display:inline-flex;align-items:center;gap:2px}.tag>span{margin-right:3px}.tag button{display:grid;place-items:center;width:19px;height:19px;margin:0;border-radius:4px;font-size:.68rem}.tag button:disabled{opacity:.28;cursor:default}.tag-transfer{width:25px;min-width:25px;height:21px;margin:0 1px;padding:0 2px;border:0;border-radius:4px;background:color-mix(in srgb,var(--accent),transparent 89%);color:var(--accent);font-size:.65rem;cursor:pointer}.tag-transfer:focus-visible{outline:2px solid color-mix(in srgb,var(--accent),transparent 45%);outline-offset:1px}.page-break-option{display:flex;align-items:center;gap:8px;margin:12px 0 13px;padding:10px 11px;border-top:1px solid var(--line);color:#66584e;font-size:.74rem}.page-break-option input{width:auto;margin:0;accent-color:var(--accent)}.page-break-option span{margin:0;font-size:inherit}.manual-page-break{margin:0 0 12px}.manual-page-break h3{margin:0 0 13px!important}.resume-entry{margin-bottom:calc(21px + var(--entry-spacing,0px))!important}.resume-entry h4{font-size:calc(1.05rem * var(--font-scale) * var(--entry-heading-scale,1))}.tabular-thumb{background-image:linear-gradient(90deg,transparent 31%,#d9d0c7 31%,#d9d0c7 33%,transparent 33%),repeating-linear-gradient(0deg,#aea197 0 2px,transparent 2px 12px);background-size:100% 100%,58% 55%;background-position:0,58% 16px}.template-tabular .resume-header{min-height:126px;padding:29px 42px;background:#fff;color:var(--paper-text);border-top:8px solid var(--paper-accent);border-bottom:2px solid var(--paper-highlight)}.template-tabular .resume-identity p{color:var(--paper-accent);opacity:1}.template-tabular .resume-body{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.template-tabular .resume-sidebar{padding:31px 24px;background:var(--paper-sidebar);border-right:1px solid color-mix(in srgb,var(--paper-accent),white 78%)}.template-tabular .resume-main{padding:31px 38px}.template-tabular .resume-entry-head{grid-template-columns:105px minmax(0,1fr);gap:17px;align-items:start}.template-tabular .resume-entry-head time{grid-column:1;grid-row:1;padding-top:3px;color:var(--paper-accent);font-weight:700}.template-tabular .resume-entry-head .entry-titles{grid-column:2;grid-row:1}.template-tabular .resume-entry ul{margin-left:122px}.template-tabular .resume-main h3{border-bottom:2px solid var(--paper-highlight)}
#customBlock{display:contents}.tag{display:inline-flex;align-items:center;gap:2px}.tag>span{margin-right:3px}.tag button{display:grid;place-items:center;width:19px;height:19px;margin:0;border-radius:4px;font-size:.68rem}.tag button:disabled{opacity:.28;cursor:default}.tag-transfer{width:25px;min-width:25px;height:21px;margin:0 1px;padding:0 2px;border:0;border-radius:4px;background:color-mix(in srgb,var(--accent),transparent 89%);color:var(--accent);font-size:.65rem;cursor:pointer}.tag-transfer:focus-visible{outline:2px solid color-mix(in srgb,var(--accent),transparent 45%);outline-offset:1px}.page-break-option{display:flex;align-items:center;gap:8px;margin:12px 0 13px;padding:10px 11px;border-top:1px solid var(--line);color:#66584e;font-size:.74rem}.page-break-option input{width:auto;margin:0;accent-color:var(--accent)}.page-break-option span{margin:0;font-size:inherit}.manual-page-break{margin:0 0 12px}.manual-page-break h3{margin:0 0 13px!important}.resume-entry{margin-bottom:calc(21px + var(--entry-spacing,0px))!important}.resume-entry h4{font-size:calc(1.05rem * var(--font-scale) * var(--entry-heading-scale,1))}.resume-entry time{font-size:calc(.64rem * var(--font-scale) * var(--date-scale,1))}.resume-header{height:var(--header-height,166px)!important;min-height:var(--header-height,166px)!important;max-height:var(--header-height,166px)!important;box-sizing:border-box}.resume-body{padding-top:var(--header-body-gap,0px)}.tabular-thumb{background-image:linear-gradient(90deg,transparent 31%,#d9d0c7 31%,#d9d0c7 33%,transparent 33%),repeating-linear-gradient(0deg,#aea197 0 2px,transparent 2px 12px);background-size:100% 100%,58% 55%;background-position:0,58% 16px}.template-tabular .resume-header{min-height:126px;padding:29px 42px;background:#fff;color:var(--paper-text);border-top:8px solid var(--paper-accent);border-bottom:2px solid var(--paper-highlight)}.template-tabular .resume-identity p{color:var(--paper-accent);opacity:1}.template-tabular .resume-body{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.template-tabular .resume-sidebar{padding:31px 24px;background:var(--paper-sidebar);border-right:1px solid color-mix(in srgb,var(--paper-accent),white 78%)}.template-tabular .resume-main{padding:31px 38px}.template-tabular .resume-entry-head{grid-template-columns:105px minmax(0,1fr);gap:17px;align-items:start}.template-tabular .resume-entry-head time{grid-column:1;grid-row:1;padding-top:3px;color:var(--paper-accent);font-weight:700}.template-tabular .resume-entry-head .entry-titles{grid-column:2;grid-row:1}.template-tabular .resume-entry ul{margin-left:122px}.template-tabular .resume-main h3{border-bottom:2px solid var(--paper-highlight)}
