:root{font-family:Aptos,"Segoe UI",Arial,sans-serif}
.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:#fbfcfc}
.photo-placeholder{width:76px;height:92px;flex:none;border:1px dashed #aebbb6;border-radius:9px;background:#edf3f0;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:#f3f7f5;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:#d9e0dd}.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}
.atlas-thumb{background-image:linear-gradient(90deg,var(--accent) 7%,transparent 7%),linear-gradient(90deg,transparent 68%,var(--accent-soft) 68%),linear-gradient(#a9b3b0 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(#a9b3b0 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(#a9b3b0 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 #d2d9d6}.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:#f8faf9;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:#202826;border-left:13px solid var(--paper-accent);padding-left:39px;border-bottom:1px solid #e2e7e5}
.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:#202826;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:#f3f5f4;color:#202826;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 #9eada8;border-radius:12px;background:#f6f9f8;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:#eef5f2;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)) minmax(650px,1fr)}
.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:460px 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}}
